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