xref: /llvm-project/llvm/test/DebugInfo/fixed-point.ll (revision 0b2b91ee9cf92d08e5eec159545ce4147b8d908e)
1;; This fixes https://github.com/llvm/llvm-project/issues/81555
2; REQUIRES: object-emission
3; RUN: %llc_dwarf %s -filetype=obj -o - | llvm-dwarfdump - | FileCheck %s
4; RUN: %llc_dwarf %s -filetype=obj -o - | llvm-dwarfdump - -verify | FileCheck %s --check-prefix=VERIFY
5
6; VERIFY-NOT: error:
7
8; CHECK: {{.*}}:   DW_TAG_base_type
9; CHECK-NEXT:          DW_AT_name  ("var")
10; CHECK-NEXT:          DW_AT_encoding  (DW_ATE_signed_fixed)
11define void @func() !dbg !26 {
12entry:
13  %classifier = alloca i32, align 4
14  tail call void @llvm.dbg.value(metadata i32 32768, metadata !37, metadata !DIExpression()), !dbg !39
15  store i32 32768, ptr %classifier, align 4, !dbg !39
16  ret void
17}
18
19declare void @llvm.dbg.value(metadata, metadata, metadata)
20
21!llvm.dbg.cu = !{!0}
22!llvm.module.flags = !{!19}
23
24!0 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus_14, file: !1, emissionKind: FullDebug)
25!1 = !DIFile(filename: "a", directory: "")
26!6 = !DIBasicType(name: "var", size: 32, encoding: DW_ATE_signed_fixed)
27!19 = !{i32 2, !"Debug Info Version", i32 3}
28!3 = !DISubroutineType(types: null)
29!26 = distinct !DISubprogram(unit: !0, type: !3)
30!37 = !DILocalVariable(name: "intercept", arg: 2, scope: !26, file: !1, line: 7, type: !6)
31!39 = !DILocation(line: 0, scope: !26)
32
33