[pypy-commit] pypy default: Support likely and unlikely here
arigo
noreply at buildbot.pypy.org
Wed Jan 21 19:26:23 CET 2015
Author: Armin Rigo <arigo at tunes.org>
Branch:
Changeset: r75472:da66d668de34
Date: 2015-01-21 19:25 +0100
http://bitbucket.org/pypy/pypy/changeset/da66d668de34/
Log: Support likely and unlikely here
diff --git a/rpython/jit/codewriter/jtransform.py b/rpython/jit/codewriter/jtransform.py
--- a/rpython/jit/codewriter/jtransform.py
+++ b/rpython/jit/codewriter/jtransform.py
@@ -253,6 +253,12 @@
return [None, # hack, do the right renaming from op.args[0] to op.result
SpaceOperation("record_known_class", [op.args[0], const_vtable], None)]
+ def rewrite_op_likely(self, op):
+ return None # "no real effect"
+
+ def rewrite_op_unlikely(self, op):
+ return None # "no real effect"
+
def rewrite_op_raw_malloc_usage(self, op):
if self.cpu.translate_support_code or isinstance(op.args[0], Variable):
return # the operation disappears
diff --git a/rpython/jit/codewriter/test/test_jtransform.py b/rpython/jit/codewriter/test/test_jtransform.py
--- a/rpython/jit/codewriter/test/test_jtransform.py
+++ b/rpython/jit/codewriter/test/test_jtransform.py
@@ -1376,3 +1376,12 @@
tr.rewrite_operation(op)
except Exception, e:
assert 'foobar' in str(e)
+
+def test_likely_unlikely():
+ v1 = varoftype(lltype.Bool)
+ v2 = varoftype(lltype.Bool)
+ op = SpaceOperation('likely', [v1], v2)
+ tr = Transformer()
+ assert tr.rewrite_operation(op) is None
+ op = SpaceOperation('unlikely', [v1], v2)
+ assert tr.rewrite_operation(op) is None
More information about the pypy-commit
mailing list