1 ; Shows that the ARM integrated assembler can translate a trivial, 2 ; bundle-aligned function. 3 4 ; REQUIRES: allow_dump 5 6 ; Compile using standalone assembler. 7 ; RUN: %p2i --filetype=asm -i %s --target=arm32 --args -Om1 \ 8 ; RUN: | FileCheck %s --check-prefix=ASM 9 10 ; Show bytes in assembled standalone code. 11 ; RUN: %p2i --filetype=asm -i %s --target=arm32 --assemble --disassemble \ 12 ; RUN: --args -Om1 | FileCheck %s --check-prefix=DIS 13 14 ; Compile using integrated assembler. 15 ; RUN: %p2i --filetype=iasm -i %s --target=arm32 --args -Om1 \ 16 ; RUN: | FileCheck %s --check-prefix=IASM 17 18 ; Show bytes in assembled integrated code. 19 ; RUN: %p2i --filetype=iasm -i %s --target=arm32 --assemble --disassemble \ 20 ; RUN: --args -Om1 | FileCheck %s --check-prefix=DIS 21 22 define internal void @f() { 23 ret void 24 } 25 26 ; ASM-LABEL:f: 27 ; ASM-NEXT: .Lf$__0: 28 ; ASM-NEXT: bx lr 29 30 ; DIS-LABEL:00000000 <f>: 31 ; IASM-LABEL:f: 32 ; IASM-NEXT:.Lf$__0: 33 34 ; DIS-NEXT: 0: e12fff1e 35 ; IASM-NEXT: .byte 0x1e 36 ; IASM-NEXT: .byte 0xff 37 ; IASM-NEXT: .byte 0x2f 38 ; IASM-NEXT: .byte 0xe1 39 40 ; DIS-NEXT: 4: e7fedef0 41 ; IASM-NEXT: .byte 0xf0 42 ; IASM-NEXT: .byte 0xde 43 ; IASM-NEXT: .byte 0xfe 44 ; IASM-NEXT: .byte 0xe7 45 46 ; DIS-NEXT: 8: e7fedef0 47 ; IASM-NEXT: .byte 0xf0 48 ; IASM-NEXT: .byte 0xde 49 ; IASM-NEXT: .byte 0xfe 50 ; IASM-NEXT: .byte 0xe7 51 52 ; DIS-NEXT: c: e7fedef0 53 ; IASM-NEXT: .byte 0xf0 54 ; IASM-NEXT: .byte 0xde 55 ; IASM-NEXT: .byte 0xfe 56 ; IASM-NEXT: .byte 0xe7 57 58 define internal void @ignore() { 59 ret void 60 } 61 62 ; ASM-LABEL:ignore: 63 ; DIS-LABEL:00000010 <ignore>: 64 ; IASM-LABEL:ignore: 65