1; RUN: llc -verify-machineinstrs -mtriple powerpc-ibm-aix-xcoff -mcpu=pwr4 \ 2; RUN: -mattr=-altivec -data-sections=false < %s | \ 3; RUN: FileCheck --check-prefix=VISIBILITY-ASM %s 4; RUN: llc -verify-machineinstrs -mtriple powerpc-ibm-aix-xcoff -mcpu=pwr4 \ 5; RUN: -mattr=-altivec -data-sections=false -ignore-xcoff-visibility < %s | \ 6; RUN: FileCheck --check-prefix=IGNOREVISIBILITY-ASM %s 7; RUN: llc -verify-machineinstrs -mtriple powerpc64-ibm-aix-xcoff -mcpu=pwr4 \ 8; RUN: -mattr=-altivec -data-sections=false < %s | \ 9; RUN: FileCheck --check-prefix=VISIBILITY-ASM %s 10; RUN: llc -verify-machineinstrs -mtriple powerpc64-ibm-aix-xcoff -mcpu=pwr4 \ 11; RUN: -mattr=-altivec -data-sections=false -ignore-xcoff-visibility < %s | \ 12; RUN: FileCheck --check-prefix=IGNOREVISIBILITY-ASM %s 13 14@foo_p = global ptr @zoo_extern_h, align 4 15@b = protected global i32 0, align 4 16 17define hidden void @foo_h(ptr %p) { 18entry: 19 %p.addr = alloca ptr, align 4 20 store ptr %p, ptr %p.addr, align 4 21 %0 = load ptr, ptr %p.addr, align 4 22 %1 = load i32, ptr %0, align 4 23 %inc = add nsw i32 %1, 1 24 store i32 %inc, ptr %0, align 4 25 ret void 26} 27 28declare hidden void @zoo_extern_h() 29 30define protected void @bar() { 31entry: 32 call void @foo_h(ptr @b) 33 %0 = load ptr, ptr @foo_p, align 4 34 call void %0() 35 ret void 36} 37 38; VISIBILITY-ASM: .globl foo_h[DS],hidden 39; VISIBILITY-ASM: .globl .foo_h,hidden 40; VISIBILITY-ASM: .globl bar[DS],protected 41; VISIBILITY-ASM: .globl .bar,protected 42; VISIBILITY-ASM: .globl b,protected 43 44; IGNOREVISIBILITY-ASM: .globl foo_h[DS] 45; IGNOREVISIBILITY-ASM: .globl .foo_h 46; IGNOREVISIBILITY-ASM: .globl bar[DS] 47; IGNOREVISIBILITY-ASM: .globl .bar 48; IGNOREVISIBILITY-ASM: .globl b 49