1 ; RUN: not llvm-lto -lto-strip-invalid-debug-info=false \ 2 ; RUN: -o %t.o %S/Inputs/strip-debug-info.bc 2>&1 | \ 3 ; RUN: FileCheck %s -allow-empty -check-prefix=CHECK-ERR 4 ; RUN: llvm-lto -lto-strip-invalid-debug-info=true \ 5 ; RUN: -exported-symbol foo -exported-symbol _foo \ 6 ; RUN: -o %t.o %S/Inputs/strip-debug-info.bc 2>&1 | \ 7 ; RUN: FileCheck %s -allow-empty -check-prefix=CHECK-WARN 8 ; RUN: llvm-nm %t.o | FileCheck %s 9 10 ; CHECK-ERR: Broken module found, compilation aborted 11 ; CHECK-WARN: Invalid debug info found, debug info will be stripped 12 ; CHECK: foo 13 define void @foo() { 14 ret void 15 } 16 17 !llvm.module.flags = !{!0} 18 !llvm.dbg.cu = !{!1} 19 20 !0 = !{i32 2, !"Debug Info Version", i32 3} 21 !1 = !DIFile(filename: "broken", directory: "") 22