[pypy-commit] pypy vecopt-merge: need the 4th element in the tuple, the reference to descr.version is removed!
plan_rich
noreply at buildbot.pypy.org
Sun Aug 23 21:44:37 CEST 2015
Author: Richard Plangger <rich at pasra.at>
Branch: vecopt-merge
Changeset: r79174:c0ed1ea7fc3b
Date: 2015-08-23 21:44 +0200
http://bitbucket.org/pypy/pypy/changeset/c0ed1ea7fc3b/
Log: need the 4th element in the tuple, the reference to descr.version is
removed!
diff --git a/rpython/jit/backend/x86/assembler.py b/rpython/jit/backend/x86/assembler.py
--- a/rpython/jit/backend/x86/assembler.py
+++ b/rpython/jit/backend/x86/assembler.py
@@ -598,8 +598,7 @@
Why? Because this only generates a very small junk of memory, instead of
duplicating the loop assembler for each faildescr!
"""
- asminfo, bridge_faildescr, looptoken = version._compiled
- compiled_version = bridge_faildescr.version
+ asminfo, bridge_faildescr, compiled_version, looptoken = version._compiled
assert isinstance(bridge_faildescr, ResumeGuardDescr)
assert isinstance(faildescr, ResumeGuardDescr)
assert asminfo.rawstart != 0
diff --git a/rpython/jit/metainterp/compile.py b/rpython/jit/metainterp/compile.py
--- a/rpython/jit/metainterp/compile.py
+++ b/rpython/jit/metainterp/compile.py
@@ -209,7 +209,7 @@
version.operations, jitcell_token)
record_loop_or_bridge(metainterp_sd, vl)
assert asminfo is not None
- version._compiled = (asminfo, faildescr, jitcell_token)
+ version._compiled = (asminfo, faildescr, faildescr.version, jitcell_token)
faildescr.version = None
# stitch to the trace loop
for lv in loop.versions:
diff --git a/rpython/jit/metainterp/history.py b/rpython/jit/metainterp/history.py
--- a/rpython/jit/metainterp/history.py
+++ b/rpython/jit/metainterp/history.py
@@ -746,7 +746,7 @@
"""
def __init__(self, loop):
self.faildescrs = []
- self._compiled = (None,None,None)
+ self._compiled = (None,None,None,None)
if loop:
self.operations = self.copy_operations(loop.operations)
idx = index_of_first(rop.LABEL, self.operations)
More information about the pypy-commit
mailing list