Author: Hakan Ardo <[email protected]>
Branch: jit-optimizeopt-cleanups
Changeset: r47754:eb3b24bec9e8
Date: 2011-10-01 19:32 +0200
http://bitbucket.org/pypy/pypy/changeset/eb3b24bec9e8/
Log: hg merge default
diff --git a/pypy/jit/metainterp/optimizeopt/test/test_util.py
b/pypy/jit/metainterp/optimizeopt/test/test_util.py
--- a/pypy/jit/metainterp/optimizeopt/test/test_util.py
+++ b/pypy/jit/metainterp/optimizeopt/test/test_util.py
@@ -182,7 +182,8 @@
EffectInfo.EF_FORCES_VIRTUAL_OR_VIRTUALIZABLE,
can_invalidate=True))
arraycopydescr = cpu.calldescrof(FUNC, FUNC.ARGS, FUNC.RESULT,
- EffectInfo([], [], [], [arraydescr],
oopspecindex=EffectInfo.OS_ARRAYCOPY))
+ EffectInfo([], [arraydescr], [], [arraydescr],
+ oopspecindex=EffectInfo.OS_ARRAYCOPY))
for _name, _os in [
('strconcatdescr', 'OS_STR_CONCAT'),
diff --git a/pypy/rlib/jit.py b/pypy/rlib/jit.py
--- a/pypy/rlib/jit.py
+++ b/pypy/rlib/jit.py
@@ -167,10 +167,7 @@
This is for advanced usage only.
"""
- # I hate the annotator so much.
- if NonConstant(False):
- return True
- return False
+ return NonConstant(False)
@oopspec("jit.isvirtual(value)")
@specialize.ll()
diff --git a/pypy/rlib/rgc.py b/pypy/rlib/rgc.py
--- a/pypy/rlib/rgc.py
+++ b/pypy/rlib/rgc.py
@@ -3,6 +3,7 @@
from pypy.rlib import jit
from pypy.rlib.objectmodel import we_are_translated, enforceargs, specialize
+from pypy.rlib.nonconst import NonConstant
from pypy.rpython.extregistry import ExtRegistryEntry
from pypy.rpython.lltypesystem import lltype, llmemory
@@ -144,7 +145,7 @@
from pypy.rlib.objectmodel import keepalive_until_here
# XXX: Hack to ensure that we get a proper effectinfo.write_descrs_arrays
- if length > 0:
+ if NonConstant(False):
dest[dest_start] = source[source_start]
# supports non-overlapping copies only
diff --git a/pypy/rlib/test/test_jit.py b/pypy/rlib/test/test_jit.py
--- a/pypy/rlib/test/test_jit.py
+++ b/pypy/rlib/test/test_jit.py
@@ -1,7 +1,7 @@
import py
from pypy.conftest import option
from pypy.rlib.jit import hint, we_are_jitted, JitDriver, elidable_promote
-from pypy.rlib.jit import JitHintError, oopspec
+from pypy.rlib.jit import JitHintError, oopspec, isconstant
from pypy.translator.translator import TranslationContext, graphof
from pypy.rpython.test.tool import BaseRtypingTest, LLRtypeMixin, OORtypeMixin
from pypy.rpython.lltypesystem import lltype
@@ -137,6 +137,16 @@
t.view()
# assert did not raise
+ def test_isconstant(self):
+ def f(n):
+ assert n >= 0
+ assert isconstant(n) is False
+ l = []
+ l.append(n)
+ return len(l)
+ res = self.interpret(f, [234])
+ assert res == 1
+
class TestJITLLtype(BaseTestJIT, LLRtypeMixin):
pass
diff --git a/pypy/translator/c/genc.py b/pypy/translator/c/genc.py
--- a/pypy/translator/c/genc.py
+++ b/pypy/translator/c/genc.py
@@ -563,7 +563,10 @@
else:
mk.definition('PYPY_MAIN_FUNCTION', "main")
- if sys.platform == 'win32':
+ if (py.path.local.sysfind('python') or
+ py.path.local.sysfind('python.exe')):
+ python = 'python '
+ elif sys.platform == 'win32':
python = sys.executable.replace('\\', '/') + ' '
else:
python = sys.executable + ' '
_______________________________________________
pypy-commit mailing list
[email protected]
http://mail.python.org/mailman/listinfo/pypy-commit