[llvm] Do not replace dead constant references in metadata with undef
[llvm-project.git] / lld / test / ELF / mips-micro-got.s
blob2939a1bc97cb2b52e8caeefb807bfdcccc4de19c
1 # REQUIRES: mips
2 # Check microMIPS GOT relocations for O32 ABI.
4 # RUN: llvm-mc -filetype=obj -triple=mips-unknown-linux -mattr=micromips \
5 # RUN: %s -o %t1.o
6 # RUN: llvm-mc -filetype=obj -triple=mips-unknown-linux -mattr=micromips \
7 # RUN: %S/Inputs/mips-dynamic.s -o %t2.o
8 # RUN: ld.lld %t2.o -shared -o %t.so
9 # RUN: ld.lld %t1.o %t.so -o %t.exe
10 # RUN: llvm-readobj -A %t.exe | FileCheck %s
12 # CHECK: Local entries [
13 # CHECK-NEXT: Entry {
14 # CHECK-NEXT: Address:
15 # CHECK-NEXT: Access: -32744
16 # CHECK-NEXT: Initial: 0x30000
17 # CHECK-NEXT: }
18 # CHECK-NEXT: Entry {
19 # CHECK-NEXT: Address:
20 # CHECK-NEXT: Access: -32740
21 # CHECK-NEXT: Initial: 0x40000
22 # CHECK-NEXT: }
23 # CHECK-NEXT: ]
24 # CHECK-NEXT: Global entries [
25 # CHECK-NEXT: Entry {
26 # CHECK-NEXT: Address:
27 # CHECK-NEXT: Access: -32736
28 # CHECK-NEXT: Initial: 0x0
29 # CHECK-NEXT: Value: 0x0
30 # CHECK-NEXT: Type: Function
31 # CHECK-NEXT: Section: Undefined
32 # CHECK-NEXT: Name: foo0
33 # CHECK-NEXT: }
34 # CHECK-NEXT: ]
36 .text
37 .global __start
38 __start:
39 lw $4, %got(data)($28)
40 addiu $4, $4, %lo(data)
41 lw $25, %call16(foo0)($28)
43 .data
44 data:
45 .word 0