Author: Brian Kearns <[email protected]>
Branch:
Changeset: r69993:3dfe9fa95df6
Date: 2014-03-16 21:22 -0400
http://bitbucket.org/pypy/pypy/changeset/3dfe9fa95df6/
Log: ensure the guard_no_exception is removed after making a virtual raw
buffer
diff --git a/rpython/jit/metainterp/optimizeopt/virtualize.py
b/rpython/jit/metainterp/optimizeopt/virtualize.py
--- a/rpython/jit/metainterp/optimizeopt/virtualize.py
+++ b/rpython/jit/metainterp/optimizeopt/virtualize.py
@@ -705,6 +705,7 @@
return
size = sizebox.value
self.make_virtual_raw_memory(size, op.result, op)
+ self.last_emitted_operation = REMOVED
def do_RAW_FREE(self, op):
value = self.getvalue(op.getarg(1))
diff --git a/rpython/jit/metainterp/test/test_rawmem.py
b/rpython/jit/metainterp/test/test_rawmem.py
--- a/rpython/jit/metainterp/test/test_rawmem.py
+++ b/rpython/jit/metainterp/test/test_rawmem.py
@@ -47,9 +47,7 @@
'raw_store': 1, 'raw_load': 1,
'finish': 1})
pytest.skip("XXX alloc_raw_storage doesn't generate virtualizable raw
buffer")
- self.metainterp.staticdata.stats.check_resops(
- {'guard_no_exception': 1, 'finish': 1},
- omit_finish=False)
+ self.metainterp.staticdata.stats.check_resops({'finish': 1},
omit_finish=False)
def test_raw_storage_float(self):
def f():
@@ -64,9 +62,7 @@
'raw_store': 1, 'raw_load': 1,
'finish': 1})
pytest.skip("XXX alloc_raw_storage doesn't generate virtualizable raw
buffer")
- self.metainterp.staticdata.stats.check_resops(
- {'guard_no_exception': 1, 'finish': 1},
- omit_finish=False)
+ self.metainterp.staticdata.stats.check_resops({'finish': 1},
omit_finish=False)
def test_raw_storage_byte(self):
def f():
@@ -81,9 +77,7 @@
'raw_store': 1, 'raw_load': 1,
'finish': 1})
pytest.skip("XXX alloc_raw_storage doesn't generate virtualizable raw
buffer")
- self.metainterp.staticdata.stats.check_resops(
- {'guard_no_exception': 1, 'finish': 1},
- omit_finish=False)
+ self.metainterp.staticdata.stats.check_resops({'finish': 1},
omit_finish=False)
def test_raw_storage_options(self):
def f():
@@ -98,9 +92,7 @@
'raw_store': 1, 'raw_load': 1,
'finish': 1})
pytest.skip("XXX alloc_raw_storage doesn't generate virtualizable raw
buffer")
- self.metainterp.staticdata.stats.check_resops(
- {'guard_no_exception': 1, 'finish': 1},
- omit_finish=False)
+ self.metainterp.staticdata.stats.check_resops({'finish': 1},
omit_finish=False)
class TestRawMem(RawMemTests, LLJitMixin):
diff --git a/rpython/jit/metainterp/test/test_virtual.py
b/rpython/jit/metainterp/test/test_virtual.py
--- a/rpython/jit/metainterp/test/test_virtual.py
+++ b/rpython/jit/metainterp/test/test_virtual.py
@@ -1150,8 +1150,7 @@
res = self.meta_interp(f, [10])
assert res == 55
self.check_trace_count(1)
- self.check_resops(getarrayitem_raw=0, setarrayitem_raw=0,
- raw_load=0, raw_store=0)
+ self.check_resops({'guard_true': 2, 'int_add': 4, 'int_lt': 2, 'jump':
1})
def test_raw_malloc_resume(self):
mydriver = JitDriver(greens=[], reds = 'auto')
@@ -1173,8 +1172,9 @@
res = self.meta_interp(f, [10])
assert res == 4000+55
self.check_trace_count(2)
- self.check_resops(getarrayitem_raw=0, setarrayitem_raw=0,
- raw_load=0, raw_store=0)
+ self.check_resops({'guard_false': 2, 'guard_true': 5,
+ 'int_add': 8, 'int_gt': 3, 'int_lt': 4, 'int_mul':
2,
+ 'jump': 2})
def test_raw_malloc_no_virtualstate(self):
mydriver = JitDriver(greens=[], reds = 'auto')
_______________________________________________
pypy-commit mailing list
[email protected]
https://mail.python.org/mailman/listinfo/pypy-commit