Skip to content

Commit 757f50a

Browse files
elvinw-inteligcbot
authored andcommitted
Add the ir that fails StripNonLineTableDebugInfo to LIT
Add a failing case to test lib against the recent patch we added.
1 parent 3f87512 commit 757f50a

File tree

1 file changed

+94
-0
lines changed
  • IGC/Compiler/tests/StripNonLineTableDebugInfo

1 file changed

+94
-0
lines changed
Lines changed: 94 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,94 @@
1+
;=========================== begin_copyright_notice ============================
2+
;
3+
; Copyright (C) 2025 Intel Corporation
4+
;
5+
; SPDX-License-Identifier: MIT
6+
;
7+
;============================ end_copyright_notice =============================
8+
;
9+
; REQUIRES: system-windows
10+
; RUN: igc_opt %s -S --strip-nonlinetable-debuginfo | FileCheck %s
11+
; ------------------------------------------------
12+
; Test if StripNonLineTableDebugInfo crashes, this test contains a slightly complex debug info structure.
13+
;
14+
; CHECK-NOT: DIBasicType
15+
; CHECK-NOT: DIDerivedType
16+
; CHECK-NOT: DICompositeType
17+
18+
define void @main() !dbg !34 {
19+
ret void, !dbg !68
20+
}
21+
22+
!llvm.dbg.cu = !{!0}
23+
!llvm.module.flags = !{!31, !32}
24+
!llvm.ident = !{!33}
25+
26+
!0 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, file: !1, producer: "clang version 3.7 (tags/RELEASE_370/final)", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !2, retainedTypes: !3, globals: !2)
27+
!1 = !DIFile(filename: "no filename", directory: "")
28+
!2 = !{}
29+
!3 = !{!4, !22}
30+
!4 = !DIDerivedType(tag: DW_TAG_typedef, name: "float3x3", file: !1, line: 361, baseType: !5)
31+
!5 = !DICompositeType(tag: DW_TAG_class_type, name: "matrix<float, 3, 3>", file: !1, line: 246, size: 288, align: 32, elements: !6, templateParams: !17)
32+
!6 = !{!7, !9, !10, !11, !12, !13, !14, !15, !16}
33+
!7 = !DIDerivedType(tag: DW_TAG_member, name: "_11", scope: !5, file: !1, line: 246, baseType: !8, size: 32, align: 32, flags: DIFlagPublic)
34+
!8 = !DIBasicType(name: "float", size: 32, align: 32, encoding: DW_ATE_float)
35+
!9 = !DIDerivedType(tag: DW_TAG_member, name: "_12", scope: !5, file: !1, line: 246, baseType: !8, size: 32, align: 32, offset: 32, flags: DIFlagPublic)
36+
!10 = !DIDerivedType(tag: DW_TAG_member, name: "_13", scope: !5, file: !1, line: 246, baseType: !8, size: 32, align: 32, offset: 64, flags: DIFlagPublic)
37+
!11 = !DIDerivedType(tag: DW_TAG_member, name: "_21", scope: !5, file: !1, line: 246, baseType: !8, size: 32, align: 32, offset: 96, flags: DIFlagPublic)
38+
!12 = !DIDerivedType(tag: DW_TAG_member, name: "_22", scope: !5, file: !1, line: 246, baseType: !8, size: 32, align: 32, offset: 128, flags: DIFlagPublic)
39+
!13 = !DIDerivedType(tag: DW_TAG_member, name: "_23", scope: !5, file: !1, line: 246, baseType: !8, size: 32, align: 32, offset: 160, flags: DIFlagPublic)
40+
!14 = !DIDerivedType(tag: DW_TAG_member, name: "_31", scope: !5, file: !1, line: 246, baseType: !8, size: 32, align: 32, offset: 192, flags: DIFlagPublic)
41+
!15 = !DIDerivedType(tag: DW_TAG_member, name: "_32", scope: !5, file: !1, line: 246, baseType: !8, size: 32, align: 32, offset: 224, flags: DIFlagPublic)
42+
!16 = !DIDerivedType(tag: DW_TAG_member, name: "_33", scope: !5, file: !1, line: 246, baseType: !8, size: 32, align: 32, offset: 256, flags: DIFlagPublic)
43+
!17 = !{!18, !19, !21}
44+
!18 = !DITemplateTypeParameter(name: "element", type: !8)
45+
!19 = !DITemplateValueParameter(name: "row_count", type: !20, value: i32 3)
46+
!20 = !DIBasicType(name: "int", size: 32, align: 32, encoding: DW_ATE_signed)
47+
!21 = !DITemplateValueParameter(name: "col_count", type: !20, value: i32 3)
48+
!22 = !DIDerivedType(tag: DW_TAG_typedef, name: "float4", file: !1, baseType: !23)
49+
!23 = !DICompositeType(tag: DW_TAG_class_type, name: "vector<float, 4>", file: !1, size: 128, align: 32, elements: !24, templateParams: !29)
50+
!24 = !{!25, !26, !27, !28}
51+
!25 = !DIDerivedType(tag: DW_TAG_member, name: "x", scope: !23, file: !1, baseType: !8, size: 32, align: 32, flags: DIFlagPublic)
52+
!26 = !DIDerivedType(tag: DW_TAG_member, name: "y", scope: !23, file: !1, baseType: !8, size: 32, align: 32, offset: 32, flags: DIFlagPublic)
53+
!27 = !DIDerivedType(tag: DW_TAG_member, name: "z", scope: !23, file: !1, baseType: !8, size: 32, align: 32, offset: 64, flags: DIFlagPublic)
54+
!28 = !DIDerivedType(tag: DW_TAG_member, name: "w", scope: !23, file: !1, baseType: !8, size: 32, align: 32, offset: 96, flags: DIFlagPublic)
55+
!29 = !{!18, !30}
56+
!30 = !DITemplateValueParameter(name: "element_count", type: !20, value: i32 4)
57+
!31 = !{i32 2, !"Dwarf Version", i32 4}
58+
!32 = !{i32 2, !"Debug Info Version", i32 3}
59+
!33 = !{!"clang version 3.7 (tags/RELEASE_370/final)"}
60+
!34 = distinct !DISubprogram(name: "main", scope: !1, file: !1, line: 581, type: !35, scopeLine: 582, flags: DIFlagPrototyped, spFlags: DISPFlagDefinition, unit: !0)
61+
!35 = !DISubroutineType(types: !36)
62+
!36 = !{null, !37, !58}
63+
!37 = !DICompositeType(tag: DW_TAG_structure_type, name: "VertexInput", file: !1, line: 254, size: 416, align: 32, elements: !38)
64+
!38 = !{!39, !40, !48, !57}
65+
!39 = !DIDerivedType(tag: DW_TAG_member, name: "Position", scope: !37, file: !1, line: 256, baseType: !22, size: 128, align: 32)
66+
!40 = !DIDerivedType(tag: DW_TAG_member, name: "TexCoord", scope: !37, file: !1, line: 257, baseType: !41, size: 64, align: 32, offset: 128)
67+
!41 = !DIDerivedType(tag: DW_TAG_typedef, name: "float2", file: !1, baseType: !42)
68+
!42 = !DICompositeType(tag: DW_TAG_class_type, name: "vector<float, 2>", file: !1, size: 64, align: 32, elements: !43, templateParams: !46)
69+
!43 = !{!44, !45}
70+
!44 = !DIDerivedType(tag: DW_TAG_member, name: "x", scope: !42, file: !1, baseType: !8, size: 32, align: 32, flags: DIFlagPublic)
71+
!45 = !DIDerivedType(tag: DW_TAG_member, name: "y", scope: !42, file: !1, baseType: !8, size: 32, align: 32, offset: 32, flags: DIFlagPublic)
72+
!46 = !{!18, !47}
73+
!47 = !DITemplateValueParameter(name: "element_count", type: !20, value: i32 2)
74+
!48 = !DIDerivedType(tag: DW_TAG_member, name: "Normal", scope: !37, file: !1, line: 258, baseType: !49, size: 96, align: 32, offset: 192)
75+
!49 = !DIDerivedType(tag: DW_TAG_typedef, name: "float3", file: !1, baseType: !50)
76+
!50 = !DICompositeType(tag: DW_TAG_class_type, name: "vector<float, 3>", file: !1, size: 96, align: 32, elements: !51, templateParams: !55)
77+
!51 = !{!52, !53, !54}
78+
!52 = !DIDerivedType(tag: DW_TAG_member, name: "x", scope: !50, file: !1, baseType: !8, size: 32, align: 32, flags: DIFlagPublic)
79+
!53 = !DIDerivedType(tag: DW_TAG_member, name: "y", scope: !50, file: !1, baseType: !8, size: 32, align: 32, offset: 32, flags: DIFlagPublic)
80+
!54 = !DIDerivedType(tag: DW_TAG_member, name: "z", scope: !50, file: !1, baseType: !8, size: 32, align: 32, offset: 64, flags: DIFlagPublic)
81+
!55 = !{!18, !56}
82+
!56 = !DITemplateValueParameter(name: "element_count", type: !20, value: i32 3)
83+
!57 = !DIDerivedType(tag: DW_TAG_member, name: "Tangent", scope: !37, file: !1, line: 259, baseType: !22, size: 128, align: 32, offset: 288)
84+
!58 = !DIDerivedType(tag: DW_TAG_restrict_type, baseType: !59)
85+
!59 = !DICompositeType(tag: DW_TAG_structure_type, name: "VertexOutput", file: !1, line: 269, size: 672, align: 32, elements: !60)
86+
!60 = !{!61, !62, !63, !64, !65, !66, !67}
87+
!61 = !DIDerivedType(tag: DW_TAG_member, name: "Position", scope: !59, file: !1, line: 271, baseType: !22, size: 128, align: 32)
88+
!62 = !DIDerivedType(tag: DW_TAG_member, name: "TexCoord", scope: !59, file: !1, line: 272, baseType: !41, size: 64, align: 32, offset: 128)
89+
!63 = !DIDerivedType(tag: DW_TAG_member, name: "TangentInView", scope: !59, file: !1, line: 273, baseType: !49, size: 96, align: 32, offset: 192)
90+
!64 = !DIDerivedType(tag: DW_TAG_member, name: "BitangentInView", scope: !59, file: !1, line: 274, baseType: !49, size: 96, align: 32, offset: 288)
91+
!65 = !DIDerivedType(tag: DW_TAG_member, name: "NormalInView", scope: !59, file: !1, line: 275, baseType: !49, size: 96, align: 32, offset: 384)
92+
!66 = !DIDerivedType(tag: DW_TAG_member, name: "EyeDirectionInView", scope: !59, file: !1, line: 276, baseType: !49, size: 96, align: 32, offset: 480)
93+
!67 = !DIDerivedType(tag: DW_TAG_member, name: "PositionInView", scope: !59, file: !1, line: 277, baseType: !49, size: 96, align: 32, offset: 576)
94+
!68 = !DILocation(line: 604, column: 1, scope: !34)

0 commit comments

Comments
 (0)