Author: Maciej Fijalkowski <[email protected]>
Branch: backend-vector-ops
Changeset: r52305:c6740ea44dcc
Date: 2012-02-09 16:38 +0200
http://bitbucket.org/pypy/pypy/changeset/c6740ea44dcc/
Log: enable assert aligned from rlib.jit
diff --git a/pypy/jit/codewriter/jtransform.py
b/pypy/jit/codewriter/jtransform.py
--- a/pypy/jit/codewriter/jtransform.py
+++ b/pypy/jit/codewriter/jtransform.py
@@ -377,6 +377,8 @@
prepare = self._handle_jit_call
elif oopspec_name.startswith('libffi_'):
prepare = self._handle_libffi_call
+ elif oopspec_name.startswith('assert_aligned'):
+ prepare = self._handle_assert_aligned_call
elif oopspec_name.startswith('math.sqrt'):
prepare = self._handle_math_sqrt_call
else:
@@ -1692,6 +1694,10 @@
return self._handle_oopspec_call(op, args, EffectInfo.OS_MATH_SQRT,
EffectInfo.EF_ELIDABLE_CANNOT_RAISE)
+ def _handle_assert_aligned_call(self, op, oopspec_name, args):
+ return self._handle_oopspec_call(op, args,
EffectInfo.OS_ASSERT_ALIGNED,
+ EffectInfo.EF_CANNOT_RAISE)
+
def rewrite_op_jit_force_quasi_immutable(self, op):
v_inst, c_fieldname = op.args
descr1 = self.cpu.fielddescrof(v_inst.concretetype.TO,
diff --git a/pypy/rlib/jit.py b/pypy/rlib/jit.py
--- a/pypy/rlib/jit.py
+++ b/pypy/rlib/jit.py
@@ -871,3 +871,7 @@
v_cls = hop.inputarg(classrepr, arg=1)
return hop.genop('jit_record_known_class', [v_inst, v_cls],
resulttype=lltype.Void)
+
+@oopspec('assert_aligned(arg)')
+def assert_aligned(arg):
+ pass
_______________________________________________
pypy-commit mailing list
[email protected]
http://mail.python.org/mailman/listinfo/pypy-commit