| # REQUIRES: mips |
| |
| # Check GOT relocations against absolute symbols. |
| |
| # RUN: llvm-mc -filetype=obj -triple=mips64-unknown-linux -o %t.o %s |
| # RUN: echo "SECTIONS { \ |
| # RUN: zero1 = 0; zero2 = 0; foo = 0x11004; bar = 0x22000; }" > %t.script |
| # RUN: ld.lld --script %t.script -o %t.exe %t.o |
| # RUN: llvm-readobj -A %t.exe | FileCheck %s |
| |
| # CHECK: Static GOT { |
| # CHECK: Local entries [ |
| # CHECK-NEXT: Entry { |
| # CHECK-NEXT: Address: |
| # CHECK-NEXT: Access: -32736 |
| # CHECK-NEXT: Initial: 0x0 |
| # CHECK-NEXT: } |
| # CHECK-NEXT: Entry { |
| # CHECK-NEXT: Address: |
| # CHECK-NEXT: Access: -32728 |
| # CHECK-NEXT: Initial: 0x10000 |
| # CHECK-NEXT: } |
| # CHECK-NEXT: Entry { |
| # CHECK-NEXT: Address: |
| # CHECK-NEXT: Access: -32720 |
| # CHECK-NEXT: Initial: 0x30000 |
| # CHECK-NEXT: } |
| # CHECK-NEXT: ] |
| # CHECK-NEXT: } |
| |
| .text |
| nop |
| ld $v0, %got_page(zero1)($gp) |
| ld $v0, %got_page(zero2)($gp) |
| ld $v0, %got_page(foo)($gp) |
| ld $v0, %got_page(bar+0x10008)($gp) |