1; REQUIRES: x86 2; RUN: llvm-as %s -o %t1.o 3; RUN: llvm-mc -triple=x86_64-pc-linux %p/Inputs/visibility.s -o %t2.o -filetype=obj 4; RUN: ld.lld %t1.o %t2.o -o %t.so -shared -save-temps 5; RUN: llvm-dis < %t.so.0.2.internalize.bc | FileCheck --check-prefix=IR %s 6; RUN: llvm-readobj --symbols %t.so | FileCheck %s 7 8; CHECK: Name: a 9; CHECK-NEXT: Value: 10; CHECK-NEXT: Size: 0 11; CHECK-NEXT: Binding: Local 12; CHECK-NEXT: Type: None 13; CHECK-NEXT: Other [ (0x2) 14; CHECK-NEXT: STV_HIDDEN 15; CHECK-NEXT: ] 16; CHECK-NEXT: Section: .data 17 18; CHECK: Name: g 19; CHECK-NEXT: Value: 20; CHECK-NEXT: Size: 0 21; CHECK-NEXT: Binding: Local 22; CHECK-NEXT: Type: None 23; CHECK-NEXT: Other [ (0x2) 24; CHECK-NEXT: STV_HIDDEN 25; CHECK-NEXT: ] 26; CHECK-NEXT: Section: .text 27 28target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128" 29target triple = "x86_64-unknown-linux-gnu" 30 31declare hidden void @g() 32; IR: declare hidden void @g() 33 34define void @f() { 35 call void @g() 36 ret void 37} 38@a = weak hidden global i32 42 39