87 lines · plain
1; RUN: llvm-as < %s | llvm-dis | FileCheck %s2; RUN: verify-uselistorder < %s3 4declare void @extern_func()5 6define void @call_extern_func() {7; CHECK: call void dso_local_equivalent @extern_func()8 call void dso_local_equivalent @extern_func()9 ret void10}11 12declare hidden void @hidden_func()13declare protected void @protected_func()14declare dso_local void @dso_local_func()15define internal void @internal_func() {16entry:17 ret void18}19define private void @private_func() {20entry:21 ret void22}23 24; CHECK: call void dso_local_equivalent @hidden_func()25define void @call_hidden_func() {26 call void dso_local_equivalent @hidden_func()27 ret void28}29 30define void @call_protected_func() {31; CHECK: call void dso_local_equivalent @protected_func()32 call void dso_local_equivalent @protected_func()33 ret void34}35 36define void @call_dso_local_func() {37; CHECK: call void dso_local_equivalent @dso_local_func()38 call void dso_local_equivalent @dso_local_func()39 ret void40}41 42define void @call_internal_func() {43; CHECK: call void dso_local_equivalent @internal_func()44 call void dso_local_equivalent @internal_func()45 ret void46}47 48define void @aliasee_func() {49entry:50 ret void51}52 53@alias_func = alias void (), void ()* @aliasee_func54@dso_local_alias_func = dso_local alias void (), void ()* @aliasee_func55 56define void @call_alias_func() {57; CHECK: call void dso_local_equivalent @alias_func()58 call void dso_local_equivalent @alias_func()59 ret void60}61 62define void @call_dso_local_alias_func() {63; CHECK: call void dso_local_equivalent @dso_local_alias_func()64 call void dso_local_equivalent @dso_local_alias_func()65 ret void66}67 68@ifunc_func = ifunc void (), void ()* ()* @resolver69@dso_local_ifunc_func = dso_local ifunc void (), void ()* ()* @resolver70 71define internal void ()* @resolver() {72entry:73 ret void ()* null74}75 76define void @call_ifunc_func() {77; CHECK: call void dso_local_equivalent @ifunc_func()78 call void dso_local_equivalent @ifunc_func()79 ret void80}81 82define void @call_dso_local_ifunc_func() {83; CHECK: call void dso_local_equivalent @dso_local_ifunc_func()84 call void dso_local_equivalent @dso_local_ifunc_func()85 ret void86}87