[pypy-commit] pypy default: Fix for tests
arigo
noreply at buildbot.pypy.org
Tue Feb 3 12:02:20 CET 2015
Author: Armin Rigo <arigo at tunes.org>
Branch:
Changeset: r75676:fdb74eb88378
Date: 2015-02-03 12:00 +0100
http://bitbucket.org/pypy/pypy/changeset/fdb74eb88378/
Log: Fix for tests
diff --git a/rpython/jit/metainterp/blackhole.py b/rpython/jit/metainterp/blackhole.py
--- a/rpython/jit/metainterp/blackhole.py
+++ b/rpython/jit/metainterp/blackhole.py
@@ -3,6 +3,7 @@
from rpython.jit.metainterp.compile import ResumeAtPositionDescr
from rpython.jit.metainterp.jitexc import get_llexception, reraise
from rpython.jit.metainterp import jitexc
+from rpython.jit.metainterp.history import MissingValue
from rpython.rlib import longlong2float
from rpython.rlib.debug import ll_assert, make_sure_not_resized
from rpython.rlib.objectmodel import we_are_translated
@@ -29,9 +30,6 @@
class LeaveFrame(jitexc.JitException):
pass
-class MissingValue(object):
- "NOT_RPYTHON"
-
def signedord(c):
value = ord(c)
value = intmask(value << (LONG_BIT-8)) >> (LONG_BIT-8)
@@ -1595,14 +1593,20 @@
self.setposition(miframe.jitcode, miframe.pc)
for i in range(self.jitcode.num_regs_i()):
box = miframe.registers_i[i]
+ if not we_are_translated() and isinstance(box, MissingValue):
+ continue
if box is not None:
self.setarg_i(i, box.getint())
for i in range(self.jitcode.num_regs_r()):
box = miframe.registers_r[i]
+ if not we_are_translated() and isinstance(box, MissingValue):
+ continue
if box is not None:
self.setarg_r(i, box.getref_base())
for i in range(self.jitcode.num_regs_f()):
box = miframe.registers_f[i]
+ if not we_are_translated() and isinstance(box, MissingValue):
+ continue
if box is not None:
self.setarg_f(i, box.getfloatstorage())
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
@@ -170,6 +170,10 @@
self.identifier = identifier # for testing
+class MissingValue(object):
+ "NOT_RPYTHON"
+
+
class Const(AbstractValue):
__slots__ = ()
diff --git a/rpython/jit/metainterp/pyjitpl.py b/rpython/jit/metainterp/pyjitpl.py
--- a/rpython/jit/metainterp/pyjitpl.py
+++ b/rpython/jit/metainterp/pyjitpl.py
@@ -8,7 +8,7 @@
from rpython.jit.metainterp import history, compile, resume, executor, jitexc
from rpython.jit.metainterp.heapcache import HeapCache
from rpython.jit.metainterp.history import (Const, ConstInt, ConstPtr,
- ConstFloat, Box, TargetToken)
+ ConstFloat, Box, TargetToken, MissingValue)
from rpython.jit.metainterp.jitprof import EmptyProfiler
from rpython.jit.metainterp.logger import Logger
from rpython.jit.metainterp.optimizeopt.util import args_dict
@@ -43,9 +43,6 @@
"ge": "history.CONST_TRUE",
}
-class MissingValue(object):
- "NOT_RPYTHON"
-
class MIFrame(object):
debug = False
More information about the pypy-commit
mailing list