Author: Maciej Fijalkowski <[email protected]>
Branch: resume-refactor
Changeset: r68852:edc8ed962047
Date: 2014-01-18 14:03 +0100
http://bitbucket.org/pypy/pypy/changeset/edc8ed962047/
Log: finish fixing direct tests
diff --git a/rpython/jit/resume/backend.py b/rpython/jit/resume/backend.py
--- a/rpython/jit/resume/backend.py
+++ b/rpython/jit/resume/backend.py
@@ -157,6 +157,9 @@
self.builder.resume_setfield_gc(structpos, fieldpos, descr)
elif op.getopnum() == rop.RESUME_SET_PC:
self.builder.resume_set_pc(op.getarg(0).getint())
+ elif op.getopnum() == rop.RESUME_CLEAR:
+ self.builder.resume_clear(op.getarg(0).getint(),
+ op.getarg(1).getint())
else:
raise Exception("strange operation")
diff --git a/rpython/jit/resume/rescode.py b/rpython/jit/resume/rescode.py
--- a/rpython/jit/resume/rescode.py
+++ b/rpython/jit/resume/rescode.py
@@ -2,7 +2,7 @@
from rpython.jit.metainterp.history import ConstInt
(UNUSED, ENTER_FRAME, LEAVE_FRAME, RESUME_PUT,
- RESUME_NEW, RESUME_SETFIELD_GC, RESUME_SET_PC) = range(7)
+ RESUME_NEW, RESUME_SETFIELD_GC, RESUME_SET_PC, RESUME_CLEAR) = range(8)
TAGCONST = 0x0
TAGVIRTUAL = 0x2
@@ -83,3 +83,9 @@
self.write_short(structpos)
self.write_short(fieldpos)
self.write_short(descr.global_descr_index)
+
+ def resume_clear(self, frame_pos, pos_in_frame):
+ self.write(RESUME_CLEAR)
+ self.write(frame_pos)
+ self.write(pos_in_frame)
+
_______________________________________________
pypy-commit mailing list
[email protected]
https://mail.python.org/mailman/listinfo/pypy-commit