2 # RUN: llvm-mc -filetype=obj -triple=x86_64 %s -o %t.o
4 # RUN: ld.lld %t.o -o %t
5 # RUN: llvm-readelf -S %t | FileCheck --check-prefix=SEC %s
6 # RUN: llvm-readelf -x .cst %t | FileCheck --check-prefix=HEX %s
8 # RUN: ld.lld -O0 -r %t.o -o %t1.o
9 # RUN: llvm-readelf -S %t1.o | FileCheck --check-prefix=SEC %s
10 # RUN: llvm-readelf -x .cst %t1.o | FileCheck --check-prefix=HEX %s
12 ## Check that SHF_MERGE sections with the same name, sh_flags and sh_entsize
13 ## are grouped together and can be merged within the group.
15 ## .cst 0 and .cst 1 are merged (sh_entsize=4). The result and .cst 2 and
16 ## combined (sh_entsize=8). The output sh_entsize is 0.
17 # SEC: Name Type {{.*}} Size ES Flg Lk Inf Al
18 # SEC: .cst PROGBITS {{.*}} 000020 00 AM 0 0 8
20 # HEX: Hex dump of section '.cst':
21 # HEX-NEXT: [[#%x,]] 00000000 02000000 01000000 00000000
22 # HEX-NEXT: [[#%x,]] 01000000 00000000 03000000 00000000
24 .section .cst,"aM",@progbits,4,unique,0
30 .section .cst,"aM",@progbits,4,unique,1
36 .section .cst,"aM",@progbits,8,unique,2