diff --git a/include/PICA/dynapica/vertex_loader_rec.hpp b/include/PICA/dynapica/vertex_loader_rec.hpp
index e69de29b..856fcc9f 100644
--- a/include/PICA/dynapica/vertex_loader_rec.hpp
+++ b/include/PICA/dynapica/vertex_loader_rec.hpp
@@ -0,0 +1,22 @@
+#pragma once
+#include "helpers.hpp"
+#include "renderer_gl/renderer_gl.hpp"
+#include "x64_regs.hpp"
+
+// Recompiler that takes the current vertex attribute configuration, ie the format of vertices (VAO in OpenGL) and emits optimized
+// code in our CPU's native architecture for loading vertices
+
+class VertexLoaderJIT {
+	using PICARegs = const std::array<u32, 0x300>&;
+	using Callback = void(*)(Vertex* output, size_t count);  // A function pointer to JIT-emitted code
+	Callback compileConfig(PICARegs regs);
+
+public:
+#ifndef PANDA3DS_DYNAPICA_SUPPORTED
+	void loadVertices(Vertex* output, size_t count, PICARegs regs) {
+		Helpers::panic("Vertex Loader JIT: Tried to load vertices with JIT on platform that does not support vertex loader jit");
+	}
+#else
+	void loadVertices(Vertex* output, size_t count, PICARegs regs);
+#endif
+};
\ No newline at end of file