@@ -397,32 +397,36 @@ void (*type_init_function_table[])(Variant *) = {
397397#define OPCODES_OUT \
398398 OPSOUT:
399399#define OPCODE_SWITCH (m_test ) goto *switch_table_ops[m_test];
400+
400401#ifdef DEBUG_ENABLED
401402#define DISPATCH_OPCODE \
402403 last_opcode = _code_ptr[ip]; \
403404 goto *switch_table_ops[last_opcode]
404- #else
405+ #else // !DEBUG_ENABLED
405406#define DISPATCH_OPCODE goto *switch_table_ops[_code_ptr[ip]]
406- #endif
407+ #endif // DEBUG_ENABLED
408+
407409#define OPCODE_BREAK goto OPSEXIT
408410#define OPCODE_OUT goto OPSOUT
409- #else
411+ #else // !(defined(__GNUC__) || defined(__clang__))
410412#define OPCODES_TABLE
411413#define OPCODE (m_op ) case m_op:
412414#define OPCODE_WHILE (m_test ) while (m_test)
413415#define OPCODES_END
414416#define OPCODES_OUT
415417#define DISPATCH_OPCODE continue
418+
416419#ifdef _MSC_VER
417420#define OPCODE_SWITCH (m_test ) \
418421 __assume (m_test <= OPCODE_END); \
419422 switch (m_test)
420- #else
423+ #else // !_MSC_VER
421424#define OPCODE_SWITCH (m_test ) switch (m_test)
422- #endif
425+ #endif // _MSC_VER
426+
423427#define OPCODE_BREAK break
424428#define OPCODE_OUT break
425- #endif
429+ #endif // defined(__GNUC__) || defined(__clang__)
426430
427431// Helpers for VariantInternal methods in macros.
428432#define OP_GET_BOOL get_bool
@@ -663,7 +667,7 @@ Variant GDScriptFunction::call(GDScriptInstance *p_instance, const Variant **p_a
663667 OPCODE_BREAK; \
664668 }
665669
666- #else
670+ #else // !DEBUG_ENABLED
667671#define GD_ERR_BREAK (m_cond )
668672#define CHECK_SPACE (m_space )
669673
@@ -676,7 +680,7 @@ Variant GDScriptFunction::call(GDScriptInstance *p_instance, const Variant **p_a
676680 OPCODE_BREAK; \
677681 }
678682
679- #endif
683+ #endif // DEBUG_ENABLED
680684
681685#define LOAD_INSTRUCTION_ARGS \
682686 int instr_arg_count = _code_ptr[ip + 1 ]; \
@@ -1965,7 +1969,7 @@ Variant GDScriptFunction::call(GDScriptInstance *p_instance, const Variant **p_a
19651969 err_text = _get_call_error (" function '" + methodstr + (is_callable ? " " : " ' in base '" + basestr) + " '" , (const Variant **)argptrs, temp_ret, err);
19661970 OPCODE_BREAK;
19671971 }
1968- #endif
1972+ #endif // DEBUG_ENABLED
19691973
19701974 ip += 3 ;
19711975 }
0 commit comments