1// RUN: llvm-mc %s -triple=armv7-apple-darwin -filetype=asm -o - \ 2// RUN: | FileCheck %s --check-prefix=CHECK-ASM 3// RUN: llvm-mc %s -triple=armv7-apple-darwin -filetype=obj -o - \ 4// RUN: | llvm-objdump -triple=thumbv7 -d - | FileCheck %s --check-prefixes=CHECK-OBJ-CODE 5// RUN: llvm-mc %s -triple=thumbv7-win32-gnu -filetype=asm -o - \ 6// RUN: | FileCheck %s --check-prefix=CHECK-ASM 7// RUN: llvm-mc %s -triple=thumbv7-win32-gnu -filetype=obj -o - \ 8// RUN: | llvm-objdump -d - | FileCheck %s --check-prefixes=CHECK-OBJ,CHECK-OBJ-CODE 9// RUN: llvm-mc %s -triple=armv7-linux-gnueabi -filetype=asm -o - \ 10// RUN: | FileCheck %s --check-prefix=CHECK-ASM 11// RUN: llvm-mc %s -triple=armv7-linux-gnueabi -filetype=obj -o - \ 12// RUN: | llvm-objdump -d -triple=thumbv7 - | FileCheck %s --check-prefixes=CHECK-OBJ,CHECK-OBJ-DATA 13 14 .text 15 16 .p2align 2 17 .globl _func 18 .thumb 19_func: 20 // ELF distinguishes between data and code when emitted this way, but 21 // MachO and COFF don't. 22 bx lr 23 .short 0x4770 24 .inst.n 0x4770 25 mov.w r0, #42 26 .short 0xf04f, 0x002a 27 .inst.w 0xf04f002a 28 29// CHECK-ASM: .p2align 2 30// CHECK-ASM: .globl _func 31// CHECK-ASM: _func: 32// CHECK-ASM: bx lr 33// CHECK-ASM: .short 18288 34// CHECK-ASM: .inst.n 0x4770 35// CHECK-ASM: mov.w r0, #42 36// CHECK-ASM: .short 61519 37// CHECK-ASM: .short 42 38// CHECK-ASM: .inst.w 0xf04f002a 39 40// CHECK-OBJ: 0: 70 47 bx lr 41// CHECK-OBJ-CODE: 2: 70 47 bx lr 42// CHECK-OBJ-DATA: 2: 70 47 .short 0x4770 43// CHECK-OBJ: 4: 70 47 bx lr 44// CHECK-OBJ: 6: 4f f0 2a 00 mov.w r0, #42 45// CHECK-OBJ-CODE: a: 4f f0 2a 00 mov.w r0, #42 46// CHECK-OBJ-DATA: a: 4f f0 2a 00 .word 0x002af04f 47// CHECK-OBJ: e: 4f f0 2a 00 mov.w r0, #42 48