blob: c04c129dabce72071fe1766dbb38e6da3a82895c [file] [log] [blame]
Eugene Leviant3e6b0272016-07-28 19:24:13 +00001# REQUIRES: x86
2# RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t
3# RUN: echo "SECTIONS { .common : { *(COMMON) } }" > %t.script
4# RUN: ld.lld -o %t1 --script %t.script %t
5# RUN: llvm-readobj -s -t %t1 | FileCheck %s
6
7# q2 alignment is greater than q1, so it should have smaller offset
8# because of sorting
9# CHECK: Section {
10# CHECK: Index: 1
11# CHECK-NEXT: Name: .common (1)
12# CHECK-NEXT: Type: SHT_NOBITS (0x8)
13# CHECK-NEXT: Flags [ (0x3)
14# CHECK-NEXT: SHF_ALLOC (0x2)
15# CHECK-NEXT: SHF_WRITE (0x1)
16# CHECK-NEXT: ]
17# CHECK-NEXT: Address: 0x200
18# CHECK-NEXT: Offset: 0x158
19# CHECK-NEXT: Size: 256
20# CHECK-NEXT: Link: 0
21# CHECK-NEXT: Info: 0
22# CHECK-NEXT: AddressAlignment: 256
23# CHECK-NEXT: EntrySize: 0
24# CHECK-NEXT: }
25# CHECK: Symbol {
26# CHECK: Name: q1 (8)
27# CHECK-NEXT: Value: 0x280
28# CHECK-NEXT: Size: 128
29# CHECK-NEXT: Binding: Global (0x1)
30# CHECK-NEXT: Type: Object (0x1)
31# CHECK-NEXT: Other: 0
32# CHECK-NEXT: Section: .common (0x1)
33# CHECK-NEXT: }
34# CHECK-NEXT: Symbol {
35# CHECK-NEXT: Name: q2 (11)
36# CHECK-NEXT: Value: 0x200
37# CHECK-NEXT: Size: 128
38# CHECK-NEXT: Binding: Global (0x1)
39# CHECK-NEXT: Type: Object (0x1)
40# CHECK-NEXT: Other: 0
41# CHECK-NEXT: Section: .common (0x1)
42# CHECK-NEXT: }
43
44.globl _start
45_start:
46 jmp _start
47
48.comm q1,128,8
49.comm q2,128,256