# RUN: llc -start-before=aarch64-asm-printer -o - %s | FileCheck %s # Check that z30_z31 debug info does not crash. # CHECK: .Ldebug_loc0: # CHECK: .byte 4 // DW_LLE_offset_pair # CHECK: .uleb128 .Ltmp2-.Lfunc_begin0 // starting offset # CHECK: .uleb128 .Ltmp3-.Lfunc_begin0 // ending offset # CHECK: .byte 2 // Loc expr size # CHECK: .byte 144 // DW_OP_regx # CHECK: .byte 126 // 126 # CHECK: .byte 4 // DW_LLE_offset_pair # CHECK: .uleb128 .Ltmp3-.Lfunc_begin0 // starting offset # CHECK: .uleb128 .Lfunc_end0-.Lfunc_begin0 // ending offset # CHECK: .byte 6 // Loc expr size # CHECK: .byte 144 // sub-register DW_OP_regx # CHECK: .byte 94 // 94 # CHECK: .byte 147 // DW_OP_piece # CHECK: .byte 16 // 16 # CHECK: .byte 147 // DW_OP_piece # CHECK: .byte 31 // 31 # CHECK: .byte 0 // DW_LLE_end_of_list --- | target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128-Fn32" target triple = "aarch64" define void @_Z10Sort16RowsILi6EEv12SharedTraitsI10TraitsLaneEP22Trans_NS_hwy_float16_tiS4_(i8 %st.coerce, ptr noundef %keys, i32 noundef %0, ptr noundef %1) #2 !dbg !2 { unreachable } attributes #2 = { mustprogress uwtable vscale_range(1,16) "frame-pointer"="non-leaf" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="neoverse-n1" "target-features"="+aes,+crc,+dotprod,+fp-armv8,+fullfp16,+lse,+neon,+perfmon,+ras,+rcpc,+rdm,+sha2,+spe,+ssbs,+sve,+sve-aes,+sve2,+sve2-aes,+v8.1a,+v8.2a,+v8a,-fmv" "tune-cpu"="generic" } !llvm.dbg.cu = !{!3} !llvm.module.flags = !{!4, !5, !6, !7, !8, !9} !llvm.ident = !{!10} !2 = distinct !DISubprogram(name: "Sort16Rows<6>", linkageName: "_Z10Sort16RowsILi6EEv12SharedTraitsI10TraitsLaneEP22Trans_NS_hwy_float16_tiS4_", scope: !12, file: !12, line: 369, type: !18, scopeLine: 370, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !3, templateParams: !19, retainedNodes: !20, keyInstructions: true) !3 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus_14, file: !14, producer: "clang version 22.0.0git (https://github.com/llvm/llvm-project.git)", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, splitDebugInlining: false, nameTableKind: None) !4 = !{i32 7, !"Dwarf Version", i32 5} !5 = !{i32 2, !"Debug Info Version", i32 3} !6 = !{i32 1, !"wchar_size", i32 4} !7 = !{i32 7, !"uwtable", i32 2} !8 = !{i32 7, !"frame-pointer", i32 1} !9 = !{i32 7, !"debug-info-assignment-tracking", i1 true} !10 = !{!"clang version 22.0.0git (https://github.com/llvm/llvm-project.git)"} !12 = !DIFile(filename: "example.cpp", directory: "/app", checksumkind: CSK_MD5, checksum: "5fbaafea0ede06ddd1ffc371aeee276e") !14 = !DIFile(filename: "/app/example.cpp", directory: "/app", checksumkind: CSK_MD5, checksum: "5fbaafea0ede06ddd1ffc371aeee276e") !17 = !DIBasicType(name: "__fp16", size: 16, encoding: DW_ATE_float) !18 = !DISubroutineType(types: !21) !19 = !{!120} !20 = !{!77, !78, !79, !80, !81, !82, !83, !84, !85, !86, !87, !88, !89, !90, !91, !92, !93, !94, !95, !96, !97, !98, !99, !100, !101, !102, !103, !104, !105} !21 = !{null, !22, !23, !24, !23} !22 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "SharedTraits", file: !12, line: 272, size: 8, flags: DIFlagTypePassByValue, elements: !25, templateParams: !26, identifier: "_ZTS12SharedTraitsI10TraitsLaneE") !23 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !55, size: 64) !24 = !DIBasicType(name: "int", size: 32, encoding: DW_ATE_signed) !25 = !{!27} !26 = !{!76} !27 = !DIDerivedType(tag: DW_TAG_inheritance, scope: !22, baseType: !28, extraData: i32 0) !28 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "TraitsLane", file: !12, line: 325, size: 8, flags: DIFlagTypePassByValue, elements: !29, identifier: "_ZTS10TraitsLane") !29 = !{!30, !31, !32, !33} !30 = !DIDerivedType(tag: DW_TAG_inheritance, scope: !28, baseType: !34, extraData: i32 0) !31 = !DISubprogram(name: "Sort2", linkageName: "_ZN10TraitsLane5Sort2E4SimdI22Trans_NS_hwy_float16_tLi1ELi0EERu13__SVFloat16_tS4_", scope: !28, file: !12, line: 326, type: !70, scopeLine: 326, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized) !32 = !DISubprogram(name: "SortPairsDistance1", linkageName: "_ZN10TraitsLane18SortPairsDistance1E4SimdI22Trans_NS_hwy_float16_tLi1ELi0EEu13__SVFloat16_t", scope: !28, file: !12, line: 344, type: !74, scopeLine: 344, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized) !33 = !DISubprogram(name: "SortPairsDistance4", linkageName: "_ZN10TraitsLane18SortPairsDistance4E4SimdI22Trans_NS_hwy_float16_tLi1ELi0EEu13__SVFloat16_t", scope: !28, file: !12, line: 352, type: !74, scopeLine: 352, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized) !34 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "KeyLane", file: !12, line: 307, size: 8, flags: DIFlagTypePassByValue, elements: !35, identifier: "_ZTS7KeyLane") !35 = !{!36, !37, !38} !36 = !DISubprogram(name: "SwapAdjacentPairs", linkageName: "_ZN7KeyLane17SwapAdjacentPairsE4SimdI22Trans_NS_hwy_float16_tLi1ELi0EEu13__SVFloat16_t", scope: !34, file: !12, line: 309, type: !39, scopeLine: 309, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized) !37 = !DISubprogram(name: "SwapAdjacentPairs", linkageName: "_ZN7KeyLane17SwapAdjacentPairsEu13__SVFloat32_t", scope: !34, file: !12, line: 314, type: !58, scopeLine: 314, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized) !38 = !DISubprogram(name: "OddEvenPairs", linkageName: "_ZN7KeyLane12OddEvenPairsE4SimdI22Trans_NS_hwy_float16_tLi1ELi0EEu13__SVFloat16_tS3_", scope: !34, file: !12, line: 318, type: !68, scopeLine: 318, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized) !39 = !DISubroutineType(types: !40) !40 = !{!41, !42, !43, !41} !41 = !DIDerivedType(tag: DW_TAG_typedef, name: "Vec >", file: !12, line: 270, baseType: !44) !42 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !34, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer) !43 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "Simd", file: !12, line: 83, size: 8, flags: DIFlagTypePassByValue, elements: !50, templateParams: !51, identifier: "_ZTS4SimdI22Trans_NS_hwy_float16_tLi1ELi0EE") !44 = !DIDerivedType(tag: DW_TAG_typedef, name: "VFromD >", file: !12, line: 142, baseType: !45) !45 = !DIDerivedType(tag: DW_TAG_typedef, name: "svfloat16_t", file: !12, line: 26, baseType: !46) !46 = !DIDerivedType(tag: DW_TAG_typedef, name: "__SVFloat16_t", file: !12, baseType: !47) !47 = !DICompositeType(tag: DW_TAG_array_type, baseType: !17, flags: DIFlagVector, elements: !48) !48 = !{!49} !49 = !DISubrange(lowerBound: 0, upperBound: !DIExpression(DW_OP_constu, 4, DW_OP_bregx, 46, 0, DW_OP_mul, DW_OP_constu, 1, DW_OP_minus)) !50 = !{} !51 = !{!52, !53, !54} !52 = !DITemplateTypeParameter(name: "Lane", type: !55) !53 = !DITemplateValueParameter(type: !24, value: i32 1) !54 = !DITemplateValueParameter(name: "kPow2", type: !24, value: i32 0) !55 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "Trans_NS_hwy_float16_t", file: !12, line: 6, size: 16, flags: DIFlagTypePassByValue, elements: !56, identifier: "_ZTS22Trans_NS_hwy_float16_t") !56 = !{!57} !57 = !DIDerivedType(tag: DW_TAG_member, name: "native", scope: !55, file: !12, line: 7, baseType: !17, size: 16) !58 = !DISubroutineType(types: !59) !59 = !{!60, !42, !60} !60 = !DIDerivedType(tag: DW_TAG_typedef, name: "Vec >", file: !12, line: 270, baseType: !61) !61 = !DIDerivedType(tag: DW_TAG_typedef, name: "VFromD >", file: !12, line: 142, baseType: !62) !62 = !DIDerivedType(tag: DW_TAG_typedef, name: "svfloat32_t", file: !12, line: 27, baseType: !63) !63 = !DIDerivedType(tag: DW_TAG_typedef, name: "__SVFloat32_t", file: !12, baseType: !64) !64 = !DICompositeType(tag: DW_TAG_array_type, baseType: !65, flags: DIFlagVector, elements: !66) !65 = !DIBasicType(name: "float", size: 32, encoding: DW_ATE_float) !66 = !{!67} !67 = !DISubrange(lowerBound: 0, upperBound: !DIExpression(DW_OP_constu, 2, DW_OP_bregx, 46, 0, DW_OP_mul, DW_OP_constu, 1, DW_OP_minus)) !68 = !DISubroutineType(types: !69) !69 = !{!41, !42, !43, !41, !41} !70 = !DISubroutineType(types: !71) !71 = !{null, !72, !43, !73, !73} !72 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !28, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer) !73 = !DIDerivedType(tag: DW_TAG_reference_type, baseType: !41, size: 64) !74 = !DISubroutineType(types: !75) !75 = !{!41, !72, !43, !41} !76 = !DITemplateTypeParameter(name: "Base", type: !28) !77 = !DILocalVariable(name: "st", arg: 1, scope: !2, file: !12, line: 369, type: !22) !78 = !DILocalVariable(name: "keys", arg: 2, scope: !2, file: !12, line: 369, type: !23) !79 = !DILocalVariable(arg: 3, scope: !2, file: !12, line: 369, type: !24) !80 = !DILocalVariable(arg: 4, scope: !2, file: !12, line: 370, type: !23) !81 = !DILocalVariable(name: "d", scope: !2, file: !12, line: 371, type: !106) !82 = !DILocalVariable(name: "v8", scope: !2, file: !12, line: 373, type: !112) !83 = !DILocalVariable(name: "v9", scope: !2, file: !12, line: 373, type: !112) !84 = !DILocalVariable(name: "va", scope: !2, file: !12, line: 373, type: !112) !85 = !DILocalVariable(name: "vb", scope: !2, file: !12, line: 373, type: !112) !86 = !DILocalVariable(name: "vc", scope: !2, file: !12, line: 373, type: !112) !87 = !DILocalVariable(name: "vd", scope: !2, file: !12, line: 373, type: !112) !88 = !DILocalVariable(name: "ve", scope: !2, file: !12, line: 373, type: !112) !89 = !DILocalVariable(name: "vf", scope: !2, file: !12, line: 373, type: !112) !90 = !DILocalVariable(name: "v2", scope: !2, file: !12, line: 373, type: !112) !91 = !DILocalVariable(name: "v4", scope: !2, file: !12, line: 373, type: !112) !92 = !DILocalVariable(name: "v7", scope: !2, file: !12, line: 373, type: !112) !93 = !DILocalVariable(name: "v0", scope: !2, file: !12, line: 374, type: !112) !94 = !DILocalVariable(name: "v3", scope: !2, file: !12, line: 375, type: !112) !95 = !DILocalVariable(name: "v5", scope: !2, file: !12, line: 376, type: !112) !96 = !DILocalVariable(name: "v6", scope: !2, file: !12, line: 377, type: !112) !97 = !DILocalVariable(name: "kIota", scope: !2, file: !12, line: 378, type: !112) !98 = !DILocalVariable(name: "m8", scope: !2, file: !12, line: 379, type: !113) !99 = !DILocalVariable(name: "m9", scope: !2, file: !12, line: 380, type: !113) !100 = !DILocalVariable(name: "ma", scope: !2, file: !12, line: 381, type: !113) !101 = !DILocalVariable(name: "mb", scope: !2, file: !12, line: 382, type: !113) !102 = !DILocalVariable(name: "mc", scope: !2, file: !12, line: 383, type: !113) !103 = !DILocalVariable(name: "md", scope: !2, file: !12, line: 384, type: !113) !104 = !DILocalVariable(name: "me", scope: !2, file: !12, line: 385, type: !113) !105 = !DILocalVariable(name: "mf", scope: !2, file: !12, line: 386, type: !113) !106 = !DIDerivedType(tag: DW_TAG_typedef, name: "CappedTag", file: !12, line: 97, baseType: !107) !107 = !DIDerivedType(tag: DW_TAG_typedef, name: "type", scope: !108, file: !12, line: 89, baseType: !43) !108 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "ClampNAndPow2", file: !12, line: 88, size: 8, flags: DIFlagTypePassByValue, elements: !50, templateParams: !109, identifier: "_ZTS13ClampNAndPow2I22Trans_NS_hwy_float16_tLi1EE") !109 = !{!110, !111} !110 = !DITemplateTypeParameter(name: "T", type: !55) !111 = !DITemplateValueParameter(name: "N", type: !24, value: i32 1) !112 = !DIDerivedType(tag: DW_TAG_typedef, name: "V", scope: !2, file: !12, line: 372, baseType: !41) !113 = !DIDerivedType(tag: DW_TAG_typedef, name: "Mask >", file: !12, line: 271, baseType: !114) !114 = !DIDerivedType(tag: DW_TAG_typedef, name: "svbool_t", file: !12, line: 28, baseType: !115) !115 = !DIDerivedType(tag: DW_TAG_typedef, name: "__SVBool_t", file: !12, baseType: !116) !116 = !DICompositeType(tag: DW_TAG_array_type, baseType: !117, flags: DIFlagVector, elements: !118) !117 = !DIBasicType(name: "unsigned char", size: 8, encoding: DW_ATE_unsigned_char) !118 = !{!119} !119 = !DISubrange(lowerBound: 0, upperBound: !DIExpression(DW_OP_constu, 1, DW_OP_bregx, 46, 0, DW_OP_mul, DW_OP_constu, 1, DW_OP_minus)) !120 = !DITemplateValueParameter(name: "kKeysPerRow", type: !24, value: i32 6) !121 = !DILocalVariable(name: "this", arg: 1, scope: !122, type: !123, flags: DIFlagArtificial | DIFlagObjectPointer) !122 = distinct !DISubprogram(name: "Sort2", linkageName: "_ZN10TraitsLane5Sort2E4SimdI22Trans_NS_hwy_float16_tLi1ELi0EERu13__SVFloat16_tS4_", scope: !28, file: !12, line: 326, type: !70, scopeLine: 328, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !3, declaration: !31, retainedNodes: !124, keyInstructions: true) !123 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !28, size: 64) !124 = !{!121, !125, !126, !127, !128, !129, !130, !131, !132} !125 = !DILocalVariable(name: "d", arg: 2, scope: !122, file: !12, line: 326, type: !43) !126 = !DILocalVariable(name: "a", arg: 3, scope: !122, file: !12, line: 327, type: !73) !127 = !DILocalVariable(name: "b", arg: 4, scope: !122, file: !12, line: 328, type: !73) !128 = !DILocalVariable(name: "__trans_tmp_52", scope: !122, file: !12, line: 329, type: !41) !129 = !DILocalVariable(name: "a_copy", scope: !122, file: !12, line: 329, type: !41) !130 = !DILocalVariable(name: "__trans_tmp_45", scope: !122, file: !12, line: 330, type: !41) !131 = !DILocalVariable(name: "__trans_tmp_53", scope: !133, file: !12, line: 334, type: !41) !132 = !DILocalVariable(name: "__trans_tmp_29", scope: !134, file: !12, line: 336, type: !45) !133 = distinct !DILexicalBlock(scope: !122, file: !12, line: 333, column: 5) !134 = distinct !DILexicalBlock(scope: !133, file: !12, line: 335, column: 7) !137 = distinct !DISubprogram(name: "SortPairsDistance1", linkageName: "_ZN10TraitsLane18SortPairsDistance1E4SimdI22Trans_NS_hwy_float16_tLi1ELi0EEu13__SVFloat16_t", scope: !28, file: !12, line: 344, type: !74, scopeLine: 345, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !3, declaration: !32, retainedNodes: !139, keyInstructions: true) !139 = !{!140, !141, !142, !143} !140 = !DILocalVariable(name: "this", arg: 1, scope: !137, type: !123, flags: DIFlagArtificial | DIFlagObjectPointer) !141 = !DILocalVariable(name: "d", arg: 2, scope: !137, file: !12, line: 344, type: !43) !142 = !DILocalVariable(name: "v", arg: 3, scope: !137, file: !12, line: 345, type: !41) !143 = !DILocalVariable(name: "__trans_tmp_48", scope: !137, file: !12, line: 346, type: !41) !144 = distinct !DISubprogram(name: "Merge16x16<6, SharedTraits, __SVFloat16_t>", linkageName: "_Z10Merge16x16ILi6E12SharedTraitsI10TraitsLaneEu13__SVFloat16_tEvT0_RT1_S6_S6_S6_S6_S6_S6_S6_S6_S6_S6_S6_", scope: !12, file: !12, line: 286, type: !146, scopeLine: 288, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !3, templateParams: !147, retainedNodes: !148, keyInstructions: true) !145 = distinct !DILocation(line: 388, column: 3, scope: !2) !146 = !DISubroutineType(types: !149) !147 = !{!164, !165, !166} !148 = !{!151, !152, !153, !154, !155, !156, !157, !158, !159, !160, !161, !162, !163} !149 = !{null, !22, !150, !150, !150, !150, !150, !150, !150, !150, !150, !150, !150, !150} !150 = !DIDerivedType(tag: DW_TAG_reference_type, baseType: !47, size: 64) !151 = !DILocalVariable(name: "st", arg: 1, scope: !144, file: !12, line: 286, type: !22) !152 = !DILocalVariable(name: "v0", arg: 2, scope: !144, file: !12, line: 286, type: !150) !153 = !DILocalVariable(name: "v2", arg: 3, scope: !144, file: !12, line: 286, type: !150) !154 = !DILocalVariable(name: "v5", arg: 4, scope: !144, file: !12, line: 286, type: !150) !155 = !DILocalVariable(name: "v6", arg: 5, scope: !144, file: !12, line: 287, type: !150) !156 = !DILocalVariable(name: "v7", arg: 6, scope: !144, file: !12, line: 287, type: !150) !157 = !DILocalVariable(name: "v9", arg: 7, scope: !144, file: !12, line: 287, type: !150) !158 = !DILocalVariable(name: "va", arg: 8, scope: !144, file: !12, line: 287, type: !150) !159 = !DILocalVariable(name: "vb", arg: 9, scope: !144, file: !12, line: 287, type: !150) !160 = !DILocalVariable(name: "vc", arg: 10, scope: !144, file: !12, line: 288, type: !150) !161 = !DILocalVariable(name: "vd", arg: 11, scope: !144, file: !12, line: 288, type: !150) !162 = !DILocalVariable(name: "ve", arg: 12, scope: !144, file: !12, line: 288, type: !150) !163 = !DILocalVariable(name: "vf", arg: 13, scope: !144, file: !12, line: 288, type: !150) !164 = !DITemplateValueParameter(type: !24, value: i32 6) !165 = !DITemplateTypeParameter(name: "Traits", type: !22) !166 = !DITemplateTypeParameter(name: "V", type: !47) !184 = !DILocalVariable(name: "this", arg: 1, scope: !185, type: !186, flags: DIFlagArtificial | DIFlagObjectPointer) !185 = distinct !DISubprogram(name: "SortPairsDistance2 >", linkageName: "_ZN12SharedTraitsI10TraitsLaneE18SortPairsDistance2I4SimdI22Trans_NS_hwy_float16_tLi1ELi0EEEEDTcl4ZerocvT__EEES6_S7_", scope: !22, file: !12, line: 273, type: !187, scopeLine: 273, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !3, templateParams: !188, declaration: !189, retainedNodes: !190, keyInstructions: true) !186 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !22, size: 64) !187 = !DISubroutineType(types: !191) !188 = !{!193} !189 = !DISubprogram(name: "SortPairsDistance2 >", linkageName: "_ZN12SharedTraitsI10TraitsLaneE18SortPairsDistance2I4SimdI22Trans_NS_hwy_float16_tLi1ELi0EEEEDTcl4ZerocvT__EEES6_S7_", scope: !22, file: !12, line: 273, type: !187, scopeLine: 273, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized, templateParams: !188) !190 = !{!184, !194, !195, !196, !197} !191 = !{!41, !192, !43, !41} !192 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !22, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer) !193 = !DITemplateTypeParameter(name: "D", type: !43) !194 = !DILocalVariable(name: "d", arg: 2, scope: !185, file: !12, line: 273, type: !43) !195 = !DILocalVariable(name: "v", arg: 3, scope: !185, file: !12, line: 273, type: !41) !196 = !DILocalVariable(name: "base", scope: !185, file: !12, line: 274, type: !28) !197 = !DILocalVariable(name: "swapped", scope: !185, file: !12, line: 275, type: !41) !200 = !DILocation(line: 0, scope: !122, inlinedAt: !201) !201 = distinct !DILocation(line: 358, column: 5, scope: !202, inlinedAt: !203) !202 = distinct !DISubprogram(name: "SortPairsDistance4", linkageName: "_ZN10TraitsLane18SortPairsDistance4E4SimdI22Trans_NS_hwy_float16_tLi1ELi0EEu13__SVFloat16_t", scope: !28, file: !12, line: 352, type: !74, scopeLine: 353, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !3, declaration: !33, retainedNodes: !204, keyInstructions: true) !203 = distinct !DILocation(line: 298, column: 11, scope: !144, inlinedAt: !145) !204 = !{!205, !206, !207, !208, !209, !210, !211} !205 = !DILocalVariable(name: "this", arg: 1, scope: !202, type: !123, flags: DIFlagArtificial | DIFlagObjectPointer) !206 = !DILocalVariable(name: "d", arg: 2, scope: !202, file: !12, line: 352, type: !43) !207 = !DILocalVariable(name: "v", arg: 3, scope: !202, file: !12, line: 353, type: !41) !208 = !DILocalVariable(name: "__trans_tmp_42", scope: !202, file: !12, line: 354, type: !41) !209 = !DILocalVariable(name: "__trans_tmp_39", scope: !202, file: !12, line: 354, type: !41) !210 = !DILocalVariable(name: "dw", scope: !202, file: !12, line: 355, type: !212) !211 = !DILocalVariable(name: "__trans_tmp_51", scope: !219, file: !12, line: 360, type: !44) !212 = !DIDerivedType(tag: DW_TAG_typedef, name: "RepartitionToWide >", file: !12, line: 103, baseType: !213) !213 = !DIDerivedType(tag: DW_TAG_typedef, name: "Repartition >", file: !12, line: 101, baseType: !214) !214 = !DIDerivedType(tag: DW_TAG_typedef, name: "Repartition", scope: !43, file: !12, line: 86, baseType: !215) !215 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "Simd", file: !12, line: 83, size: 8, flags: DIFlagTypePassByValue, elements: !50, templateParams: !216, identifier: "_ZTS4SimdIfLi0ELi0EE") !216 = !{!217, !218, !54} !217 = !DITemplateTypeParameter(name: "Lane", type: !65) !218 = !DITemplateValueParameter(type: !24, value: i32 0) !219 = distinct !DILexicalBlock(scope: !202, file: !12, line: 359, column: 5) !220 = !DILocalVariable(name: "this", arg: 1, scope: !221, type: !222, flags: DIFlagArtificial | DIFlagObjectPointer) !221 = distinct !DISubprogram(name: "SwapAdjacentPairs", linkageName: "_ZN7KeyLane17SwapAdjacentPairsEu13__SVFloat32_t", scope: !34, file: !12, line: 314, type: !58, scopeLine: 314, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !3, declaration: !37, retainedNodes: !223, keyInstructions: true) !222 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !34, size: 64) !223 = !{!220, !224} !224 = !DILocalVariable(name: "v", arg: 2, scope: !221, file: !12, line: 314, type: !60) !225 = distinct !DILocation(line: 357, column: 38, scope: !202, inlinedAt: !203) !226 = !DILocalVariable(name: "v", arg: 1, scope: !227, file: !12, line: 264, type: !64) !227 = distinct !DISubprogram(name: "Shuffle1032<__SVFloat32_t>", linkageName: "_Z11Shuffle1032Iu13__SVFloat32_tET_S1_", scope: !12, file: !12, line: 264, type: !228, scopeLine: 264, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !3, templateParams: !229, retainedNodes: !230, keyInstructions: true) !228 = !DISubroutineType(types: !231) !229 = !{!262} !230 = !{!226, !232, !233, !234} !231 = !{!64, !64} !232 = !DILocalVariable(name: "d", scope: !227, file: !12, line: 265, type: !235) !233 = !DILocalVariable(name: "d8", scope: !227, file: !12, line: 266, type: !252) !234 = !DILocalVariable(name: "v8", scope: !227, file: !12, line: 267, type: !257) !235 = !DIDerivedType(tag: DW_TAG_typedef, name: "DFromV<__SVFloat32_t>", file: !12, line: 108, baseType: !236) !236 = !DIDerivedType(tag: DW_TAG_typedef, name: "type", scope: !237, file: !12, line: 116, baseType: !238) !237 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "DFromV_t<__SVFloat32_t>", file: !12, line: 115, size: 8, flags: DIFlagTypePassByValue, elements: !50, templateParams: !239, identifier: "_ZTS8DFromV_tIu13__SVFloat32_tE") !238 = !DIDerivedType(tag: DW_TAG_typedef, name: "ScalableTag", file: !12, line: 95, baseType: !241) !239 = !{!240} !240 = !DITemplateTypeParameter(type: !64) !241 = !DIDerivedType(tag: DW_TAG_typedef, name: "type", scope: !242, file: !12, line: 92, baseType: !243) !242 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "ScalableTagChecker", file: !12, line: 91, size: 8, flags: DIFlagTypePassByValue, elements: !50, templateParams: !244, identifier: "_ZTS18ScalableTagCheckerIfE") !243 = !DIDerivedType(tag: DW_TAG_typedef, name: "type", scope: !246, file: !12, line: 89, baseType: !247) !244 = !{!245} !245 = !DITemplateTypeParameter(name: "T", type: !65) !246 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "ClampNAndPow2", file: !12, line: 88, size: 8, flags: DIFlagTypePassByValue, elements: !50, templateParams: !248, identifier: "_ZTS13ClampNAndPow2IfLi64EE") !247 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "Simd", file: !12, line: 83, size: 8, flags: DIFlagTypePassByValue, elements: !50, templateParams: !250, identifier: "_ZTS4SimdIfLi64ELi0EE") !248 = !{!245, !249} !249 = !DITemplateValueParameter(name: "N", type: !24, value: i32 64) !250 = !{!217, !251, !54} !251 = !DITemplateValueParameter(type: !24, value: i32 64) !252 = !DIDerivedType(tag: DW_TAG_typedef, name: "Repartition >", file: !12, line: 101, baseType: !253) !253 = !DIDerivedType(tag: DW_TAG_typedef, name: "Repartition", scope: !247, file: !12, line: 86, baseType: !254) !254 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "Simd", file: !12, line: 83, size: 8, flags: DIFlagTypePassByValue, elements: !50, templateParams: !255, identifier: "_ZTS4SimdIhLi0ELi0EE") !255 = !{!256, !218, !54} !256 = !DITemplateTypeParameter(name: "Lane", type: !117) !257 = !DIDerivedType(tag: DW_TAG_typedef, name: "svuint8_t", file: !12, line: 22, baseType: !258) !258 = !DIDerivedType(tag: DW_TAG_typedef, name: "__SVUint8_t", file: !12, baseType: !259) !259 = !DICompositeType(tag: DW_TAG_array_type, baseType: !117, flags: DIFlagVector, elements: !260) !260 = !{!261} !261 = !DISubrange(lowerBound: 0, upperBound: !DIExpression(DW_OP_constu, 8, DW_OP_bregx, 46, 0, DW_OP_mul, DW_OP_constu, 1, DW_OP_minus)) !262 = !DITemplateTypeParameter(name: "V", type: !64) !263 = !DILocalVariable(name: "hi", arg: 1, scope: !264, file: !12, line: 248, type: !259) !264 = distinct !DISubprogram(name: "CombineShiftRightBytes<8, __SVUint8_t>", linkageName: "_Z22CombineShiftRightBytesILi8Eu11__SVUint8_tET0_S1_S1_", scope: !12, file: !12, line: 248, type: !265, scopeLine: 248, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !3, templateParams: !266, retainedNodes: !267, keyInstructions: true) !265 = !DISubroutineType(types: !268) !266 = !{!283, !284} !267 = !{!263, !269, !270, !271, !272, !273, !274, !275, !276} !268 = !{!259, !259, !259} !269 = !DILocalVariable(name: "lo", arg: 2, scope: !264, file: !12, line: 248, type: !259) !270 = !DILocalVariable(name: "__trans_tmp_33", scope: !264, file: !12, line: 249, type: !257) !271 = !DILocalVariable(name: "__trans_tmp_15", scope: !264, file: !12, line: 249, type: !257) !272 = !DILocalVariable(name: "__trans_tmp_32", scope: !264, file: !12, line: 250, type: !257) !273 = !DILocalVariable(name: "d8", scope: !264, file: !12, line: 251, type: !277) !274 = !DILocalVariable(name: "__trans_tmp_16", scope: !264, file: !12, line: 252, type: !114) !275 = !DILocalVariable(name: "lo_down", scope: !264, file: !12, line: 254, type: !257) !276 = !DILocalVariable(name: "__trans_tmp_34", scope: !264, file: !12, line: 255, type: !114) !277 = !DIDerivedType(tag: DW_TAG_typedef, name: "Repartition >", file: !12, line: 101, baseType: !278) !278 = !DIDerivedType(tag: DW_TAG_typedef, name: "Repartition", scope: !279, file: !12, line: 86, baseType: !254) !279 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "Simd", file: !12, line: 83, size: 8, flags: DIFlagTypePassByValue, elements: !50, templateParams: !280, identifier: "_ZTS4SimdIcLi0ELi0EE") !280 = !{!281, !218, !54} !281 = !DITemplateTypeParameter(name: "Lane", type: !282) !282 = !DIBasicType(name: "char", size: 8, encoding: DW_ATE_unsigned_char) !283 = !DITemplateValueParameter(name: "kBytes", type: !24, value: i32 8) !284 = !DITemplateTypeParameter(name: "V", type: !259) !285 = !DILocalVariable(name: "hi", arg: 1, scope: !286, file: !12, line: 216, type: !257) !286 = distinct !DISubprogram(name: "Ext<8>", linkageName: "_Z3ExtILi8EEu11__SVUint8_tS0_S0_", scope: !12, file: !12, line: 216, type: !287, scopeLine: 216, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !3, templateParams: !288, retainedNodes: !289, keyInstructions: true) !287 = !DISubroutineType(types: !290) !288 = !{!292} !289 = !{!285, !291} !290 = !{!257, !257, !257} !291 = !DILocalVariable(name: "lo", arg: 2, scope: !286, file: !12, line: 216, type: !257) !292 = !DITemplateValueParameter(name: "kIndex", type: !24, value: i32 8) !293 = !DILocalVariable(name: "a", arg: 1, scope: !294, file: !12, line: 180, type: !47) !294 = distinct !DISubprogram(name: "Min<__SVFloat16_t>", linkageName: "_Z3MinIu13__SVFloat16_tET_S1_S1_", scope: !12, file: !12, line: 180, type: !295, scopeLine: 180, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !3, templateParams: !296, retainedNodes: !297, keyInstructions: true) !295 = !DISubroutineType(types: !298) !296 = !{!166} !297 = !{!293, !299, !300, !301, !302, !303, !304} !298 = !{!47, !47, !47} !299 = !DILocalVariable(name: "b", arg: 2, scope: !294, file: !12, line: 180, type: !47) !300 = !DILocalVariable(name: "__trans_tmp_36", scope: !294, file: !12, line: 181, type: !45) !301 = !DILocalVariable(name: "__trans_tmp_25", scope: !294, file: !12, line: 181, type: !45) !302 = !DILocalVariable(name: "__trans_tmp_27", scope: !294, file: !12, line: 182, type: !114) !303 = !DILocalVariable(name: "__trans_tmp_24", scope: !294, file: !12, line: 183, type: !114) !304 = !DILocalVariable(name: "__trans_tmp_19", scope: !294, file: !12, line: 184, type: !114) !308 = distinct !DILocation(line: 315, column: 12, scope: !221, inlinedAt: !225) !309 = distinct !DILocation(line: 268, column: 21, scope: !227, inlinedAt: !308) !311 = distinct !DILocation(line: 254, column: 18, scope: !264, inlinedAt: !309) !312 = !DILocation(line: 217, column: 10, scope: !286, inlinedAt: !311, atomGroup: 1, atomRank: 2) !313 = !DILocation(line: 257, column: 20, scope: !264, inlinedAt: !309, atomGroup: 5, atomRank: 2) !314 = !DILocation(line: 0, scope: !294, inlinedAt: !315) !315 = distinct !DILocation(line: 331, column: 22, scope: !122, inlinedAt: !201) !316 = !DILocation(line: 185, column: 20, scope: !294, inlinedAt: !315) !317 = !DILocation(line: 403, column: 1, scope: !2, atomGroup: 19449, atomRank: 1) ... --- name: _Z10Sort16RowsILi6EEv12SharedTraitsI10TraitsLaneEP22Trans_NS_hwy_float16_tiS4_ body: | bb.0: liveins: $x1, $z0, $z1, $p0 $z30 = LDR_ZXI $x1, -14 $z31 = LDR_ZXI $x1, -13 $z23 = ORR_ZZZ $z30, $z30 renamable $z2 = EXT_ZZI_B renamable $z30_z31, 8, debug-location !312 renamable $z7 = SEL_ZPZZ_B renamable $p0, renamable $z0, killed renamable $z1, debug-location !313 DBG_VALUE $z30, $noreg, !129, !DIExpression(), debug-location !200 renamable $p3 = nofpexcept FCMGT_PPzZZ_H renamable $p0, renamable $z0, undef renamable $z1, debug-location !316 DBG_VALUE $z30_z31, $noreg, !129, !DIExpression(), debug-location !200 DBG_VALUE $z30_z31, $noreg, !293, !DIExpression(), debug-location !314 RET undef $lr, debug-location !317 ...