2004-11-09 |
Paul Boddie |
raw
annotate
files
changeset
graph
|
Fixed comparison plus branch (if_acmp*) by removing the comparison result
from the operand stack.
Added stack top duplication before RAISE_VARARGS so that the appropriate
handlers can save the value. Changed the value stored in the load_const_ret
method so that None is stored (although this may need verifying). When the
translated ret instruction (END_FINALLY in the Python VM, again requiring
verification) is executed, the value loaded just prior to its execution
should be the same as that saved at the beginning of the handler, and this
should be None or a raised exception.
NOTE: The load_const_ret translation should arguably retrieve the saved
NOTE: value from the beginning of any active handler instead of just
NOTE: loading None. This may be assured in try...finally constructs
NOTE: (without catch sections), however.
Rearranged Python VM instruction insertion for exceptions.
Changed some load_global(None) usage to load_const(None).
Added instruction positions in the disassembly output. |
|