summaryrefslogtreecommitdiff
path: root/test/LTO/X86/diagnostic-handler-noexit.ll
diff options
context:
space:
mode:
Diffstat (limited to 'test/LTO/X86/diagnostic-handler-noexit.ll')
-rw-r--r--test/LTO/X86/diagnostic-handler-noexit.ll13
1 files changed, 13 insertions, 0 deletions
diff --git a/test/LTO/X86/diagnostic-handler-noexit.ll b/test/LTO/X86/diagnostic-handler-noexit.ll
new file mode 100644
index 0000000000000..be768c900f148
--- /dev/null
+++ b/test/LTO/X86/diagnostic-handler-noexit.ll
@@ -0,0 +1,13 @@
+; LTO default diagnostic handler should be non-exiting.
+; This test verifies that after addModule() encounters an error, the diagnostic
+; handler does not call exit(1) and instead returns to the caller of addModule.
+
+; RUN: llvm-as <%s >%t1
+; RUN: llvm-as <%s >%t2
+; RUN: not llvm-lto -o /dev/null %t1 %t2 2>&1 | FileCheck %s
+
+target triple = "x86_64-unknown-linux-gnu"
+
+; CHECK: Linking globals named 'goodboy': symbol multiply defined!
+; CHECK: llvm-lto{{.*}}: error adding file
+@goodboy = global i32 3203383023, align 4 ; 0xbeefbeef