summaryrefslogtreecommitdiffstats
path: root/src/video_core/shader/shader_jit.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/video_core/shader/shader_jit.cpp')
-rw-r--r--src/video_core/shader/shader_jit.cpp36
1 files changed, 36 insertions, 0 deletions
diff --git a/src/video_core/shader/shader_jit.cpp b/src/video_core/shader/shader_jit.cpp
new file mode 100644
index 000000000..69fb7f6be
--- /dev/null
+++ b/src/video_core/shader/shader_jit.cpp
@@ -0,0 +1,36 @@
+// Copyright 2015 Citra Emulator Project
+// Licensed under GPLv2 or any later version
+// Refer to the license.txt file included.
+
+#include "video_core/pica.h"
+
+#include "shader.h"
+#include "shader_jit.h"
+
+namespace Pica {
+
+namespace Shader {
+
+JitShader::JitShader() : jitted(nullptr) {
+}
+
+void JitShader::DoJit(JitCompiler& jit) {
+ jitted = jit.Compile();
+}
+
+void JitShader::Run(UnitState& state) {
+ if (jitted)
+ jitted(&state);
+}
+
+JitCompiler::JitCompiler() {
+ AllocCodeSpace(1024 * 1024 * 4);
+}
+
+void JitCompiler::Clear() {
+ ClearCodeSpace();
+}
+
+} // namespace Shader
+
+} // namespace Pica