Author: Maciej Fijalkowski <[email protected]>
Branch: arm64
Changeset: r96616:7ca6dad13e3e
Date: 2019-05-15 09:58 +0000
http://bitbucket.org/pypy/pypy/changeset/7ca6dad13e3e/

Log:    skip part of the test and add some missing ops

diff --git a/rpython/jit/backend/aarch64/codebuilder.py 
b/rpython/jit/backend/aarch64/codebuilder.py
--- a/rpython/jit/backend/aarch64/codebuilder.py
+++ b/rpython/jit/backend/aarch64/codebuilder.py
@@ -125,6 +125,14 @@
         base = 0b11111000011
         self.write32((base << 21) | (rm << 16) | (0b011010 << 10) | (rn << 5) 
| rt)
 
+    def LDR_uint32_rr(self, rt, rn, rm):
+        base = 0b10111000011
+        self.write32((base << 21) | (rm << 16) | (0b011010 << 10) | (rn << 5) 
| rt)        
+
+    def LDRH_rr(self, rt, rn, rm):
+        base = 0b01111000011
+        self.write32((base << 21) | (rm << 16) | (0b011010 << 10) | (rn << 5) 
| rt)
+
     def LDRB_rr(self, rt, rn, rm):
         base = 0b00111000011
         self.write32((base << 21) | (rm << 16) | (0b011010 << 10) | (rn << 5) 
| rt)
diff --git a/rpython/jit/backend/test/runner_test.py 
b/rpython/jit/backend/test/runner_test.py
--- a/rpython/jit/backend/test/runner_test.py
+++ b/rpython/jit/backend/test/runner_test.py
@@ -1013,15 +1013,17 @@
         vsdescr = self.cpu.interiorfielddescrof(A, 'vs')
         kdescr = self.cpu.interiorfielddescrof(A, 'k')
         pdescr = self.cpu.interiorfielddescrof(A, 'p')
-        self.execute_operation(rop.SETINTERIORFIELD_GC, [a_box, InputArgInt(3),
-                                                         boxfloat(1.5)],
-                               'void', descr=kdescr)
-        f = self.cpu.bh_getinteriorfield_gc_f(a_box.getref_base(), 3, kdescr)
-        assert longlong.getrealfloat(f) == 1.5
-        self.cpu.bh_setinteriorfield_gc_f(a_box.getref_base(), 3, 
longlong.getfloatstorage(2.5), kdescr)
-        r = self.execute_operation(rop.GETINTERIORFIELD_GC_F, [a_box, 
InputArgInt(3)],
-                                   'float', descr=kdescr)
-        assert longlong.getrealfloat(r) == 2.5
+        if self.cpu.supports_floats:
+
+            self.execute_operation(rop.SETINTERIORFIELD_GC, [a_box, 
InputArgInt(3),
+                                                             boxfloat(1.5)],
+                                   'void', descr=kdescr)
+            f = self.cpu.bh_getinteriorfield_gc_f(a_box.getref_base(), 3, 
kdescr)
+            assert longlong.getrealfloat(f) == 1.5
+            self.cpu.bh_setinteriorfield_gc_f(a_box.getref_base(), 3, 
longlong.getfloatstorage(2.5), kdescr)
+            r = self.execute_operation(rop.GETINTERIORFIELD_GC_F, [a_box, 
InputArgInt(3)],
+                                       'float', descr=kdescr)
+            assert longlong.getrealfloat(r) == 2.5
         #
         NUMBER_FIELDS = [('vs', lltype.Signed),
                          ('vu', lltype.Unsigned),
_______________________________________________
pypy-commit mailing list
[email protected]
https://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to