[pypy-commit] pypy optresult-unroll: resolve some simple things
fijal
noreply at buildbot.pypy.org
Thu Sep 3 19:36:28 CEST 2015
Author: Maciej Fijalkowski <fijall at gmail.com>
Branch: optresult-unroll
Changeset: r79398:1e7990e3b667
Date: 2015-09-03 19:36 +0200
http://bitbucket.org/pypy/pypy/changeset/1e7990e3b667/
Log: resolve some simple things
diff --git a/rpython/jit/metainterp/optimizeopt/info.py b/rpython/jit/metainterp/optimizeopt/info.py
--- a/rpython/jit/metainterp/optimizeopt/info.py
+++ b/rpython/jit/metainterp/optimizeopt/info.py
@@ -364,6 +364,9 @@
assert buffer is not None
return buffer
+ def all_items(self):
+ return []
+
def getitem_raw(self, offset, itemsize, descr):
if not self.is_virtual():
raise InvalidRawOperation
@@ -440,6 +443,7 @@
def visitor_dispatch_virtual_type(self, visitor):
return visitor.visit_vrawslice(self.offset)
+
class ArrayPtrInfo(AbstractVirtualPtrInfo):
_attrs_ = ('length', '_items', 'lenbound', '_clear', 'descr',
'_is_virtual')
diff --git a/rpython/jit/metainterp/test/test_resume.py b/rpython/jit/metainterp/test/test_resume.py
--- a/rpython/jit/metainterp/test/test_resume.py
+++ b/rpython/jit/metainterp/test/test_resume.py
@@ -1208,19 +1208,19 @@
vdescr = LLtypeMixin.nodesize2
ca = ConstAddr(LLtypeMixin.node_vtable_adr2, LLtypeMixin.cpu)
- v4 = info.InstancePtrInfo(ca, vdescr)
+ v4 = info.InstancePtrInfo(vdescr, ca, True)
b4s.set_forwarded(v4)
v4.setfield(LLtypeMixin.nextdescr, ca, b2s)
v4.setfield(LLtypeMixin.valuedescr, ca, b3s)
v4.setfield(LLtypeMixin.otherdescr, ca, b5s)
ca = ConstAddr(LLtypeMixin.node_vtable_adr, LLtypeMixin.cpu)
- v2 = info.InstancePtrInfo(ca, LLtypeMixin.nodesize)
+ v2 = info.InstancePtrInfo(LLtypeMixin.nodesize, ca, True)
v2.setfield(LLtypeMixin.nextdescr, b4s, ca)
v2.setfield(LLtypeMixin.valuedescr, c1s, ca)
b2s.set_forwarded(v2)
- modifier.register_virtual_fields(b2s, [c1s, None, None, b4s])
- modifier.register_virtual_fields(b4s, [b3s, None, None, b2s, b5s])
+ modifier.register_virtual_fields(b2s, [c1s, None, None, None, b4s])
+ modifier.register_virtual_fields(b4s, [b3s, None, None, None, b2s, b5s])
liveboxes = []
modifier._number_virtuals(liveboxes, FakeOptimizer(), 0)
@@ -1285,8 +1285,7 @@
modifier.liveboxes = {}
modifier.vfieldboxes = {}
- v2 = info.ArrayPtrInfo(LLtypeMixin.arraydescr,
- vdescr=LLtypeMixin.arraydescr, size=2)
+ v2 = info.ArrayPtrInfo(LLtypeMixin.arraydescr, size=2, is_virtual=True)
b2s.set_forwarded(v2)
v2._items = [b4s, c1s]
modifier.register_virtual_fields(b2s, [b4s, c1s])
@@ -1334,7 +1333,7 @@
modifier.liveboxes_from_env = {}
modifier.liveboxes = {}
modifier.vfieldboxes = {}
- v2 = info.StructPtrInfo(LLtypeMixin.ssize)
+ v2 = info.StructPtrInfo(LLtypeMixin.ssize, is_virtual=True)
b2s.set_forwarded(v2)
v2.setfield(LLtypeMixin.adescr, b2s, c1s)
v2.setfield(LLtypeMixin.abisdescr, b2s, c1s)
More information about the pypy-commit
mailing list