101 lines · plain
1# REQUIRES: x86-registered-target2 3# RUN: llvm-mc -filetype=obj -triple=x86_64-apple-macos %s -o %t4 5# RUN: llvm-objcopy --weaken %t %t26# RUN: llvm-readobj --symbols %t2 --sort-symbols=name | FileCheck %s7 8# CHECK: Symbols [9# CHECK-NEXT: Symbol {10# CHECK-NEXT: Name: _global ({{[0-9]+}})11# CHECK-NEXT: Extern12# CHECK-NEXT: Type: Section (0xE)13# CHECK-NEXT: Section: __text (0x1)14# CHECK-NEXT: RefType: UndefinedNonLazy (0x0)15# CHECK-NEXT: Flags [ (0x80)16# CHECK-NEXT: WeakDef (0x80)17# CHECK-NEXT: ]18# CHECK-NEXT: Value: 0x019# CHECK-NEXT: }20# CHECK-NEXT: Symbol {21# CHECK-NEXT: Name: _global_data ({{[0-9]+}})22# CHECK-NEXT: Extern23# CHECK-NEXT: Type: Section (0xE)24# CHECK-NEXT: Section: __const (0x2)25# CHECK-NEXT: RefType: UndefinedNonLazy (0x0)26# CHECK-NEXT: Flags [ (0x80)27# CHECK-NEXT: WeakDef (0x80)28# CHECK-NEXT: ]29# CHECK-NEXT: Value: 0x030# CHECK-NEXT: }31# CHECK-NEXT: Symbol {32# CHECK-NEXT: Name: _local ({{[0-9]+}})33# CHECK-NEXT: Type: Section (0xE)34# CHECK-NEXT: Section: __text (0x1)35# CHECK-NEXT: RefType: UndefinedNonLazy (0x0)36# CHECK-NEXT: Flags [ (0x0)37# CHECK-NEXT: ]38# CHECK-NEXT: Value: 0x039# CHECK-NEXT: }40# CHECK-NEXT: Symbol {41# CHECK-NEXT: Name: _local_data ({{[0-9]+}})42# CHECK-NEXT: Type: Section (0xE)43# CHECK-NEXT: Section: __const (0x2)44# CHECK-NEXT: RefType: UndefinedNonLazy (0x0)45# CHECK-NEXT: Flags [ (0x0)46# CHECK-NEXT: ]47# CHECK-NEXT: Value: 0x048# CHECK-NEXT: }49# CHECK-NEXT: Symbol {50# CHECK-NEXT: Name: _weak ({{[0-9]+}})51# CHECK-NEXT: Type: Section (0xE)52# CHECK-NEXT: Section: __text (0x1)53# CHECK-NEXT: RefType: UndefinedNonLazy (0x0)54# CHECK-NEXT: Flags [ (0x80)55# CHECK-NEXT: WeakDef (0x80)56# CHECK-NEXT: ]57# CHECK-NEXT: Value: 0x058# CHECK-NEXT: }59# CHECK-NEXT: Symbol {60# CHECK-NEXT: Name: _weak_data ({{[0-9]+}})61# CHECK-NEXT: Type: Section (0xE)62# CHECK-NEXT: Section: __const (0x2)63# CHECK-NEXT: RefType: UndefinedNonLazy (0x0)64# CHECK-NEXT: Flags [ (0x80)65# CHECK-NEXT: WeakDef (0x80)66# CHECK-NEXT: ]67# CHECK-NEXT: Value: 0x068# CHECK-NEXT: }69# CHECK-NEXT: Symbol {70# CHECK-NEXT: Name: _weak_global ({{[0-9]+}})71# CHECK-NEXT: Extern72# CHECK-NEXT: Type: Section (0xE)73# CHECK-NEXT: Section: __text (0x1)74# CHECK-NEXT: RefType: UndefinedNonLazy (0x0)75# CHECK-NEXT: Flags [ (0x80)76# CHECK-NEXT: WeakDef (0x80)77# CHECK-NEXT: ]78# CHECK-NEXT: Value: 0x079# CHECK-NEXT: }80# CHECK-NEXT: ]81 82.globl _global83_global:84 85_local:86 87.weak_definition _weak88_weak:89 90.weak_definition _weak_global91.globl _weak_global92_weak_global:93 94.section __TEXT,__const95.globl _global_data96_global_data:97_local_data:98 99.weak_definition _weak_data100_weak_data:101