Commits

David Schneider committed 32b4f23

change the float comparisson operations a bit, because transfering the condition flags from the vfp to the core processor flags changes slighlty the meaning of the condition codes

  • Participants
  • Parent commits 49ddd42
  • Branches arm-backed-float

Comments (0)

Files changed (2)

File pypy/jit/backend/arm/conditions.py

 def get_opposite_of(operation):
     return opposites[operation]
 
+# see mapping for floating poin according to 
+# http://blogs.arm.com/software-enablement/405-condition-codes-4-floating-point-comparisons-using-vfp/
+VFP_LT = CC
+VFP_LE = LS

File pypy/jit/backend/arm/opassembler.py

     emit_op_float_neg = gen_emit_unary_float_op('VNEG')
     emit_op_float_abs = gen_emit_unary_float_op('VABS')
 
-    emit_op_float_lt = gen_emit_float_cmp_op(c.LT)
-    emit_op_float_le = gen_emit_float_cmp_op(c.LE)
+    emit_op_float_lt = gen_emit_float_cmp_op(c.VFP_LT)
+    emit_op_float_le = gen_emit_float_cmp_op(c.VFP_LE)
     emit_op_float_eq = gen_emit_float_cmp_op(c.EQ)
     emit_op_float_ne = gen_emit_float_cmp_op(c.NE)
     emit_op_float_gt = gen_emit_float_cmp_op(c.GT)