llvm-project/lld/test/ELF/mips-got-string.s
Han Shen b56030ee9e [lld] Mitigate relocation overflow [part 1 of 2].
This CL places .dynsym and .dynstr at the beginning of SHF_ALLOC
sections. We do this to mitigate the possibility that huge .dynsym and
.dynstr sections placed between ro-data and text sections cause
relocation overflow.

Differential Revision: https://reviews.llvm.org/D45788

llvm-svn: 332374
2018-05-15 17:02:35 +00:00

29 lines
647 B
ArmAsm

# Check R_MIPS_GOT16 relocation against merge section.
# RUN: llvm-mc -filetype=obj -triple=mips-unknown-linux -o %t.o %s
# RUN: ld.lld -shared -o %t.so %t.o
# RUN: llvm-readobj -t -mips-plt-got %t.so | FileCheck %s
# REQUIRES: mips
# CHECK: Symbol {
# CHECK: Name: $.str
# CHECK-NEXT: Value: 0x105
# CHECK: }
# CHECK: Local entries [
# CHECK-NEXT: Entry {
# CHECK-NEXT: Address:
# CHECK-NEXT: Access: -32744
# CHECK-NEXT: Initial: 0x0
# CHECK: }
# CHECK: ]
.text
lw $t9, %got($.str)($gp)
addiu $a0, $t9, %lo($.str)
.section .rodata.str,"aMS",@progbits,1
$.str:
.asciz "foo"