1# RUN: llvm-mc -triple=armv7-linux-gnueabi %s | FileCheck %s --check-prefix=ASM 2# RUN: llvm-mc -filetype=obj -triple=armv7-linux-gnueabi --fdpic %s | llvm-readelf -h -r - | FileCheck %s 3 4# RUN: not llvm-mc -filetype=obj -triple=armv7-linux-gnueabi %s -o /dev/null 2>&1 | FileCheck %s --check-prefix=ERR 5 6# ASM: .long f(FUNCDESC) 7# ASM-NEXT: .long f(GOTFUNCDESC) 8# ASM-NEXT: .long f(GOTOFFFUNCDESC) 9 10# CHECK: OS/ABI: ARM FDPIC 11# CHECK: Machine: ARM 12# CHECK: Flags: 0x5000000 13 14# CHECK: R_ARM_FUNCDESC 00000000 f 15# CHECK-NEXT: R_ARM_GOTFUNCDESC 00000000 f 16# CHECK-NEXT: R_ARM_GOTOFFFUNCDESC 00000000 f 17# CHECK-NEXT: R_ARM_TLS_GD32_FDPIC 00000000 tls 18# CHECK-NEXT: R_ARM_TLS_LDM32_FDPIC 00000000 tls 19# CHECK-NEXT: R_ARM_TLS_IE32_FDPIC 00000000 tls 20 21.data 22# ERR: [[#@LINE+1]]:7: error: relocation R_ARM_FUNCDESC only supported in FDPIC mode 23.long f(FUNCDESC) 24# ERR: [[#@LINE+1]]:7: error: relocation R_ARM_GOTFUNCDESC only supported in FDPIC mode 25.long f(GOTFUNCDESC) 26# ERR: [[#@LINE+1]]:7: error: relocation R_ARM_GOTOFFFUNCDESC only supported in FDPIC mode 27.long f(GOTOFFFUNCDESC) 28# ERR: [[#@LINE+1]]:7: error: relocation R_ARM_TLS_GD32_FDPIC only supported in FDPIC mode 29.long tls(tlsgd_fdpic) 30# ERR: [[#@LINE+1]]:7: error: relocation R_ARM_TLS_LDM32_FDPIC only supported in FDPIC mode 31.long tls(tlsldm_fdpic) 32# ERR: [[#@LINE+1]]:7: error: relocation R_ARM_TLS_IE32_FDPIC only supported in FDPIC mode 33.long tls(gottpoff_fdpic) 34