63 lines · plain
1// REQUIRES: x862// RUN: llvm-mc %s -o %t.o -filetype=obj -triple=x86_64-pc-linux3// RUN: ld.lld %t.o -o %t.so -shared4// RUN: ld.lld %t.o -o %t.gc.so -shared --gc-sections5// RUN: llvm-readobj -S --section-data %t.so | FileCheck %s6// RUN: llvm-readobj -S --section-data %t.gc.so | FileCheck --check-prefix=GC %s7 8 9// CHECK: Name: .rodata10// CHECK-NEXT: Type: SHT_PROGBITS11// CHECK-NEXT: Flags [12// CHECK-NEXT: SHF_ALLOC13// CHECK-NEXT: SHF_MERGE14// CHECK-NEXT: SHF_STRINGS15// CHECK-NEXT: ]16// CHECK-NEXT: Address:17// CHECK-NEXT: Offset:18// CHECK-NEXT: Size: 819// CHECK-NEXT: Link: 020// CHECK-NEXT: Info: 021// CHECK-NEXT: AddressAlignment: 122// CHECK-NEXT: EntrySize: 123// CHECK-NEXT: SectionData (24// CHECK-NEXT: 0000: 666F6F00 62617200 |foo.bar.|25// CHECK-NEXT: )26 27// GC: Name: .rodata28// GC-NEXT: Type: SHT_PROGBITS29// GC-NEXT: Flags [30// GC-NEXT: SHF_ALLOC31// GC-NEXT: SHF_MERGE32// GC-NEXT: SHF_STRINGS33// GC-NEXT: ]34// GC-NEXT: Address:35// GC-NEXT: Offset:36// GC-NEXT: Size: 437// GC-NEXT: Link: 038// GC-NEXT: Info: 039// GC-NEXT: AddressAlignment: 140// GC-NEXT: EntrySize: 141// GC-NEXT: SectionData (42// GC-NEXT: 0000: 666F6F00 |foo.|43// GC-NEXT: )44 45 .section .text.f,"ax",@progbits46 .globl f47f:48 leaq .L.str(%rip), %rax49 retq50 51 .section .text.g,"ax",@progbits52 .hidden g53 .globl g54g:55 leaq .L.str.1(%rip), %rax56 retq57 58 .section .rodata.str1.1,"aMS",@progbits,159.L.str:60 .asciz "foo"61.L.str.1:62 .asciz "bar"63