blob: 42472c292689f85f8d622db4687e6d180df6dc86 [file] [log] [blame]
Michael J. Spencer2f008242015-09-17 19:58:07 +00001# RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t
Rui Ueyama60fe7fc2015-10-07 17:31:39 +00002# RUN: ld.lld2 %t -o %t2
Michael J. Spencer879b5972015-09-17 21:19:56 +00003# RUN: llvm-readobj -sections -program-headers %t2 | FileCheck %s
Michael J. Spencer2f008242015-09-17 19:58:07 +00004# REQUIRES: x86
5
6# Check that different output sections with the same flags are merged into a
7# single Read/Write PT_LOAD.
8
9.section .r,"a"
10.globl _start
11_start:
12.quad 0
13
14.section .a,"aw"
15.quad 1
16
17.section .b,"aw"
18.quad 2
19
Michael J. Spencer879b5972015-09-17 21:19:56 +000020# CHECK: Name: .r
21# CHECK-NEXT: Type: SHT_PROGBITS
22# CHECK-NEXT: Flags [
23# CHECK-NEXT: SHF_ALLOC
24# CHECK-NEXT: ]
25# CHECK-NEXT: Address:
26# CHECK-NEXT: Offset: 0x1000
27# CHECK-NEXT: Size:
28# CHECK-NEXT: Link:
29# CHECK-NEXT: Info:
30# CHECK-NEXT: AddressAlignment:
31# CHECK-NEXT: EntrySize:
32# CHECK-NEXT: }
33
Michael J. Spencer2f008242015-09-17 19:58:07 +000034# CHECK: ProgramHeaders [
35# CHECK-NEXT: ProgramHeader {
36# CHECK-NEXT: Type: PT_LOAD
37# CHECK-NEXT: Offset: 0x0
38# CHECK-NEXT: VirtualAddress:
39# CHECK-NEXT: PhysicalAddress:
Michael J. Spencer879b5972015-09-17 21:19:56 +000040# CHECK-NEXT: FileSize: 4104
41# CHECK-NEXT: MemSize: 4104
Michael J. Spencer2f008242015-09-17 19:58:07 +000042# CHECK-NEXT: Flags [
43# CHECK-NEXT: PF_R
44# CHECK-NEXT: ]
45# CHECK-NEXT: Alignment:
46# CHECK-NEXT: }
47# CHECK-NEXT: ProgramHeader {
48# CHECK-NEXT: Type: PT_LOAD
49# CHECK-NEXT: Offset:
50# CHECK-NEXT: VirtualAddress:
51# CHECK-NEXT: PhysicalAddress:
52# CHECK-NEXT: FileSize: 16
53# CHECK-NEXT: MemSize: 16
54# CHECK-NEXT: Flags [
55# CHECK-NEXT: PF_R
56# CHECK-NEXT: PF_W
57# CHECK-NEXT: ]
58# CHECK-NEXT: Alignment:
59# CHECK-NEXT: }
60# CHECK-NEXT: ]