/* { dg-do compile } */ | |
/* { dg-options "-O2" } */ | |
struct { | |
long *sp; | |
long *csp; | |
} neko_interp_loop_vm; | |
int neko_interp_loop_vm_2; | |
void neko_interp_loop() | |
{ | |
void *pc[] = {&&LabelAccGlobal, &&LabelPhysCompare, &&LabelTailCall, | |
&&LabelLoop, &&LabelMakeArray2}; | |
long *sp, *csp = neko_interp_loop_vm.csp; | |
LabelAccGlobal: | |
neko_interp_loop_vm.sp = sp; | |
neko_interp_loop_vm.csp = csp; | |
goto * 0; | |
LabelTailCall: | |
csp = sp -= neko_interp_loop_vm_2; | |
LabelMakeArray2: | |
LabelPhysCompare: | |
LabelLoop: | |
goto * 0; | |
} |