OLD | NEW |
1 ; Test that we correctly fix multiple forward branches. | 1 ; Test that we correctly fix multiple forward branches. |
2 | 2 |
3 ; Compile using standalone assembler. | 3 ; Compile using standalone assembler. |
4 ; RUN: %p2i --filetype=asm -i %s --target=arm32 --args -Om1 \ | 4 ; RUN: %p2i --filetype=asm -i %s --target=arm32 --args -Om1 \ |
5 ; RUN: | FileCheck %s --check-prefix=ASM | 5 ; RUN: | FileCheck %s --check-prefix=ASM |
6 | 6 |
7 ; Show bytes in assembled standalone code. | 7 ; Show bytes in assembled standalone code. |
8 ; RUN: %p2i --filetype=asm -i %s --target=arm32 --assemble --disassemble \ | 8 ; RUN: %p2i --filetype=asm -i %s --target=arm32 --assemble --disassemble \ |
9 ; RUN: --args -Om1 | FileCheck %s --check-prefix=DIS | 9 ; RUN: --args -Om1 | FileCheck %s --check-prefix=DIS |
10 | 10 |
(...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
74 ; IASM-NEXT: .byte 0x4 | 74 ; IASM-NEXT: .byte 0x4 |
75 ; IASM-NEXT: .byte 0x10 | 75 ; IASM-NEXT: .byte 0x10 |
76 ; IASM-NEXT: .byte 0x9d | 76 ; IASM-NEXT: .byte 0x9d |
77 ; IASM-NEXT: .byte 0xe5 | 77 ; IASM-NEXT: .byte 0xe5 |
78 | 78 |
79 ; IASM-NEXT: .byte 0x1 | 79 ; IASM-NEXT: .byte 0x1 |
80 ; IASM-NEXT: .byte 0x0 | 80 ; IASM-NEXT: .byte 0x0 |
81 ; IASM-NEXT: .byte 0x50 | 81 ; IASM-NEXT: .byte 0x50 |
82 ; IASM-NEXT: .byte 0xe1 | 82 ; IASM-NEXT: .byte 0xe1 |
83 | 83 |
84 ; IASM-NEXT: movge r0, #0 | 84 ; IASM-NEXT: .byte 0x0 |
| 85 ; IASM-NEXT: .byte 0x0 |
| 86 ; IASM-NEXT: .byte 0xa0 |
| 87 ; IASM-NEXT: .byte 0xa3 |
85 | 88 |
86 ; IASM-NEXT: movlt r0, #1 | 89 ; IASM-NEXT: .byte 0x1 |
| 90 ; IASM-NEXT: .byte 0x0 |
| 91 ; IASM-NEXT: .byte 0xa0 |
| 92 ; IASM-NEXT: .byte 0xb3 |
87 | 93 |
88 ; IASM-NEXT: .byte 0x0 | 94 ; IASM-NEXT: .byte 0x0 |
89 ; IASM-NEXT: .byte 0x0 | 95 ; IASM-NEXT: .byte 0x0 |
90 ; IASM-NEXT: .byte 0x8d | 96 ; IASM-NEXT: .byte 0x8d |
91 ; IASM-NEXT: .byte 0xe5 | 97 ; IASM-NEXT: .byte 0xe5 |
92 | 98 |
93 br i1 %cmp, label %then, label %else | 99 br i1 %cmp, label %then, label %else |
94 | 100 |
95 ; ASM-NEXT: ldr r0, [sp] | 101 ; ASM-NEXT: ldr r0, [sp] |
96 ; ASM-NEXT: uxtb r0, r0 | 102 ; ASM-NEXT: uxtb r0, r0 |
(...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
167 ; IASM-NEXT: .byte 0xd0 | 173 ; IASM-NEXT: .byte 0xd0 |
168 ; IASM-NEXT: .byte 0x8d | 174 ; IASM-NEXT: .byte 0x8d |
169 ; IASM-NEXT: .byte 0xe2 | 175 ; IASM-NEXT: .byte 0xe2 |
170 | 176 |
171 ; IASM-NEXT: .byte 0x1e | 177 ; IASM-NEXT: .byte 0x1e |
172 ; IASM-NEXT: .byte 0xff | 178 ; IASM-NEXT: .byte 0xff |
173 ; IASM-NEXT: .byte 0x2f | 179 ; IASM-NEXT: .byte 0x2f |
174 ; IASM-NEXT: .byte 0xe1 | 180 ; IASM-NEXT: .byte 0xe1 |
175 | 181 |
176 } | 182 } |
OLD | NEW |