diff options
| author | Adrian Prantl <aprantl@apple.com> | 2017-08-30 16:49:21 +0000 |
|---|---|---|
| committer | Adrian Prantl <aprantl@apple.com> | 2017-08-30 16:49:21 +0000 |
| commit | 8550e88eb796dc512253b1e2c359dd607189c239 (patch) | |
| tree | 9ac99de609cfa25b17261593dbe61e81ff60476c /llvm/test | |
| parent | afce0baacd6a10e891518d3f584600de366a5e0b (diff) | |
| download | bcm5719-llvm-8550e88eb796dc512253b1e2c359dd607189c239.tar.gz bcm5719-llvm-8550e88eb796dc512253b1e2c359dd607189c239.zip | |
Verifier: Verify the correctness of fragment expressions attached to globals.
llvm-svn: 312139
Diffstat (limited to 'llvm/test')
| -rw-r--r-- | llvm/test/Verifier/fragment.ll | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/llvm/test/Verifier/fragment.ll b/llvm/test/Verifier/fragment.ll new file mode 100644 index 00000000000..ed5df89cb31 --- /dev/null +++ b/llvm/test/Verifier/fragment.ll @@ -0,0 +1,19 @@ +; RUN: not opt -S <%s 2>&1| FileCheck %s + +; CHECK: fragment is larger than or outside of variable +; CHECK: !DIGlobalVariableExpression(var: ![[VAR:[0-9]+]], +; CHECK-SAME: expr: !DIExpression(DW_OP_LLVM_fragment, 0, 64)) +; CHECK: ![[VAR]] = !DIGlobalVariable(name: "g" + +@g = common global i32 0, align 4, !dbg !0 + +!llvm.dbg.cu = !{!1} +!llvm.module.flags = !{!6, !7} + +!0 = !DIGlobalVariableExpression(var: !3, expr: !DIExpression(DW_OP_LLVM_fragment, 0, 64)) +!1 = distinct !DICompileUnit(language: DW_LANG_C99, file: !2, emissionKind: FullDebug) +!2 = !DIFile(filename: "a.c", directory: "/") +!3 = !DIGlobalVariable(name: "g", scope: !1, file: !2, line: 1, type: !5, isLocal: false, isDefinition: true) +!5 = !DIBasicType(name: "int", size: 32, encoding: DW_ATE_signed) +!6 = !{i32 2, !"Dwarf Version", i32 4} +!7 = !{i32 2, !"Debug Info Version", i32 3} |

