mirror of
https://github.com/yuzu-emu/yuzu-android.git
synced 2025-06-14 15:57:58 -05:00
VideoCore/Shader: Split interpreter and JIT into separate ShaderEngines
This commit is contained in:
@ -4,19 +4,22 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "video_core/shader/shader.h"
|
||||
|
||||
namespace Pica {
|
||||
|
||||
namespace Shader {
|
||||
|
||||
struct ShaderSetup;
|
||||
struct UnitState;
|
||||
class InterpreterEngine final : public ShaderEngine {
|
||||
public:
|
||||
void SetupBatch(const ShaderSetup* setup) override;
|
||||
void Run(UnitState& state, unsigned int entry_point) const override;
|
||||
DebugData<true> ProduceDebugInfo(const InputVertex& input, int num_attributes,
|
||||
unsigned int entry_point) const override;
|
||||
|
||||
template <bool Debug>
|
||||
struct DebugData;
|
||||
|
||||
template <bool Debug>
|
||||
void RunInterpreter(const ShaderSetup& setup, UnitState& state, DebugData<Debug>& debug_data,
|
||||
unsigned offset);
|
||||
private:
|
||||
const ShaderSetup* setup = nullptr;
|
||||
};
|
||||
|
||||
} // namespace
|
||||
|
||||
|
Reference in New Issue
Block a user