xref: /llvm-project/llvm/test/tools/llvm-reduce/distinct-dimetadata-nullptr.ll (revision 0988bf8d75de2f55484db02391db5165e7b7d37d)
1; Test checking that distinct metadata reduction pass handles null pointers properly.
2; This test will lead to a crash if nullptrs inside distinct metadata are not handled correctly, in this case inside DICompileUnit
3
4; RUN: llvm-reduce --delta-passes=distinct-metadata --aggressive-named-md-reduction --test FileCheck --test-arg %s --test-arg --input-file %s -o %t
5; CHECK: {{.*}}distinct !DICompileUnit{{.*}}
6
7
8!llvm.module.flags = !{!0, !1, !6}
9!llvm.dbg.cu = !{!4}
10
11!0 = !{i32 7, !"Dwarf Version", i32 4}
12!1 = !{i32 2, !"Source Lang Literal", !2}
13!2 = !{!3}
14!3 = !{!4, i32 33}
15!4 = distinct !DICompileUnit(language: DW_LANG_OpenCL, file: !5, producer: "foobar", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug)
16!5 = !DIFile(filename: "main.cpp", directory: "foodir")
17!6 = !{i32 2, !"Debug Info Version", i32 3}
18