mirror of
https://github.com/ZDoom/raze-gles.git
synced 2024-12-25 19:20:46 +00:00
Rename "loopcnt" to "vm_execution_depth" and CON_DIRECT_THREADING_DISPATCH to CON_USE_COMPUTED_GOTO
Also removes a redundant "break" statement in builds not using CON_USE_COMPUTED_GOTO. git-svn-id: https://svn.eduke32.com/eduke32@7647 1a8010ca-5511-0410-912e-c29ae57300e0
This commit is contained in:
parent
058c1a8060
commit
0cbb1df2d1
1 changed files with 10 additions and 13 deletions
|
@ -1268,15 +1268,15 @@ void Screen_Play(void)
|
||||||
}
|
}
|
||||||
|
|
||||||
#if defined __GNUC__ || defined __clang__
|
#if defined __GNUC__ || defined __clang__
|
||||||
# define CON_DIRECT_THREADING_DISPATCH
|
# define CON_USE_COMPUTED_GOTO
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef CON_DIRECT_THREADING_DISPATCH
|
#ifdef CON_USE_COMPUTED_GOTO
|
||||||
# define vInstruction(KEYWORDID) VINST_ ## KEYWORDID
|
# define vInstruction(KEYWORDID) VINST_ ## KEYWORDID
|
||||||
# define vmErrorCase VINST_CON_OPCODE_END
|
# define vmErrorCase VINST_CON_OPCODE_END
|
||||||
# define eval(INSTRUCTION) { if ((unsigned)INSTRUCTION < CON_OPCODE_END) goto *jumpTable[INSTRUCTION]; else goto vmErrorCase; }
|
# define eval(INSTRUCTION) { if ((unsigned)INSTRUCTION < CON_OPCODE_END) goto *jumpTable[INSTRUCTION]; else goto vmErrorCase; }
|
||||||
# define dispatch_unconditionally(...) { tw = *insptr; g_errorLineNum = tw >> 12; g_tw = tw &= VM_INSTMASK; eval(tw) }
|
# define dispatch_unconditionally(...) { tw = *insptr; g_errorLineNum = tw >> 12; g_tw = tw &= VM_INSTMASK; eval(tw) }
|
||||||
# define dispatch(...) { if (loopcnt && (vm.flags & (VM_RETURN|VM_KILL|VM_NOEXECUTE)) == 0) dispatch_unconditionally(__VA_ARGS__); return; }
|
# define dispatch(...) { if (vm_execution_depth && (vm.flags & (VM_RETURN|VM_KILL|VM_NOEXECUTE)) == 0) dispatch_unconditionally(__VA_ARGS__); return; }
|
||||||
# define abort_after_error(...) return
|
# define abort_after_error(...) return
|
||||||
# define vInstructionPointer(KEYWORDID) &&VINST_ ## KEYWORDID
|
# define vInstructionPointer(KEYWORDID) &&VINST_ ## KEYWORDID
|
||||||
# define COMMA ,
|
# define COMMA ,
|
||||||
|
@ -1302,9 +1302,9 @@ void Screen_Play(void)
|
||||||
|
|
||||||
GAMEEXEC_STATIC void VM_Execute(bool const loop /*= false*/)
|
GAMEEXEC_STATIC void VM_Execute(bool const loop /*= false*/)
|
||||||
{
|
{
|
||||||
native_t loopcnt = loop;
|
native_t vm_execution_depth = loop;
|
||||||
|
|
||||||
#ifndef CON_DIRECT_THREADING_DISPATCH
|
#ifndef CON_USE_COMPUTED_GOTO
|
||||||
do
|
do
|
||||||
{
|
{
|
||||||
#else
|
#else
|
||||||
|
@ -1318,13 +1318,13 @@ GAMEEXEC_STATIC void VM_Execute(bool const loop /*= false*/)
|
||||||
{
|
{
|
||||||
vInstruction(CON_LEFTBRACE):
|
vInstruction(CON_LEFTBRACE):
|
||||||
{
|
{
|
||||||
insptr++, loopcnt++;
|
insptr++, vm_execution_depth++;
|
||||||
dispatch_unconditionally();
|
dispatch_unconditionally();
|
||||||
}
|
}
|
||||||
|
|
||||||
vInstruction(CON_RIGHTBRACE):
|
vInstruction(CON_RIGHTBRACE):
|
||||||
{
|
{
|
||||||
insptr++, loopcnt--;
|
insptr++, vm_execution_depth--;
|
||||||
dispatch();
|
dispatch();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2552,7 +2552,7 @@ GAMEEXEC_STATIC void VM_Execute(bool const loop /*= false*/)
|
||||||
|
|
||||||
vInstruction(CON_RETURN):
|
vInstruction(CON_RETURN):
|
||||||
vm.flags |= VM_RETURN;
|
vm.flags |= VM_RETURN;
|
||||||
#if !defined CON_DIRECT_THREADING_DISPATCH
|
#if !defined CON_USE_COMPUTED_GOTO
|
||||||
fallthrough__;
|
fallthrough__;
|
||||||
#endif
|
#endif
|
||||||
vInstruction(CON_ENDSWITCH):
|
vInstruction(CON_ENDSWITCH):
|
||||||
|
@ -6213,13 +6213,10 @@ badindex:
|
||||||
"If you are a developer, please attach all of your script files\n"
|
"If you are a developer, please attach all of your script files\n"
|
||||||
"along with instructions on how to reproduce this error.\n\n"
|
"along with instructions on how to reproduce this error.\n\n"
|
||||||
"Thank you!");
|
"Thank you!");
|
||||||
#ifndef CON_DIRECT_THREADING_DISPATCH
|
|
||||||
break;
|
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
#ifndef CON_DIRECT_THREADING_DISPATCH
|
#ifndef CON_USE_COMPUTED_GOTO
|
||||||
}
|
}
|
||||||
while (loopcnt && (vm.flags & (VM_RETURN|VM_KILL|VM_NOEXECUTE)) == 0);
|
while (vm_execution_depth && (vm.flags & (VM_RETURN|VM_KILL|VM_NOEXECUTE)) == 0);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue