[llvm-shlib] Fix the version naming style of libLLVM for Windows (#85710)
[llvm-project.git] / llvm / test / LTO / X86 / hidden-escaped-symbols.ll
blobaec617e25d3d8e9fa420f164a0bddbb011eb53cc
1 ; Check interaction between LTO and LLVM mangling escape char, see #57864.
3 ; RUN: split-file %s %t
4 ; RUN: opt %t/hide-me.ll -o %t/hide-me.bc
5 ; RUN: opt %t/ref.ll -o %t/ref.bc
6 ; RUN: llvm-lto2 run \
7 ; RUN:               -r %t/hide-me.bc,_hide_me,p \
8 ; RUN:               -r %t/ref.bc,_main,plx  \
9 ; RUN:               -r %t/ref.bc,_hide_me,l \
10 ; RUN:               --select-save-temps=precodegen \
11 ; RUN:               -o %t/out \
12 ; RUN:               %t/hide-me.bc  %t/ref.bc
13 ; RUN: llvm-dis %t/out.0.5.precodegen.bc -o - | FileCheck %s
16 ;--- hide-me.ll
17 target datalayout = "e-m:o-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128"
18 target triple = "x86_64-apple-macosx10.7.0"
20 @hide_me = hidden local_unnamed_addr global i8 8, align 1
22 ;--- ref.ll
23 target datalayout = "e-m:o-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128"
24 target triple = "x86_64-apple-macosx10.7.0"
26 @"\01_hide_me" = external local_unnamed_addr global i8
28 define i8 @main() {
29   %1 = load i8, ptr @"\01_hide_me", align 1
30   ret i8 %1
34 ; CHECK: @hide_me = hidden local_unnamed_addr global i8 8, align 1
35 ; CHECK: @"\01_hide_me" = external dso_local local_unnamed_addr global i8
37 ; CHECK: define dso_local i8 @main() local_unnamed_addr #0 {
38 ; CHECK:   %1 = load i8, ptr @"\01_hide_me", align 1
39 ; CHECK:   ret i8 %1
40 ; CHECK: }