mirror of
https://git.suyu.dev/suyu/suyu.git
synced 2024-11-05 06:22:45 +01:00
Merge pull request #5157 from lioncash/array-dirty
maxwell_3d: Remove unused dirty_pointer array
This commit is contained in:
commit
37bec068c2
1 changed files with 33 additions and 34 deletions
|
@ -1473,39 +1473,6 @@ private:
|
||||||
|
|
||||||
void ProcessMethodCall(u32 method, u32 argument, u32 nonshadow_argument, bool is_last_call);
|
void ProcessMethodCall(u32 method, u32 argument, u32 nonshadow_argument, bool is_last_call);
|
||||||
|
|
||||||
Core::System& system;
|
|
||||||
MemoryManager& memory_manager;
|
|
||||||
|
|
||||||
VideoCore::RasterizerInterface* rasterizer = nullptr;
|
|
||||||
|
|
||||||
/// Start offsets of each macro in macro_memory
|
|
||||||
std::array<u32, 0x80> macro_positions = {};
|
|
||||||
|
|
||||||
std::array<bool, Regs::NUM_REGS> mme_inline{};
|
|
||||||
|
|
||||||
/// Macro method that is currently being executed / being fed parameters.
|
|
||||||
u32 executing_macro = 0;
|
|
||||||
/// Parameters that have been submitted to the macro call so far.
|
|
||||||
std::vector<u32> macro_params;
|
|
||||||
|
|
||||||
/// Interpreter for the macro codes uploaded to the GPU.
|
|
||||||
std::unique_ptr<MacroEngine> macro_engine;
|
|
||||||
|
|
||||||
static constexpr u32 null_cb_data = 0xFFFFFFFF;
|
|
||||||
struct {
|
|
||||||
std::array<std::array<u32, 0x4000>, 16> buffer;
|
|
||||||
u32 current{null_cb_data};
|
|
||||||
u32 id{null_cb_data};
|
|
||||||
u32 start_pos{};
|
|
||||||
u32 counter{};
|
|
||||||
} cb_data_state;
|
|
||||||
|
|
||||||
Upload::State upload_state;
|
|
||||||
|
|
||||||
bool execute_on{true};
|
|
||||||
|
|
||||||
std::array<u8, Regs::NUM_REGS> dirty_pointers{};
|
|
||||||
|
|
||||||
/// Retrieves information about a specific TIC entry from the TIC buffer.
|
/// Retrieves information about a specific TIC entry from the TIC buffer.
|
||||||
Texture::TICEntry GetTICEntry(u32 tic_index) const;
|
Texture::TICEntry GetTICEntry(u32 tic_index) const;
|
||||||
|
|
||||||
|
@ -1514,8 +1481,8 @@ private:
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Call a macro on this engine.
|
* Call a macro on this engine.
|
||||||
|
*
|
||||||
* @param method Method to call
|
* @param method Method to call
|
||||||
* @param num_parameters Number of arguments
|
|
||||||
* @param parameters Arguments to the method call
|
* @param parameters Arguments to the method call
|
||||||
*/
|
*/
|
||||||
void CallMacroMethod(u32 method, const std::vector<u32>& parameters);
|
void CallMacroMethod(u32 method, const std::vector<u32>& parameters);
|
||||||
|
@ -1564,6 +1531,38 @@ private:
|
||||||
|
|
||||||
/// Returns a query's value or an empty object if the value will be deferred through a cache.
|
/// Returns a query's value or an empty object if the value will be deferred through a cache.
|
||||||
std::optional<u64> GetQueryResult();
|
std::optional<u64> GetQueryResult();
|
||||||
|
|
||||||
|
Core::System& system;
|
||||||
|
MemoryManager& memory_manager;
|
||||||
|
|
||||||
|
VideoCore::RasterizerInterface* rasterizer = nullptr;
|
||||||
|
|
||||||
|
/// Start offsets of each macro in macro_memory
|
||||||
|
std::array<u32, 0x80> macro_positions{};
|
||||||
|
|
||||||
|
std::array<bool, Regs::NUM_REGS> mme_inline{};
|
||||||
|
|
||||||
|
/// Macro method that is currently being executed / being fed parameters.
|
||||||
|
u32 executing_macro = 0;
|
||||||
|
/// Parameters that have been submitted to the macro call so far.
|
||||||
|
std::vector<u32> macro_params;
|
||||||
|
|
||||||
|
/// Interpreter for the macro codes uploaded to the GPU.
|
||||||
|
std::unique_ptr<MacroEngine> macro_engine;
|
||||||
|
|
||||||
|
static constexpr u32 null_cb_data = 0xFFFFFFFF;
|
||||||
|
struct CBDataState {
|
||||||
|
std::array<std::array<u32, 0x4000>, 16> buffer;
|
||||||
|
u32 current{null_cb_data};
|
||||||
|
u32 id{null_cb_data};
|
||||||
|
u32 start_pos{};
|
||||||
|
u32 counter{};
|
||||||
|
};
|
||||||
|
CBDataState cb_data_state;
|
||||||
|
|
||||||
|
Upload::State upload_state;
|
||||||
|
|
||||||
|
bool execute_on{true};
|
||||||
};
|
};
|
||||||
|
|
||||||
#define ASSERT_REG_POSITION(field_name, position) \
|
#define ASSERT_REG_POSITION(field_name, position) \
|
||||||
|
|
Loading…
Reference in a new issue