]> gitweb.factorcode.org Git - factor.git/blob - basis/cpu/arm/assembler/assembler-tests.factor
b8d069a83e8256ad7354ef909e812cbf0da3614c
[factor.git] / basis / cpu / arm / assembler / assembler-tests.factor
1 ! Copyright (C) 2020 Doug Coleman.
2 ! See http://factorcode.org/license.txt for BSD license.
3 USING: cpu.arm.assembler cpu.arm.assembler.opcodes
4 tools.test ;
5 IN: cpu.arm.assembler.tests
6
7 { 0x91000210 } [ [ 0 X16 X16 ADDi64 ] test-arm64-instruction ] unit-test
8 { 0x91002210 } [ [ 8 X16 X16 ADDi64 ] test-arm64-instruction ] unit-test
9 { 0x913fe210 } [ [ 0xff8 X16 X16 ADDi64 ] test-arm64-instruction ] unit-test
10
11 { 0x94000030 } [ 0x4003f8 [ 0x04004b8 BL ] offset-test-arm64-instruction ] unit-test
12 { 0xd61f0220 } [ 0x4003f8 [ X17 BR ] offset-test-arm64-instruction ] unit-test
13
14 { 0xd65f03c0 } [ [ f RET ] test-arm64-instruction ] unit-test
15 { 0xa9bf7bfd } [ [ -16 SP X30 X29 STP-pre ] test-arm64-instruction ] unit-test
16 { 0xa9bf7bf0 } [ [ -16 SP X30 X16 STP-pre ] test-arm64-instruction ] unit-test
17
18 { 0xf947fe11 } [ [ 4088 X16 X17 LDR-uoff ] test-arm64-instruction ] unit-test
19 { 0xf9400211 } [ [ 0 X16 X17 LDR-uoff ] test-arm64-instruction ] unit-test
20 ! ldr     x17, [x16,#8]
21 { 0xf9400611 } [ [ 8 X16 X17 LDR-uoff ] test-arm64-instruction ] unit-test
22
23 ! ldr     x1, [sp]
24 { 0xf94003e1 } [ [ 0 SP X1 LDR-uoff ] test-arm64-instruction ] unit-test
25
26 { 0xb0000090 } [ 0x400440 [ 0x411000 X16 ADRP ] offset-test-arm64-instruction ] unit-test
27 { 0xb0000090 } [ 0x400440 [ 0x411000 X16 ADRP ] offset-test-arm64-instruction ] unit-test
28
29 ! mov     x29, #0x0
30 { 0xd280001d } [ [ 0 X29 MOVwi64 ] test-arm64-instruction ] unit-test
31 { 0xd280001e } [ [ 0 X30 MOVwi64 ] test-arm64-instruction ] unit-test
32 { 0xaa0003e5 } [ [ X0 X5 MOVr64 ] test-arm64-instruction ] unit-test
33
34
35 { 0xd36cfc20 } [ [ 44 X1 X0 LSRi64 ] test-arm64-instruction ] unit-test
36
37 { } [ ] unit-test
38 { } [ ] unit-test
39 { } [ ] unit-test
40 { } [ ] unit-test