forked from OSchip/llvm-project
52 lines
1.5 KiB
ArmAsm
52 lines
1.5 KiB
ArmAsm
# REQUIRES: ppc
|
|
# RUN: llvm-mc -filetype=obj -triple=ppc64le %s -o %t.o
|
|
# RUN: ld.lld %t.o --defsym=a=0x0123456789abcdef --defsym=b=0x76543210 -o %t
|
|
# RUN: llvm-objdump -d --no-show-raw-insn %t | FileCheck %s
|
|
# RUN: llvm-objdump -s --no-show-raw-insn %t | FileCheck --check-prefixes=HEX,HEXLE %s
|
|
|
|
# HEX-LABEL: section .R_PPC64_ADDR32:
|
|
# HEXLE-NEXT: 10325476
|
|
# HEXBE-NEXT: 76543210
|
|
.section .R_PPC64_ADDR32,"a",@progbits
|
|
.long b
|
|
|
|
# CHECK-LABEL: <.R_PPC64_ADDR16_LO>:
|
|
# CHECK-NEXT: addi 4, 4, 12816
|
|
.section .R_PPC64_ADDR16_LO,"ax",@progbits
|
|
addi 4, 4, b@l
|
|
|
|
# CHECK-LABEL: <.R_PPC64_ADDR16_HI>:
|
|
# CHECK-NEXT: lis 4, 30292
|
|
.section .R_PPC64_ADDR16_HI,"ax",@progbits
|
|
lis 4, b@h
|
|
|
|
# CHECK-LABEL: <.R_PPC64_ADDR16_HA>:
|
|
# CHECK-NEXT: lis 4, 30292
|
|
.section .R_PPC64_ADDR16_HA,"ax",@progbits
|
|
lis 4, b@ha
|
|
|
|
# CHECK-LABEL: <.R_PPC64_ADDR16_HIGH>:
|
|
# CHECK-NEXT: lis 4, -30293
|
|
.section .R_PPC64_ADDR16_HIGH,"ax",@progbits
|
|
lis 4, a@high
|
|
|
|
# CHECK-LABEL: <.R_PPC64_ADDR16_HIGHER>:
|
|
# CHECK-NEXT: li 3, 17767
|
|
.section .R_PPC64_ADDR16_HIGHER,"ax",@progbits
|
|
li 3, a@higher
|
|
|
|
# CHECK-LABEL: <.R_PPC64_ADDR16_HIGHERA>:
|
|
# CHECK-NEXT: li 3, 17767
|
|
.section .R_PPC64_ADDR16_HIGHERA,"ax",@progbits
|
|
li 3, a@highera
|
|
|
|
# CHECK-LABEL: <.R_PPC64_ADDR16_HIGHEST>:
|
|
# CHECK-NEXT: li 3, 291
|
|
.section .R_PPC64_ADDR16_HIGHEST,"ax",@progbits
|
|
li 3, a@highest
|
|
|
|
# CHECK-LABEL: <.R_PPC64_ADDR16_HIGHESTA>:
|
|
# CHECK-NEXT: li 3, 291
|
|
.section .R_PPC64_ADDR16_HIGHESTA,"ax",@progbits
|
|
li 3, a@highesta
|