32 lines · plain
1; REQUIRES: x862; RUN: rm -fr %t.dir/thinlto-archives3; RUN: mkdir -p %t.dir/thinlto-archives %t.dir/thinlto-archives/a %t.dir/thinlto-archives/b4; RUN: opt -thinlto-bc -o %t.dir/thinlto-archives/main.obj %s5; RUN: opt -thinlto-bc -o %t.dir/thinlto-archives/a/bar.obj %S/Inputs/lto-dep.ll6; RUN: opt -thinlto-bc -o %t.dir/thinlto-archives/b/bar.obj %S/Inputs/bar.ll7; RUN: llvm-ar crs %t.dir/thinlto-archives/a.lib %t.dir/thinlto-archives/a/bar.obj8; RUN: llvm-ar crs %t.dir/thinlto-archives/b.lib %t.dir/thinlto-archives/b/bar.obj9; RUN: lld-link -out:%t.dir/thinlto-archives/main.exe -entry:main \10; RUN: -lldsavetemps -subsystem:console %t.dir/thinlto-archives/main.obj \11; RUN: %t.dir/thinlto-archives/a.lib %t.dir/thinlto-archives/b.lib12; RUN: FileCheck %s < %t.dir/thinlto-archives/main.exe.resolution.txt13 14; CHECK: {{/thinlto-archives/main.obj$}}15; CHECK: {{^-r=.*/thinlto-archives/main.obj,main,px$}}16; CHECK: {{/thinlto-archives/a.libbar.obj[0-9]+$}}17; CHECK-NEXT: {{^-r=.*/thinlto-archives/a.libbar.obj[0-9]+,foo,p$}}18; CHECK-NEXT: {{/thinlto-archives/b.libbar.obj[0-9]+$}}19; CHECK-NEXT: {{^-r=.*/thinlto-archives/b.libbar.obj[0-9]+,bar,p$}}20 21target datalayout = "e-m:w-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128"22target triple = "x86_64-pc-windows-msvc"23 24declare void @bar()25declare void @foo()26 27define i32 @main() {28 call void @foo()29 call void @bar()30 ret i32 031}32