1*9880d681SAndroid Build Coastguard Worker@ RUN: llvm-mc %s -triple=armv7-linux-gnueabi | FileCheck -check-prefix=ASM %s 2*9880d681SAndroid Build Coastguard Worker@ RUN: llvm-mc %s -triple=armv7-linux-gnueabi -filetype=obj -o - | \ 3*9880d681SAndroid Build Coastguard Worker@ RUN: llvm-readobj -s -sd -sr | FileCheck -check-prefix=OBJ %s 4*9880d681SAndroid Build Coastguard Worker .syntax unified 5*9880d681SAndroid Build Coastguard Worker .text 6*9880d681SAndroid Build Coastguard Worker .globl barf 7*9880d681SAndroid Build Coastguard Worker .align 2 8*9880d681SAndroid Build Coastguard Worker .type barf,%function 9*9880d681SAndroid Build Coastguard Workerbarf: @ @barf 10*9880d681SAndroid Build Coastguard Worker@ BB#0: @ %entry 11*9880d681SAndroid Build Coastguard Worker movw r0, :lower16:GOT-(.LPC0_2+8) 12*9880d681SAndroid Build Coastguard Worker movt r0, :upper16:GOT-(.LPC0_2+8) 13*9880d681SAndroid Build Coastguard Worker.LPC0_2: 14*9880d681SAndroid Build Coastguard Worker@ ASM: movw r0, :lower16:(GOT-(.LPC0_2+8)) 15*9880d681SAndroid Build Coastguard Worker@ ASM-NEXT: movt r0, :upper16:(GOT-(.LPC0_2+8)) 16*9880d681SAndroid Build Coastguard Worker 17*9880d681SAndroid Build Coastguard Worker@@ make sure that the text section fixups are sane too 18*9880d681SAndroid Build Coastguard Worker@ OBJ: Section { 19*9880d681SAndroid Build Coastguard Worker@ OBJ: Name: .text 20*9880d681SAndroid Build Coastguard Worker@ OBJ-NEXT: Type: SHT_PROGBITS 21*9880d681SAndroid Build Coastguard Worker@ OBJ-NEXT: Flags [ (0x6) 22*9880d681SAndroid Build Coastguard Worker@ OBJ-NEXT: SHF_ALLOC 23*9880d681SAndroid Build Coastguard Worker@ OBJ-NEXT: SHF_EXECINSTR 24*9880d681SAndroid Build Coastguard Worker@ OBJ-NEXT: ] 25*9880d681SAndroid Build Coastguard Worker@ OBJ-NEXT: Address: 0x0 26*9880d681SAndroid Build Coastguard Worker@ OBJ-NEXT: Offset: 0x34 27*9880d681SAndroid Build Coastguard Worker@ OBJ-NEXT: Size: 8 28*9880d681SAndroid Build Coastguard Worker@ OBJ-NEXT: Link: 0 29*9880d681SAndroid Build Coastguard Worker@ OBJ-NEXT: Info: 0 30*9880d681SAndroid Build Coastguard Worker@ OBJ-NEXT: AddressAlignment: 4 31*9880d681SAndroid Build Coastguard Worker@ OBJ-NEXT: EntrySize: 0 32*9880d681SAndroid Build Coastguard Worker@ OBJ-NEXT: Relocations [ 33*9880d681SAndroid Build Coastguard Worker@ OBJ-NEXT: ] 34*9880d681SAndroid Build Coastguard Worker@ OBJ-NEXT: SectionData ( 35*9880d681SAndroid Build Coastguard Worker@ OBJ-NEXT: 0000: F00F0FE3 F40F4FE3 36*9880d681SAndroid Build Coastguard Worker@ OBJ-NEXT: ) 37*9880d681SAndroid Build Coastguard Worker@ OBJ-NEXT: } 38*9880d681SAndroid Build Coastguard Worker@ OBJ: Section { 39*9880d681SAndroid Build Coastguard Worker@ OBJ: Index: 40*9880d681SAndroid Build Coastguard Worker@ OBJ: Name: .rel.text 41*9880d681SAndroid Build Coastguard Worker@ OBJ-NEXT: Type: SHT_REL (0x9) 42*9880d681SAndroid Build Coastguard Worker@ OBJ-NEXT: Flags [ (0x0) 43*9880d681SAndroid Build Coastguard Worker@ OBJ-NEXT: ] 44*9880d681SAndroid Build Coastguard Worker@ OBJ-NEXT: Address: 0x0 45*9880d681SAndroid Build Coastguard Worker@ OBJ-NEXT: Offset: 46*9880d681SAndroid Build Coastguard Worker@ OBJ-NEXT: Size: 16 47*9880d681SAndroid Build Coastguard Worker@ OBJ-NEXT: Link: 48*9880d681SAndroid Build Coastguard Worker@ OBJ-NEXT: Info: 49*9880d681SAndroid Build Coastguard Worker@ OBJ-NEXT: AddressAlignment: 4 50*9880d681SAndroid Build Coastguard Worker@ OBJ-NEXT: EntrySize: 8 51*9880d681SAndroid Build Coastguard Worker@ OBJ-NEXT: Relocations [ 52*9880d681SAndroid Build Coastguard Worker@ OBJ-NEXT: 0x0 R_ARM_MOVW_PREL_NC GOT 0x0 53*9880d681SAndroid Build Coastguard Worker@ OBJ-NEXT: 0x4 R_ARM_MOVT_PREL GOT 0x0 54*9880d681SAndroid Build Coastguard Worker@ OBJ-NEXT: ] 55