xref: /llvm-project/llvm/test/DebugInfo/MSP430/global-var.ll (revision 5b1337184bfb12dd0ec9141765d57677438005b7)
1*5b133718SJack Andersen; RUN: llc --filetype=obj -o %t < %s
2*5b133718SJack Andersen; RUN: llvm-dwarfdump --debug-info %t | FileCheck %s
3*5b133718SJack Andersen; RUN: llvm-dwarfdump --verify %t
4*5b133718SJack Andersen
5*5b133718SJack Andersen; CHECK:      DW_TAG_variable
6*5b133718SJack Andersen; CHECK-NEXT:   DW_AT_name      ("global_var")
7*5b133718SJack Andersen; CHECK-NEXT:   DW_AT_type      ({{0x[0-9]+}} "char")
8*5b133718SJack Andersen; CHECK-NEXT:   DW_AT_external  (true)
9*5b133718SJack Andersen; CHECK-NEXT:   DW_AT_decl_file ("/tmp{{[/\\]}}global-var.c")
10*5b133718SJack Andersen; CHECK-NEXT:   DW_AT_decl_line (1)
11*5b133718SJack Andersen; CHECK-NEXT:   DW_AT_location  (DW_OP_addr 0x0)
12*5b133718SJack Andersen
13*5b133718SJack Andersen; ModuleID = 'global-var.c'
14*5b133718SJack Andersensource_filename = "global-var.c"
15*5b133718SJack Andersentarget datalayout = "e-m:e-p:16:16-i32:16-i64:16-f32:16-f64:16-a:8-n8:16-S16"
16*5b133718SJack Andersentarget triple = "msp430"
17*5b133718SJack Andersen
18*5b133718SJack Andersen@global_var = dso_local global i8 42, align 1, !dbg !0
19*5b133718SJack Andersen
20*5b133718SJack Andersen; Function Attrs: noinline nounwind optnone
21*5b133718SJack Andersendefine dso_local i16 @main() #0 !dbg !10 {
22*5b133718SJack Andersenentry:
23*5b133718SJack Andersen  ret i16 0, !dbg !15
24*5b133718SJack Andersen}
25*5b133718SJack Andersen
26*5b133718SJack Andersenattributes #0 = { noinline nounwind optnone "frame-pointer"="none" "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" }
27*5b133718SJack Andersen
28*5b133718SJack Andersen!llvm.dbg.cu = !{!2}
29*5b133718SJack Andersen!llvm.module.flags = !{!6, !7, !8}
30*5b133718SJack Andersen!llvm.ident = !{!9}
31*5b133718SJack Andersen
32*5b133718SJack Andersen!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
33*5b133718SJack Andersen!1 = distinct !DIGlobalVariable(name: "global_var", scope: !2, file: !3, line: 1, type: !5, isLocal: false, isDefinition: true)
34*5b133718SJack Andersen!2 = distinct !DICompileUnit(language: DW_LANG_C99, file: !3, producer: "clang version 14.0.0 (https://github.com/llvm/llvm-project ...)", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, globals: !4, splitDebugInlining: false, nameTableKind: None)
35*5b133718SJack Andersen!3 = !DIFile(filename: "global-var.c", directory: "/tmp")
36*5b133718SJack Andersen!4 = !{!0}
37*5b133718SJack Andersen!5 = !DIBasicType(name: "char", size: 8, encoding: DW_ATE_signed_char)
38*5b133718SJack Andersen!6 = !{i32 7, !"Dwarf Version", i32 4}
39*5b133718SJack Andersen!7 = !{i32 2, !"Debug Info Version", i32 3}
40*5b133718SJack Andersen!8 = !{i32 1, !"wchar_size", i32 2}
41*5b133718SJack Andersen!9 = !{!"clang version 14.0.0 (https://github.com/llvm/llvm-project ...)"}
42*5b133718SJack Andersen!10 = distinct !DISubprogram(name: "main", scope: !3, file: !3, line: 2, type: !11, scopeLine: 2, spFlags: DISPFlagDefinition, unit: !2, retainedNodes: !14)
43*5b133718SJack Andersen!11 = !DISubroutineType(types: !12)
44*5b133718SJack Andersen!12 = !{!13}
45*5b133718SJack Andersen!13 = !DIBasicType(name: "int", size: 16, encoding: DW_ATE_signed)
46*5b133718SJack Andersen!14 = !{}
47*5b133718SJack Andersen!15 = !DILocation(line: 2, column: 13, scope: !10)
48