xref: /llvm-project-15.0.7/lld/test/ELF/linkerscript/common.s (revision 052d95a6)
  • Home
  • History
  • Annotate
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# REQUIRES: x86
2# RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t
3# RUN: echo "SECTIONS { . = SIZEOF_HEADERS; .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:
11# CHECK:         Name: .common
12# CHECK-NEXT:    Type: SHT_NOBITS
13# CHECK-NEXT:    Flags [
14# CHECK-NEXT:      SHF_ALLOC
15# CHECK-NEXT:      SHF_WRITE
16# CHECK-NEXT:    ]
17# CHECK-NEXT:    Address: 0x200
18# CHECK-NEXT:    Offset: 0x
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
27# CHECK-NEXT:    Value: 0x280
28# CHECK-NEXT:    Size: 128
29# CHECK-NEXT:    Binding: Global
30# CHECK-NEXT:    Type: Object
31# CHECK-NEXT:    Other: 0
32# CHECK-NEXT:    Section: .common
33# CHECK-NEXT:  }
34# CHECK-NEXT:  Symbol {
35# CHECK-NEXT:    Name: q2
36# CHECK-NEXT:    Value: 0x200
37# CHECK-NEXT:    Size: 128
38# CHECK-NEXT:    Binding: Global
39# CHECK-NEXT:    Type: Object
40# CHECK-NEXT:    Other: 0
41# CHECK-NEXT:    Section: .common
42# CHECK-NEXT:  }
43
44.globl _start
45_start:
46  jmp _start
47
48.comm q1,128,8
49.comm q2,128,256
50

served by {OpenGrok

Last Index Update: Tue Oct 21 18:42:31 GMT 2025