[Vm-dev] Currently executing bytecodes?

André Wendt andre.wendt at hpi.uni-potsdam.de
Fri Nov 9 11:07:26 UTC 2007


Hi all,

I'm stumped by the main interpreter loop: As I can't seem to get my
hands on the currently executing bytecodes using the context-step
simulator (same issue as desribed in
<http://bugs.squeak.org/view.php?id=5716>), I thought I'd log them along
the way directly in the VM.

However, modifying the interpreter loop to:

while (1) {
	printNumtoFile(currentBytecode, foo->vmLogFile);
	switch (currentBytecode) {
	..
	}
}

didn't work: printNumtoFile() gets executed exactly once. I've debugged
this with GDB: currentBytecode gets modified from within the CASE
statements and the program never gets past the switch() statement.

I wouldn't want to maintain the same code in all bytecode CASEs but I
can't think of another solution at the moment.

Is there any other way to examine the currently executing bytecodes
apart from the buggy ContextPart?

Thanks,
André


More information about the Vm-dev mailing list