|
3 | 3 |
|
4 | 4 | ; REQUIRES: object-emission |
5 | 5 | ; RUN: %llc_dwarf %s -filetype=obj -o - | llvm-dwarfdump - | FileCheck %s |
| 6 | +; RUN: llvm-as < %s | llvm-dis | llvm-as | llvm-dis | FileCheck %s -check-prefix=CHECK-IR |
| 7 | +; RUN: verify-uselistorder %s |
6 | 8 |
|
7 | 9 | ; Example 1: BitField with storage offset (extraData: i64 0) |
8 | 10 | %struct.BitField = type { i8 } |
|
33 | 35 | ; extraData node definitions |
34 | 36 | !15 = !{i64 0} ; BitField storage offset |
35 | 37 | !22 = !{i32 42} ; Static member constant value |
36 | | -!33 = !{!42} |
| 38 | +!33 = !{i32 100} ; Discriminant value |
37 | 39 | !41 = !{i32 0} ; VBPtr offset |
38 | | -!42 = !{i32 100} ; Discriminant value |
| 40 | + |
| 41 | +; CHECK-IR: !9 = !DIDerivedType(tag: DW_TAG_member, name: "const_val", scope: !7, file: !3, line: 11, baseType: !10, flags: DIFlagStaticMember, extraData: !12) |
| 42 | +; CHECK-IR: !12 = !{i32 42} |
| 43 | +; CHECK-IR: !20 = !DIDerivedType(tag: DW_TAG_member, name: "variant_some", scope: !17, file: !3, baseType: !11, size: 32, extraData: !21) |
| 44 | +; CHECK-IR: !21 = !{i32 100} |
| 45 | +; CHECK-IR: !27 = !DIDerivedType(tag: DW_TAG_inheritance, scope: !25, baseType: !28, extraData: !29) |
| 46 | +; CHECK-IR: !29 = !{i32 0} |
| 47 | +; CHECK-IR: !32 = !DIDerivedType(tag: DW_TAG_member, name: "field", scope: !30, file: !3, line: 6, baseType: !11, size: 3, flags: DIFlagBitField, extraData: !33) |
| 48 | +; CHECK-IR: !33 = !{i64 0} |
39 | 49 |
|
40 | 50 | ; CHECK: {{.*}} DW_TAG_variable |
41 | 51 | ; CHECK: {{.*}} DW_AT_name ("bf") |
|
0 commit comments