| # REQUIRES: x86 |
| # RUN: llvm-mc -filetype=obj -triple=x86_64 %s -o %t.o |
| # RUN: ld.lld %t.o -o %t --export-dynamic |
| # RUN: llvm-readelf -r --dyn-syms --hex-dump=.data %t | \ |
| # RUN: FileCheck %s --check-prefixes=NORELOC,COMMON |
| |
| # NORELOC: There are no relocations in this file. |
| |
| # RUN: llvm-mc -filetype=obj -triple=x86_64 %p/Inputs/dummy-shared.s -o %t1.o |
| # RUN: ld.lld %t1.o -shared -o %t1.so |
| # RUN: ld.lld %t.o -o %t %t1.so -pie |
| # RUN: llvm-readelf -r --dyn-syms --hex-dump=.data %t | \ |
| # RUN: FileCheck %s --check-prefixes=RELOC,COMMON |
| |
| # RELOC: Relocation section '.rela.dyn' at offset {{.*}} contains 1 entries: |
| # RELOC-NEXT: Offset Info Type Symbol's Value Symbol's Name + Addend |
| # RELOC-NEXT: {{.*}} 0000000100000001 R_X86_64_64 0000000000000000 foo + 0 |
| |
| # COMMON: Symbol table '.dynsym' contains 2 entries: |
| # COMMON-NEXT: Num: Value Size Type Bind Vis Ndx Name |
| # COMMON-NEXT: 0: 0000000000000000 0 NOTYPE LOCAL DEFAULT UND |
| # COMMON-NEXT: 1: 0000000000000000 0 NOTYPE WEAK DEFAULT UND foo |
| # COMMON: Hex dump of section '.data': |
| # COMMON-NEXT: {{.*}} 00000000 00000000 |
| # COMMON-EMPTY: |
| |
| .weak foo |
| |
| .data |
| .dc.a foo |