Created
May 31, 2020 19:53
-
-
Save raphlinus/aa3225d226ea653e1f3c50206dce9075 to your computer and use it in GitHub Desktop.
LLVM IR size comparison
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| @.str = private unnamed_addr constant [4 x i8] c"%d\0A\00", align 1 | |
| define i32 @main() #0 { | |
| %1 = alloca i32, align 4 | |
| %i = alloca i32, align 4 | |
| store i32 0, i32* %1 | |
| call void @llvm.dbg.declare(metadata !{i32* %i}, metadata !13), !dbg !15 | |
| store i32 0, i32* %i, align 4, !dbg !16 | |
| br label %2, !dbg !16 | |
| %3 = load i32* %i, align 4, !dbg !17 | |
| %4 = icmp slt i32 %3, 10, !dbg !17 | |
| br i1 %4, label %5, label %11, !dbg !17 | |
| %6 = load i32* %i, align 4, !dbg !20 | |
| %7 = call i32 (i8*, ...)* @printf(i8* getelementptr inbounds ([4 x i8]* @.str, i32 0, i32 0), i32 %6), !dbg !20 | |
| br label %8, !dbg !22 | |
| %9 = load i32* %i, align 4, !dbg !23 | |
| %10 = add nsw i32 %9, 1, !dbg !23 | |
| store i32 %10, i32* %i, align 4, !dbg !23 | |
| br label %2, !dbg !23 | |
| %12 = load i32* %1, !dbg !24 | |
| ret i32 %12, !dbg !24 | |
| } | |
| declare void @llvm.dbg.declare(metadata, metadata) #1 | |
| declare i32 @printf(i8*, ...) #2 | |
| attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" } | |
| attributes #1 = { nounwind readnone } | |
| attributes #2 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" } | |
| !0 = metadata !{i32 786449, metadata !1, i32 12, metadata !"clang version 3.5.0 (tags/RELEASE_350/final)", i1 false, metadata !"", i32 0, metadata !2, metadata !2, metadata !3, metadata !2, metadata !2, metadata !"", i32 1} ; [ DW_TAG_compile_unit ] [/home/ce/example.c] [DW_LANG_C99] | |
| !1 = metadata !{metadata !"example.c", metadata !"/home/ce"} | |
| !2 = metadata !{} | |
| !3 = metadata !{metadata !4} | |
| !4 = metadata !{i32 786478, metadata !5, metadata !6, metadata !"main", metadata !"main", metadata !"", i32 1, metadata !7, i1 false, i1 true, i32 0, i32 0, null, i32 0, i1 false, i32 ()* @main, null, null, metadata !2, i32 1} ; [ DW_TAG_subprogram ] [line 1] [def] [main] | |
| !5 = metadata !{metadata !"./example.c", metadata !"/home/ce"} | |
| !6 = metadata !{i32 786473, metadata !5} ; [ DW_TAG_file_type ] [/home/ce/./example.c] | |
| !7 = metadata !{i32 786453, i32 0, null, metadata !"", i32 0, i64 0, i64 0, i64 0, i32 0, null, metadata !8, i32 0, null, null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0] [from ] | |
| !8 = metadata !{metadata !9} | |
| !9 = metadata !{i32 786468, null, null, metadata !"int", i32 0, i64 32, i64 32, i64 0, i32 0, i32 5} ; [ DW_TAG_base_type ] [int] [line 0, size 32, align 32, offset 0, enc DW_ATE_signed] | |
| !10 = metadata !{i32 2, metadata !"Dwarf Version", i32 4} | |
| !11 = metadata !{i32 2, metadata !"Debug Info Version", i32 1} | |
| !12 = metadata !{metadata !"clang version 3.5.0 (tags/RELEASE_350/final)"} | |
| !13 = metadata !{i32 786688, metadata !14, metadata !"i", metadata !6, i32 2, metadata !9, i32 0, i32 0} ; [ DW_TAG_auto_variable ] [i] [line 2] | |
| !14 = metadata !{i32 786443, metadata !5, metadata !4, i32 2, i32 5, i32 0, i32 0} ; [ DW_TAG_lexical_block ] [/home/ce/./example.c] | |
| !15 = metadata !{i32 2, i32 14, metadata !14, null} | |
| !16 = metadata !{i32 2, i32 10, metadata !14, null} | |
| !17 = metadata !{i32 2, i32 10, metadata !18, null} | |
| !18 = metadata !{i32 786443, metadata !5, metadata !19, i32 2, i32 10, i32 2, i32 3} ; [ DW_TAG_lexical_block ] [/home/ce/./example.c] | |
| !19 = metadata !{i32 786443, metadata !5, metadata !14, i32 2, i32 10, i32 1, i32 2} ; [ DW_TAG_lexical_block ] [/home/ce/./example.c] | |
| !20 = metadata !{i32 3, i32 9, metadata !21, null} | |
| !21 = metadata !{i32 786443, metadata !5, metadata !14, i32 2, i32 34, i32 0, i32 1} ; [ DW_TAG_lexical_block ] [/home/ce/./example.c] | |
| !22 = metadata !{i32 4, i32 5, metadata !21, null} | |
| !23 = metadata !{i32 2, i32 29, metadata !14, null} | |
| !24 = metadata !{i32 5, i32 1, metadata !4, null} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| ; ModuleID = 'playground.e6co59ml-cgu.0' | |
| source_filename = "playground.e6co59ml-cgu.0" | |
| target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" | |
| target triple = "x86_64-unknown-linux-gnu" | |
| %"core::result::Result<u32, core::num::TryFromIntError>::Ok" = type { [1 x i32], i32, [0 x i32] } | |
| %"core::option::Option<i32>::Some" = type { [1 x i32], i32, [0 x i32] } | |
| %"core::fmt::Formatter" = type { [0 x i64], { i64, i64 }, [0 x i64], { i64, i64 }, [0 x i64], { {}*, [3 x i64]* }, [0 x i32], i32, [0 x i32], i32, [0 x i8], i8, [7 x i8] } | |
| %"core::fmt::::Opaque" = type {} | |
| %"core::fmt::Arguments" = type { [0 x i64], { [0 x { [0 x i8]*, i64 }]*, i64 }, [0 x i64], { i64*, i64 }, [0 x i64], { [0 x { i8*, i8* }]*, i64 }, [0 x i64] } | |
| %"core::mem::manually_drop::ManuallyDrop<core::ptr::swap_nonoverlapping_bytes::UnalignedBlock>" = type { [0 x i64], %"core::ptr::swap_nonoverlapping_bytes::UnalignedBlock", [0 x i64] } | |
| %"core::ptr::swap_nonoverlapping_bytes::UnalignedBlock" = type { [0 x i64], i64, [0 x i64], i64, [0 x i64], i64, [0 x i64], i64, [0 x i64] } | |
| %"core::mem::maybe_uninit::MaybeUninit<core::ptr::swap_nonoverlapping_bytes::UnalignedBlock>" = type { [4 x i64] } | |
| %"core::result::Result<u32, core::num::TryFromIntError>::Err" = type { [4 x i8], %"core::num::TryFromIntError", [0 x i8] } | |
| %"core::num::TryFromIntError" = type { [0 x i8], {}, [0 x i8] } | |
| %"unwind::libunwind::_Unwind_Exception" = type { [0 x i64], i64, [0 x i64], void (i32, %"unwind::libunwind::_Unwind_Exception"*)*, [0 x i64], [6 x i64], [0 x i64] } | |
| %"unwind::libunwind::_Unwind_Context" = type { [0 x i8] } | |
| @vtable.0 = private unnamed_addr constant { void (i8**)*, i64, i64, i32 (i8**)*, i32 (i8**)*, i32 (i8**)* } { void (i8**)* @_ZN4core3ptr13drop_in_place17hb7f00348eda9b683E, i64 8, i64 8, i32 (i8**)* @"_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17ha5412e4ff1299b77E", i32 (i8**)* @"_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17ha5412e4ff1299b77E", i32 (i8**)* @"_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17ha18773bce9637d1bE" }, align 8, !dbg !0 | |
| @0 = private unnamed_addr constant <{ [0 x i8] }> zeroinitializer, align 1 | |
| @1 = private unnamed_addr constant <{ [1 x i8] }> <{ [1 x i8] c"\0A" }>, align 1 | |
| @2 = private unnamed_addr constant <{ i8*, [8 x i8], i8*, [8 x i8] }> <{ i8* getelementptr inbounds (<{ [0 x i8] }>, <{ [0 x i8] }>* @0, i32 0, i32 0, i32 0), [8 x i8] zeroinitializer, i8* getelementptr inbounds (<{ [1 x i8] }>, <{ [1 x i8] }>* @1, i32 0, i32 0, i32 0), [8 x i8] c"\01\00\00\00\00\00\00\00" }>, align 8 | |
| @3 = private unnamed_addr constant <{ i8*, [0 x i8] }> <{ i8* bitcast (<{ i8*, [8 x i8], i8*, [8 x i8] }>* @2 to i8*), [0 x i8] zeroinitializer }>, align 8 | |
| @__rustc_debug_gdb_scripts_section__ = linkonce_odr unnamed_addr constant [34 x i8] c"\01gdb_load_rust_pretty_printers.py\00", section ".debug_gdb_scripts", align 1 | |
| ; std::rt::lang_start | |
| ; Function Attrs: nonlazybind uwtable | |
| define hidden i64 @_ZN3std2rt10lang_start17h4e98f7fdca68e89dE(void ()* nonnull %main, i64 %argc, i8** %argv) unnamed_addr #0 !dbg !38 { | |
| start: | |
| %argv.dbg.spill = alloca i8**, align 8 | |
| %argc.dbg.spill = alloca i64, align 8 | |
| %main.dbg.spill = alloca void ()*, align 8 | |
| %_7 = alloca i8*, align 8 | |
| store void ()* %main, void ()** %main.dbg.spill, align 8 | |
| call void @llvm.dbg.declare(metadata void ()** %main.dbg.spill, metadata !46, metadata !DIExpression()), !dbg !52 | |
| store i64 %argc, i64* %argc.dbg.spill, align 8 | |
| call void @llvm.dbg.declare(metadata i64* %argc.dbg.spill, metadata !47, metadata !DIExpression()), !dbg !53 | |
| store i8** %argv, i8*** %argv.dbg.spill, align 8 | |
| call void @llvm.dbg.declare(metadata i8*** %argv.dbg.spill, metadata !48, metadata !DIExpression()), !dbg !54 | |
| %0 = bitcast i8** %_7 to void ()**, !dbg !55 | |
| store void ()* %main, void ()** %0, align 8, !dbg !55 | |
| %_4.0 = bitcast i8** %_7 to {}*, !dbg !56 | |
| ; call std::rt::lang_start_internal | |
| %1 = call i64 @_ZN3std2rt19lang_start_internal17hcea4e704875ab132E({}* nonnull align 1 %_4.0, [3 x i64]* noalias readonly align 8 dereferenceable(24) bitcast ({ void (i8**)*, i64, i64, i32 (i8**)*, i32 (i8**)*, i32 (i8**)* }* @vtable.0 to [3 x i64]*), i64 %argc, i8** %argv), !dbg !57 | |
| br label %bb1, !dbg !57 | |
| bb1: ; preds = %start | |
| ret i64 %1, !dbg !58 | |
| } | |
| ; std::rt::lang_start::{{closure}} | |
| ; Function Attrs: nonlazybind uwtable | |
| define internal i32 @"_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17ha5412e4ff1299b77E"(i8** noalias readonly align 8 dereferenceable(8) %_1) unnamed_addr #0 !dbg !59 { | |
| start: | |
| %_1.dbg.spill = alloca i8**, align 8 | |
| store i8** %_1, i8*** %_1.dbg.spill, align 8 | |
| call void @llvm.dbg.declare(metadata i8*** %_1.dbg.spill, metadata !65, metadata !DIExpression(DW_OP_deref)), !dbg !66 | |
| %0 = bitcast i8** %_1 to void ()**, !dbg !67 | |
| %_3 = load void ()*, void ()** %0, align 8, !dbg !67, !nonnull !4 | |
| call void %_3(), !dbg !67 | |
| br label %bb1, !dbg !67 | |
| bb1: ; preds = %start | |
| ; call <() as std::process::Termination>::report | |
| %1 = call i32 @"_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17hb299261025355cbfE"(), !dbg !67 | |
| br label %bb2, !dbg !67 | |
| bb2: ; preds = %bb1 | |
| ret i32 %1, !dbg !68 | |
| } | |
| ; std::sys::unix::process::process_common::ExitCode::as_i32 | |
| ; Function Attrs: inlinehint nonlazybind uwtable | |
| define internal i32 @_ZN3std3sys4unix7process14process_common8ExitCode6as_i3217h7ec8f604402542d5E(i8* noalias readonly align 1 dereferenceable(1) %self) unnamed_addr #1 !dbg !69 { | |
| start: | |
| %self.dbg.spill = alloca i8*, align 8 | |
| store i8* %self, i8** %self.dbg.spill, align 8 | |
| call void @llvm.dbg.declare(metadata i8** %self.dbg.spill, metadata !82, metadata !DIExpression()), !dbg !83 | |
| %_2 = load i8, i8* %self, align 1, !dbg !84 | |
| %0 = zext i8 %_2 to i32, !dbg !84 | |
| ret i32 %0, !dbg !85 | |
| } | |
| ; <i32 as core::iter::range::Step>::add_usize | |
| ; Function Attrs: inlinehint nonlazybind uwtable | |
| define internal { i32, i32 } @"_ZN47_$LT$i32$u20$as$u20$core..iter..range..Step$GT$9add_usize17h58f32b59aa6ed552E"(i32* noalias readonly align 4 dereferenceable(4) %self, i64 %n) unnamed_addr #1 !dbg !86 { | |
| start: | |
| %wrapped.dbg.spill = alloca i32, align 4 | |
| %n_as_unsigned.dbg.spill = alloca i32, align 4 | |
| %n.dbg.spill = alloca i64, align 8 | |
| %self.dbg.spill = alloca i32*, align 8 | |
| %_3 = alloca { i32, i32 }, align 4 | |
| %0 = alloca { i32, i32 }, align 4 | |
| store i32* %self, i32** %self.dbg.spill, align 8 | |
| call void @llvm.dbg.declare(metadata i32** %self.dbg.spill, metadata !111, metadata !DIExpression()), !dbg !117 | |
| store i64 %n, i64* %n.dbg.spill, align 8 | |
| call void @llvm.dbg.declare(metadata i64* %n.dbg.spill, metadata !112, metadata !DIExpression()), !dbg !118 | |
| ; call core::convert::num::ptr_try_from_impls::<impl core::convert::TryFrom<usize> for u32>::try_from | |
| %1 = call { i32, i32 } @"_ZN4core7convert3num18ptr_try_from_impls69_$LT$impl$u20$core..convert..TryFrom$LT$usize$GT$$u20$for$u20$u32$GT$8try_from17h54cce386fc926767E"(i64 %n), !dbg !119 | |
| store { i32, i32 } %1, { i32, i32 }* %_3, align 4, !dbg !119 | |
| br label %bb1, !dbg !119 | |
| bb1: ; preds = %start | |
| %2 = bitcast { i32, i32 }* %_3 to i32*, !dbg !120 | |
| %3 = load i32, i32* %2, align 4, !dbg !120, !range !121 | |
| %_5 = zext i32 %3 to i64, !dbg !120 | |
| switch i64 %_5, label %bb3 [ | |
| i64 0, label %bb4 | |
| i64 1, label %bb2 | |
| ], !dbg !120 | |
| bb2: ; preds = %bb1 | |
| %4 = bitcast { i32, i32 }* %0 to i32*, !dbg !122 | |
| store i32 0, i32* %4, align 4, !dbg !122 | |
| br label %bb9, !dbg !123 | |
| bb3: ; preds = %bb1 | |
| unreachable, !dbg !119 | |
| bb4: ; preds = %bb1 | |
| %5 = bitcast { i32, i32 }* %_3 to %"core::result::Result<u32, core::num::TryFromIntError>::Ok"*, !dbg !124 | |
| %6 = getelementptr inbounds %"core::result::Result<u32, core::num::TryFromIntError>::Ok", %"core::result::Result<u32, core::num::TryFromIntError>::Ok"* %5, i32 0, i32 1, !dbg !124 | |
| %n_as_unsigned = load i32, i32* %6, align 4, !dbg !124 | |
| store i32 %n_as_unsigned, i32* %n_as_unsigned.dbg.spill, align 4, !dbg !124 | |
| call void @llvm.dbg.declare(metadata i32* %n_as_unsigned.dbg.spill, metadata !113, metadata !DIExpression()), !dbg !125 | |
| %_10 = load i32, i32* %self, align 4, !dbg !126 | |
| ; call core::num::<impl u32>::wrapping_add | |
| %_8 = call i32 @"_ZN4core3num21_$LT$impl$u20$u32$GT$12wrapping_add17h8e1cf463cd9881b5E"(i32 %_10, i32 %n_as_unsigned), !dbg !127 | |
| br label %bb5, !dbg !127 | |
| bb5: ; preds = %bb4 | |
| store i32 %_8, i32* %wrapped.dbg.spill, align 4, !dbg !127 | |
| call void @llvm.dbg.declare(metadata i32* %wrapped.dbg.spill, metadata !115, metadata !DIExpression()), !dbg !128 | |
| %_14 = load i32, i32* %self, align 4, !dbg !129 | |
| %_12 = icmp sge i32 %_8, %_14, !dbg !130 | |
| br i1 %_12, label %bb7, label %bb6, !dbg !131 | |
| bb6: ; preds = %bb5 | |
| %7 = bitcast { i32, i32 }* %0 to i32*, !dbg !132 | |
| store i32 0, i32* %7, align 4, !dbg !132 | |
| br label %bb8, !dbg !131 | |
| bb7: ; preds = %bb5 | |
| %8 = bitcast { i32, i32 }* %0 to %"core::option::Option<i32>::Some"*, !dbg !133 | |
| %9 = getelementptr inbounds %"core::option::Option<i32>::Some", %"core::option::Option<i32>::Some"* %8, i32 0, i32 1, !dbg !133 | |
| store i32 %_8, i32* %9, align 4, !dbg !133 | |
| %10 = bitcast { i32, i32 }* %0 to i32*, !dbg !133 | |
| store i32 1, i32* %10, align 4, !dbg !133 | |
| br label %bb8, !dbg !131 | |
| bb8: ; preds = %bb6, %bb7 | |
| br label %bb9, !dbg !123 | |
| bb9: ; preds = %bb8, %bb2 | |
| %11 = getelementptr inbounds { i32, i32 }, { i32, i32 }* %0, i32 0, i32 0, !dbg !134 | |
| %12 = load i32, i32* %11, align 4, !dbg !134, !range !121 | |
| %13 = getelementptr inbounds { i32, i32 }, { i32, i32 }* %0, i32 0, i32 1, !dbg !134 | |
| %14 = load i32, i32* %13, align 4, !dbg !134 | |
| %15 = insertvalue { i32, i32 } undef, i32 %12, 0, !dbg !134 | |
| %16 = insertvalue { i32, i32 } %15, i32 %14, 1, !dbg !134 | |
| ret { i32, i32 } %16, !dbg !134 | |
| } | |
| ; core::intrinsics::copy_nonoverlapping | |
| ; Function Attrs: inlinehint nonlazybind uwtable | |
| define internal void @_ZN4core10intrinsics19copy_nonoverlapping17hc0c4590bff1ea0f7E(i32* %src, i32* %dst, i64 %count) unnamed_addr #1 !dbg !135 { | |
| start: | |
| %count.dbg.spill = alloca i64, align 8 | |
| %dst.dbg.spill = alloca i32*, align 8 | |
| %src.dbg.spill = alloca i32*, align 8 | |
| store i32* %src, i32** %src.dbg.spill, align 8 | |
| call void @llvm.dbg.declare(metadata i32** %src.dbg.spill, metadata !143, metadata !DIExpression()), !dbg !146 | |
| store i32* %dst, i32** %dst.dbg.spill, align 8 | |
| call void @llvm.dbg.declare(metadata i32** %dst.dbg.spill, metadata !144, metadata !DIExpression()), !dbg !147 | |
| store i64 %count, i64* %count.dbg.spill, align 8 | |
| call void @llvm.dbg.declare(metadata i64* %count.dbg.spill, metadata !145, metadata !DIExpression()), !dbg !148 | |
| %0 = mul i64 4, %count, !dbg !149 | |
| %1 = bitcast i32* %dst to i8*, !dbg !149 | |
| %2 = bitcast i32* %src to i8*, !dbg !149 | |
| call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 4 %1, i8* align 4 %2, i64 %0, i1 false), !dbg !149 | |
| br label %bb1, !dbg !149 | |
| bb1: ; preds = %start | |
| ret void, !dbg !150 | |
| } | |
| ; core::intrinsics::copy_nonoverlapping | |
| ; Function Attrs: inlinehint nonlazybind uwtable | |
| define internal void @_ZN4core10intrinsics19copy_nonoverlapping17hf8deb65fbe0d5b49E(i8* %src, i8* %dst, i64 %count) unnamed_addr #1 !dbg !151 { | |
| start: | |
| %count.dbg.spill = alloca i64, align 8 | |
| %dst.dbg.spill = alloca i8*, align 8 | |
| %src.dbg.spill = alloca i8*, align 8 | |
| store i8* %src, i8** %src.dbg.spill, align 8 | |
| call void @llvm.dbg.declare(metadata i8** %src.dbg.spill, metadata !156, metadata !DIExpression()), !dbg !161 | |
| store i8* %dst, i8** %dst.dbg.spill, align 8 | |
| call void @llvm.dbg.declare(metadata i8** %dst.dbg.spill, metadata !157, metadata !DIExpression()), !dbg !162 | |
| store i64 %count, i64* %count.dbg.spill, align 8 | |
| call void @llvm.dbg.declare(metadata i64* %count.dbg.spill, metadata !158, metadata !DIExpression()), !dbg !163 | |
| %0 = mul i64 1, %count, !dbg !164 | |
| call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 1 %dst, i8* align 1 %src, i64 %0, i1 false), !dbg !164 | |
| br label %bb1, !dbg !164 | |
| bb1: ; preds = %start | |
| ret void, !dbg !165 | |
| } | |
| ; core::cmp::impls::<impl core::cmp::PartialOrd for i32>::lt | |
| ; Function Attrs: inlinehint nonlazybind uwtable | |
| define internal zeroext i1 @"_ZN4core3cmp5impls55_$LT$impl$u20$core..cmp..PartialOrd$u20$for$u20$i32$GT$2lt17h6242e978760dcbacE"(i32* noalias readonly align 4 dereferenceable(4) %self, i32* noalias readonly align 4 dereferenceable(4) %other) unnamed_addr #1 !dbg !166 { | |
| start: | |
| %other.dbg.spill = alloca i32*, align 8 | |
| %self.dbg.spill = alloca i32*, align 8 | |
| store i32* %self, i32** %self.dbg.spill, align 8 | |
| call void @llvm.dbg.declare(metadata i32** %self.dbg.spill, metadata !175, metadata !DIExpression()), !dbg !177 | |
| store i32* %other, i32** %other.dbg.spill, align 8 | |
| call void @llvm.dbg.declare(metadata i32** %other.dbg.spill, metadata !176, metadata !DIExpression()), !dbg !178 | |
| %_3 = load i32, i32* %self, align 4, !dbg !179 | |
| %_4 = load i32, i32* %other, align 4, !dbg !180 | |
| %0 = icmp slt i32 %_3, %_4, !dbg !179 | |
| ret i1 %0, !dbg !181 | |
| } | |
| ; core::fmt::ArgumentV1::new | |
| ; Function Attrs: nonlazybind uwtable | |
| define internal { i8*, i8* } @_ZN4core3fmt10ArgumentV13new17h51e098059b2fc3dcE(i32* noalias readonly align 4 dereferenceable(4) %x, i1 (i32*, %"core::fmt::Formatter"*)* nonnull %f) unnamed_addr #0 !dbg !182 { | |
| start: | |
| %0 = alloca %"core::fmt::::Opaque"*, align 8 | |
| %1 = alloca i1 (%"core::fmt::::Opaque"*, %"core::fmt::Formatter"*)*, align 8 | |
| %f.dbg.spill = alloca i1 (i32*, %"core::fmt::Formatter"*)*, align 8 | |
| %x.dbg.spill = alloca i32*, align 8 | |
| %2 = alloca { i8*, i8* }, align 8 | |
| store i32* %x, i32** %x.dbg.spill, align 8 | |
| call void @llvm.dbg.declare(metadata i32** %x.dbg.spill, metadata !231, metadata !DIExpression()), !dbg !233 | |
| store i1 (i32*, %"core::fmt::Formatter"*)* %f, i1 (i32*, %"core::fmt::Formatter"*)** %f.dbg.spill, align 8 | |
| call void @llvm.dbg.declare(metadata i1 (i32*, %"core::fmt::Formatter"*)** %f.dbg.spill, metadata !232, metadata !DIExpression()), !dbg !234 | |
| %3 = bitcast i1 (%"core::fmt::::Opaque"*, %"core::fmt::Formatter"*)** %1 to i1 (i32*, %"core::fmt::Formatter"*)**, !dbg !235 | |
| store i1 (i32*, %"core::fmt::Formatter"*)* %f, i1 (i32*, %"core::fmt::Formatter"*)** %3, align 8, !dbg !235 | |
| %_3 = load i1 (%"core::fmt::::Opaque"*, %"core::fmt::Formatter"*)*, i1 (%"core::fmt::::Opaque"*, %"core::fmt::Formatter"*)** %1, align 8, !dbg !235, !nonnull !4 | |
| br label %bb1, !dbg !235 | |
| bb1: ; preds = %start | |
| %4 = bitcast %"core::fmt::::Opaque"** %0 to i32**, !dbg !236 | |
| store i32* %x, i32** %4, align 8, !dbg !236 | |
| %_5 = load %"core::fmt::::Opaque"*, %"core::fmt::::Opaque"** %0, align 8, !dbg !236, !nonnull !4 | |
| br label %bb2, !dbg !236 | |
| bb2: ; preds = %bb1 | |
| %5 = bitcast { i8*, i8* }* %2 to %"core::fmt::::Opaque"**, !dbg !237 | |
| store %"core::fmt::::Opaque"* %_5, %"core::fmt::::Opaque"** %5, align 8, !dbg !237 | |
| %6 = getelementptr inbounds { i8*, i8* }, { i8*, i8* }* %2, i32 0, i32 1, !dbg !237 | |
| %7 = bitcast i8** %6 to i1 (%"core::fmt::::Opaque"*, %"core::fmt::Formatter"*)**, !dbg !237 | |
| store i1 (%"core::fmt::::Opaque"*, %"core::fmt::Formatter"*)* %_3, i1 (%"core::fmt::::Opaque"*, %"core::fmt::Formatter"*)** %7, align 8, !dbg !237 | |
| %8 = getelementptr inbounds { i8*, i8* }, { i8*, i8* }* %2, i32 0, i32 0, !dbg !238 | |
| %9 = load i8*, i8** %8, align 8, !dbg !238, !nonnull !4 | |
| %10 = getelementptr inbounds { i8*, i8* }, { i8*, i8* }* %2, i32 0, i32 1, !dbg !238 | |
| %11 = load i8*, i8** %10, align 8, !dbg !238, !nonnull !4 | |
| %12 = insertvalue { i8*, i8* } undef, i8* %9, 0, !dbg !238 | |
| %13 = insertvalue { i8*, i8* } %12, i8* %11, 1, !dbg !238 | |
| ret { i8*, i8* } %13, !dbg !238 | |
| } | |
| ; core::fmt::Arguments::new_v1 | |
| ; Function Attrs: inlinehint nonlazybind uwtable | |
| define internal void @_ZN4core3fmt9Arguments6new_v117h9bb77bc3dfdd6e76E(%"core::fmt::Arguments"* noalias nocapture sret dereferenceable(48), [0 x { [0 x i8]*, i64 }]* noalias nonnull readonly align 8 %pieces.0, i64 %pieces.1, [0 x { i8*, i8* }]* noalias nonnull readonly align 8 %args.0, i64 %args.1) unnamed_addr #1 !dbg !239 { | |
| start: | |
| %args.dbg.spill = alloca { [0 x { i8*, i8* }]*, i64 }, align 8 | |
| %pieces.dbg.spill = alloca { [0 x { [0 x i8]*, i64 }]*, i64 }, align 8 | |
| %_4 = alloca { i64*, i64 }, align 8 | |
| %1 = getelementptr inbounds { [0 x { [0 x i8]*, i64 }]*, i64 }, { [0 x { [0 x i8]*, i64 }]*, i64 }* %pieces.dbg.spill, i32 0, i32 0 | |
| store [0 x { [0 x i8]*, i64 }]* %pieces.0, [0 x { [0 x i8]*, i64 }]** %1, align 8 | |
| %2 = getelementptr inbounds { [0 x { [0 x i8]*, i64 }]*, i64 }, { [0 x { [0 x i8]*, i64 }]*, i64 }* %pieces.dbg.spill, i32 0, i32 1 | |
| store i64 %pieces.1, i64* %2, align 8 | |
| call void @llvm.dbg.declare(metadata { [0 x { [0 x i8]*, i64 }]*, i64 }* %pieces.dbg.spill, metadata !305, metadata !DIExpression()), !dbg !307 | |
| %3 = getelementptr inbounds { [0 x { i8*, i8* }]*, i64 }, { [0 x { i8*, i8* }]*, i64 }* %args.dbg.spill, i32 0, i32 0 | |
| store [0 x { i8*, i8* }]* %args.0, [0 x { i8*, i8* }]** %3, align 8 | |
| %4 = getelementptr inbounds { [0 x { i8*, i8* }]*, i64 }, { [0 x { i8*, i8* }]*, i64 }* %args.dbg.spill, i32 0, i32 1 | |
| store i64 %args.1, i64* %4, align 8 | |
| call void @llvm.dbg.declare(metadata { [0 x { i8*, i8* }]*, i64 }* %args.dbg.spill, metadata !306, metadata !DIExpression()), !dbg !308 | |
| %5 = bitcast { i64*, i64 }* %_4 to {}**, !dbg !309 | |
| store {}* null, {}** %5, align 8, !dbg !309 | |
| %6 = bitcast %"core::fmt::Arguments"* %0 to { [0 x { [0 x i8]*, i64 }]*, i64 }*, !dbg !310 | |
| %7 = getelementptr inbounds { [0 x { [0 x i8]*, i64 }]*, i64 }, { [0 x { [0 x i8]*, i64 }]*, i64 }* %6, i32 0, i32 0, !dbg !310 | |
| store [0 x { [0 x i8]*, i64 }]* %pieces.0, [0 x { [0 x i8]*, i64 }]** %7, align 8, !dbg !310 | |
| %8 = getelementptr inbounds { [0 x { [0 x i8]*, i64 }]*, i64 }, { [0 x { [0 x i8]*, i64 }]*, i64 }* %6, i32 0, i32 1, !dbg !310 | |
| store i64 %pieces.1, i64* %8, align 8, !dbg !310 | |
| %9 = getelementptr inbounds %"core::fmt::Arguments", %"core::fmt::Arguments"* %0, i32 0, i32 3, !dbg !310 | |
| %10 = getelementptr inbounds { i64*, i64 }, { i64*, i64 }* %_4, i32 0, i32 0, !dbg !310 | |
| %11 = load i64*, i64** %10, align 8, !dbg !310 | |
| %12 = getelementptr inbounds { i64*, i64 }, { i64*, i64 }* %_4, i32 0, i32 1, !dbg !310 | |
| %13 = load i64, i64* %12, align 8, !dbg !310 | |
| %14 = getelementptr inbounds { i64*, i64 }, { i64*, i64 }* %9, i32 0, i32 0, !dbg !310 | |
| store i64* %11, i64** %14, align 8, !dbg !310 | |
| %15 = getelementptr inbounds { i64*, i64 }, { i64*, i64 }* %9, i32 0, i32 1, !dbg !310 | |
| store i64 %13, i64* %15, align 8, !dbg !310 | |
| %16 = getelementptr inbounds %"core::fmt::Arguments", %"core::fmt::Arguments"* %0, i32 0, i32 5, !dbg !310 | |
| %17 = getelementptr inbounds { [0 x { i8*, i8* }]*, i64 }, { [0 x { i8*, i8* }]*, i64 }* %16, i32 0, i32 0, !dbg !310 | |
| store [0 x { i8*, i8* }]* %args.0, [0 x { i8*, i8* }]** %17, align 8, !dbg !310 | |
| %18 = getelementptr inbounds { [0 x { i8*, i8* }]*, i64 }, { [0 x { i8*, i8* }]*, i64 }* %16, i32 0, i32 1, !dbg !310 | |
| store i64 %args.1, i64* %18, align 8, !dbg !310 | |
| ret void, !dbg !311 | |
| } | |
| ; core::mem::swap | |
| ; Function Attrs: inlinehint nonlazybind uwtable | |
| define internal void @_ZN4core3mem4swap17he16b24ad0b897db6E(i32* align 4 dereferenceable(4) %x, i32* align 4 dereferenceable(4) %y) unnamed_addr #1 !dbg !312 { | |
| start: | |
| %y.dbg.spill = alloca i32*, align 8 | |
| %x.dbg.spill = alloca i32*, align 8 | |
| store i32* %x, i32** %x.dbg.spill, align 8 | |
| call void @llvm.dbg.declare(metadata i32** %x.dbg.spill, metadata !319, metadata !DIExpression()), !dbg !321 | |
| store i32* %y, i32** %y.dbg.spill, align 8 | |
| call void @llvm.dbg.declare(metadata i32** %y.dbg.spill, metadata !320, metadata !DIExpression()), !dbg !322 | |
| ; call core::ptr::swap_nonoverlapping_one | |
| call void @_ZN4core3ptr23swap_nonoverlapping_one17he6fda9b6a548efdfE(i32* %x, i32* %y), !dbg !323 | |
| br label %bb1, !dbg !323 | |
| bb1: ; preds = %start | |
| ret void, !dbg !324 | |
| } | |
| ; core::num::<impl u32>::wrapping_add | |
| ; Function Attrs: inlinehint nonlazybind uwtable | |
| define internal i32 @"_ZN4core3num21_$LT$impl$u20$u32$GT$12wrapping_add17h8e1cf463cd9881b5E"(i32 %self, i32 %rhs) unnamed_addr #1 !dbg !325 { | |
| start: | |
| %0 = alloca i32, align 4 | |
| %rhs.dbg.spill = alloca i32, align 4 | |
| %self.dbg.spill = alloca i32, align 4 | |
| store i32 %self, i32* %self.dbg.spill, align 4 | |
| call void @llvm.dbg.declare(metadata i32* %self.dbg.spill, metadata !332, metadata !DIExpression()), !dbg !334 | |
| store i32 %rhs, i32* %rhs.dbg.spill, align 4 | |
| call void @llvm.dbg.declare(metadata i32* %rhs.dbg.spill, metadata !333, metadata !DIExpression()), !dbg !335 | |
| %1 = add i32 %self, %rhs, !dbg !336 | |
| store i32 %1, i32* %0, align 4, !dbg !336 | |
| %2 = load i32, i32* %0, align 4, !dbg !336 | |
| br label %bb1, !dbg !336 | |
| bb1: ; preds = %start | |
| ret i32 %2, !dbg !337 | |
| } | |
| ; core::ops::function::FnOnce::call_once{{vtable.shim}} | |
| ; Function Attrs: nonlazybind uwtable | |
| define internal i32 @"_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17ha18773bce9637d1bE"(i8** %_1) unnamed_addr #0 !dbg !338 { | |
| start: | |
| %_1.dbg.spill = alloca i8**, align 8 | |
| %_2 = alloca {}, align 1 | |
| store i8** %_1, i8*** %_1.dbg.spill, align 8 | |
| call void @llvm.dbg.declare(metadata i8*** %_1.dbg.spill, metadata !347, metadata !DIExpression()), !dbg !352 | |
| call void @llvm.dbg.declare(metadata {}* %_2, metadata !348, metadata !DIExpression()), !dbg !352 | |
| %0 = load i8*, i8** %_1, align 8, !dbg !352, !nonnull !4 | |
| ; call core::ops::function::FnOnce::call_once | |
| %1 = call i32 @_ZN4core3ops8function6FnOnce9call_once17hf39813048d37b602E(i8* nonnull %0), !dbg !352 | |
| br label %bb1, !dbg !352 | |
| bb1: ; preds = %start | |
| ret i32 %1, !dbg !352 | |
| } | |
| ; core::ops::function::FnOnce::call_once | |
| ; Function Attrs: nonlazybind uwtable | |
| define internal i32 @_ZN4core3ops8function6FnOnce9call_once17hf39813048d37b602E(i8* nonnull) unnamed_addr #0 personality i32 (i32, i32, i64, %"unwind::libunwind::_Unwind_Exception"*, %"unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality !dbg !353 { | |
| start: | |
| %1 = alloca { i8*, i32 }, align 8 | |
| %_2 = alloca {}, align 1 | |
| %_1 = alloca i8*, align 8 | |
| store i8* %0, i8** %_1, align 8 | |
| call void @llvm.dbg.declare(metadata i8** %_1, metadata !357, metadata !DIExpression()), !dbg !359 | |
| call void @llvm.dbg.declare(metadata {}* %_2, metadata !358, metadata !DIExpression()), !dbg !359 | |
| ; invoke std::rt::lang_start::{{closure}} | |
| %2 = invoke i32 @"_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17ha5412e4ff1299b77E"(i8** noalias readonly align 8 dereferenceable(8) %_1) | |
| to label %bb1 unwind label %cleanup, !dbg !359 | |
| bb1: ; preds = %start | |
| br label %bb2, !dbg !359 | |
| bb2: ; preds = %bb1 | |
| ret i32 %2, !dbg !359 | |
| bb3: ; preds = %cleanup | |
| br label %bb4, !dbg !359 | |
| bb4: ; preds = %bb3 | |
| %3 = bitcast { i8*, i32 }* %1 to i8**, !dbg !359 | |
| %4 = load i8*, i8** %3, align 8, !dbg !359 | |
| %5 = getelementptr inbounds { i8*, i32 }, { i8*, i32 }* %1, i32 0, i32 1, !dbg !359 | |
| %6 = load i32, i32* %5, align 8, !dbg !359 | |
| %7 = insertvalue { i8*, i32 } undef, i8* %4, 0, !dbg !359 | |
| %8 = insertvalue { i8*, i32 } %7, i32 %6, 1, !dbg !359 | |
| resume { i8*, i32 } %8, !dbg !359 | |
| cleanup: ; preds = %start | |
| %9 = landingpad { i8*, i32 } | |
| cleanup | |
| %10 = extractvalue { i8*, i32 } %9, 0 | |
| %11 = extractvalue { i8*, i32 } %9, 1 | |
| %12 = getelementptr inbounds { i8*, i32 }, { i8*, i32 }* %1, i32 0, i32 0 | |
| store i8* %10, i8** %12, align 8 | |
| %13 = getelementptr inbounds { i8*, i32 }, { i8*, i32 }* %1, i32 0, i32 1 | |
| store i32 %11, i32* %13, align 8 | |
| br label %bb3 | |
| } | |
| ; core::ptr::drop_in_place | |
| ; Function Attrs: nonlazybind uwtable | |
| define internal void @_ZN4core3ptr13drop_in_place17hb7f00348eda9b683E(i8** %_1) unnamed_addr #0 !dbg !360 { | |
| start: | |
| %_1.dbg.spill = alloca i8**, align 8 | |
| store i8** %_1, i8*** %_1.dbg.spill, align 8 | |
| call void @llvm.dbg.declare(metadata i8*** %_1.dbg.spill, metadata !366, metadata !DIExpression()), !dbg !369 | |
| ret void, !dbg !369 | |
| } | |
| ; core::ptr::swap_nonoverlapping | |
| ; Function Attrs: inlinehint nonlazybind uwtable | |
| define internal void @_ZN4core3ptr19swap_nonoverlapping17h858d11028c044449E(i32* %x, i32* %y, i64 %count) unnamed_addr #1 !dbg !370 { | |
| start: | |
| %0 = alloca i64, align 8 | |
| %len.dbg.spill = alloca i64, align 8 | |
| %y.dbg.spill4 = alloca i8*, align 8 | |
| %x.dbg.spill2 = alloca i8*, align 8 | |
| %count.dbg.spill = alloca i64, align 8 | |
| %y.dbg.spill = alloca i32*, align 8 | |
| %x.dbg.spill = alloca i32*, align 8 | |
| store i32* %x, i32** %x.dbg.spill, align 8 | |
| call void @llvm.dbg.declare(metadata i32** %x.dbg.spill, metadata !374, metadata !DIExpression()), !dbg !383 | |
| store i32* %y, i32** %y.dbg.spill, align 8 | |
| call void @llvm.dbg.declare(metadata i32** %y.dbg.spill, metadata !375, metadata !DIExpression()), !dbg !384 | |
| store i64 %count, i64* %count.dbg.spill, align 8 | |
| call void @llvm.dbg.declare(metadata i64* %count.dbg.spill, metadata !376, metadata !DIExpression()), !dbg !385 | |
| %x1 = bitcast i32* %x to i8*, !dbg !386 | |
| store i8* %x1, i8** %x.dbg.spill2, align 8, !dbg !386 | |
| call void @llvm.dbg.declare(metadata i8** %x.dbg.spill2, metadata !377, metadata !DIExpression()), !dbg !387 | |
| %y3 = bitcast i32* %y to i8*, !dbg !388 | |
| store i8* %y3, i8** %y.dbg.spill4, align 8, !dbg !388 | |
| call void @llvm.dbg.declare(metadata i8** %y.dbg.spill4, metadata !379, metadata !DIExpression()), !dbg !389 | |
| store i64 4, i64* %0, align 8, !dbg !390 | |
| %1 = load i64, i64* %0, align 8, !dbg !390 | |
| br label %bb1, !dbg !395 | |
| bb1: ; preds = %start | |
| %len = mul i64 %1, %count, !dbg !395 | |
| store i64 %len, i64* %len.dbg.spill, align 8, !dbg !395 | |
| call void @llvm.dbg.declare(metadata i64* %len.dbg.spill, metadata !381, metadata !DIExpression()), !dbg !396 | |
| ; call core::ptr::swap_nonoverlapping_bytes | |
| call void @_ZN4core3ptr25swap_nonoverlapping_bytes17h9e7c5d042bbac38fE(i8* %x1, i8* %y3, i64 %len), !dbg !397 | |
| br label %bb2, !dbg !397 | |
| bb2: ; preds = %bb1 | |
| ret void, !dbg !398 | |
| } | |
| ; core::ptr::swap_nonoverlapping_one | |
| ; Function Attrs: inlinehint nonlazybind uwtable | |
| define internal void @_ZN4core3ptr23swap_nonoverlapping_one17he6fda9b6a548efdfE(i32* %x, i32* %y) unnamed_addr #1 personality i32 (i32, i32, i64, %"unwind::libunwind::_Unwind_Exception"*, %"unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality !dbg !399 { | |
| start: | |
| %0 = alloca i64, align 8 | |
| %1 = alloca { i8*, i32 }, align 8 | |
| %z.dbg.spill = alloca i32, align 4 | |
| %y.dbg.spill = alloca i32*, align 8 | |
| %x.dbg.spill = alloca i32*, align 8 | |
| %_18 = alloca i8, align 1 | |
| store i32* %x, i32** %x.dbg.spill, align 8 | |
| call void @llvm.dbg.declare(metadata i32** %x.dbg.spill, metadata !403, metadata !DIExpression()), !dbg !407 | |
| store i32* %y, i32** %y.dbg.spill, align 8 | |
| call void @llvm.dbg.declare(metadata i32** %y.dbg.spill, metadata !404, metadata !DIExpression()), !dbg !408 | |
| store i8 0, i8* %_18, align 1, !dbg !409 | |
| store i64 4, i64* %0, align 8, !dbg !410 | |
| %2 = load i64, i64* %0, align 8, !dbg !410 | |
| br label %bb2, !dbg !409 | |
| bb1: ; preds = %bb10, %bb11 | |
| %3 = bitcast { i8*, i32 }* %1 to i8**, !dbg !412 | |
| %4 = load i8*, i8** %3, align 8, !dbg !412 | |
| %5 = getelementptr inbounds { i8*, i32 }, { i8*, i32 }* %1, i32 0, i32 1, !dbg !412 | |
| %6 = load i32, i32* %5, align 8, !dbg !412 | |
| %7 = insertvalue { i8*, i32 } undef, i8* %4, 0, !dbg !412 | |
| %8 = insertvalue { i8*, i32 } %7, i32 %6, 1, !dbg !412 | |
| resume { i8*, i32 } %8, !dbg !412 | |
| bb2: ; preds = %start | |
| %_3 = icmp ult i64 %2, 32, !dbg !409 | |
| br i1 %_3, label %bb4, label %bb3, !dbg !413 | |
| bb3: ; preds = %bb2 | |
| ; call core::ptr::swap_nonoverlapping | |
| call void @_ZN4core3ptr19swap_nonoverlapping17h858d11028c044449E(i32* %x, i32* %y, i64 1), !dbg !414 | |
| br label %bb8, !dbg !414 | |
| bb4: ; preds = %bb2 | |
| store i8 1, i8* %_18, align 1, !dbg !415 | |
| ; call core::ptr::read | |
| %z = call i32 @_ZN4core3ptr4read17hb8b617b170f7f5dcE(i32* %x), !dbg !415 | |
| store i32 %z, i32* %z.dbg.spill, align 4, !dbg !415 | |
| call void @llvm.dbg.declare(metadata i32* %z.dbg.spill, metadata !405, metadata !DIExpression()), !dbg !416 | |
| br label %bb5, !dbg !415 | |
| bb5: ; preds = %bb4 | |
| ; invoke core::intrinsics::copy_nonoverlapping | |
| invoke void @_ZN4core10intrinsics19copy_nonoverlapping17hc0c4590bff1ea0f7E(i32* %y, i32* %x, i64 1) | |
| to label %bb6 unwind label %cleanup, !dbg !417 | |
| bb6: ; preds = %bb5 | |
| store i8 0, i8* %_18, align 1, !dbg !418 | |
| ; invoke core::ptr::write | |
| invoke void @_ZN4core3ptr5write17hfd67ddf85252221fE(i32* %y, i32 %z) | |
| to label %bb7 unwind label %cleanup, !dbg !419 | |
| bb7: ; preds = %bb6 | |
| store i8 0, i8* %_18, align 1, !dbg !420 | |
| br label %bb9, !dbg !413 | |
| bb8: ; preds = %bb3 | |
| br label %bb9, !dbg !413 | |
| bb9: ; preds = %bb8, %bb7 | |
| ret void, !dbg !421 | |
| bb10: ; preds = %bb11 | |
| store i8 0, i8* %_18, align 1, !dbg !420 | |
| br label %bb1, !dbg !420 | |
| bb11: ; preds = %cleanup | |
| %9 = load i8, i8* %_18, align 1, !dbg !420, !range !422 | |
| %10 = trunc i8 %9 to i1, !dbg !420 | |
| br i1 %10, label %bb10, label %bb1, !dbg !420 | |
| cleanup: ; preds = %bb6, %bb5 | |
| %11 = landingpad { i8*, i32 } | |
| cleanup | |
| %12 = extractvalue { i8*, i32 } %11, 0 | |
| %13 = extractvalue { i8*, i32 } %11, 1 | |
| %14 = getelementptr inbounds { i8*, i32 }, { i8*, i32 }* %1, i32 0, i32 0 | |
| store i8* %12, i8** %14, align 8 | |
| %15 = getelementptr inbounds { i8*, i32 }, { i8*, i32 }* %1, i32 0, i32 1 | |
| store i32 %13, i32* %15, align 8 | |
| br label %bb11 | |
| } | |
| ; core::ptr::swap_nonoverlapping_bytes | |
| ; Function Attrs: inlinehint nonlazybind uwtable | |
| define internal void @_ZN4core3ptr25swap_nonoverlapping_bytes17h9e7c5d042bbac38fE(i8* %x, i8* %y, i64 %len) unnamed_addr #1 !dbg !423 { | |
| start: | |
| %self.dbg.spill.i.i13 = alloca %"core::mem::manually_drop::ManuallyDrop<core::ptr::swap_nonoverlapping_bytes::UnalignedBlock>"*, align 8 | |
| call void @llvm.dbg.declare(metadata %"core::mem::manually_drop::ManuallyDrop<core::ptr::swap_nonoverlapping_bytes::UnalignedBlock>"** %self.dbg.spill.i.i13, metadata !485, metadata !DIExpression()), !dbg !494 | |
| %self.dbg.spill.i14 = alloca %"core::mem::maybe_uninit::MaybeUninit<core::ptr::swap_nonoverlapping_bytes::UnalignedBlock>"*, align 8 | |
| call void @llvm.dbg.declare(metadata %"core::mem::maybe_uninit::MaybeUninit<core::ptr::swap_nonoverlapping_bytes::UnalignedBlock>"** %self.dbg.spill.i14, metadata !503, metadata !DIExpression()), !dbg !505 | |
| %self.dbg.spill.i.i = alloca <4 x i64>*, align 8 | |
| call void @llvm.dbg.declare(metadata <4 x i64>** %self.dbg.spill.i.i, metadata !506, metadata !DIExpression()), !dbg !513 | |
| %self.dbg.spill.i = alloca <4 x i64>*, align 8 | |
| call void @llvm.dbg.declare(metadata <4 x i64>** %self.dbg.spill.i, metadata !521, metadata !DIExpression()), !dbg !523 | |
| %0 = alloca i64, align 8 | |
| %y.dbg.spill12 = alloca i8*, align 8 | |
| %x.dbg.spill10 = alloca i8*, align 8 | |
| %t.dbg.spill8 = alloca i8*, align 8 | |
| %rem.dbg.spill = alloca i64, align 8 | |
| %y.dbg.spill6 = alloca i8*, align 8 | |
| %x.dbg.spill4 = alloca i8*, align 8 | |
| %t.dbg.spill = alloca i8*, align 8 | |
| %block_size.dbg.spill = alloca i64, align 8 | |
| %len.dbg.spill = alloca i64, align 8 | |
| %y.dbg.spill = alloca i8*, align 8 | |
| %x.dbg.spill = alloca i8*, align 8 | |
| %t1 = alloca %"core::mem::maybe_uninit::MaybeUninit<core::ptr::swap_nonoverlapping_bytes::UnalignedBlock>", align 8 | |
| %t = alloca <4 x i64>, align 32 | |
| %i = alloca i64, align 8 | |
| store i8* %x, i8** %x.dbg.spill, align 8 | |
| call void @llvm.dbg.declare(metadata i8** %x.dbg.spill, metadata !427, metadata !DIExpression()), !dbg !524 | |
| store i8* %y, i8** %y.dbg.spill, align 8 | |
| call void @llvm.dbg.declare(metadata i8** %y.dbg.spill, metadata !428, metadata !DIExpression()), !dbg !525 | |
| store i64 %len, i64* %len.dbg.spill, align 8 | |
| call void @llvm.dbg.declare(metadata i64* %len.dbg.spill, metadata !429, metadata !DIExpression()), !dbg !526 | |
| call void @llvm.dbg.declare(metadata i64* %i, metadata !432, metadata !DIExpression()), !dbg !527 | |
| call void @llvm.dbg.declare(metadata <4 x i64>* %t, metadata !434, metadata !DIExpression()), !dbg !528 | |
| call void @llvm.dbg.declare(metadata %"core::mem::maybe_uninit::MaybeUninit<core::ptr::swap_nonoverlapping_bytes::UnalignedBlock>"* %t1, metadata !460, metadata !DIExpression()), !dbg !529 | |
| store i64 32, i64* %0, align 8, !dbg !530 | |
| %1 = load i64, i64* %0, align 8, !dbg !530 | |
| store i64 %1, i64* %block_size.dbg.spill, align 8, !dbg !533 | |
| call void @llvm.dbg.declare(metadata i64* %block_size.dbg.spill, metadata !430, metadata !DIExpression()), !dbg !534 | |
| br label %bb1, !dbg !533 | |
| bb1: ; preds = %start | |
| store i64 0, i64* %i, align 8, !dbg !535 | |
| br label %bb2, !dbg !536 | |
| bb2: ; preds = %bb11, %bb1 | |
| %_8 = load i64, i64* %i, align 8, !dbg !537 | |
| %_7 = add i64 %_8, %1, !dbg !537 | |
| %_6 = icmp ule i64 %_7, %len, !dbg !537 | |
| br i1 %_6, label %bb4, label %bb3, !dbg !536 | |
| bb3: ; preds = %bb2 | |
| %_38 = load i64, i64* %i, align 8, !dbg !538 | |
| %_37 = icmp ult i64 %_38, %len, !dbg !538 | |
| br i1 %_37, label %bb12, label %bb20, !dbg !539 | |
| bb4: ; preds = %bb2 | |
| %2 = bitcast <4 x i64>* %t to {}*, !dbg !540 | |
| br label %bb5, !dbg !545 | |
| bb5: ; preds = %bb4 | |
| store <4 x i64>* %t, <4 x i64>** %self.dbg.spill.i, align 8 | |
| store <4 x i64>* %t, <4 x i64>** %self.dbg.spill.i.i, align 8 | |
| br label %bb6, !dbg !546 | |
| bb6: ; preds = %bb5 | |
| %t2 = bitcast <4 x i64>* %t to i8*, !dbg !546 | |
| store i8* %t2, i8** %t.dbg.spill, align 8, !dbg !546 | |
| call void @llvm.dbg.declare(metadata i8** %t.dbg.spill, metadata !454, metadata !DIExpression()), !dbg !547 | |
| %_17 = load i64, i64* %i, align 8, !dbg !548 | |
| ; call core::ptr::mut_ptr::<impl *mut T>::add | |
| %x3 = call i8* @"_ZN4core3ptr7mut_ptr31_$LT$impl$u20$$BP$mut$u20$T$GT$3add17h5dbe540d304e464eE"(i8* %x, i64 %_17), !dbg !549 | |
| store i8* %x3, i8** %x.dbg.spill4, align 8, !dbg !549 | |
| call void @llvm.dbg.declare(metadata i8** %x.dbg.spill4, metadata !456, metadata !DIExpression()), !dbg !550 | |
| br label %bb7, !dbg !549 | |
| bb7: ; preds = %bb6 | |
| %_20 = load i64, i64* %i, align 8, !dbg !551 | |
| ; call core::ptr::mut_ptr::<impl *mut T>::add | |
| %y5 = call i8* @"_ZN4core3ptr7mut_ptr31_$LT$impl$u20$$BP$mut$u20$T$GT$3add17h5dbe540d304e464eE"(i8* %y, i64 %_20), !dbg !552 | |
| store i8* %y5, i8** %y.dbg.spill6, align 8, !dbg !552 | |
| call void @llvm.dbg.declare(metadata i8** %y.dbg.spill6, metadata !458, metadata !DIExpression()), !dbg !553 | |
| br label %bb8, !dbg !552 | |
| bb8: ; preds = %bb7 | |
| ; call core::intrinsics::copy_nonoverlapping | |
| call void @_ZN4core10intrinsics19copy_nonoverlapping17hf8deb65fbe0d5b49E(i8* %x3, i8* %t2, i64 %1), !dbg !554 | |
| br label %bb9, !dbg !554 | |
| bb9: ; preds = %bb8 | |
| ; call core::intrinsics::copy_nonoverlapping | |
| call void @_ZN4core10intrinsics19copy_nonoverlapping17hf8deb65fbe0d5b49E(i8* %y5, i8* %x3, i64 %1), !dbg !555 | |
| br label %bb10, !dbg !555 | |
| bb10: ; preds = %bb9 | |
| ; call core::intrinsics::copy_nonoverlapping | |
| call void @_ZN4core10intrinsics19copy_nonoverlapping17hf8deb65fbe0d5b49E(i8* %t2, i8* %y5, i64 %1), !dbg !556 | |
| br label %bb11, !dbg !556 | |
| bb11: ; preds = %bb10 | |
| %3 = load i64, i64* %i, align 8, !dbg !557 | |
| %4 = add i64 %3, %1, !dbg !557 | |
| store i64 %4, i64* %i, align 8, !dbg !557 | |
| br label %bb2, !dbg !536 | |
| bb12: ; preds = %bb3 | |
| %5 = bitcast %"core::mem::maybe_uninit::MaybeUninit<core::ptr::swap_nonoverlapping_bytes::UnalignedBlock>"* %t1 to {}*, !dbg !558 | |
| br label %bb13, !dbg !563 | |
| bb13: ; preds = %bb12 | |
| %_43 = load i64, i64* %i, align 8, !dbg !564 | |
| %rem = sub i64 %len, %_43, !dbg !565 | |
| store i64 %rem, i64* %rem.dbg.spill, align 8, !dbg !565 | |
| call void @llvm.dbg.declare(metadata i64* %rem.dbg.spill, metadata !477, metadata !DIExpression()), !dbg !566 | |
| store %"core::mem::maybe_uninit::MaybeUninit<core::ptr::swap_nonoverlapping_bytes::UnalignedBlock>"* %t1, %"core::mem::maybe_uninit::MaybeUninit<core::ptr::swap_nonoverlapping_bytes::UnalignedBlock>"** %self.dbg.spill.i14, align 8 | |
| %_4.i = bitcast %"core::mem::maybe_uninit::MaybeUninit<core::ptr::swap_nonoverlapping_bytes::UnalignedBlock>"* %t1 to %"core::mem::manually_drop::ManuallyDrop<core::ptr::swap_nonoverlapping_bytes::UnalignedBlock>"*, !dbg !567 | |
| store %"core::mem::manually_drop::ManuallyDrop<core::ptr::swap_nonoverlapping_bytes::UnalignedBlock>"* %_4.i, %"core::mem::manually_drop::ManuallyDrop<core::ptr::swap_nonoverlapping_bytes::UnalignedBlock>"** %self.dbg.spill.i.i13, align 8 | |
| %_3.i.i = bitcast %"core::mem::manually_drop::ManuallyDrop<core::ptr::swap_nonoverlapping_bytes::UnalignedBlock>"* %_4.i to %"core::ptr::swap_nonoverlapping_bytes::UnalignedBlock"*, !dbg !568 | |
| br label %bb14, !dbg !569 | |
| bb14: ; preds = %bb13 | |
| %t7 = bitcast %"core::ptr::swap_nonoverlapping_bytes::UnalignedBlock"* %_3.i.i to i8*, !dbg !569 | |
| store i8* %t7, i8** %t.dbg.spill8, align 8, !dbg !569 | |
| call void @llvm.dbg.declare(metadata i8** %t.dbg.spill8, metadata !479, metadata !DIExpression()), !dbg !570 | |
| %_49 = load i64, i64* %i, align 8, !dbg !571 | |
| ; call core::ptr::mut_ptr::<impl *mut T>::add | |
| %x9 = call i8* @"_ZN4core3ptr7mut_ptr31_$LT$impl$u20$$BP$mut$u20$T$GT$3add17h5dbe540d304e464eE"(i8* %x, i64 %_49), !dbg !572 | |
| store i8* %x9, i8** %x.dbg.spill10, align 8, !dbg !572 | |
| call void @llvm.dbg.declare(metadata i8** %x.dbg.spill10, metadata !481, metadata !DIExpression()), !dbg !573 | |
| br label %bb15, !dbg !572 | |
| bb15: ; preds = %bb14 | |
| %_52 = load i64, i64* %i, align 8, !dbg !574 | |
| ; call core::ptr::mut_ptr::<impl *mut T>::add | |
| %y11 = call i8* @"_ZN4core3ptr7mut_ptr31_$LT$impl$u20$$BP$mut$u20$T$GT$3add17h5dbe540d304e464eE"(i8* %y, i64 %_52), !dbg !575 | |
| store i8* %y11, i8** %y.dbg.spill12, align 8, !dbg !575 | |
| call void @llvm.dbg.declare(metadata i8** %y.dbg.spill12, metadata !483, metadata !DIExpression()), !dbg !576 | |
| br label %bb16, !dbg !575 | |
| bb16: ; preds = %bb15 | |
| ; call core::intrinsics::copy_nonoverlapping | |
| call void @_ZN4core10intrinsics19copy_nonoverlapping17hf8deb65fbe0d5b49E(i8* %x9, i8* %t7, i64 %rem), !dbg !577 | |
| br label %bb17, !dbg !577 | |
| bb17: ; preds = %bb16 | |
| ; call core::intrinsics::copy_nonoverlapping | |
| call void @_ZN4core10intrinsics19copy_nonoverlapping17hf8deb65fbe0d5b49E(i8* %y11, i8* %x9, i64 %rem), !dbg !578 | |
| br label %bb18, !dbg !578 | |
| bb18: ; preds = %bb17 | |
| ; call core::intrinsics::copy_nonoverlapping | |
| call void @_ZN4core10intrinsics19copy_nonoverlapping17hf8deb65fbe0d5b49E(i8* %t7, i8* %y11, i64 %rem), !dbg !579 | |
| br label %bb19, !dbg !579 | |
| bb19: ; preds = %bb18 | |
| br label %bb20, !dbg !539 | |
| bb20: ; preds = %bb19, %bb3 | |
| ret void, !dbg !580 | |
| } | |
| ; core::ptr::read | |
| ; Function Attrs: inlinehint nonlazybind uwtable | |
| define internal i32 @_ZN4core3ptr4read17hb8b617b170f7f5dcE(i32* %src) unnamed_addr #1 !dbg !581 { | |
| start: | |
| %self.dbg.spill.i.i = alloca i32*, align 8 | |
| call void @llvm.dbg.declare(metadata i32** %self.dbg.spill.i.i, metadata !595, metadata !DIExpression()), !dbg !601 | |
| %self.dbg.spill.i1 = alloca i32*, align 8 | |
| call void @llvm.dbg.declare(metadata i32** %self.dbg.spill.i1, metadata !608, metadata !DIExpression()), !dbg !610 | |
| %slot.dbg.spill.i.i = alloca i32, align 4 | |
| call void @llvm.dbg.declare(metadata i32* %slot.dbg.spill.i.i, metadata !611, metadata !DIExpression()), !dbg !616 | |
| %self.dbg.spill.i = alloca i32, align 4 | |
| call void @llvm.dbg.declare(metadata i32* %self.dbg.spill.i, metadata !622, metadata !DIExpression()), !dbg !624 | |
| %0 = alloca i32, align 4 | |
| %src.dbg.spill = alloca i32*, align 8 | |
| %tmp = alloca i32, align 4 | |
| store i32* %src, i32** %src.dbg.spill, align 8 | |
| call void @llvm.dbg.declare(metadata i32** %src.dbg.spill, metadata !585, metadata !DIExpression()), !dbg !625 | |
| call void @llvm.dbg.declare(metadata i32* %tmp, metadata !586, metadata !DIExpression()), !dbg !626 | |
| %1 = bitcast i32* %0 to {}*, !dbg !627 | |
| %2 = load i32, i32* %0, align 4, !dbg !632 | |
| store i32 %2, i32* %tmp, align 4, !dbg !633 | |
| br label %bb1, !dbg !633 | |
| bb1: ; preds = %start | |
| store i32* %tmp, i32** %self.dbg.spill.i1, align 8 | |
| store i32* %tmp, i32** %self.dbg.spill.i.i, align 8 | |
| br label %bb2, !dbg !634 | |
| bb2: ; preds = %bb1 | |
| ; call core::intrinsics::copy_nonoverlapping | |
| call void @_ZN4core10intrinsics19copy_nonoverlapping17hc0c4590bff1ea0f7E(i32* %src, i32* %tmp, i64 1), !dbg !635 | |
| br label %bb3, !dbg !635 | |
| bb3: ; preds = %bb2 | |
| %_7 = load i32, i32* %tmp, align 4, !dbg !636 | |
| store i32 %_7, i32* %self.dbg.spill.i, align 4 | |
| store i32 %_7, i32* %slot.dbg.spill.i.i, align 4 | |
| br label %bb4, !dbg !636 | |
| bb4: ; preds = %bb3 | |
| ret i32 %_7, !dbg !637 | |
| } | |
| ; core::ptr::write | |
| ; Function Attrs: inlinehint nonlazybind uwtable | |
| define internal void @_ZN4core3ptr5write17hfd67ddf85252221fE(i32* %dst, i32 %src) unnamed_addr #1 !dbg !638 { | |
| start: | |
| %src.dbg.spill = alloca i32, align 4 | |
| %dst.dbg.spill = alloca i32*, align 8 | |
| store i32* %dst, i32** %dst.dbg.spill, align 8 | |
| call void @llvm.dbg.declare(metadata i32** %dst.dbg.spill, metadata !642, metadata !DIExpression()), !dbg !644 | |
| store i32 %src, i32* %src.dbg.spill, align 4 | |
| call void @llvm.dbg.declare(metadata i32* %src.dbg.spill, metadata !643, metadata !DIExpression()), !dbg !645 | |
| store i32 %src, i32* %dst, align 4, !dbg !646 | |
| ret void, !dbg !647 | |
| } | |
| ; core::ptr::mut_ptr::<impl *mut T>::add | |
| ; Function Attrs: inlinehint nonlazybind uwtable | |
| define internal i8* @"_ZN4core3ptr7mut_ptr31_$LT$impl$u20$$BP$mut$u20$T$GT$3add17h5dbe540d304e464eE"(i8* %self, i64 %count) unnamed_addr #1 !dbg !648 { | |
| start: | |
| %count.dbg.spill = alloca i64, align 8 | |
| %self.dbg.spill = alloca i8*, align 8 | |
| store i8* %self, i8** %self.dbg.spill, align 8 | |
| call void @llvm.dbg.declare(metadata i8** %self.dbg.spill, metadata !655, metadata !DIExpression()), !dbg !657 | |
| store i64 %count, i64* %count.dbg.spill, align 8 | |
| call void @llvm.dbg.declare(metadata i64* %count.dbg.spill, metadata !656, metadata !DIExpression()), !dbg !658 | |
| ; call core::ptr::mut_ptr::<impl *mut T>::offset | |
| %0 = call i8* @"_ZN4core3ptr7mut_ptr31_$LT$impl$u20$$BP$mut$u20$T$GT$6offset17h850232ccdf5f4362E"(i8* %self, i64 %count), !dbg !659 | |
| br label %bb1, !dbg !659 | |
| bb1: ; preds = %start | |
| ret i8* %0, !dbg !660 | |
| } | |
| ; core::ptr::mut_ptr::<impl *mut T>::offset | |
| ; Function Attrs: inlinehint nonlazybind uwtable | |
| define internal i8* @"_ZN4core3ptr7mut_ptr31_$LT$impl$u20$$BP$mut$u20$T$GT$6offset17h850232ccdf5f4362E"(i8* %self, i64 %count) unnamed_addr #1 !dbg !661 { | |
| start: | |
| %0 = alloca i8*, align 8 | |
| %count.dbg.spill = alloca i64, align 8 | |
| %self.dbg.spill = alloca i8*, align 8 | |
| store i8* %self, i8** %self.dbg.spill, align 8 | |
| call void @llvm.dbg.declare(metadata i8** %self.dbg.spill, metadata !665, metadata !DIExpression()), !dbg !667 | |
| store i64 %count, i64* %count.dbg.spill, align 8 | |
| call void @llvm.dbg.declare(metadata i64* %count.dbg.spill, metadata !666, metadata !DIExpression()), !dbg !668 | |
| %1 = getelementptr inbounds i8, i8* %self, i64 %count, !dbg !669 | |
| store i8* %1, i8** %0, align 8, !dbg !669 | |
| %_3 = load i8*, i8** %0, align 8, !dbg !669 | |
| br label %bb1, !dbg !669 | |
| bb1: ; preds = %start | |
| ret i8* %_3, !dbg !670 | |
| } | |
| ; core::iter::range::<impl core::iter::traits::iterator::Iterator for core::ops::range::Range<A>>::next | |
| ; Function Attrs: inlinehint nonlazybind uwtable | |
| define internal { i32, i32 } @"_ZN4core4iter5range101_$LT$impl$u20$core..iter..traits..iterator..Iterator$u20$for$u20$core..ops..range..Range$LT$A$GT$$GT$4next17h2525abc134e599f1E"({ i32, i32 }* align 4 dereferenceable(8) %self) unnamed_addr #1 personality i32 (i32, i32, i64, %"unwind::libunwind::_Unwind_Exception"*, %"unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality !dbg !671 { | |
| start: | |
| %0 = alloca { i8*, i32 }, align 8 | |
| %self.dbg.spill = alloca { i32, i32 }*, align 8 | |
| %_15 = alloca i8, align 1 | |
| %n = alloca i32, align 4 | |
| %_5 = alloca { i32, i32 }, align 4 | |
| %1 = alloca { i32, i32 }, align 4 | |
| store { i32, i32 }* %self, { i32, i32 }** %self.dbg.spill, align 8 | |
| call void @llvm.dbg.declare(metadata { i32, i32 }** %self.dbg.spill, metadata !683, metadata !DIExpression()), !dbg !688 | |
| call void @llvm.dbg.declare(metadata i32* %n, metadata !684, metadata !DIExpression()), !dbg !689 | |
| store i8 0, i8* %_15, align 1, !dbg !690 | |
| %_3 = bitcast { i32, i32 }* %self to i32*, !dbg !690 | |
| %_4 = getelementptr inbounds { i32, i32 }, { i32, i32 }* %self, i32 0, i32 1, !dbg !691 | |
| ; call core::cmp::impls::<impl core::cmp::PartialOrd for i32>::lt | |
| %_2 = call zeroext i1 @"_ZN4core3cmp5impls55_$LT$impl$u20$core..cmp..PartialOrd$u20$for$u20$i32$GT$2lt17h6242e978760dcbacE"(i32* noalias readonly align 4 dereferenceable(4) %_3, i32* noalias readonly align 4 dereferenceable(4) %_4), !dbg !690 | |
| br label %bb1, !dbg !690 | |
| bb1: ; preds = %start | |
| br i1 %_2, label %bb3, label %bb2, !dbg !692 | |
| bb2: ; preds = %bb1 | |
| %2 = bitcast { i32, i32 }* %1 to i32*, !dbg !693 | |
| store i32 0, i32* %2, align 4, !dbg !693 | |
| br label %bb10, !dbg !692 | |
| bb3: ; preds = %bb1 | |
| %_6 = bitcast { i32, i32 }* %self to i32*, !dbg !694 | |
| store i8 1, i8* %_15, align 1, !dbg !694 | |
| ; call <i32 as core::iter::range::Step>::add_usize | |
| %3 = call { i32, i32 } @"_ZN47_$LT$i32$u20$as$u20$core..iter..range..Step$GT$9add_usize17h58f32b59aa6ed552E"(i32* noalias readonly align 4 dereferenceable(4) %_6, i64 1), !dbg !694 | |
| store { i32, i32 } %3, { i32, i32 }* %_5, align 4, !dbg !694 | |
| br label %bb4, !dbg !694 | |
| bb4: ; preds = %bb3 | |
| %4 = bitcast { i32, i32 }* %_5 to i32*, !dbg !695 | |
| %5 = load i32, i32* %4, align 4, !dbg !695, !range !121 | |
| %_7 = zext i32 %5 to i64, !dbg !695 | |
| %6 = icmp eq i64 %_7, 1, !dbg !695 | |
| br i1 %6, label %bb6, label %bb5, !dbg !695 | |
| bb5: ; preds = %bb4 | |
| %7 = bitcast { i32, i32 }* %1 to i32*, !dbg !696 | |
| store i32 0, i32* %7, align 4, !dbg !696 | |
| br label %bb14, !dbg !697 | |
| bb6: ; preds = %bb4 | |
| store i8 0, i8* %_15, align 1, !dbg !698 | |
| %8 = bitcast { i32, i32 }* %_5 to %"core::option::Option<i32>::Some"*, !dbg !698 | |
| %9 = getelementptr inbounds %"core::option::Option<i32>::Some", %"core::option::Option<i32>::Some"* %8, i32 0, i32 1, !dbg !698 | |
| %10 = load i32, i32* %9, align 4, !dbg !698 | |
| store i32 %10, i32* %n, align 4, !dbg !698 | |
| %_13 = bitcast { i32, i32 }* %self to i32*, !dbg !699 | |
| ; invoke core::mem::swap | |
| invoke void @_ZN4core3mem4swap17he16b24ad0b897db6E(i32* align 4 dereferenceable(4) %n, i32* align 4 dereferenceable(4) %_13) | |
| to label %bb7 unwind label %cleanup, !dbg !700 | |
| bb7: ; preds = %bb6 | |
| %_14 = load i32, i32* %n, align 4, !dbg !701 | |
| %11 = bitcast { i32, i32 }* %1 to %"core::option::Option<i32>::Some"*, !dbg !702 | |
| %12 = getelementptr inbounds %"core::option::Option<i32>::Some", %"core::option::Option<i32>::Some"* %11, i32 0, i32 1, !dbg !702 | |
| store i32 %_14, i32* %12, align 4, !dbg !702 | |
| %13 = bitcast { i32, i32 }* %1 to i32*, !dbg !702 | |
| store i32 1, i32* %13, align 4, !dbg !702 | |
| br label %bb14, !dbg !703 | |
| bb8: ; preds = %bb9 | |
| %14 = bitcast { i32, i32 }* %_5 to i32*, !dbg !703 | |
| %15 = load i32, i32* %14, align 4, !dbg !703, !range !121 | |
| %_16 = zext i32 %15 to i64, !dbg !703 | |
| %16 = bitcast { i8*, i32 }* %0 to i8**, !dbg !704 | |
| %17 = load i8*, i8** %16, align 8, !dbg !704 | |
| %18 = getelementptr inbounds { i8*, i32 }, { i8*, i32 }* %0, i32 0, i32 1, !dbg !704 | |
| %19 = load i32, i32* %18, align 8, !dbg !704 | |
| %20 = insertvalue { i8*, i32 } undef, i8* %17, 0, !dbg !704 | |
| %21 = insertvalue { i8*, i32 } %20, i32 %19, 1, !dbg !704 | |
| resume { i8*, i32 } %21, !dbg !704 | |
| bb9: ; preds = %cleanup | |
| br label %bb8, !dbg !705 | |
| bb10: ; preds = %bb2, %bb11 | |
| %22 = getelementptr inbounds { i32, i32 }, { i32, i32 }* %1, i32 0, i32 0, !dbg !706 | |
| %23 = load i32, i32* %22, align 4, !dbg !706, !range !121 | |
| %24 = getelementptr inbounds { i32, i32 }, { i32, i32 }* %1, i32 0, i32 1, !dbg !706 | |
| %25 = load i32, i32* %24, align 4, !dbg !706 | |
| %26 = insertvalue { i32, i32 } undef, i32 %23, 0, !dbg !706 | |
| %27 = insertvalue { i32, i32 } %26, i32 %25, 1, !dbg !706 | |
| ret { i32, i32 } %27, !dbg !706 | |
| bb11: ; preds = %bb13, %bb12, %bb14 | |
| store i8 0, i8* %_15, align 1, !dbg !703 | |
| br label %bb10, !dbg !692 | |
| bb12: ; preds = %bb14 | |
| %28 = load i8, i8* %_15, align 1, !dbg !703, !range !422 | |
| %29 = trunc i8 %28 to i1, !dbg !703 | |
| br i1 %29, label %bb13, label %bb11, !dbg !703 | |
| bb13: ; preds = %bb12 | |
| store i8 0, i8* %_15, align 1, !dbg !703 | |
| br label %bb11, !dbg !703 | |
| bb14: ; preds = %bb7, %bb5 | |
| %30 = bitcast { i32, i32 }* %_5 to i32*, !dbg !703 | |
| %31 = load i32, i32* %30, align 4, !dbg !703, !range !121 | |
| %_17 = zext i32 %31 to i64, !dbg !703 | |
| %32 = icmp eq i64 %_17, 1, !dbg !703 | |
| br i1 %32, label %bb12, label %bb11, !dbg !703 | |
| cleanup: ; preds = %bb6 | |
| %33 = landingpad { i8*, i32 } | |
| cleanup | |
| %34 = extractvalue { i8*, i32 } %33, 0 | |
| %35 = extractvalue { i8*, i32 } %33, 1 | |
| %36 = getelementptr inbounds { i8*, i32 }, { i8*, i32 }* %0, i32 0, i32 0 | |
| store i8* %34, i8** %36, align 8 | |
| %37 = getelementptr inbounds { i8*, i32 }, { i8*, i32 }* %0, i32 0, i32 1 | |
| store i32 %35, i32* %37, align 8 | |
| br label %bb9 | |
| } | |
| ; core::convert::num::ptr_try_from_impls::<impl core::convert::TryFrom<usize> for u32>::try_from | |
| ; Function Attrs: inlinehint nonlazybind uwtable | |
| define internal { i32, i32 } @"_ZN4core7convert3num18ptr_try_from_impls69_$LT$impl$u20$core..convert..TryFrom$LT$usize$GT$$u20$for$u20$u32$GT$8try_from17h54cce386fc926767E"(i64 %u) unnamed_addr #1 !dbg !707 { | |
| start: | |
| %u.dbg.spill = alloca i64, align 8 | |
| %0 = alloca { i32, i32 }, align 4 | |
| store i64 %u, i64* %u.dbg.spill, align 8 | |
| call void @llvm.dbg.declare(metadata i64* %u.dbg.spill, metadata !735, metadata !DIExpression()), !dbg !736 | |
| br label %bb1, !dbg !737 | |
| bb1: ; preds = %start | |
| %_4 = zext i32 -1 to i64, !dbg !738 | |
| %_2 = icmp ugt i64 %u, %_4, !dbg !739 | |
| br i1 %_2, label %bb3, label %bb2, !dbg !740 | |
| bb2: ; preds = %bb1 | |
| %_7 = trunc i64 %u to i32, !dbg !741 | |
| %1 = bitcast { i32, i32 }* %0 to %"core::result::Result<u32, core::num::TryFromIntError>::Ok"*, !dbg !742 | |
| %2 = getelementptr inbounds %"core::result::Result<u32, core::num::TryFromIntError>::Ok", %"core::result::Result<u32, core::num::TryFromIntError>::Ok"* %1, i32 0, i32 1, !dbg !742 | |
| store i32 %_7, i32* %2, align 4, !dbg !742 | |
| %3 = bitcast { i32, i32 }* %0 to i32*, !dbg !742 | |
| store i32 0, i32* %3, align 4, !dbg !742 | |
| br label %bb4, !dbg !740 | |
| bb3: ; preds = %bb1 | |
| %4 = bitcast { i32, i32 }* %0 to %"core::result::Result<u32, core::num::TryFromIntError>::Err"*, !dbg !743 | |
| %5 = getelementptr inbounds %"core::result::Result<u32, core::num::TryFromIntError>::Err", %"core::result::Result<u32, core::num::TryFromIntError>::Err"* %4, i32 0, i32 1, !dbg !743 | |
| %6 = bitcast { i32, i32 }* %0 to i32*, !dbg !743 | |
| store i32 1, i32* %6, align 4, !dbg !743 | |
| br label %bb4, !dbg !740 | |
| bb4: ; preds = %bb2, %bb3 | |
| %7 = getelementptr inbounds { i32, i32 }, { i32, i32 }* %0, i32 0, i32 0, !dbg !744 | |
| %8 = load i32, i32* %7, align 4, !dbg !744, !range !121 | |
| %9 = getelementptr inbounds { i32, i32 }, { i32, i32 }* %0, i32 0, i32 1, !dbg !744 | |
| %10 = load i32, i32* %9, align 4, !dbg !744 | |
| %11 = insertvalue { i32, i32 } undef, i32 %8, 0, !dbg !744 | |
| %12 = insertvalue { i32, i32 } %11, i32 %10, 1, !dbg !744 | |
| ret { i32, i32 } %12, !dbg !744 | |
| } | |
| ; <() as std::process::Termination>::report | |
| ; Function Attrs: inlinehint nonlazybind uwtable | |
| define internal i32 @"_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17hb299261025355cbfE"() unnamed_addr #1 !dbg !745 { | |
| start: | |
| %self.dbg.spill = alloca {}, align 1 | |
| call void @llvm.dbg.declare(metadata {}* %self.dbg.spill, metadata !752, metadata !DIExpression()), !dbg !753 | |
| ; call <std::process::ExitCode as std::process::Termination>::report | |
| %0 = call i32 @"_ZN68_$LT$std..process..ExitCode$u20$as$u20$std..process..Termination$GT$6report17he7157c58223cf1afE"(i8 0), !dbg !754 | |
| br label %bb1, !dbg !754 | |
| bb1: ; preds = %start | |
| ret i32 %0, !dbg !755 | |
| } | |
| ; <I as core::iter::traits::collect::IntoIterator>::into_iter | |
| ; Function Attrs: nonlazybind uwtable | |
| define internal { i32, i32 } @"_ZN63_$LT$I$u20$as$u20$core..iter..traits..collect..IntoIterator$GT$9into_iter17h7c746f09ad0c25f9E"(i32 %self.0, i32 %self.1) unnamed_addr #0 !dbg !756 { | |
| start: | |
| %self.dbg.spill = alloca { i32, i32 }, align 4 | |
| %0 = getelementptr inbounds { i32, i32 }, { i32, i32 }* %self.dbg.spill, i32 0, i32 0 | |
| store i32 %self.0, i32* %0, align 4 | |
| %1 = getelementptr inbounds { i32, i32 }, { i32, i32 }* %self.dbg.spill, i32 0, i32 1 | |
| store i32 %self.1, i32* %1, align 4 | |
| call void @llvm.dbg.declare(metadata { i32, i32 }* %self.dbg.spill, metadata !764, metadata !DIExpression()), !dbg !767 | |
| %2 = insertvalue { i32, i32 } undef, i32 %self.0, 0, !dbg !768 | |
| %3 = insertvalue { i32, i32 } %2, i32 %self.1, 1, !dbg !768 | |
| ret { i32, i32 } %3, !dbg !768 | |
| } | |
| ; <std::process::ExitCode as std::process::Termination>::report | |
| ; Function Attrs: inlinehint nonlazybind uwtable | |
| define internal i32 @"_ZN68_$LT$std..process..ExitCode$u20$as$u20$std..process..Termination$GT$6report17he7157c58223cf1afE"(i8) unnamed_addr #1 !dbg !769 { | |
| start: | |
| %self = alloca i8, align 1 | |
| store i8 %0, i8* %self, align 1 | |
| call void @llvm.dbg.declare(metadata i8* %self, metadata !776, metadata !DIExpression()), !dbg !777 | |
| ; call std::sys::unix::process::process_common::ExitCode::as_i32 | |
| %1 = call i32 @_ZN3std3sys4unix7process14process_common8ExitCode6as_i3217h7ec8f604402542d5E(i8* noalias readonly align 1 dereferenceable(1) %self), !dbg !778 | |
| br label %bb1, !dbg !778 | |
| bb1: ; preds = %start | |
| ret i32 %1, !dbg !779 | |
| } | |
| ; playground::main | |
| ; Function Attrs: nonlazybind uwtable | |
| define internal void @_ZN10playground4main17h4a4fe2905f844b5dE() unnamed_addr #0 !dbg !780 { | |
| start: | |
| %arg0.dbg.spill = alloca i32*, align 8 | |
| %__next.dbg.spill = alloca i32, align 4 | |
| %val.dbg.spill = alloca i32, align 4 | |
| %_21 = alloca i32*, align 8 | |
| %_20 = alloca [1 x { i8*, i8* }], align 8 | |
| %_13 = alloca %"core::fmt::Arguments", align 8 | |
| %i = alloca i32, align 4 | |
| %_5 = alloca { i32, i32 }, align 4 | |
| %iter = alloca { i32, i32 }, align 4 | |
| %_2 = alloca { i32, i32 }, align 4 | |
| call void @llvm.dbg.declare(metadata { i32, i32 }* %iter, metadata !783, metadata !DIExpression()), !dbg !795 | |
| call void @llvm.dbg.declare(metadata i32* %i, metadata !789, metadata !DIExpression()), !dbg !796 | |
| %0 = bitcast { i32, i32 }* %_2 to i32*, !dbg !797 | |
| store i32 0, i32* %0, align 4, !dbg !797 | |
| %1 = getelementptr inbounds { i32, i32 }, { i32, i32 }* %_2, i32 0, i32 1, !dbg !797 | |
| store i32 10, i32* %1, align 4, !dbg !797 | |
| %2 = getelementptr inbounds { i32, i32 }, { i32, i32 }* %_2, i32 0, i32 0, !dbg !797 | |
| %3 = load i32, i32* %2, align 4, !dbg !797 | |
| %4 = getelementptr inbounds { i32, i32 }, { i32, i32 }* %_2, i32 0, i32 1, !dbg !797 | |
| %5 = load i32, i32* %4, align 4, !dbg !797 | |
| ; call <I as core::iter::traits::collect::IntoIterator>::into_iter | |
| %6 = call { i32, i32 } @"_ZN63_$LT$I$u20$as$u20$core..iter..traits..collect..IntoIterator$GT$9into_iter17h7c746f09ad0c25f9E"(i32 %3, i32 %5), !dbg !797 | |
| %_1.0 = extractvalue { i32, i32 } %6, 0, !dbg !797 | |
| %_1.1 = extractvalue { i32, i32 } %6, 1, !dbg !797 | |
| br label %bb1, !dbg !797 | |
| bb1: ; preds = %start | |
| %7 = getelementptr inbounds { i32, i32 }, { i32, i32 }* %iter, i32 0, i32 0, !dbg !797 | |
| store i32 %_1.0, i32* %7, align 4, !dbg !797 | |
| %8 = getelementptr inbounds { i32, i32 }, { i32, i32 }* %iter, i32 0, i32 1, !dbg !797 | |
| store i32 %_1.1, i32* %8, align 4, !dbg !797 | |
| br label %bb2, !dbg !798 | |
| bb2: ; preds = %bb9, %bb1 | |
| ; call core::iter::range::<impl core::iter::traits::iterator::Iterator for core::ops::range::Range<A>>::next | |
| %9 = call { i32, i32 } @"_ZN4core4iter5range101_$LT$impl$u20$core..iter..traits..iterator..Iterator$u20$for$u20$core..ops..range..Range$LT$A$GT$$GT$4next17h2525abc134e599f1E"({ i32, i32 }* align 4 dereferenceable(8) %iter), !dbg !799 | |
| store { i32, i32 } %9, { i32, i32 }* %_5, align 4, !dbg !799 | |
| br label %bb3, !dbg !799 | |
| bb3: ; preds = %bb2 | |
| %10 = bitcast { i32, i32 }* %_5 to i32*, !dbg !800 | |
| %11 = load i32, i32* %10, align 4, !dbg !800, !range !121 | |
| %_8 = zext i32 %11 to i64, !dbg !800 | |
| switch i64 %_8, label %bb5 [ | |
| i64 0, label %bb4 | |
| i64 1, label %bb6 | |
| ], !dbg !800 | |
| bb4: ; preds = %bb3 | |
| ret void, !dbg !801 | |
| bb5: ; preds = %bb3 | |
| unreachable, !dbg !799 | |
| bb6: ; preds = %bb3 | |
| %12 = bitcast { i32, i32 }* %_5 to %"core::option::Option<i32>::Some"*, !dbg !800 | |
| %13 = getelementptr inbounds %"core::option::Option<i32>::Some", %"core::option::Option<i32>::Some"* %12, i32 0, i32 1, !dbg !800 | |
| %val = load i32, i32* %13, align 4, !dbg !800 | |
| store i32 %val, i32* %val.dbg.spill, align 4, !dbg !800 | |
| call void @llvm.dbg.declare(metadata i32* %val.dbg.spill, metadata !787, metadata !DIExpression()), !dbg !803 | |
| store i32 %val, i32* %__next.dbg.spill, align 4, !dbg !803 | |
| call void @llvm.dbg.declare(metadata i32* %__next.dbg.spill, metadata !785, metadata !DIExpression()), !dbg !799 | |
| store i32 %val, i32* %i, align 4, !dbg !799 | |
| %_27 = load [2 x { [0 x i8]*, i64 }]*, [2 x { [0 x i8]*, i64 }]** bitcast (<{ i8*, [0 x i8] }>* @3 to [2 x { [0 x i8]*, i64 }]**), align 8, !dbg !804, !nonnull !4 | |
| %_14.0 = bitcast [2 x { [0 x i8]*, i64 }]* %_27 to [0 x { [0 x i8]*, i64 }]*, !dbg !804 | |
| store i32* %i, i32** %_21, align 8, !dbg !805 | |
| %arg0 = load i32*, i32** %_21, align 8, !dbg !805, !nonnull !4 | |
| store i32* %arg0, i32** %arg0.dbg.spill, align 8, !dbg !805 | |
| call void @llvm.dbg.declare(metadata i32** %arg0.dbg.spill, metadata !791, metadata !DIExpression()), !dbg !806 | |
| ; call core::fmt::ArgumentV1::new | |
| %14 = call { i8*, i8* } @_ZN4core3fmt10ArgumentV13new17h51e098059b2fc3dcE(i32* noalias readonly align 4 dereferenceable(4) %arg0, i1 (i32*, %"core::fmt::Formatter"*)* nonnull @"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$i32$GT$3fmt17h8db0496dec18ff9aE"), !dbg !806 | |
| %_24.0 = extractvalue { i8*, i8* } %14, 0, !dbg !806 | |
| %_24.1 = extractvalue { i8*, i8* } %14, 1, !dbg !806 | |
| br label %bb7, !dbg !806 | |
| bb7: ; preds = %bb6 | |
| %15 = bitcast [1 x { i8*, i8* }]* %_20 to { i8*, i8* }*, !dbg !806 | |
| %16 = getelementptr inbounds { i8*, i8* }, { i8*, i8* }* %15, i32 0, i32 0, !dbg !806 | |
| store i8* %_24.0, i8** %16, align 8, !dbg !806 | |
| %17 = getelementptr inbounds { i8*, i8* }, { i8*, i8* }* %15, i32 0, i32 1, !dbg !806 | |
| store i8* %_24.1, i8** %17, align 8, !dbg !806 | |
| %_17.0 = bitcast [1 x { i8*, i8* }]* %_20 to [0 x { i8*, i8* }]*, !dbg !805 | |
| ; call core::fmt::Arguments::new_v1 | |
| call void @_ZN4core3fmt9Arguments6new_v117h9bb77bc3dfdd6e76E(%"core::fmt::Arguments"* noalias nocapture sret dereferenceable(48) %_13, [0 x { [0 x i8]*, i64 }]* noalias nonnull readonly align 8 %_14.0, i64 2, [0 x { i8*, i8* }]* noalias nonnull readonly align 8 %_17.0, i64 1), !dbg !805 | |
| br label %bb8, !dbg !805 | |
| bb8: ; preds = %bb7 | |
| ; call std::io::stdio::_print | |
| call void @_ZN3std2io5stdio6_print17hec3a695dfcdb51c4E(%"core::fmt::Arguments"* noalias nocapture dereferenceable(48) %_13), !dbg !805 | |
| br label %bb9, !dbg !805 | |
| bb9: ; preds = %bb8 | |
| br label %bb2, !dbg !798 | |
| } | |
| ; Function Attrs: nounwind readnone speculatable | |
| declare void @llvm.dbg.declare(metadata, metadata, metadata) #2 | |
| ; std::rt::lang_start_internal | |
| ; Function Attrs: nonlazybind uwtable | |
| declare i64 @_ZN3std2rt19lang_start_internal17hcea4e704875ab132E({}* nonnull align 1, [3 x i64]* noalias readonly align 8 dereferenceable(24), i64, i8**) unnamed_addr #0 | |
| ; Function Attrs: argmemonly nounwind | |
| declare void @llvm.memcpy.p0i8.p0i8.i64(i8* nocapture writeonly, i8* nocapture readonly, i64, i1 immarg) #3 | |
| ; Function Attrs: nounwind nonlazybind uwtable | |
| declare i32 @rust_eh_personality(i32, i32, i64, %"unwind::libunwind::_Unwind_Exception"*, %"unwind::libunwind::_Unwind_Context"*) unnamed_addr #4 | |
| ; core::fmt::num::imp::<impl core::fmt::Display for i32>::fmt | |
| ; Function Attrs: nonlazybind uwtable | |
| declare zeroext i1 @"_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$i32$GT$3fmt17h8db0496dec18ff9aE"(i32* noalias readonly align 4 dereferenceable(4), %"core::fmt::Formatter"* align 8 dereferenceable(64)) unnamed_addr #0 | |
| ; std::io::stdio::_print | |
| ; Function Attrs: nonlazybind uwtable | |
| declare void @_ZN3std2io5stdio6_print17hec3a695dfcdb51c4E(%"core::fmt::Arguments"* noalias nocapture dereferenceable(48)) unnamed_addr #0 | |
| ; Function Attrs: nonlazybind | |
| define i32 @main(i32, i8**) unnamed_addr #5 { | |
| top: | |
| %2 = load volatile i8, i8* getelementptr inbounds ([34 x i8], [34 x i8]* @__rustc_debug_gdb_scripts_section__, i32 0, i32 0), align 1 | |
| %3 = sext i32 %0 to i64 | |
| ; call std::rt::lang_start | |
| %4 = call i64 @_ZN3std2rt10lang_start17h4e98f7fdca68e89dE(void ()* @_ZN10playground4main17h4a4fe2905f844b5dE, i64 %3, i8** %1) | |
| %5 = trunc i64 %4 to i32 | |
| ret i32 %5 | |
| } | |
| attributes #0 = { nonlazybind uwtable "probe-stack"="__rust_probestack" "target-cpu"="x86-64" } | |
| attributes #1 = { inlinehint nonlazybind uwtable "probe-stack"="__rust_probestack" "target-cpu"="x86-64" } | |
| attributes #2 = { nounwind readnone speculatable } | |
| attributes #3 = { argmemonly nounwind } | |
| attributes #4 = { nounwind nonlazybind uwtable "probe-stack"="__rust_probestack" "target-cpu"="x86-64" } | |
| attributes #5 = { nonlazybind "target-cpu"="x86-64" } | |
| !llvm.module.flags = !{!14, !15, !16, !17} | |
| !llvm.dbg.cu = !{!18} | |
| !0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression()) | |
| !1 = distinct !DIGlobalVariable(name: "vtable", scope: null, file: !2, type: !3, isLocal: true, isDefinition: true) | |
| !2 = !DIFile(filename: "<unknown>", directory: "") | |
| !3 = !DICompositeType(tag: DW_TAG_structure_type, name: "vtable", file: !2, align: 64, flags: DIFlagArtificial, elements: !4, vtableHolder: !5, identifier: "vtable") | |
| !4 = !{} | |
| !5 = !DICompositeType(tag: DW_TAG_structure_type, name: "closure-0", scope: !6, file: !2, size: 64, align: 64, elements: !9, templateParams: !4, identifier: "83d39a78868f3c03904531dc116580b5") | |
| !6 = !DINamespace(name: "lang_start", scope: !7) | |
| !7 = !DINamespace(name: "rt", scope: !8) | |
| !8 = !DINamespace(name: "std", scope: null) | |
| !9 = !{!10} | |
| !10 = !DIDerivedType(tag: DW_TAG_member, name: "__0", scope: !5, file: !2, baseType: !11, size: 64, align: 64) | |
| !11 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "fn()", baseType: !12, size: 64, align: 64, dwarfAddressSpace: 0) | |
| !12 = !DISubroutineType(types: !13) | |
| !13 = !{null} | |
| !14 = !{i32 7, !"PIC Level", i32 2} | |
| !15 = !{i32 7, !"PIE Level", i32 2} | |
| !16 = !{i32 2, !"RtLibUseGOT", i32 1} | |
| !17 = !{i32 2, !"Debug Info Version", i32 3} | |
| !18 = distinct !DICompileUnit(language: DW_LANG_Rust, file: !19, producer: "clang LLVM (rustc version 1.43.1 (8d69840ab 2020-05-04))", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !20, globals: !37) | |
| !19 = !DIFile(filename: "src/main.rs", directory: "/playground") | |
| !20 = !{!21, !28} | |
| !21 = !DICompositeType(tag: DW_TAG_enumeration_type, name: "Result", scope: !22, file: !2, baseType: !24, size: 8, align: 8, flags: DIFlagEnumClass, elements: !25) | |
| !22 = !DINamespace(name: "result", scope: !23) | |
| !23 = !DINamespace(name: "core", scope: null) | |
| !24 = !DIBasicType(name: "u8", size: 8, encoding: DW_ATE_unsigned) | |
| !25 = !{!26, !27} | |
| !26 = !DIEnumerator(name: "Ok", value: 0) | |
| !27 = !DIEnumerator(name: "Err", value: 1) | |
| !28 = !DICompositeType(tag: DW_TAG_enumeration_type, name: "Alignment", scope: !29, file: !2, baseType: !24, size: 8, align: 8, flags: DIFlagEnumClass, elements: !32) | |
| !29 = !DINamespace(name: "v1", scope: !30) | |
| !30 = !DINamespace(name: "rt", scope: !31) | |
| !31 = !DINamespace(name: "fmt", scope: !23) | |
| !32 = !{!33, !34, !35, !36} | |
| !33 = !DIEnumerator(name: "Left", value: 0) | |
| !34 = !DIEnumerator(name: "Right", value: 1) | |
| !35 = !DIEnumerator(name: "Center", value: 2) | |
| !36 = !DIEnumerator(name: "Unknown", value: 3) | |
| !37 = !{!0} | |
| !38 = distinct !DISubprogram(name: "lang_start<()>", linkageName: "_ZN3std2rt10lang_start17h4e98f7fdca68e89dE", scope: !7, file: !39, line: 62, type: !40, scopeLine: 62, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !18, templateParams: !49, retainedNodes: !45) | |
| !39 = !DIFile(filename: "/rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd/src/libstd/rt.rs", directory: "") | |
| !40 = !DISubroutineType(types: !41) | |
| !41 = !{!42, !11, !42, !43} | |
| !42 = !DIBasicType(name: "isize", size: 64, encoding: DW_ATE_signed) | |
| !43 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "*const *const u8", baseType: !44, size: 64, align: 64, dwarfAddressSpace: 0) | |
| !44 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "*const u8", baseType: !24, size: 64, align: 64, dwarfAddressSpace: 0) | |
| !45 = !{!46, !47, !48} | |
| !46 = !DILocalVariable(name: "main", arg: 1, scope: !38, file: !39, line: 63, type: !11) | |
| !47 = !DILocalVariable(name: "argc", arg: 2, scope: !38, file: !39, line: 64, type: !42) | |
| !48 = !DILocalVariable(name: "argv", arg: 3, scope: !38, file: !39, line: 65, type: !43) | |
| !49 = !{!50} | |
| !50 = !DITemplateTypeParameter(name: "T", type: !51) | |
| !51 = !DIBasicType(name: "()", encoding: DW_ATE_unsigned) | |
| !52 = !DILocation(line: 63, column: 4, scope: !38) | |
| !53 = !DILocation(line: 64, column: 4, scope: !38) | |
| !54 = !DILocation(line: 65, column: 4, scope: !38) | |
| !55 = !DILocation(line: 67, column: 25, scope: !38) | |
| !56 = !DILocation(line: 67, column: 24, scope: !38) | |
| !57 = !DILocation(line: 67, column: 4, scope: !38) | |
| !58 = !DILocation(line: 68, column: 1, scope: !38) | |
| !59 = distinct !DISubprogram(name: "{{closure}}<()>", linkageName: "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17ha5412e4ff1299b77E", scope: !6, file: !39, line: 67, type: !60, scopeLine: 67, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !18, templateParams: !49, retainedNodes: !64) | |
| !60 = !DISubroutineType(types: !61) | |
| !61 = !{!62, !63} | |
| !62 = !DIBasicType(name: "i32", size: 32, encoding: DW_ATE_signed) | |
| !63 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "&closure-0", baseType: !5, size: 64, align: 64, dwarfAddressSpace: 0) | |
| !64 = !{!65} | |
| !65 = !DILocalVariable(name: "main", scope: !59, file: !39, line: 63, type: !11, align: 8) | |
| !66 = !DILocation(line: 63, column: 4, scope: !59) | |
| !67 = !DILocation(line: 67, column: 33, scope: !59) | |
| !68 = !DILocation(line: 67, column: 48, scope: !59) | |
| !69 = distinct !DISubprogram(name: "as_i32", linkageName: "_ZN3std3sys4unix7process14process_common8ExitCode6as_i3217h7ec8f604402542d5E", scope: !71, file: !70, line: 396, type: !78, scopeLine: 396, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !18, templateParams: !4, retainedNodes: !81) | |
| !70 = !DIFile(filename: "/rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd/src/libstd/sys/unix/process/process_common.rs", directory: "") | |
| !71 = !DICompositeType(tag: DW_TAG_structure_type, name: "ExitCode", scope: !72, file: !2, size: 8, align: 8, elements: !76, templateParams: !4, identifier: "138a31c9bb976ad982e847fa27c58f0") | |
| !72 = !DINamespace(name: "process_common", scope: !73) | |
| !73 = !DINamespace(name: "process", scope: !74) | |
| !74 = !DINamespace(name: "unix", scope: !75) | |
| !75 = !DINamespace(name: "sys", scope: !8) | |
| !76 = !{!77} | |
| !77 = !DIDerivedType(tag: DW_TAG_member, name: "__0", scope: !71, file: !2, baseType: !24, size: 8, align: 8) | |
| !78 = !DISubroutineType(types: !79) | |
| !79 = !{!62, !80} | |
| !80 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "&std::sys::unix::process::process_common::ExitCode", baseType: !71, size: 64, align: 64, dwarfAddressSpace: 0) | |
| !81 = !{!82} | |
| !82 = !DILocalVariable(name: "self", arg: 1, scope: !69, file: !70, line: 396, type: !80) | |
| !83 = !DILocation(line: 396, column: 18, scope: !69) | |
| !84 = !DILocation(line: 397, column: 8, scope: !69) | |
| !85 = !DILocation(line: 398, column: 5, scope: !69) | |
| !86 = distinct !DISubprogram(name: "add_usize", linkageName: "_ZN47_$LT$i32$u20$as$u20$core..iter..range..Step$GT$9add_usize17h58f32b59aa6ed552E", scope: !88, file: !87, line: 133, type: !91, scopeLine: 133, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !18, templateParams: !4, retainedNodes: !110) | |
| !87 = !DIFile(filename: "/rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd/src/libcore/iter/range.rs", directory: "") | |
| !88 = !DINamespace(name: "{{impl}}", scope: !89) | |
| !89 = !DINamespace(name: "range", scope: !90) | |
| !90 = !DINamespace(name: "iter", scope: !23) | |
| !91 = !DISubroutineType(types: !92) | |
| !92 = !{!93, !108, !109} | |
| !93 = !DICompositeType(tag: DW_TAG_structure_type, name: "Option<i32>", scope: !94, file: !2, size: 64, align: 32, elements: !95, identifier: "834be39c65fd04a5b399f356099a4a67") | |
| !94 = !DINamespace(name: "option", scope: !23) | |
| !95 = !{!96} | |
| !96 = !DICompositeType(tag: DW_TAG_variant_part, scope: !94, file: !2, size: 64, align: 32, elements: !97, templateParams: !100, identifier: "834be39c65fd04a5b399f356099a4a67_variant_part", discriminator: !106) | |
| !97 = !{!98, !102} | |
| !98 = !DIDerivedType(tag: DW_TAG_member, name: "None", scope: !96, file: !2, baseType: !99, size: 64, align: 32, extraData: i64 0) | |
| !99 = !DICompositeType(tag: DW_TAG_structure_type, name: "None", scope: !93, file: !2, size: 64, align: 32, elements: !4, templateParams: !100, identifier: "834be39c65fd04a5b399f356099a4a67::None") | |
| !100 = !{!101} | |
| !101 = !DITemplateTypeParameter(name: "T", type: !62) | |
| !102 = !DIDerivedType(tag: DW_TAG_member, name: "Some", scope: !96, file: !2, baseType: !103, size: 64, align: 32, extraData: i64 1) | |
| !103 = !DICompositeType(tag: DW_TAG_structure_type, name: "Some", scope: !93, file: !2, size: 64, align: 32, elements: !104, templateParams: !100, identifier: "834be39c65fd04a5b399f356099a4a67::Some") | |
| !104 = !{!105} | |
| !105 = !DIDerivedType(tag: DW_TAG_member, name: "__0", scope: !103, file: !2, baseType: !62, size: 32, align: 32, offset: 32) | |
| !106 = !DIDerivedType(tag: DW_TAG_member, scope: !94, file: !2, baseType: !107, size: 32, align: 32, flags: DIFlagArtificial) | |
| !107 = !DIBasicType(name: "u32", size: 32, encoding: DW_ATE_unsigned) | |
| !108 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "&i32", baseType: !62, size: 64, align: 64, dwarfAddressSpace: 0) | |
| !109 = !DIBasicType(name: "usize", size: 64, encoding: DW_ATE_unsigned) | |
| !110 = !{!111, !112, !113, !115} | |
| !111 = !DILocalVariable(name: "self", arg: 1, scope: !86, file: !87, line: 133, type: !108) | |
| !112 = !DILocalVariable(name: "n", arg: 2, scope: !86, file: !87, line: 133, type: !109) | |
| !113 = !DILocalVariable(name: "n_as_unsigned", scope: !114, file: !87, line: 135, type: !107, align: 4) | |
| !114 = distinct !DILexicalBlock(scope: !86, file: !87, line: 135, column: 20) | |
| !115 = !DILocalVariable(name: "wrapped", scope: !116, file: !87, line: 139, type: !62, align: 4) | |
| !116 = distinct !DILexicalBlock(scope: !114, file: !87, line: 139, column: 24) | |
| !117 = !DILocation(line: 133, column: 25, scope: !86) | |
| !118 = !DILocation(line: 133, column: 32, scope: !86) | |
| !119 = !DILocation(line: 134, column: 22, scope: !86) | |
| !120 = !DILocation(line: 135, column: 20, scope: !86) | |
| !121 = !{i32 0, i32 2} | |
| !122 = !DILocation(line: 146, column: 30, scope: !86) | |
| !123 = !DILocation(line: 134, column: 16, scope: !86) | |
| !124 = !DILocation(line: 135, column: 23, scope: !86) | |
| !125 = !DILocation(line: 135, column: 23, scope: !114) | |
| !126 = !DILocation(line: 139, column: 39, scope: !114) | |
| !127 = !DILocation(line: 139, column: 38, scope: !114) | |
| !128 = !DILocation(line: 139, column: 28, scope: !116) | |
| !129 = !DILocation(line: 140, column: 38, scope: !116) | |
| !130 = !DILocation(line: 140, column: 27, scope: !116) | |
| !131 = !DILocation(line: 140, column: 24, scope: !116) | |
| !132 = !DILocation(line: 143, column: 28, scope: !116) | |
| !133 = !DILocation(line: 141, column: 28, scope: !116) | |
| !134 = !DILocation(line: 148, column: 13, scope: !86) | |
| !135 = distinct !DISubprogram(name: "copy_nonoverlapping<i32>", linkageName: "_ZN4core10intrinsics19copy_nonoverlapping17hc0c4590bff1ea0f7E", scope: !137, file: !136, line: 1991, type: !138, scopeLine: 1991, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !18, templateParams: !100, retainedNodes: !142) | |
| !136 = !DIFile(filename: "/rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd/src/libcore/intrinsics.rs", directory: "") | |
| !137 = !DINamespace(name: "intrinsics", scope: !23) | |
| !138 = !DISubroutineType(types: !139) | |
| !139 = !{null, !140, !141, !109} | |
| !140 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "*const i32", baseType: !62, size: 64, align: 64, dwarfAddressSpace: 0) | |
| !141 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "*mut i32", baseType: !62, size: 64, align: 64, dwarfAddressSpace: 0) | |
| !142 = !{!143, !144, !145} | |
| !143 = !DILocalVariable(name: "src", arg: 1, scope: !135, file: !136, line: 1991, type: !140) | |
| !144 = !DILocalVariable(name: "dst", arg: 2, scope: !135, file: !136, line: 1991, type: !141) | |
| !145 = !DILocalVariable(name: "count", arg: 3, scope: !135, file: !136, line: 1991, type: !109) | |
| !146 = !DILocation(line: 1991, column: 37, scope: !135) | |
| !147 = !DILocation(line: 1991, column: 52, scope: !135) | |
| !148 = !DILocation(line: 1991, column: 65, scope: !135) | |
| !149 = !DILocation(line: 1999, column: 4, scope: !135) | |
| !150 = !DILocation(line: 2000, column: 1, scope: !135) | |
| !151 = distinct !DISubprogram(name: "copy_nonoverlapping<u8>", linkageName: "_ZN4core10intrinsics19copy_nonoverlapping17hf8deb65fbe0d5b49E", scope: !137, file: !136, line: 1991, type: !152, scopeLine: 1991, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !18, templateParams: !159, retainedNodes: !155) | |
| !152 = !DISubroutineType(types: !153) | |
| !153 = !{null, !44, !154, !109} | |
| !154 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "*mut u8", baseType: !24, size: 64, align: 64, dwarfAddressSpace: 0) | |
| !155 = !{!156, !157, !158} | |
| !156 = !DILocalVariable(name: "src", arg: 1, scope: !151, file: !136, line: 1991, type: !44) | |
| !157 = !DILocalVariable(name: "dst", arg: 2, scope: !151, file: !136, line: 1991, type: !154) | |
| !158 = !DILocalVariable(name: "count", arg: 3, scope: !151, file: !136, line: 1991, type: !109) | |
| !159 = !{!160} | |
| !160 = !DITemplateTypeParameter(name: "T", type: !24) | |
| !161 = !DILocation(line: 1991, column: 37, scope: !151) | |
| !162 = !DILocation(line: 1991, column: 52, scope: !151) | |
| !163 = !DILocation(line: 1991, column: 65, scope: !151) | |
| !164 = !DILocation(line: 1999, column: 4, scope: !151) | |
| !165 = !DILocation(line: 2000, column: 1, scope: !151) | |
| !166 = distinct !DISubprogram(name: "lt", linkageName: "_ZN4core3cmp5impls55_$LT$impl$u20$core..cmp..PartialOrd$u20$for$u20$i32$GT$2lt17h6242e978760dcbacE", scope: !168, file: !167, line: 1136, type: !171, scopeLine: 1136, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !18, templateParams: !4, retainedNodes: !174) | |
| !167 = !DIFile(filename: "/rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd/src/libcore/cmp.rs", directory: "") | |
| !168 = !DINamespace(name: "{{impl}}", scope: !169) | |
| !169 = !DINamespace(name: "impls", scope: !170) | |
| !170 = !DINamespace(name: "cmp", scope: !23) | |
| !171 = !DISubroutineType(types: !172) | |
| !172 = !{!173, !108, !108} | |
| !173 = !DIBasicType(name: "bool", size: 8, encoding: DW_ATE_boolean) | |
| !174 = !{!175, !176} | |
| !175 = !DILocalVariable(name: "self", arg: 1, scope: !166, file: !167, line: 1136, type: !108) | |
| !176 = !DILocalVariable(name: "other", arg: 2, scope: !166, file: !167, line: 1136, type: !108) | |
| !177 = !DILocation(line: 1136, column: 22, scope: !166) | |
| !178 = !DILocation(line: 1136, column: 29, scope: !166) | |
| !179 = !DILocation(line: 1136, column: 51, scope: !166) | |
| !180 = !DILocation(line: 1136, column: 61, scope: !166) | |
| !181 = !DILocation(line: 1136, column: 71, scope: !166) | |
| !182 = distinct !DISubprogram(name: "new<i32>", linkageName: "_ZN4core3fmt10ArgumentV13new17h51e098059b2fc3dcE", scope: !184, file: !183, line: 283, type: !225, scopeLine: 283, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !18, templateParams: !100, retainedNodes: !230) | |
| !183 = !DIFile(filename: "/rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd/src/libcore/fmt/mod.rs", directory: "") | |
| !184 = !DICompositeType(tag: DW_TAG_structure_type, name: "ArgumentV1", scope: !31, file: !2, size: 128, align: 64, elements: !185, templateParams: !4, identifier: "48afefd0fe6abbeb7899e418aefb71fd") | |
| !185 = !{!186, !189} | |
| !186 = !DIDerivedType(tag: DW_TAG_member, name: "value", scope: !184, file: !2, baseType: !187, size: 64, align: 64) | |
| !187 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "&core::fmt::::Opaque", baseType: !188, size: 64, align: 64, dwarfAddressSpace: 0) | |
| !188 = !DICompositeType(tag: DW_TAG_structure_type, name: "Opaque", file: !2, align: 8, elements: !4, identifier: "486bbea1738750b57a22c5b1a0d2ff4d") | |
| !189 = !DIDerivedType(tag: DW_TAG_member, name: "formatter", scope: !184, file: !2, baseType: !190, size: 64, align: 64, offset: 64) | |
| !190 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "fn(&core::fmt::::Opaque, &mut core::fmt::Formatter) -> core::result::Result<(), core::fmt::Error>", baseType: !191, size: 64, align: 64, dwarfAddressSpace: 0) | |
| !191 = !DISubroutineType(types: !192) | |
| !192 = !{!21, !187, !193} | |
| !193 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "&mut core::fmt::Formatter", baseType: !194, size: 64, align: 64, dwarfAddressSpace: 0) | |
| !194 = !DICompositeType(tag: DW_TAG_structure_type, name: "Formatter", scope: !31, file: !2, size: 512, align: 64, elements: !195, templateParams: !4, identifier: "53d5dfe1238b5c464dbe21b017d2cb1c") | |
| !195 = !{!196, !197, !199, !200, !215, !216} | |
| !196 = !DIDerivedType(tag: DW_TAG_member, name: "flags", scope: !194, file: !2, baseType: !107, size: 32, align: 32, offset: 384) | |
| !197 = !DIDerivedType(tag: DW_TAG_member, name: "fill", scope: !194, file: !2, baseType: !198, size: 32, align: 32, offset: 416) | |
| !198 = !DIBasicType(name: "char", size: 32, encoding: DW_ATE_unsigned_char) | |
| !199 = !DIDerivedType(tag: DW_TAG_member, name: "align", scope: !194, file: !2, baseType: !28, size: 8, align: 8, offset: 448) | |
| !200 = !DIDerivedType(tag: DW_TAG_member, name: "width", scope: !194, file: !2, baseType: !201, size: 128, align: 64) | |
| !201 = !DICompositeType(tag: DW_TAG_structure_type, name: "Option<usize>", scope: !94, file: !2, size: 128, align: 64, elements: !202, identifier: "5b22ba34ff557475f7e29c0115668089") | |
| !202 = !{!203} | |
| !203 = !DICompositeType(tag: DW_TAG_variant_part, scope: !94, file: !2, size: 128, align: 64, elements: !204, templateParams: !207, identifier: "5b22ba34ff557475f7e29c0115668089_variant_part", discriminator: !213) | |
| !204 = !{!205, !209} | |
| !205 = !DIDerivedType(tag: DW_TAG_member, name: "None", scope: !203, file: !2, baseType: !206, size: 128, align: 64, extraData: i64 0) | |
| !206 = !DICompositeType(tag: DW_TAG_structure_type, name: "None", scope: !201, file: !2, size: 128, align: 64, elements: !4, templateParams: !207, identifier: "5b22ba34ff557475f7e29c0115668089::None") | |
| !207 = !{!208} | |
| !208 = !DITemplateTypeParameter(name: "T", type: !109) | |
| !209 = !DIDerivedType(tag: DW_TAG_member, name: "Some", scope: !203, file: !2, baseType: !210, size: 128, align: 64, extraData: i64 1) | |
| !210 = !DICompositeType(tag: DW_TAG_structure_type, name: "Some", scope: !201, file: !2, size: 128, align: 64, elements: !211, templateParams: !207, identifier: "5b22ba34ff557475f7e29c0115668089::Some") | |
| !211 = !{!212} | |
| !212 = !DIDerivedType(tag: DW_TAG_member, name: "__0", scope: !210, file: !2, baseType: !109, size: 64, align: 64, offset: 64) | |
| !213 = !DIDerivedType(tag: DW_TAG_member, scope: !94, file: !2, baseType: !214, size: 64, align: 64, flags: DIFlagArtificial) | |
| !214 = !DIBasicType(name: "u64", size: 64, encoding: DW_ATE_unsigned) | |
| !215 = !DIDerivedType(tag: DW_TAG_member, name: "precision", scope: !194, file: !2, baseType: !201, size: 128, align: 64, offset: 128) | |
| !216 = !DIDerivedType(tag: DW_TAG_member, name: "buf", scope: !194, file: !2, baseType: !217, size: 128, align: 64, offset: 256) | |
| !217 = !DICompositeType(tag: DW_TAG_structure_type, name: "&mut Write", scope: !31, file: !2, size: 128, align: 64, elements: !218, templateParams: !4, identifier: "94e75f3933ed01136240090d0a721510") | |
| !218 = !{!219, !220} | |
| !219 = !DIDerivedType(tag: DW_TAG_member, name: "pointer", scope: !217, file: !2, baseType: !154, size: 64, align: 64, flags: DIFlagArtificial) | |
| !220 = !DIDerivedType(tag: DW_TAG_member, name: "vtable", scope: !217, file: !2, baseType: !221, size: 64, align: 64, offset: 64, flags: DIFlagArtificial) | |
| !221 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "&[usize; 3]", baseType: !222, size: 64, align: 64, dwarfAddressSpace: 0) | |
| !222 = !DICompositeType(tag: DW_TAG_array_type, baseType: !109, size: 192, align: 64, elements: !223) | |
| !223 = !{!224} | |
| !224 = !DISubrange(count: 3) | |
| !225 = !DISubroutineType(types: !226) | |
| !226 = !{!184, !108, !227} | |
| !227 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "fn(&i32, &mut core::fmt::Formatter) -> core::result::Result<(), core::fmt::Error>", baseType: !228, size: 64, align: 64, dwarfAddressSpace: 0) | |
| !228 = !DISubroutineType(types: !229) | |
| !229 = !{!21, !108, !193} | |
| !230 = !{!231, !232} | |
| !231 = !DILocalVariable(name: "x", arg: 1, scope: !182, file: !183, line: 283, type: !108) | |
| !232 = !DILocalVariable(name: "f", arg: 2, scope: !182, file: !183, line: 283, type: !227) | |
| !233 = !DILocation(line: 283, column: 22, scope: !182) | |
| !234 = !DILocation(line: 283, column: 32, scope: !182) | |
| !235 = !DILocation(line: 284, column: 41, scope: !182) | |
| !236 = !DILocation(line: 284, column: 67, scope: !182) | |
| !237 = !DILocation(line: 284, column: 17, scope: !182) | |
| !238 = !DILocation(line: 285, column: 5, scope: !182) | |
| !239 = distinct !DISubprogram(name: "new_v1", linkageName: "_ZN4core3fmt9Arguments6new_v117h9bb77bc3dfdd6e76E", scope: !240, file: !183, line: 321, type: !302, scopeLine: 321, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !18, templateParams: !4, retainedNodes: !304) | |
| !240 = !DICompositeType(tag: DW_TAG_structure_type, name: "Arguments", scope: !31, file: !2, size: 384, align: 64, elements: !241, templateParams: !4, identifier: "d9b8834a2cd901fac2891b5c34e5cb30") | |
| !241 = !{!242, !252, !296} | |
| !242 = !DIDerivedType(tag: DW_TAG_member, name: "pieces", scope: !240, file: !2, baseType: !243, size: 128, align: 64) | |
| !243 = !DICompositeType(tag: DW_TAG_structure_type, name: "&[&str]", file: !2, size: 128, align: 64, elements: !244, templateParams: !4, identifier: "6dc4ddb2dbcf2912a5f3983b5bf0572") | |
| !244 = !{!245, !251} | |
| !245 = !DIDerivedType(tag: DW_TAG_member, name: "data_ptr", scope: !243, file: !2, baseType: !246, size: 64, align: 64) | |
| !246 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "*const &str", baseType: !247, size: 64, align: 64, dwarfAddressSpace: 0) | |
| !247 = !DICompositeType(tag: DW_TAG_structure_type, name: "&str", file: !2, size: 128, align: 64, elements: !248, templateParams: !4, identifier: "111094d970b097647de579f9c509ef08") | |
| !248 = !{!249, !250} | |
| !249 = !DIDerivedType(tag: DW_TAG_member, name: "data_ptr", scope: !247, file: !2, baseType: !44, size: 64, align: 64) | |
| !250 = !DIDerivedType(tag: DW_TAG_member, name: "length", scope: !247, file: !2, baseType: !109, size: 64, align: 64, offset: 64) | |
| !251 = !DIDerivedType(tag: DW_TAG_member, name: "length", scope: !243, file: !2, baseType: !109, size: 64, align: 64, offset: 64) | |
| !252 = !DIDerivedType(tag: DW_TAG_member, name: "fmt", scope: !240, file: !2, baseType: !253, size: 128, align: 64, offset: 128) | |
| !253 = !DICompositeType(tag: DW_TAG_structure_type, name: "Option<&[core::fmt::rt::v1::Argument]>", scope: !94, file: !2, size: 128, align: 64, elements: !254, identifier: "45e52a934c7718468dc62a796052d19d") | |
| !254 = !{!255} | |
| !255 = !DICompositeType(tag: DW_TAG_variant_part, scope: !94, file: !2, size: 128, align: 64, elements: !256, templateParams: !259, identifier: "45e52a934c7718468dc62a796052d19d_variant_part", discriminator: !213) | |
| !256 = !{!257, !292} | |
| !257 = !DIDerivedType(tag: DW_TAG_member, name: "None", scope: !255, file: !2, baseType: !258, size: 128, align: 64, extraData: i64 0) | |
| !258 = !DICompositeType(tag: DW_TAG_structure_type, name: "None", scope: !253, file: !2, size: 128, align: 64, elements: !4, templateParams: !259, identifier: "45e52a934c7718468dc62a796052d19d::None") | |
| !259 = !{!260} | |
| !260 = !DITemplateTypeParameter(name: "T", type: !261) | |
| !261 = !DICompositeType(tag: DW_TAG_structure_type, name: "&[core::fmt::rt::v1::Argument]", file: !2, size: 128, align: 64, elements: !262, templateParams: !4, identifier: "1e84b40a28a8c6b93854c81688a86143") | |
| !262 = !{!263, !291} | |
| !263 = !DIDerivedType(tag: DW_TAG_member, name: "data_ptr", scope: !261, file: !2, baseType: !264, size: 64, align: 64) | |
| !264 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "*const core::fmt::rt::v1::Argument", baseType: !265, size: 64, align: 64, dwarfAddressSpace: 0) | |
| !265 = !DICompositeType(tag: DW_TAG_structure_type, name: "Argument", scope: !29, file: !2, size: 448, align: 64, elements: !266, templateParams: !4, identifier: "fc1c3341066a8a7da66dde791db00817") | |
| !266 = !{!267, !268} | |
| !267 = !DIDerivedType(tag: DW_TAG_member, name: "position", scope: !265, file: !2, baseType: !109, size: 64, align: 64) | |
| !268 = !DIDerivedType(tag: DW_TAG_member, name: "format", scope: !265, file: !2, baseType: !269, size: 384, align: 64, offset: 64) | |
| !269 = !DICompositeType(tag: DW_TAG_structure_type, name: "FormatSpec", scope: !29, file: !2, size: 384, align: 64, elements: !270, templateParams: !4, identifier: "d668edb2ab09d86257e3cefb21f1d430") | |
| !270 = !{!271, !272, !273, !274, !290} | |
| !271 = !DIDerivedType(tag: DW_TAG_member, name: "fill", scope: !269, file: !2, baseType: !198, size: 32, align: 32, offset: 256) | |
| !272 = !DIDerivedType(tag: DW_TAG_member, name: "align", scope: !269, file: !2, baseType: !28, size: 8, align: 8, offset: 320) | |
| !273 = !DIDerivedType(tag: DW_TAG_member, name: "flags", scope: !269, file: !2, baseType: !107, size: 32, align: 32, offset: 288) | |
| !274 = !DIDerivedType(tag: DW_TAG_member, name: "precision", scope: !269, file: !2, baseType: !275, size: 128, align: 64) | |
| !275 = !DICompositeType(tag: DW_TAG_structure_type, name: "Count", scope: !29, file: !2, size: 128, align: 64, elements: !276, identifier: "766bf11636ff55eccd629d0c6cd03c7") | |
| !276 = !{!277} | |
| !277 = !DICompositeType(tag: DW_TAG_variant_part, scope: !29, file: !2, size: 128, align: 64, elements: !278, templateParams: !4, identifier: "766bf11636ff55eccd629d0c6cd03c7_variant_part", discriminator: !289) | |
| !278 = !{!279, !283, !287} | |
| !279 = !DIDerivedType(tag: DW_TAG_member, name: "Is", scope: !277, file: !2, baseType: !280, size: 128, align: 64, extraData: i64 0) | |
| !280 = !DICompositeType(tag: DW_TAG_structure_type, name: "Is", scope: !275, file: !2, size: 128, align: 64, elements: !281, templateParams: !4, identifier: "766bf11636ff55eccd629d0c6cd03c7::Is") | |
| !281 = !{!282} | |
| !282 = !DIDerivedType(tag: DW_TAG_member, name: "__0", scope: !280, file: !2, baseType: !109, size: 64, align: 64, offset: 64) | |
| !283 = !DIDerivedType(tag: DW_TAG_member, name: "Param", scope: !277, file: !2, baseType: !284, size: 128, align: 64, extraData: i64 1) | |
| !284 = !DICompositeType(tag: DW_TAG_structure_type, name: "Param", scope: !275, file: !2, size: 128, align: 64, elements: !285, templateParams: !4, identifier: "766bf11636ff55eccd629d0c6cd03c7::Param") | |
| !285 = !{!286} | |
| !286 = !DIDerivedType(tag: DW_TAG_member, name: "__0", scope: !284, file: !2, baseType: !109, size: 64, align: 64, offset: 64) | |
| !287 = !DIDerivedType(tag: DW_TAG_member, name: "Implied", scope: !277, file: !2, baseType: !288, size: 128, align: 64, extraData: i64 2) | |
| !288 = !DICompositeType(tag: DW_TAG_structure_type, name: "Implied", scope: !275, file: !2, size: 128, align: 64, elements: !4, templateParams: !4, identifier: "766bf11636ff55eccd629d0c6cd03c7::Implied") | |
| !289 = !DIDerivedType(tag: DW_TAG_member, scope: !29, file: !2, baseType: !214, size: 64, align: 64, flags: DIFlagArtificial) | |
| !290 = !DIDerivedType(tag: DW_TAG_member, name: "width", scope: !269, file: !2, baseType: !275, size: 128, align: 64, offset: 128) | |
| !291 = !DIDerivedType(tag: DW_TAG_member, name: "length", scope: !261, file: !2, baseType: !109, size: 64, align: 64, offset: 64) | |
| !292 = !DIDerivedType(tag: DW_TAG_member, name: "Some", scope: !255, file: !2, baseType: !293, size: 128, align: 64) | |
| !293 = !DICompositeType(tag: DW_TAG_structure_type, name: "Some", scope: !253, file: !2, size: 128, align: 64, elements: !294, templateParams: !259, identifier: "45e52a934c7718468dc62a796052d19d::Some") | |
| !294 = !{!295} | |
| !295 = !DIDerivedType(tag: DW_TAG_member, name: "__0", scope: !293, file: !2, baseType: !261, size: 128, align: 64) | |
| !296 = !DIDerivedType(tag: DW_TAG_member, name: "args", scope: !240, file: !2, baseType: !297, size: 128, align: 64, offset: 256) | |
| !297 = !DICompositeType(tag: DW_TAG_structure_type, name: "&[core::fmt::ArgumentV1]", file: !2, size: 128, align: 64, elements: !298, templateParams: !4, identifier: "576739d26d04321851c8e6cd207c5c17") | |
| !298 = !{!299, !301} | |
| !299 = !DIDerivedType(tag: DW_TAG_member, name: "data_ptr", scope: !297, file: !2, baseType: !300, size: 64, align: 64) | |
| !300 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "*const core::fmt::ArgumentV1", baseType: !184, size: 64, align: 64, dwarfAddressSpace: 0) | |
| !301 = !DIDerivedType(tag: DW_TAG_member, name: "length", scope: !297, file: !2, baseType: !109, size: 64, align: 64, offset: 64) | |
| !302 = !DISubroutineType(types: !303) | |
| !303 = !{!240, !243, !297} | |
| !304 = !{!305, !306} | |
| !305 = !DILocalVariable(name: "pieces", arg: 1, scope: !239, file: !183, line: 321, type: !243) | |
| !306 = !DILocalVariable(name: "args", arg: 2, scope: !239, file: !183, line: 321, type: !297) | |
| !307 = !DILocation(line: 321, column: 18, scope: !239) | |
| !308 = !DILocation(line: 321, column: 41, scope: !239) | |
| !309 = !DILocation(line: 322, column: 33, scope: !239) | |
| !310 = !DILocation(line: 322, column: 8, scope: !239) | |
| !311 = !DILocation(line: 323, column: 5, scope: !239) | |
| !312 = distinct !DISubprogram(name: "swap<i32>", linkageName: "_ZN4core3mem4swap17he16b24ad0b897db6E", scope: !314, file: !313, line: 553, type: !315, scopeLine: 553, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !18, templateParams: !100, retainedNodes: !318) | |
| !313 = !DIFile(filename: "/rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd/src/libcore/mem/mod.rs", directory: "") | |
| !314 = !DINamespace(name: "mem", scope: !23) | |
| !315 = !DISubroutineType(types: !316) | |
| !316 = !{null, !317, !317} | |
| !317 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "&mut i32", baseType: !62, size: 64, align: 64, dwarfAddressSpace: 0) | |
| !318 = !{!319, !320} | |
| !319 = !DILocalVariable(name: "x", arg: 1, scope: !312, file: !313, line: 553, type: !317) | |
| !320 = !DILocalVariable(name: "y", arg: 2, scope: !312, file: !313, line: 553, type: !317) | |
| !321 = !DILocation(line: 553, column: 15, scope: !312) | |
| !322 = !DILocation(line: 553, column: 26, scope: !312) | |
| !323 = !DILocation(line: 557, column: 8, scope: !312) | |
| !324 = !DILocation(line: 559, column: 1, scope: !312) | |
| !325 = distinct !DISubprogram(name: "wrapping_add", linkageName: "_ZN4core3num21_$LT$impl$u20$u32$GT$12wrapping_add17h8e1cf463cd9881b5E", scope: !327, file: !326, line: 3251, type: !329, scopeLine: 3251, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !18, templateParams: !4, retainedNodes: !331) | |
| !326 = !DIFile(filename: "/rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd/src/libcore/num/mod.rs", directory: "") | |
| !327 = !DINamespace(name: "{{impl}}", scope: !328) | |
| !328 = !DINamespace(name: "num", scope: !23) | |
| !329 = !DISubroutineType(types: !330) | |
| !330 = !{!107, !107, !107} | |
| !331 = !{!332, !333} | |
| !332 = !DILocalVariable(name: "self", arg: 1, scope: !325, file: !326, line: 3251, type: !107) | |
| !333 = !DILocalVariable(name: "rhs", arg: 2, scope: !325, file: !326, line: 3251, type: !107) | |
| !334 = !DILocation(line: 3251, column: 38, scope: !325) | |
| !335 = !DILocation(line: 3251, column: 44, scope: !325) | |
| !336 = !DILocation(line: 3252, column: 16, scope: !325) | |
| !337 = !DILocation(line: 3253, column: 13, scope: !325) | |
| !338 = distinct !DISubprogram(name: "call_once<closure-0,()>", linkageName: "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17ha18773bce9637d1bE", scope: !340, file: !339, line: 232, type: !343, scopeLine: 232, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !18, templateParams: !349, retainedNodes: !346) | |
| !339 = !DIFile(filename: "/rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd/src/libcore/ops/function.rs", directory: "") | |
| !340 = !DINamespace(name: "FnOnce", scope: !341) | |
| !341 = !DINamespace(name: "function", scope: !342) | |
| !342 = !DINamespace(name: "ops", scope: !23) | |
| !343 = !DISubroutineType(types: !344) | |
| !344 = !{!62, !345} | |
| !345 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "*mut closure-0", baseType: !5, size: 64, align: 64, dwarfAddressSpace: 0) | |
| !346 = !{!347, !348} | |
| !347 = !DILocalVariable(arg: 1, scope: !338, file: !339, line: 232, type: !345) | |
| !348 = !DILocalVariable(arg: 2, scope: !338, file: !339, line: 232, type: !51) | |
| !349 = !{!350, !351} | |
| !350 = !DITemplateTypeParameter(name: "Self", type: !5) | |
| !351 = !DITemplateTypeParameter(name: "Args", type: !51) | |
| !352 = !DILocation(line: 232, column: 4, scope: !338) | |
| !353 = distinct !DISubprogram(name: "call_once<closure-0,()>", linkageName: "_ZN4core3ops8function6FnOnce9call_once17hf39813048d37b602E", scope: !340, file: !339, line: 232, type: !354, scopeLine: 232, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !18, templateParams: !349, retainedNodes: !356) | |
| !354 = !DISubroutineType(types: !355) | |
| !355 = !{!62, !5} | |
| !356 = !{!357, !358} | |
| !357 = !DILocalVariable(arg: 1, scope: !353, file: !339, line: 232, type: !5) | |
| !358 = !DILocalVariable(arg: 2, scope: !353, file: !339, line: 232, type: !51) | |
| !359 = !DILocation(line: 232, column: 4, scope: !353) | |
| !360 = distinct !DISubprogram(name: "drop_in_place<closure-0>", linkageName: "_ZN4core3ptr13drop_in_place17hb7f00348eda9b683E", scope: !362, file: !361, line: 177, type: !363, scopeLine: 177, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !18, templateParams: !367, retainedNodes: !365) | |
| !361 = !DIFile(filename: "/rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd/src/libcore/ptr/mod.rs", directory: "") | |
| !362 = !DINamespace(name: "ptr", scope: !23) | |
| !363 = !DISubroutineType(types: !364) | |
| !364 = !{null, !345} | |
| !365 = !{!366} | |
| !366 = !DILocalVariable(arg: 1, scope: !360, file: !361, line: 177, type: !345) | |
| !367 = !{!368} | |
| !368 = !DITemplateTypeParameter(name: "T", type: !5) | |
| !369 = !DILocation(line: 177, scope: !360) | |
| !370 = distinct !DISubprogram(name: "swap_nonoverlapping<i32>", linkageName: "_ZN4core3ptr19swap_nonoverlapping17h858d11028c044449E", scope: !362, file: !361, line: 394, type: !371, scopeLine: 394, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !18, templateParams: !100, retainedNodes: !373) | |
| !371 = !DISubroutineType(types: !372) | |
| !372 = !{null, !141, !141, !109} | |
| !373 = !{!374, !375, !376, !377, !379, !381} | |
| !374 = !DILocalVariable(name: "x", arg: 1, scope: !370, file: !361, line: 394, type: !141) | |
| !375 = !DILocalVariable(name: "y", arg: 2, scope: !370, file: !361, line: 394, type: !141) | |
| !376 = !DILocalVariable(name: "count", arg: 3, scope: !370, file: !361, line: 394, type: !109) | |
| !377 = !DILocalVariable(name: "x", scope: !378, file: !361, line: 399, type: !154, align: 8) | |
| !378 = distinct !DILexicalBlock(scope: !370, file: !361, line: 399, column: 4) | |
| !379 = !DILocalVariable(name: "y", scope: !380, file: !361, line: 400, type: !154, align: 8) | |
| !380 = distinct !DILexicalBlock(scope: !378, file: !361, line: 400, column: 4) | |
| !381 = !DILocalVariable(name: "len", scope: !382, file: !361, line: 401, type: !109, align: 8) | |
| !382 = distinct !DILexicalBlock(scope: !380, file: !361, line: 401, column: 4) | |
| !383 = !DILocation(line: 394, column: 37, scope: !370) | |
| !384 = !DILocation(line: 394, column: 48, scope: !370) | |
| !385 = !DILocation(line: 394, column: 59, scope: !370) | |
| !386 = !DILocation(line: 399, column: 12, scope: !370) | |
| !387 = !DILocation(line: 399, column: 8, scope: !378) | |
| !388 = !DILocation(line: 400, column: 12, scope: !378) | |
| !389 = !DILocation(line: 400, column: 8, scope: !380) | |
| !390 = !DILocation(line: 277, column: 4, scope: !391, inlinedAt: !394) | |
| !391 = distinct !DISubprogram(name: "size_of<i32>", linkageName: "_ZN4core3mem7size_of17he0020c41feb12d17E", scope: !314, file: !313, line: 276, type: !392, scopeLine: 276, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !18, templateParams: !100, retainedNodes: !4) | |
| !392 = !DISubroutineType(types: !393) | |
| !393 = !{!109} | |
| !394 = distinct !DILocation(line: 401, column: 14, scope: !380) | |
| !395 = !DILocation(line: 401, column: 14, scope: !380) | |
| !396 = !DILocation(line: 401, column: 8, scope: !382) | |
| !397 = !DILocation(line: 402, column: 4, scope: !382) | |
| !398 = !DILocation(line: 403, column: 1, scope: !370) | |
| !399 = distinct !DISubprogram(name: "swap_nonoverlapping_one<i32>", linkageName: "_ZN4core3ptr23swap_nonoverlapping_one17he6fda9b6a548efdfE", scope: !362, file: !361, line: 406, type: !400, scopeLine: 406, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !18, templateParams: !100, retainedNodes: !402) | |
| !400 = !DISubroutineType(types: !401) | |
| !401 = !{null, !141, !141} | |
| !402 = !{!403, !404, !405} | |
| !403 = !DILocalVariable(name: "x", arg: 1, scope: !399, file: !361, line: 406, type: !141) | |
| !404 = !DILocalVariable(name: "y", arg: 2, scope: !399, file: !361, line: 406, type: !141) | |
| !405 = !DILocalVariable(name: "z", scope: !406, file: !361, line: 410, type: !62, align: 4) | |
| !406 = distinct !DILexicalBlock(scope: !399, file: !361, line: 410, column: 8) | |
| !407 = !DILocation(line: 406, column: 48, scope: !399) | |
| !408 = !DILocation(line: 406, column: 59, scope: !399) | |
| !409 = !DILocation(line: 409, column: 7, scope: !399) | |
| !410 = !DILocation(line: 277, column: 4, scope: !391, inlinedAt: !411) | |
| !411 = distinct !DILocation(line: 409, column: 7, scope: !399) | |
| !412 = !DILocation(line: 406, scope: !399) | |
| !413 = !DILocation(line: 409, column: 4, scope: !399) | |
| !414 = !DILocation(line: 414, column: 8, scope: !399) | |
| !415 = !DILocation(line: 410, column: 16, scope: !399) | |
| !416 = !DILocation(line: 410, column: 12, scope: !406) | |
| !417 = !DILocation(line: 411, column: 8, scope: !406) | |
| !418 = !DILocation(line: 412, column: 17, scope: !406) | |
| !419 = !DILocation(line: 412, column: 8, scope: !406) | |
| !420 = !DILocation(line: 413, column: 4, scope: !399) | |
| !421 = !DILocation(line: 416, column: 1, scope: !399) | |
| !422 = !{i8 0, i8 2} | |
| !423 = distinct !DISubprogram(name: "swap_nonoverlapping_bytes", linkageName: "_ZN4core3ptr25swap_nonoverlapping_bytes17h9e7c5d042bbac38fE", scope: !362, file: !361, line: 419, type: !424, scopeLine: 419, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !18, templateParams: !4, retainedNodes: !426) | |
| !424 = !DISubroutineType(types: !425) | |
| !425 = !{null, !154, !154, !109} | |
| !426 = !{!427, !428, !429, !430, !432, !434, !454, !456, !458, !460, !477, !479, !481, !483} | |
| !427 = !DILocalVariable(name: "x", arg: 1, scope: !423, file: !361, line: 419, type: !154) | |
| !428 = !DILocalVariable(name: "y", arg: 2, scope: !423, file: !361, line: 419, type: !154) | |
| !429 = !DILocalVariable(name: "len", arg: 3, scope: !423, file: !361, line: 419, type: !109) | |
| !430 = !DILocalVariable(name: "block_size", scope: !431, file: !361, line: 430, type: !109, align: 8) | |
| !431 = distinct !DILexicalBlock(scope: !423, file: !361, line: 430, column: 4) | |
| !432 = !DILocalVariable(name: "i", scope: !433, file: !361, line: 435, type: !109, align: 8) | |
| !433 = distinct !DILexicalBlock(scope: !431, file: !361, line: 435, column: 4) | |
| !434 = !DILocalVariable(name: "t", scope: !435, file: !361, line: 439, type: !436, align: 32) | |
| !435 = distinct !DILexicalBlock(scope: !433, file: !361, line: 439, column: 8) | |
| !436 = !DICompositeType(tag: DW_TAG_union_type, name: "MaybeUninit<core::ptr::swap_nonoverlapping_bytes::Block>", scope: !437, file: !2, size: 256, align: 256, elements: !438, templateParams: !452, identifier: "940729d0ce402ec262dd21044bd3c23a") | |
| !437 = !DINamespace(name: "maybe_uninit", scope: !314) | |
| !438 = !{!439, !440} | |
| !439 = !DIDerivedType(tag: DW_TAG_member, name: "uninit", scope: !436, file: !2, baseType: !51, align: 8) | |
| !440 = !DIDerivedType(tag: DW_TAG_member, name: "value", scope: !436, file: !2, baseType: !441, size: 256, align: 256) | |
| !441 = !DICompositeType(tag: DW_TAG_structure_type, name: "ManuallyDrop<core::ptr::swap_nonoverlapping_bytes::Block>", scope: !442, file: !2, size: 256, align: 256, elements: !443, templateParams: !452, identifier: "e30bd605c69ea5572c074cf3c886c1dd") | |
| !442 = !DINamespace(name: "manually_drop", scope: !314) | |
| !443 = !{!444} | |
| !444 = !DIDerivedType(tag: DW_TAG_member, name: "value", scope: !441, file: !2, baseType: !445, size: 256, align: 256) | |
| !445 = !DICompositeType(tag: DW_TAG_structure_type, name: "Block", scope: !446, file: !2, size: 256, align: 256, elements: !447, templateParams: !4, identifier: "7ecf0cef02cb2f6dd99c4b79c77098df") | |
| !446 = !DINamespace(name: "swap_nonoverlapping_bytes", scope: !362) | |
| !447 = !{!448, !449, !450, !451} | |
| !448 = !DIDerivedType(tag: DW_TAG_member, name: "__0", scope: !445, file: !2, baseType: !214, size: 64, align: 64) | |
| !449 = !DIDerivedType(tag: DW_TAG_member, name: "__1", scope: !445, file: !2, baseType: !214, size: 64, align: 64, offset: 64) | |
| !450 = !DIDerivedType(tag: DW_TAG_member, name: "__2", scope: !445, file: !2, baseType: !214, size: 64, align: 64, offset: 128) | |
| !451 = !DIDerivedType(tag: DW_TAG_member, name: "__3", scope: !445, file: !2, baseType: !214, size: 64, align: 64, offset: 192) | |
| !452 = !{!453} | |
| !453 = !DITemplateTypeParameter(name: "T", type: !445) | |
| !454 = !DILocalVariable(name: "t", scope: !455, file: !361, line: 440, type: !154, align: 8) | |
| !455 = distinct !DILexicalBlock(scope: !435, file: !361, line: 440, column: 8) | |
| !456 = !DILocalVariable(name: "x", scope: !457, file: !361, line: 441, type: !154, align: 8) | |
| !457 = distinct !DILexicalBlock(scope: !455, file: !361, line: 441, column: 8) | |
| !458 = !DILocalVariable(name: "y", scope: !459, file: !361, line: 442, type: !154, align: 8) | |
| !459 = distinct !DILexicalBlock(scope: !457, file: !361, line: 442, column: 8) | |
| !460 = !DILocalVariable(name: "t", scope: !461, file: !361, line: 454, type: !462, align: 8) | |
| !461 = distinct !DILexicalBlock(scope: !433, file: !361, line: 454, column: 8) | |
| !462 = !DICompositeType(tag: DW_TAG_union_type, name: "MaybeUninit<core::ptr::swap_nonoverlapping_bytes::UnalignedBlock>", scope: !437, file: !2, size: 256, align: 64, elements: !463, templateParams: !475, identifier: "4ea4d0764646b776a5deab80642d9c53") | |
| !463 = !{!464, !465} | |
| !464 = !DIDerivedType(tag: DW_TAG_member, name: "uninit", scope: !462, file: !2, baseType: !51, align: 8) | |
| !465 = !DIDerivedType(tag: DW_TAG_member, name: "value", scope: !462, file: !2, baseType: !466, size: 256, align: 64) | |
| !466 = !DICompositeType(tag: DW_TAG_structure_type, name: "ManuallyDrop<core::ptr::swap_nonoverlapping_bytes::UnalignedBlock>", scope: !442, file: !2, size: 256, align: 64, elements: !467, templateParams: !475, identifier: "53caccbae004a743b8419c541bc81202") | |
| !467 = !{!468} | |
| !468 = !DIDerivedType(tag: DW_TAG_member, name: "value", scope: !466, file: !2, baseType: !469, size: 256, align: 64) | |
| !469 = !DICompositeType(tag: DW_TAG_structure_type, name: "UnalignedBlock", scope: !446, file: !2, size: 256, align: 64, elements: !470, templateParams: !4, identifier: "95a197467d7fc4ee2a12b6ac55fa483b") | |
| !470 = !{!471, !472, !473, !474} | |
| !471 = !DIDerivedType(tag: DW_TAG_member, name: "__0", scope: !469, file: !2, baseType: !214, size: 64, align: 64) | |
| !472 = !DIDerivedType(tag: DW_TAG_member, name: "__1", scope: !469, file: !2, baseType: !214, size: 64, align: 64, offset: 64) | |
| !473 = !DIDerivedType(tag: DW_TAG_member, name: "__2", scope: !469, file: !2, baseType: !214, size: 64, align: 64, offset: 128) | |
| !474 = !DIDerivedType(tag: DW_TAG_member, name: "__3", scope: !469, file: !2, baseType: !214, size: 64, align: 64, offset: 192) | |
| !475 = !{!476} | |
| !476 = !DITemplateTypeParameter(name: "T", type: !469) | |
| !477 = !DILocalVariable(name: "rem", scope: !478, file: !361, line: 455, type: !109, align: 8) | |
| !478 = distinct !DILexicalBlock(scope: !461, file: !361, line: 455, column: 8) | |
| !479 = !DILocalVariable(name: "t", scope: !480, file: !361, line: 457, type: !154, align: 8) | |
| !480 = distinct !DILexicalBlock(scope: !478, file: !361, line: 457, column: 8) | |
| !481 = !DILocalVariable(name: "x", scope: !482, file: !361, line: 458, type: !154, align: 8) | |
| !482 = distinct !DILexicalBlock(scope: !480, file: !361, line: 458, column: 8) | |
| !483 = !DILocalVariable(name: "y", scope: !484, file: !361, line: 459, type: !154, align: 8) | |
| !484 = distinct !DILexicalBlock(scope: !482, file: !361, line: 459, column: 8) | |
| !485 = !DILocalVariable(name: "self", arg: 1, scope: !486, file: !487, line: 148, type: !492) | |
| !486 = distinct !DISubprogram(name: "deref_mut<core::ptr::swap_nonoverlapping_bytes::UnalignedBlock>", linkageName: "_ZN94_$LT$core..mem..manually_drop..ManuallyDrop$LT$T$GT$$u20$as$u20$core..ops..deref..DerefMut$GT$9deref_mut17h7aec73cc0580dc60E", scope: !488, file: !487, line: 148, type: !489, scopeLine: 148, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !18, templateParams: !475, retainedNodes: !493) | |
| !487 = !DIFile(filename: "/rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd/src/libcore/mem/manually_drop.rs", directory: "") | |
| !488 = !DINamespace(name: "{{impl}}", scope: !442) | |
| !489 = !DISubroutineType(types: !490) | |
| !490 = !{!491, !492} | |
| !491 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "&mut core::ptr::swap_nonoverlapping_bytes::UnalignedBlock", baseType: !469, size: 64, align: 64, dwarfAddressSpace: 0) | |
| !492 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "&mut core::mem::manually_drop::ManuallyDrop<core::ptr::swap_nonoverlapping_bytes::UnalignedBlock>", baseType: !466, size: 64, align: 64, dwarfAddressSpace: 0) | |
| !493 = !{!485} | |
| !494 = !DILocation(line: 148, column: 17, scope: !486, inlinedAt: !495) | |
| !495 = distinct !DILocation(line: 448, column: 22, scope: !496, inlinedAt: !504) | |
| !496 = distinct !DISubprogram(name: "as_mut_ptr<core::ptr::swap_nonoverlapping_bytes::UnalignedBlock>", linkageName: "_ZN4core3mem12maybe_uninit20MaybeUninit$LT$T$GT$10as_mut_ptr17h84dccbb4291e2f83E", scope: !462, file: !497, line: 447, type: !498, scopeLine: 447, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !18, templateParams: !475, retainedNodes: !502) | |
| !497 = !DIFile(filename: "/rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd/src/libcore/mem/maybe_uninit.rs", directory: "") | |
| !498 = !DISubroutineType(types: !499) | |
| !499 = !{!500, !501} | |
| !500 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "*mut core::ptr::swap_nonoverlapping_bytes::UnalignedBlock", baseType: !469, size: 64, align: 64, dwarfAddressSpace: 0) | |
| !501 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "&mut core::mem::maybe_uninit::MaybeUninit<core::ptr::swap_nonoverlapping_bytes::UnalignedBlock>", baseType: !462, size: 64, align: 64, dwarfAddressSpace: 0) | |
| !502 = !{!503} | |
| !503 = !DILocalVariable(name: "self", arg: 1, scope: !496, file: !497, line: 447, type: !501) | |
| !504 = distinct !DILocation(line: 457, column: 16, scope: !478) | |
| !505 = !DILocation(line: 447, column: 22, scope: !496, inlinedAt: !504) | |
| !506 = !DILocalVariable(name: "self", arg: 1, scope: !507, file: !487, line: 148, type: !511) | |
| !507 = distinct !DISubprogram(name: "deref_mut<core::ptr::swap_nonoverlapping_bytes::Block>", linkageName: "_ZN94_$LT$core..mem..manually_drop..ManuallyDrop$LT$T$GT$$u20$as$u20$core..ops..deref..DerefMut$GT$9deref_mut17hbf398306117baa17E", scope: !488, file: !487, line: 148, type: !508, scopeLine: 148, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !18, templateParams: !452, retainedNodes: !512) | |
| !508 = !DISubroutineType(types: !509) | |
| !509 = !{!510, !511} | |
| !510 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "&mut core::ptr::swap_nonoverlapping_bytes::Block", baseType: !445, size: 64, align: 64, dwarfAddressSpace: 0) | |
| !511 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "&mut core::mem::manually_drop::ManuallyDrop<core::ptr::swap_nonoverlapping_bytes::Block>", baseType: !441, size: 64, align: 64, dwarfAddressSpace: 0) | |
| !512 = !{!506} | |
| !513 = !DILocation(line: 148, column: 17, scope: !507, inlinedAt: !514) | |
| !514 = distinct !DILocation(line: 448, column: 22, scope: !515, inlinedAt: !522) | |
| !515 = distinct !DISubprogram(name: "as_mut_ptr<core::ptr::swap_nonoverlapping_bytes::Block>", linkageName: "_ZN4core3mem12maybe_uninit20MaybeUninit$LT$T$GT$10as_mut_ptr17he90eb7a05a7e754dE", scope: !436, file: !497, line: 447, type: !516, scopeLine: 447, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !18, templateParams: !452, retainedNodes: !520) | |
| !516 = !DISubroutineType(types: !517) | |
| !517 = !{!518, !519} | |
| !518 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "*mut core::ptr::swap_nonoverlapping_bytes::Block", baseType: !445, size: 64, align: 64, dwarfAddressSpace: 0) | |
| !519 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "&mut core::mem::maybe_uninit::MaybeUninit<core::ptr::swap_nonoverlapping_bytes::Block>", baseType: !436, size: 64, align: 64, dwarfAddressSpace: 0) | |
| !520 = !{!521} | |
| !521 = !DILocalVariable(name: "self", arg: 1, scope: !515, file: !497, line: 447, type: !519) | |
| !522 = distinct !DILocation(line: 440, column: 16, scope: !435) | |
| !523 = !DILocation(line: 447, column: 22, scope: !515, inlinedAt: !522) | |
| !524 = !DILocation(line: 419, column: 36, scope: !423) | |
| !525 = !DILocation(line: 419, column: 48, scope: !423) | |
| !526 = !DILocation(line: 419, column: 60, scope: !423) | |
| !527 = !DILocation(line: 435, column: 8, scope: !433) | |
| !528 = !DILocation(line: 439, column: 12, scope: !435) | |
| !529 = !DILocation(line: 454, column: 12, scope: !461) | |
| !530 = !DILocation(line: 277, column: 4, scope: !531, inlinedAt: !532) | |
| !531 = distinct !DISubprogram(name: "size_of<core::ptr::swap_nonoverlapping_bytes::Block>", linkageName: "_ZN4core3mem7size_of17h85e1a59fe1e3b2c8E", scope: !314, file: !313, line: 276, type: !392, scopeLine: 276, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !18, templateParams: !452, retainedNodes: !4) | |
| !532 = distinct !DILocation(line: 430, column: 21, scope: !423) | |
| !533 = !DILocation(line: 430, column: 21, scope: !423) | |
| !534 = !DILocation(line: 430, column: 8, scope: !431) | |
| !535 = !DILocation(line: 435, column: 16, scope: !431) | |
| !536 = !DILocation(line: 436, column: 4, scope: !433) | |
| !537 = !DILocation(line: 436, column: 10, scope: !433) | |
| !538 = !DILocation(line: 452, column: 7, scope: !433) | |
| !539 = !DILocation(line: 452, column: 4, scope: !433) | |
| !540 = !DILocation(line: 272, column: 8, scope: !541, inlinedAt: !544) | |
| !541 = distinct !DISubprogram(name: "uninit<core::ptr::swap_nonoverlapping_bytes::Block>", linkageName: "_ZN4core3mem12maybe_uninit20MaybeUninit$LT$T$GT$6uninit17hf2f7f99c21aa0f8eE", scope: !436, file: !497, line: 271, type: !542, scopeLine: 271, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !18, templateParams: !452, retainedNodes: !4) | |
| !542 = !DISubroutineType(types: !543) | |
| !543 = !{!436} | |
| !544 = distinct !DILocation(line: 439, column: 20, scope: !433) | |
| !545 = !DILocation(line: 439, column: 20, scope: !433) | |
| !546 = !DILocation(line: 440, column: 16, scope: !435) | |
| !547 = !DILocation(line: 440, column: 12, scope: !455) | |
| !548 = !DILocation(line: 441, column: 22, scope: !455) | |
| !549 = !DILocation(line: 441, column: 16, scope: !455) | |
| !550 = !DILocation(line: 441, column: 12, scope: !457) | |
| !551 = !DILocation(line: 442, column: 22, scope: !457) | |
| !552 = !DILocation(line: 442, column: 16, scope: !457) | |
| !553 = !DILocation(line: 442, column: 12, scope: !459) | |
| !554 = !DILocation(line: 446, column: 8, scope: !459) | |
| !555 = !DILocation(line: 447, column: 8, scope: !459) | |
| !556 = !DILocation(line: 448, column: 8, scope: !459) | |
| !557 = !DILocation(line: 449, column: 8, scope: !459) | |
| !558 = !DILocation(line: 272, column: 8, scope: !559, inlinedAt: !562) | |
| !559 = distinct !DISubprogram(name: "uninit<core::ptr::swap_nonoverlapping_bytes::UnalignedBlock>", linkageName: "_ZN4core3mem12maybe_uninit20MaybeUninit$LT$T$GT$6uninit17hd01a2bcd5224cab0E", scope: !462, file: !497, line: 271, type: !560, scopeLine: 271, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !18, templateParams: !475, retainedNodes: !4) | |
| !560 = !DISubroutineType(types: !561) | |
| !561 = !{!462} | |
| !562 = distinct !DILocation(line: 454, column: 20, scope: !433) | |
| !563 = !DILocation(line: 454, column: 20, scope: !433) | |
| !564 = !DILocation(line: 455, column: 24, scope: !461) | |
| !565 = !DILocation(line: 455, column: 18, scope: !461) | |
| !566 = !DILocation(line: 455, column: 12, scope: !478) | |
| !567 = !DILocation(line: 448, column: 23, scope: !496, inlinedAt: !504) | |
| !568 = !DILocation(line: 149, column: 8, scope: !486, inlinedAt: !495) | |
| !569 = !DILocation(line: 457, column: 16, scope: !478) | |
| !570 = !DILocation(line: 457, column: 12, scope: !480) | |
| !571 = !DILocation(line: 458, column: 22, scope: !480) | |
| !572 = !DILocation(line: 458, column: 16, scope: !480) | |
| !573 = !DILocation(line: 458, column: 12, scope: !482) | |
| !574 = !DILocation(line: 459, column: 22, scope: !482) | |
| !575 = !DILocation(line: 459, column: 16, scope: !482) | |
| !576 = !DILocation(line: 459, column: 12, scope: !484) | |
| !577 = !DILocation(line: 461, column: 8, scope: !484) | |
| !578 = !DILocation(line: 462, column: 8, scope: !484) | |
| !579 = !DILocation(line: 463, column: 8, scope: !484) | |
| !580 = !DILocation(line: 465, column: 1, scope: !423) | |
| !581 = distinct !DISubprogram(name: "read<i32>", linkageName: "_ZN4core3ptr4read17hb8b617b170f7f5dcE", scope: !362, file: !361, line: 625, type: !582, scopeLine: 625, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !18, templateParams: !100, retainedNodes: !584) | |
| !582 = !DISubroutineType(types: !583) | |
| !583 = !{!62, !140} | |
| !584 = !{!585, !586} | |
| !585 = !DILocalVariable(name: "src", arg: 1, scope: !581, file: !361, line: 625, type: !140) | |
| !586 = !DILocalVariable(name: "tmp", scope: !587, file: !361, line: 627, type: !588, align: 4) | |
| !587 = distinct !DILexicalBlock(scope: !581, file: !361, line: 627, column: 4) | |
| !588 = !DICompositeType(tag: DW_TAG_union_type, name: "MaybeUninit<i32>", scope: !437, file: !2, size: 32, align: 32, elements: !589, templateParams: !100, identifier: "ff2394c37c82a83afd66a7462da7b01a") | |
| !589 = !{!590, !591} | |
| !590 = !DIDerivedType(tag: DW_TAG_member, name: "uninit", scope: !588, file: !2, baseType: !51, align: 8) | |
| !591 = !DIDerivedType(tag: DW_TAG_member, name: "value", scope: !588, file: !2, baseType: !592, size: 32, align: 32) | |
| !592 = !DICompositeType(tag: DW_TAG_structure_type, name: "ManuallyDrop<i32>", scope: !442, file: !2, size: 32, align: 32, elements: !593, templateParams: !100, identifier: "dddbbe81059f8503e3050e41655a1f99") | |
| !593 = !{!594} | |
| !594 = !DIDerivedType(tag: DW_TAG_member, name: "value", scope: !592, file: !2, baseType: !62, size: 32, align: 32) | |
| !595 = !DILocalVariable(name: "self", arg: 1, scope: !596, file: !487, line: 148, type: !599) | |
| !596 = distinct !DISubprogram(name: "deref_mut<i32>", linkageName: "_ZN94_$LT$core..mem..manually_drop..ManuallyDrop$LT$T$GT$$u20$as$u20$core..ops..deref..DerefMut$GT$9deref_mut17h1e9a56893cb4bcd7E", scope: !488, file: !487, line: 148, type: !597, scopeLine: 148, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !18, templateParams: !100, retainedNodes: !600) | |
| !597 = !DISubroutineType(types: !598) | |
| !598 = !{!317, !599} | |
| !599 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "&mut core::mem::manually_drop::ManuallyDrop<i32>", baseType: !592, size: 64, align: 64, dwarfAddressSpace: 0) | |
| !600 = !{!595} | |
| !601 = !DILocation(line: 148, column: 17, scope: !596, inlinedAt: !602) | |
| !602 = distinct !DILocation(line: 448, column: 22, scope: !603, inlinedAt: !609) | |
| !603 = distinct !DISubprogram(name: "as_mut_ptr<i32>", linkageName: "_ZN4core3mem12maybe_uninit20MaybeUninit$LT$T$GT$10as_mut_ptr17h5aab5a7611295353E", scope: !588, file: !497, line: 447, type: !604, scopeLine: 447, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !18, templateParams: !100, retainedNodes: !607) | |
| !604 = !DISubroutineType(types: !605) | |
| !605 = !{!141, !606} | |
| !606 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "&mut core::mem::maybe_uninit::MaybeUninit<i32>", baseType: !588, size: 64, align: 64, dwarfAddressSpace: 0) | |
| !607 = !{!608} | |
| !608 = !DILocalVariable(name: "self", arg: 1, scope: !603, file: !497, line: 447, type: !606) | |
| !609 = distinct !DILocation(line: 628, column: 29, scope: !587) | |
| !610 = !DILocation(line: 447, column: 22, scope: !603, inlinedAt: !609) | |
| !611 = !DILocalVariable(name: "slot", arg: 1, scope: !612, file: !487, line: 86, type: !592) | |
| !612 = distinct !DISubprogram(name: "into_inner<i32>", linkageName: "_ZN4core3mem13manually_drop21ManuallyDrop$LT$T$GT$10into_inner17had87178ba9cf810bE", scope: !592, file: !487, line: 86, type: !613, scopeLine: 86, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !18, templateParams: !100, retainedNodes: !615) | |
| !613 = !DISubroutineType(types: !614) | |
| !614 = !{!62, !592} | |
| !615 = !{!611} | |
| !616 = !DILocation(line: 86, column: 28, scope: !612, inlinedAt: !617) | |
| !617 = distinct !DILocation(line: 499, column: 8, scope: !618, inlinedAt: !623) | |
| !618 = distinct !DISubprogram(name: "assume_init<i32>", linkageName: "_ZN4core3mem12maybe_uninit20MaybeUninit$LT$T$GT$11assume_init17h3508ec54a6ed97cbE", scope: !588, file: !497, line: 497, type: !619, scopeLine: 497, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !18, templateParams: !100, retainedNodes: !621) | |
| !619 = !DISubroutineType(types: !620) | |
| !620 = !{!62, !588} | |
| !621 = !{!622} | |
| !622 = !DILocalVariable(name: "self", arg: 1, scope: !618, file: !497, line: 497, type: !588) | |
| !623 = distinct !DILocation(line: 629, column: 4, scope: !587) | |
| !624 = !DILocation(line: 497, column: 30, scope: !618, inlinedAt: !623) | |
| !625 = !DILocation(line: 625, column: 22, scope: !581) | |
| !626 = !DILocation(line: 627, column: 8, scope: !587) | |
| !627 = !DILocation(line: 272, column: 8, scope: !628, inlinedAt: !631) | |
| !628 = distinct !DISubprogram(name: "uninit<i32>", linkageName: "_ZN4core3mem12maybe_uninit20MaybeUninit$LT$T$GT$6uninit17hb704266d1b4b1845E", scope: !588, file: !497, line: 271, type: !629, scopeLine: 271, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !18, templateParams: !100, retainedNodes: !4) | |
| !629 = !DISubroutineType(types: !630) | |
| !630 = !{!588} | |
| !631 = distinct !DILocation(line: 627, column: 18, scope: !581) | |
| !632 = !DILocation(line: 273, column: 5, scope: !628, inlinedAt: !631) | |
| !633 = !DILocation(line: 627, column: 18, scope: !581) | |
| !634 = !DILocation(line: 628, column: 29, scope: !587) | |
| !635 = !DILocation(line: 628, column: 4, scope: !587) | |
| !636 = !DILocation(line: 629, column: 4, scope: !587) | |
| !637 = !DILocation(line: 630, column: 1, scope: !581) | |
| !638 = distinct !DISubprogram(name: "write<i32>", linkageName: "_ZN4core3ptr5write17hfd67ddf85252221fE", scope: !362, file: !361, line: 812, type: !639, scopeLine: 812, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !18, templateParams: !100, retainedNodes: !641) | |
| !639 = !DISubroutineType(types: !640) | |
| !640 = !{null, !141, !62} | |
| !641 = !{!642, !643} | |
| !642 = !DILocalVariable(name: "dst", arg: 1, scope: !638, file: !361, line: 812, type: !141) | |
| !643 = !DILocalVariable(name: "src", arg: 2, scope: !638, file: !361, line: 812, type: !62) | |
| !644 = !DILocation(line: 812, column: 23, scope: !638) | |
| !645 = !DILocation(line: 812, column: 36, scope: !638) | |
| !646 = !DILocation(line: 816, column: 41, scope: !638) | |
| !647 = !DILocation(line: 817, column: 1, scope: !638) | |
| !648 = distinct !DISubprogram(name: "add<u8>", linkageName: "_ZN4core3ptr7mut_ptr31_$LT$impl$u20$$BP$mut$u20$T$GT$3add17h5dbe540d304e464eE", scope: !650, file: !649, line: 441, type: !652, scopeLine: 441, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !18, templateParams: !159, retainedNodes: !654) | |
| !649 = !DIFile(filename: "/rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd/src/libcore/ptr/mut_ptr.rs", directory: "") | |
| !650 = !DINamespace(name: "{{impl}}", scope: !651) | |
| !651 = !DINamespace(name: "mut_ptr", scope: !362) | |
| !652 = !DISubroutineType(types: !653) | |
| !653 = !{!154, !154, !109} | |
| !654 = !{!655, !656} | |
| !655 = !DILocalVariable(name: "self", arg: 1, scope: !648, file: !649, line: 441, type: !154) | |
| !656 = !DILocalVariable(name: "count", arg: 2, scope: !648, file: !649, line: 441, type: !109) | |
| !657 = !DILocation(line: 441, column: 22, scope: !648) | |
| !658 = !DILocation(line: 441, column: 28, scope: !648) | |
| !659 = !DILocation(line: 445, column: 8, scope: !648) | |
| !660 = !DILocation(line: 446, column: 5, scope: !648) | |
| !661 = distinct !DISubprogram(name: "offset<u8>", linkageName: "_ZN4core3ptr7mut_ptr31_$LT$impl$u20$$BP$mut$u20$T$GT$6offset17h850232ccdf5f4362E", scope: !650, file: !649, line: 150, type: !662, scopeLine: 150, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !18, templateParams: !159, retainedNodes: !664) | |
| !662 = !DISubroutineType(types: !663) | |
| !663 = !{!154, !154, !42} | |
| !664 = !{!665, !666} | |
| !665 = !DILocalVariable(name: "self", arg: 1, scope: !661, file: !649, line: 150, type: !154) | |
| !666 = !DILocalVariable(name: "count", arg: 2, scope: !661, file: !649, line: 150, type: !42) | |
| !667 = !DILocation(line: 150, column: 25, scope: !661) | |
| !668 = !DILocation(line: 150, column: 31, scope: !661) | |
| !669 = !DILocation(line: 154, column: 8, scope: !661) | |
| !670 = !DILocation(line: 155, column: 5, scope: !661) | |
| !671 = distinct !DISubprogram(name: "next<i32>", linkageName: "_ZN4core4iter5range101_$LT$impl$u20$core..iter..traits..iterator..Iterator$u20$for$u20$core..ops..range..Range$LT$A$GT$$GT$4next17h2525abc134e599f1E", scope: !88, file: !87, line: 211, type: !672, scopeLine: 211, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !18, templateParams: !686, retainedNodes: !682) | |
| !672 = !DISubroutineType(types: !673) | |
| !673 = !{!93, !674} | |
| !674 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "&mut core::ops::range::Range<i32>", baseType: !675, size: 64, align: 64, dwarfAddressSpace: 0) | |
| !675 = !DICompositeType(tag: DW_TAG_structure_type, name: "Range<i32>", scope: !676, file: !2, size: 64, align: 32, elements: !677, templateParams: !680, identifier: "a776507bd45d149d8300f1885c979329") | |
| !676 = !DINamespace(name: "range", scope: !342) | |
| !677 = !{!678, !679} | |
| !678 = !DIDerivedType(tag: DW_TAG_member, name: "start", scope: !675, file: !2, baseType: !62, size: 32, align: 32) | |
| !679 = !DIDerivedType(tag: DW_TAG_member, name: "end", scope: !675, file: !2, baseType: !62, size: 32, align: 32, offset: 32) | |
| !680 = !{!681} | |
| !681 = !DITemplateTypeParameter(name: "Idx", type: !62) | |
| !682 = !{!683, !684} | |
| !683 = !DILocalVariable(name: "self", arg: 1, scope: !671, file: !87, line: 211, type: !674) | |
| !684 = !DILocalVariable(name: "n", scope: !685, file: !87, line: 217, type: !62, align: 4) | |
| !685 = distinct !DILexicalBlock(scope: !671, file: !87, line: 217, column: 57) | |
| !686 = !{!687} | |
| !687 = !DITemplateTypeParameter(name: "A", type: !62) | |
| !688 = !DILocation(line: 211, column: 12, scope: !671) | |
| !689 = !DILocation(line: 217, column: 24, scope: !685) | |
| !690 = !DILocation(line: 212, column: 11, scope: !671) | |
| !691 = !DILocation(line: 212, column: 24, scope: !671) | |
| !692 = !DILocation(line: 212, column: 8, scope: !671) | |
| !693 = !DILocation(line: 224, column: 12, scope: !671) | |
| !694 = !DILocation(line: 217, column: 33, scope: !671) | |
| !695 = !DILocation(line: 217, column: 19, scope: !671) | |
| !696 = !DILocation(line: 221, column: 16, scope: !671) | |
| !697 = !DILocation(line: 217, column: 12, scope: !671) | |
| !698 = !DILocation(line: 217, column: 24, scope: !671) | |
| !699 = !DILocation(line: 218, column: 34, scope: !685) | |
| !700 = !DILocation(line: 218, column: 16, scope: !685) | |
| !701 = !DILocation(line: 219, column: 21, scope: !685) | |
| !702 = !DILocation(line: 219, column: 16, scope: !685) | |
| !703 = !DILocation(line: 223, column: 8, scope: !671) | |
| !704 = !DILocation(line: 211, column: 4, scope: !671) | |
| !705 = !DILocation(line: 220, column: 12, scope: !671) | |
| !706 = !DILocation(line: 226, column: 5, scope: !671) | |
| !707 = distinct !DISubprogram(name: "try_from", linkageName: "_ZN4core7convert3num18ptr_try_from_impls69_$LT$impl$u20$core..convert..TryFrom$LT$usize$GT$$u20$for$u20$u32$GT$8try_from17h54cce386fc926767E", scope: !709, file: !708, line: 219, type: !713, scopeLine: 219, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !18, templateParams: !4, retainedNodes: !734) | |
| !708 = !DIFile(filename: "/rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd/src/libcore/convert/num.rs", directory: "") | |
| !709 = !DINamespace(name: "{{impl}}", scope: !710) | |
| !710 = !DINamespace(name: "ptr_try_from_impls", scope: !711) | |
| !711 = !DINamespace(name: "num", scope: !712) | |
| !712 = !DINamespace(name: "convert", scope: !23) | |
| !713 = !DISubroutineType(types: !714) | |
| !714 = !{!715, !109} | |
| !715 = !DICompositeType(tag: DW_TAG_structure_type, name: "Result<u32, core::num::TryFromIntError>", scope: !22, file: !2, size: 64, align: 32, elements: !716, identifier: "70c0a5217132ee1dc9abe22e4183884a") | |
| !716 = !{!717} | |
| !717 = !DICompositeType(tag: DW_TAG_variant_part, scope: !22, file: !2, size: 64, align: 32, elements: !718, templateParams: !723, identifier: "70c0a5217132ee1dc9abe22e4183884a_variant_part", discriminator: !733) | |
| !718 = !{!719, !729} | |
| !719 = !DIDerivedType(tag: DW_TAG_member, name: "Ok", scope: !717, file: !2, baseType: !720, size: 64, align: 32, extraData: i64 0) | |
| !720 = !DICompositeType(tag: DW_TAG_structure_type, name: "Ok", scope: !715, file: !2, size: 64, align: 32, elements: !721, templateParams: !723, identifier: "70c0a5217132ee1dc9abe22e4183884a::Ok") | |
| !721 = !{!722} | |
| !722 = !DIDerivedType(tag: DW_TAG_member, name: "__0", scope: !720, file: !2, baseType: !107, size: 32, align: 32, offset: 32) | |
| !723 = !{!724, !725} | |
| !724 = !DITemplateTypeParameter(name: "T", type: !107) | |
| !725 = !DITemplateTypeParameter(name: "E", type: !726) | |
| !726 = !DICompositeType(tag: DW_TAG_structure_type, name: "TryFromIntError", scope: !328, file: !2, align: 8, elements: !727, templateParams: !4, identifier: "7b57dd6dbd42d1ba488c3d1214235706") | |
| !727 = !{!728} | |
| !728 = !DIDerivedType(tag: DW_TAG_member, name: "__0", scope: !726, file: !2, baseType: !51, align: 8) | |
| !729 = !DIDerivedType(tag: DW_TAG_member, name: "Err", scope: !717, file: !2, baseType: !730, size: 64, align: 32, extraData: i64 1) | |
| !730 = !DICompositeType(tag: DW_TAG_structure_type, name: "Err", scope: !715, file: !2, size: 64, align: 32, elements: !731, templateParams: !723, identifier: "70c0a5217132ee1dc9abe22e4183884a::Err") | |
| !731 = !{!732} | |
| !732 = !DIDerivedType(tag: DW_TAG_member, name: "__0", scope: !730, file: !2, baseType: !726, align: 8, offset: 32) | |
| !733 = !DIDerivedType(tag: DW_TAG_member, scope: !22, file: !2, baseType: !107, size: 32, align: 32, flags: DIFlagArtificial) | |
| !734 = !{!735} | |
| !735 = !DILocalVariable(name: "u", arg: 1, scope: !707, file: !708, line: 219, type: !109) | |
| !736 = !DILocation(line: 219, column: 24, scope: !707) | |
| !737 = !DILocation(line: 220, column: 24, scope: !707) | |
| !738 = !DILocation(line: 220, column: 23, scope: !707) | |
| !739 = !DILocation(line: 220, column: 19, scope: !707) | |
| !740 = !DILocation(line: 220, column: 16, scope: !707) | |
| !741 = !DILocation(line: 223, column: 23, scope: !707) | |
| !742 = !DILocation(line: 223, column: 20, scope: !707) | |
| !743 = !DILocation(line: 221, column: 20, scope: !707) | |
| !744 = !DILocation(line: 225, column: 13, scope: !707) | |
| !745 = distinct !DISubprogram(name: "report", linkageName: "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17hb299261025355cbfE", scope: !747, file: !746, line: 1653, type: !749, scopeLine: 1653, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !18, templateParams: !4, retainedNodes: !751) | |
| !746 = !DIFile(filename: "/rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd/src/libstd/process.rs", directory: "") | |
| !747 = !DINamespace(name: "{{impl}}", scope: !748) | |
| !748 = !DINamespace(name: "process", scope: !8) | |
| !749 = !DISubroutineType(types: !750) | |
| !750 = !{!62, !51} | |
| !751 = !{!752} | |
| !752 = !DILocalVariable(name: "self", arg: 1, scope: !745, file: !746, line: 1653, type: !51) | |
| !753 = !DILocation(line: 1653, column: 14, scope: !745) | |
| !754 = !DILocation(line: 1654, column: 8, scope: !745) | |
| !755 = !DILocation(line: 1655, column: 5, scope: !745) | |
| !756 = distinct !DISubprogram(name: "into_iter<core::ops::range::Range<i32>>", linkageName: "_ZN63_$LT$I$u20$as$u20$core..iter..traits..collect..IntoIterator$GT$9into_iter17h7c746f09ad0c25f9E", scope: !758, file: !757, line: 247, type: !761, scopeLine: 247, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !18, templateParams: !765, retainedNodes: !763) | |
| !757 = !DIFile(filename: "/rustc/8d69840ab92ea7f4d323420088dd8c9775f180cd/src/libcore/iter/traits/collect.rs", directory: "") | |
| !758 = !DINamespace(name: "{{impl}}", scope: !759) | |
| !759 = !DINamespace(name: "collect", scope: !760) | |
| !760 = !DINamespace(name: "traits", scope: !90) | |
| !761 = !DISubroutineType(types: !762) | |
| !762 = !{!675, !675} | |
| !763 = !{!764} | |
| !764 = !DILocalVariable(name: "self", arg: 1, scope: !756, file: !757, line: 247, type: !675) | |
| !765 = !{!766} | |
| !766 = !DITemplateTypeParameter(name: "I", type: !675) | |
| !767 = !DILocation(line: 247, column: 17, scope: !756) | |
| !768 = !DILocation(line: 249, column: 5, scope: !756) | |
| !769 = distinct !DISubprogram(name: "report", linkageName: "_ZN68_$LT$std..process..ExitCode$u20$as$u20$std..process..Termination$GT$6report17he7157c58223cf1afE", scope: !747, file: !746, line: 1687, type: !770, scopeLine: 1687, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !18, templateParams: !4, retainedNodes: !775) | |
| !770 = !DISubroutineType(types: !771) | |
| !771 = !{!62, !772} | |
| !772 = !DICompositeType(tag: DW_TAG_structure_type, name: "ExitCode", scope: !748, file: !2, size: 8, align: 8, elements: !773, templateParams: !4, identifier: "76748f88d00b8e2a444a278f441007c9") | |
| !773 = !{!774} | |
| !774 = !DIDerivedType(tag: DW_TAG_member, name: "__0", scope: !772, file: !2, baseType: !71, size: 8, align: 8) | |
| !775 = !{!776} | |
| !776 = !DILocalVariable(name: "self", arg: 1, scope: !769, file: !746, line: 1687, type: !772) | |
| !777 = !DILocation(line: 1687, column: 14, scope: !769) | |
| !778 = !DILocation(line: 1688, column: 8, scope: !769) | |
| !779 = !DILocation(line: 1689, column: 5, scope: !769) | |
| !780 = distinct !DISubprogram(name: "main", linkageName: "_ZN10playground4main17h4a4fe2905f844b5dE", scope: !781, file: !19, line: 1, type: !12, scopeLine: 1, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagMainSubprogram, unit: !18, templateParams: !4, retainedNodes: !782) | |
| !781 = !DINamespace(name: "playground", scope: null) | |
| !782 = !{!783, !785, !787, !789, !791} | |
| !783 = !DILocalVariable(name: "iter", scope: !784, file: !19, line: 2, type: !675, align: 4) | |
| !784 = distinct !DILexicalBlock(scope: !780, file: !19, line: 2, column: 4) | |
| !785 = !DILocalVariable(name: "__next", scope: !786, file: !19, line: 2, type: !62, align: 4) | |
| !786 = distinct !DILexicalBlock(scope: !784, file: !19, line: 2, column: 13) | |
| !787 = !DILocalVariable(name: "val", scope: !788, file: !19, line: 2, type: !62, align: 4) | |
| !788 = distinct !DILexicalBlock(scope: !786, file: !19, line: 2, column: 8) | |
| !789 = !DILocalVariable(name: "i", scope: !790, file: !19, line: 2, type: !62, align: 4) | |
| !790 = distinct !DILexicalBlock(scope: !786, file: !19, line: 2, column: 13) | |
| !791 = !DILocalVariable(name: "arg0", scope: !792, file: !19, line: 3, type: !108, align: 8) | |
| !792 = !DILexicalBlockFile(scope: !793, file: !19, discriminator: 0) | |
| !793 = distinct !DILexicalBlock(scope: !790, file: !794, line: 2, column: 28) | |
| !794 = !DIFile(filename: "<::std::macros::println macros>", directory: "/playground") | |
| !795 = !DILocation(line: 2, column: 13, scope: !784) | |
| !796 = !DILocation(line: 2, column: 8, scope: !790) | |
| !797 = !DILocation(line: 2, column: 13, scope: !780) | |
| !798 = !DILocation(line: 2, column: 4, scope: !784) | |
| !799 = !DILocation(line: 2, column: 13, scope: !786) | |
| !800 = !DILocation(line: 2, column: 8, scope: !786) | |
| !801 = !DILocation(line: 5, column: 1, scope: !802) | |
| !802 = !DILexicalBlockFile(scope: !780, file: !19, discriminator: 0) | |
| !803 = !DILocation(line: 2, column: 8, scope: !788) | |
| !804 = !DILocation(line: 3, column: 17, scope: !790) | |
| !805 = !DILocation(line: 3, column: 8, scope: !790) | |
| !806 = !DILocation(line: 3, column: 8, scope: !792) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment