1; REQUIRES: x86 2; RUN: rm -fr %t 3; RUN: mkdir %t 4; RUN: opt -thinlto-bc -o %t/main.obj %s 5; RUN: opt -thinlto-bc -o %t/foo.obj %S/Inputs/lto-dep.ll 6; RUN: not lld-link -lldsavetemps -out:%t/main.exe -entry:main \ 7; RUN: -subsystem:console %t/main.obj %t/foo.obj 2>&1 | FileCheck %s 8; RUN: ls %t | sort | FileCheck --check-prefix=FILE %s 9; RUN: ls %t | count 2 10 11; Check that the undefined symbol is reported, and that only the two 12; object files we created are present in the directory (indicating that 13; LTO did not run). 14; CHECK: undefined symbol: bar 15; CHECK: referenced by {{.*}}unresolved-lto-bitcode.ll 16; CHECK: >>> {{.*}}unresolved-lto-bitcode.ll.tmp/main.obj 17; FILE: foo.obj 18; FILE: main.obj 19 20target datalayout = "e-m:w-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128" 21target triple = "x86_64-pc-windows-msvc" 22 23define i32 @main() { 24 call void @foo() 25 call void @bar() 26 ret i32 0 27} 28 29declare void @bar() 30declare void @foo() 31