blob: da6657173bfd6c7379170ab3c09c9324e398daea [file] [log] [blame]
Fangrui Songb6772b82018-06-26 22:20:04 +00001// REQUIRES: x86
Rafael Espindoladaa92a62015-08-31 01:16:19 +00002// RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %s -o %t
3// RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %p/Inputs/common.s -o %t2
Rafael Espindola9c8904f2015-11-18 06:11:01 +00004// RUN: ld.lld %t %t2 -o %t3
Rafael Espindolace8c9c02015-08-31 22:55:21 +00005// RUN: llvm-readobj -t -s %t3 | FileCheck %s
Rafael Espindoladaa92a62015-08-31 01:16:19 +00006
Rafael Espindolace8c9c02015-08-31 22:55:21 +00007// CHECK: Name: .bss
8// CHECK-NEXT: Type: SHT_NOBITS
9// CHECK-NEXT: Flags [
10// CHECK-NEXT: SHF_ALLOC
11// CHECK-NEXT: SHF_WRITE
12// CHECK-NEXT: ]
Ed Maste8fd01962016-11-23 17:44:02 +000013// CHECK-NEXT: Address: 0x201000
Rafael Espindolab56cb942015-09-01 00:16:38 +000014// CHECK-NEXT: Offset:
Dmitry Mikulin1e30f072017-09-08 16:22:43 +000015// CHECK-NEXT: Size: 36
Rafael Espindolae711fc32016-03-07 17:43:39 +000016// CHECK-NEXT: Link: 0
17// CHECK-NEXT: Info: 0
18// CHECK-NEXT: AddressAlignment: 16
Rafael Espindolace8c9c02015-08-31 22:55:21 +000019
Rafael Espindola40102eb2015-09-17 18:26:25 +000020// CHECK: Name: sym1
Dmitry Mikulin1e30f072017-09-08 16:22:43 +000021// CHECK-NEXT: Value: 0x201000
Rafael Espindola40102eb2015-09-17 18:26:25 +000022// CHECK-NEXT: Size: 8
Rafael Espindolab56cb942015-09-01 00:16:38 +000023// CHECK-NEXT: Binding: Global
24// CHECK-NEXT: Type: Object
25// CHECK-NEXT: Other: 0
26// CHECK-NEXT: Section: .bss
27
Rafael Espindoladaa92a62015-08-31 01:16:19 +000028// CHECK: Name: sym2
Dmitry Mikulin1e30f072017-09-08 16:22:43 +000029// CHECK-NEXT: Value: 0x201008
Rafael Espindoladaa92a62015-08-31 01:16:19 +000030// CHECK-NEXT: Size: 8
31// CHECK-NEXT: Binding: Global
32// CHECK-NEXT: Type: Object
33// CHECK-NEXT: Other: 0
Rafael Espindola8b09d682015-08-31 22:33:21 +000034// CHECK-NEXT: Section: .bss
Rafael Espindoladaa92a62015-08-31 01:16:19 +000035
Rafael Espindola40102eb2015-09-17 18:26:25 +000036// CHECK: Name: sym3
Dmitry Mikulin1e30f072017-09-08 16:22:43 +000037// CHECK-NEXT: Value: 0x201010
Rafael Espindola40102eb2015-09-17 18:26:25 +000038// CHECK-NEXT: Size: 2
39// CHECK-NEXT: Binding: Global
40// CHECK-NEXT: Type: Object
41// CHECK-NEXT: Other: 0
42// CHECK-NEXT: Section: .bss
43
44// CHECK: Name: sym4
Dmitry Mikulin1e30f072017-09-08 16:22:43 +000045// CHECK-NEXT: Value: 0x201020
Rafael Espindola40102eb2015-09-17 18:26:25 +000046// CHECK-NEXT: Size: 4
Rafael Espindoladaa92a62015-08-31 01:16:19 +000047// CHECK-NEXT: Binding: Global
48// CHECK-NEXT: Type: Object
49// CHECK-NEXT: Other: 0
Rafael Espindola8b09d682015-08-31 22:33:21 +000050// CHECK-NEXT: Section: .bss
Rafael Espindoladaa92a62015-08-31 01:16:19 +000051
52
53.globl _start
54_start:
55
56.comm sym1,4,4
57.comm sym2,8,4
Rafael Espindolab56cb942015-09-01 00:16:38 +000058.comm sym3,2,2
Rafael Espindolaf31f9612015-09-01 01:19:12 +000059.comm sym4,4,2