brintos

brintos / llvm-project-archived public Read only

0
0
Text · 3.2 KiB · edd53b6 Raw
81 lines · plain
1; RUN: llc -mtriple=x86_64-pc-windows-msvc %s -o /dev/null2define dso_local void @main(ptr %addr, ptr %src, ptr %dst) personality ptr @__CxxFrameHandler3 !dbg !11 {3entry:4  %tmp0 = load float, ptr %src5  %src1 = getelementptr inbounds float, ptr %src, i64 16  %tmp1 = load float, ptr %src17  %src2 = getelementptr inbounds float, ptr %src, i64 28  %tmp2 = load float, ptr %src29  %src3 = getelementptr inbounds float, ptr %src, i64 310  %tmp3 = load float, ptr %src311  %src4 = getelementptr inbounds float, ptr %src, i64 412  %tmp4 = load float, ptr %src413  %src5 = getelementptr inbounds float, ptr %src, i64 514  %tmp5 = load float, ptr %src515  %src6 = getelementptr inbounds float, ptr %src, i64 616  %tmp6 = load float, ptr %src617  invoke void @foo(ptr %addr)18          to label %scope_begin unwind label %ehcleanup1, !dbg !1319 20scope_begin:21  invoke void @llvm.seh.scope.begin()22          to label %scope_end unwind label %ehcleanup, !dbg !1323 24scope_end:25  invoke void @llvm.seh.scope.end()26          to label %finish unwind label %ehcleanup, !dbg !1327 28ehcleanup:29  %0 = cleanuppad within none [], !dbg !1330  call void @llvm.dbg.value(metadata ptr %addr, metadata !12, metadata !DIExpression()), !dbg !1331  call void @foo(ptr %addr) [ "funclet"(token %0) ], !dbg !1332  cleanupret from %0 unwind label %ehcleanup1, !dbg !1333 34ehcleanup1:35  %1 = cleanuppad within none [], !dbg !1336  call void @foo(ptr %addr) [ "funclet"(token %1) ], !dbg !1337  cleanupret from %1 unwind to caller, !dbg !1338 39finish:40  store float %tmp0, ptr %dst41  %dst1 = getelementptr inbounds float, ptr %dst, i64 142  store float %tmp1, ptr %dst143  %dst2 = getelementptr inbounds float, ptr %dst, i64 244  store float %tmp2, ptr %dst245  %dst3 = getelementptr inbounds float, ptr %dst, i64 346  store float %tmp3, ptr %dst347  %dst4 = getelementptr inbounds float, ptr %dst, i64 448  store float %tmp4, ptr %dst449  %dst5 = getelementptr inbounds float, ptr %dst, i64 550  store float %tmp5, ptr %dst551  %dst6 = getelementptr inbounds float, ptr %dst, i64 652  store float %tmp6, ptr %dst653  ret void54}55 56declare dso_local void @llvm.seh.scope.begin()57declare dso_local void @llvm.seh.scope.end()58declare dso_local i32 @__CxxFrameHandler3(...)59declare dso_local void @foo(ptr %addr)60declare void @llvm.dbg.value(metadata, metadata, metadata)61 62!llvm.module.flags = !{!0, !1, !2, !3}63!llvm.dbg.cu = !{!14}64 65!0 = !{i32 2, !"eh-asynch", i32 1}66!1 = !{i32 2, !"CodeView", i32 1}67!2 = !{i32 2, !"Debug Info Version", i32 3}68!3 = !{i32 7, !"uwtable", i32 2}69 70!4 = !DIBasicType(name: "float", size: 32, encoding: DW_ATE_float)71!5 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !4, size: 64)72!6 = !DIBasicType(name: "int", size: 32, encoding: DW_ATE_signed)73!7 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !6, size: 64)74!8 = !DISubroutineType(types: !9)75!9 = !{null, !7, !5, !5}76!10 = !DIFile(filename: "c:/main.cpp", directory: "")77!11 = distinct !DISubprogram(name: "main", scope: !10, file: !10, line: 5, type: !8, scopeLine: 11, unit: !14)78!12 = !DILocalVariable(name: "addr", scope: !11, file: !10, line: 5, type: !7)79!13 = !DILocation(line: 7, scope: !11)80!14 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus_14, file: !10, isOptimized: true, emissionKind: FullDebug, splitDebugInlining: false, nameTableKind: None)81