OLD | NEW |
1 ; Show that we know how to encode CMN in the ARM integrated assembler. | 1 ; Show that we know how to encode CMN in the ARM integrated assembler. |
2 | 2 |
3 ; REQUIRES: allow_dump | 3 ; REQUIRES: allow_dump |
4 | 4 |
5 ; Compile using standalone assembler. | 5 ; Compile using standalone assembler. |
6 ; RUN: %p2i --filetype=asm -i %s --target=arm32 --args -Om1 \ | 6 ; RUN: %p2i --filetype=asm -i %s --target=arm32 --args -Om1 \ |
7 ; RUN: | FileCheck %s --check-prefix=ASM | 7 ; RUN: | FileCheck %s --check-prefix=ASM |
8 | 8 |
9 ; Show bytes in assembled standalone code. | 9 ; Show bytes in assembled standalone code. |
10 ; RUN: %p2i --filetype=asm -i %s --target=arm32 --assemble --disassemble \ | 10 ; RUN: %p2i --filetype=asm -i %s --target=arm32 --assemble --disassemble \ |
(...skipping 17 matching lines...) Expand all Loading... |
28 ; IASM-NEXT:.LtestCmn$entry: | 28 ; IASM-NEXT:.LtestCmn$entry: |
29 | 29 |
30 ; ASM-NEXT: sub sp, sp, #12 | 30 ; ASM-NEXT: sub sp, sp, #12 |
31 ; DIS-NEXT: 0: e24dd00c | 31 ; DIS-NEXT: 0: e24dd00c |
32 ; IASM-NEXT: .byte 0xc | 32 ; IASM-NEXT: .byte 0xc |
33 ; IASM-NEXT: .byte 0xd0 | 33 ; IASM-NEXT: .byte 0xd0 |
34 ; IASM-NEXT: .byte 0x4d | 34 ; IASM-NEXT: .byte 0x4d |
35 ; IASM-NEXT: .byte 0xe2 | 35 ; IASM-NEXT: .byte 0xe2 |
36 | 36 |
37 ; ASM-NEXT: str r0, [sp, #8] | 37 ; ASM-NEXT: str r0, [sp, #8] |
38 ; ASM-NEXT: # [sp, #8] = def.pseudo | 38 ; ASM-NEXT: # [sp, #8] = def.pseudo |
39 ; DIS-NEXT: 4: e58d0008 | 39 ; DIS-NEXT: 4: e58d0008 |
40 ; IASM-NEXT: .byte 0x8 | 40 ; IASM-NEXT: .byte 0x8 |
41 ; IASM-NEXT: .byte 0x0 | 41 ; IASM-NEXT: .byte 0x0 |
42 ; IASM-NEXT: .byte 0x8d | 42 ; IASM-NEXT: .byte 0x8d |
43 ; IASM-NEXT: .byte 0xe5 | 43 ; IASM-NEXT: .byte 0xe5 |
44 | 44 |
45 %cmp = icmp sgt i32 %a, -1 | 45 %cmp = icmp sgt i32 %a, -1 |
46 | 46 |
47 ; ASM-NEXT: mov r0, #0 | 47 ; ASM-NEXT: mov r0, #0 |
48 ; DIS-NEXT: 8: e3a00000 | 48 ; DIS-NEXT: 8: e3a00000 |
(...skipping 12 matching lines...) Expand all Loading... |
61 ; ASM-NEXT: cmn r1, #1 | 61 ; ASM-NEXT: cmn r1, #1 |
62 ; DIS-NEXT: 10: e3710001 | 62 ; DIS-NEXT: 10: e3710001 |
63 ; IASM-NEXT: .byte 0x1 | 63 ; IASM-NEXT: .byte 0x1 |
64 ; IASM-NEXT: .byte 0x0 | 64 ; IASM-NEXT: .byte 0x0 |
65 ; IASM-NEXT: .byte 0x71 | 65 ; IASM-NEXT: .byte 0x71 |
66 ; IASM-NEXT: .byte 0xe3 | 66 ; IASM-NEXT: .byte 0xe3 |
67 | 67 |
68 %cmp.ret_ext = zext i1 %cmp to i32 | 68 %cmp.ret_ext = zext i1 %cmp to i32 |
69 ret i32 %cmp.ret_ext | 69 ret i32 %cmp.ret_ext |
70 } | 70 } |
OLD | NEW |