Explorar o código

Optimize GDScript VM codegen for MSVC

Pedro J. Estébanez %!s(int64=2) %!d(string=hai) anos
pai
achega
9c15e2f24b
Modificáronse 1 ficheiros con 6 adicións e 0 borrados
  1. 6 0
      modules/gdscript/gdscript_vm.cpp

+ 6 - 0
modules/gdscript/gdscript_vm.cpp

@@ -397,7 +397,13 @@ void (*type_init_function_table[])(Variant *) = {
 #define OPCODES_END
 #define OPCODES_OUT
 #define DISPATCH_OPCODE continue
+#ifdef _MSC_VER
+#define OPCODE_SWITCH(m_test)       \
+	__assume(m_test <= OPCODE_END); \
+	switch (m_test)
+#else
 #define OPCODE_SWITCH(m_test) switch (m_test)
+#endif
 #define OPCODE_BREAK break
 #define OPCODE_OUT break
 #endif