| # REQUIRES: mips | |
| # Check number of got entries is adjusted for linker script-added space. | |
| # RUN: llvm-mc -filetype=obj -triple=mips-unknown-linux %s -o %t.o | |
| # RUN: echo "SECTIONS { .data : { *(.data.1); . += 0x10000; *(.data.2) } }" > %t.script | |
| # RUN: ld.lld %t.o -shared -o %t.so -T %t.script | |
| # RUN: llvm-readobj -A --dynamic-table %t.so | FileCheck %s | |
| # CHECK: 0x7000000A MIPS_LOCAL_GOTNO 4 | |
| # ^-- 2 * header + 2 local entries | |
| # CHECK: Local entries [ | |
| # CHECK-NEXT: Entry { | |
| # CHECK-NEXT: Address: | |
| # CHECK-NEXT: Access: -32744 | |
| # CHECK-NEXT: Initial: 0x0 | |
| # ^-- loc1 | |
| # CHECK-NEXT: } | |
| # CHECK-NEXT: Entry { | |
| # CHECK-NEXT: Address: | |
| # CHECK-NEXT: Access: -32740 | |
| # CHECK-NEXT: Initial: 0x10000 | |
| # ^-- loc2 | |
| # CHECK-NEXT: } | |
| # CHECK-NEXT: ] | |
| .text | |
| .globl foo | |
| foo: | |
| lw $t0, %got(loc1)($gp) | |
| addi $t0, $t0, %lo(loc1) | |
| lw $t0, %got(loc2)($gp) | |
| addi $t0, $t0, %lo(loc2) | |
| .section .data.1,"aw",%progbits | |
| loc1: | |
| .word 0 | |
| .section .data.2,"aw",%progbits | |
| loc2: | |
| .word 0 |