From 114d6b2f97eb62c7d8c958ebb391b70b026130f9 Mon Sep 17 00:00:00 2001 From: Yuri Kunde Schlesner Date: Sat, 17 Dec 2016 01:21:16 -0800 Subject: VideoCore/Shader: Split interpreter and JIT into separate ShaderEngines --- src/video_core/shader/shader_interpreter.h | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) (limited to 'src/video_core/shader/shader_interpreter.h') diff --git a/src/video_core/shader/shader_interpreter.h b/src/video_core/shader/shader_interpreter.h index 3237b50b3..43c1ed5ea 100644 --- a/src/video_core/shader/shader_interpreter.h +++ b/src/video_core/shader/shader_interpreter.h @@ -4,19 +4,22 @@ #pragma once +#include "video_core/shader/shader.h" + namespace Pica { namespace Shader { -struct ShaderSetup; -struct UnitState; - -template -struct DebugData; +class InterpreterEngine final : public ShaderEngine { +public: + void SetupBatch(const ShaderSetup* setup) override; + void Run(UnitState& state, unsigned int entry_point) const override; + DebugData ProduceDebugInfo(const InputVertex& input, int num_attributes, + unsigned int entry_point) const override; -template -void RunInterpreter(const ShaderSetup& setup, UnitState& state, DebugData& debug_data, - unsigned offset); +private: + const ShaderSetup* setup = nullptr; +}; } // namespace -- cgit v1.2.3