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

Reply via email to