# REQUIRES: ppc
# RUN: llvm-mc -filetype=obj -triple=powerpc %s -o %t.o
# RUN: ld.lld %t.o -o %t
# RUN: llvm-objdump -d --no-show-raw-insn %t | FileCheck --check-prefix=PDE %s
# RUN: ld.lld -pie %t.o -o %t
# RUN: llvm-objdump -d --no-show-raw-insn %t | FileCheck --check-prefix=PIC %s
# RUN: ld.lld -shared %t.o -o %t
# RUN: llvm-objdump -d --no-show-raw-insn %t | FileCheck --check-prefix=PIC %s
## It does not really matter how we fixup it, but we cannot overflow and
## should not generate a call stub (this would waste space).
# PDE: bl 0x100100b4
## With -pie or -shared, create a call stub. ld.bfd produces bl .+0
# PIC: bl 0x[[PLT:[0-9a-f]+]]
# PIC-EMPTY:
# PIC-NEXT: 000[[PLT]] <00000000.plt_pic32.foo>:
.weak foo
bl foo