[pypy-commit] pypy llvm-translation-backend: Remove this because it probably prevents the JIT from emitting efficient code for longlong on 32-bit. This breaks LLVM translation on 32-bit.
Manuel Jacob
noreply at buildbot.pypy.org
Sat Jan 25 16:09:18 CET 2014
Author: Manuel Jacob
Branch: llvm-translation-backend
Changeset: r68933:d460c0863b4a
Date: 2014-01-25 15:56 +0100
http://bitbucket.org/pypy/pypy/changeset/d460c0863b4a/
Log: Remove this because it probably prevents the JIT from emitting
efficient code for longlong on 32-bit. This breaks LLVM translation
on 32-bit.
diff --git a/rpython/rtyper/rint.py b/rpython/rtyper/rint.py
--- a/rpython/rtyper/rint.py
+++ b/rpython/rtyper/rint.py
@@ -166,7 +166,11 @@
repr = signed_repr
else:
repr = r_result
- vlist = hop.inputargs(repr, repr)
+ if func.startswith(('lshift', 'rshift')):
+ repr2 = signed_repr
+ else:
+ repr2 = repr
+ vlist = hop.inputargs(repr, repr2)
hop.exception_is_here()
prefix = repr.opprefix
diff --git a/rpython/rtyper/test/test_rint.py b/rpython/rtyper/test/test_rint.py
--- a/rpython/rtyper/test/test_rint.py
+++ b/rpython/rtyper/test/test_rint.py
@@ -257,9 +257,6 @@
assert res == intmask(f(2147483647, 12))
else:
assert res == inttype(f(2147483647, 12))
- # XXX: this assertion doesn't hold since e1d98ce26c7b
- # because it breaked llvm translation on 32-bit
- continue
#
# check that '*_[lr]shift' take an inttype and an
# int as arguments, without the need for a
More information about the pypy-commit
mailing list