llvm/lld/test/ELF/ppc32-weak-undef-call.s

# 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