Last active
March 19, 2020 23:00
-
-
Save Amanieu/8b809982906bf291133a72363d3662ee to your computer and use it in GitHub Desktop.
Revisions
-
Amanieu revised this gist
Mar 19, 2020 . 1 changed file with 448 additions and 472 deletions.There are no files selected for viewing
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 charactersOriginal file line number Diff line number Diff line change @@ -1,521 +1,497 @@ ; std::panicking::try ; Function Attrs: nonlazybind uwtable define void @_ZN3std9panicking3try17h2c4df7f3f9c79acfE(%"core::result::Result<proc_macro::Span, alloc::boxed::Box<core::any::Any>>"* noalias nocapture sret dereferenceable(24)) unnamed_addr #1 personality i32 (i32, i32, i64, %"unwind::libunwind::_Unwind_Exception"*, %"unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality !dbg !2657 { start: %1 = alloca %"core::mem::maybe_uninit::MaybeUninit<imp::nightly_works::{{closure}}::{{closure}}>", align 1 %self.dbg.spill.i17 = alloca %"core::mem::manually_drop::ManuallyDrop<imp::nightly_works::{{closure}}::{{closure}}>"*, align 8 call void @llvm.dbg.declare(metadata %"core::mem::manually_drop::ManuallyDrop<imp::nightly_works::{{closure}}::{{closure}}>"** %self.dbg.spill.i17, metadata !2686, metadata !DIExpression()), !dbg !2695 %self.dbg.spill.i = alloca %"core::mem::maybe_uninit::MaybeUninit<imp::nightly_works::{{closure}}::{{closure}}>"*, align 8 call void @llvm.dbg.declare(metadata %"core::mem::maybe_uninit::MaybeUninit<imp::nightly_works::{{closure}}::{{closure}}>"** %self.dbg.spill.i, metadata !2709, metadata !DIExpression()), !dbg !2740 %count.dbg.spill.i = alloca i64, align 8 call void @llvm.dbg.declare(metadata i64* %count.dbg.spill.i, metadata !2741, metadata !DIExpression()), !dbg !2748 %dst.dbg.spill.i = alloca %"imp::nightly_works::{{closure}}::{{closure}}"*, align 8 call void @llvm.dbg.declare(metadata %"imp::nightly_works::{{closure}}::{{closure}}"** %dst.dbg.spill.i, metadata !2747, metadata !DIExpression()), !dbg !2750 %src.dbg.spill.i14 = alloca %"imp::nightly_works::{{closure}}::{{closure}}"*, align 8 call void @llvm.dbg.declare(metadata %"imp::nightly_works::{{closure}}::{{closure}}"** %src.dbg.spill.i14, metadata !2746, metadata !DIExpression()), !dbg !2751 %src.dbg.spill.i = alloca %"imp::nightly_works::{{closure}}::{{closure}}"*, align 8 call void @llvm.dbg.declare(metadata %"imp::nightly_works::{{closure}}::{{closure}}"** %src.dbg.spill.i, metadata !2717, metadata !DIExpression()), !dbg !2752 %tmp.i = alloca %"core::mem::maybe_uninit::MaybeUninit<imp::nightly_works::{{closure}}::{{closure}}>", align 1 call void @llvm.dbg.declare(metadata %"core::mem::maybe_uninit::MaybeUninit<imp::nightly_works::{{closure}}::{{closure}}>"* %tmp.i, metadata !2718, metadata !DIExpression()), !dbg !2753 %slot.dbg.spill.i6 = alloca %"core::mem::manually_drop::ManuallyDrop<imp::nightly_works::{{closure}}::{{closure}}>"*, align 8 call void @llvm.dbg.declare(metadata %"core::mem::manually_drop::ManuallyDrop<imp::nightly_works::{{closure}}::{{closure}}>"** %slot.dbg.spill.i6, metadata !2724, metadata !DIExpression()), !dbg !2754 %_2.i = alloca %"proc_macro::Span", align 4 %2 = alloca %"core::mem::manually_drop::ManuallyDrop<proc_macro::Span>", align 4 %3 = alloca i32, align 4 %value.i = alloca %"proc_macro::Span", align 4 call void @llvm.dbg.declare(metadata %"proc_macro::Span"* %value.i, metadata !2755, metadata !DIExpression()), !dbg !2760 %4 = alloca i32, align 4 %5 = alloca i32, align 4 %data.dbg.spill3.i1 = alloca %"std::panicking::try::Data<imp::nightly_works::{{closure}}::{{closure}}, proc_macro::Span>"*, align 8 call void @llvm.dbg.declare(metadata %"std::panicking::try::Data<imp::nightly_works::{{closure}}::{{closure}}, proc_macro::Span>"** %data.dbg.spill3.i1, metadata !2735, metadata !DIExpression()), !dbg !2762 %data.dbg.spill2.i2 = alloca %"std::panicking::try::Data<imp::nightly_works::{{closure}}::{{closure}}, proc_macro::Span>"*, align 8 call void @llvm.dbg.declare(metadata %"std::panicking::try::Data<imp::nightly_works::{{closure}}::{{closure}}, proc_macro::Span>"** %data.dbg.spill2.i2, metadata !2733, metadata !DIExpression()), !dbg !2763 %f.dbg.spill.i = alloca %"imp::nightly_works::{{closure}}::{{closure}}", align 1 call void @llvm.dbg.declare(metadata %"imp::nightly_works::{{closure}}::{{closure}}"* %f.dbg.spill.i, metadata !2737, metadata !DIExpression()), !dbg !2764 %data.dbg.spill.i3 = alloca i8*, align 8 call void @llvm.dbg.declare(metadata i8** %data.dbg.spill.i3, metadata !2732, metadata !DIExpression()), !dbg !2765 %_9.i = alloca %"proc_macro::Span", align 4 %_8.i = alloca %"core::mem::manually_drop::ManuallyDrop<proc_macro::Span>", align 4 %value.dbg.spill.i = alloca { {}*, [3 x i64]* }, align 8 call void @llvm.dbg.declare(metadata { {}*, [3 x i64]* }* %value.dbg.spill.i, metadata !2766, metadata !DIExpression()), !dbg !2771 %6 = alloca { i8*, i64* }, align 8 %obj.dbg.spill.i = alloca { {}*, [3 x i64]* }, align 8 call void @llvm.dbg.declare(metadata { {}*, [3 x i64]* }* %obj.dbg.spill.i, metadata !2784, metadata !DIExpression()), !dbg !2786 %data.dbg.spill3.i = alloca %"std::panicking::try::Data<imp::nightly_works::{{closure}}::{{closure}}, proc_macro::Span>"*, align 8 call void @llvm.dbg.declare(metadata %"std::panicking::try::Data<imp::nightly_works::{{closure}}::{{closure}}, proc_macro::Span>"** %data.dbg.spill3.i, metadata !2783, metadata !DIExpression()), !dbg !2787 %data.dbg.spill2.i = alloca %"std::panicking::try::Data<imp::nightly_works::{{closure}}::{{closure}}, proc_macro::Span>"*, align 8 call void @llvm.dbg.declare(metadata %"std::panicking::try::Data<imp::nightly_works::{{closure}}::{{closure}}, proc_macro::Span>"** %data.dbg.spill2.i, metadata !2782, metadata !DIExpression()), !dbg !2788 %payload.dbg.spill.i = alloca i8*, align 8 call void @llvm.dbg.declare(metadata i8** %payload.dbg.spill.i, metadata !2781, metadata !DIExpression()), !dbg !2789 %data.dbg.spill.i = alloca i8*, align 8 call void @llvm.dbg.declare(metadata i8** %data.dbg.spill.i, metadata !2780, metadata !DIExpression()), !dbg !2790 %slot.dbg.spill.i = alloca { i8*, i64* }, align 8 call void @llvm.dbg.declare(metadata { i8*, i64* }* %slot.dbg.spill.i, metadata !2791, metadata !DIExpression()), !dbg !2796 %7 = alloca %"proc_macro::Span", align 4 %8 = alloca i32, align 4 %slot.i = alloca %"core::mem::manually_drop::ManuallyDrop<proc_macro::Span>", align 4 call void @llvm.dbg.declare(metadata %"core::mem::manually_drop::ManuallyDrop<proc_macro::Span>"* %slot.i, metadata !2798, metadata !DIExpression()), !dbg !2803 %9 = alloca %"core::mem::manually_drop::ManuallyDrop<imp::nightly_works::{{closure}}::{{closure}}>", align 1 %10 = alloca i32, align 4 %11 = alloca i32, align 4 %data_ptr.dbg.spill = alloca i8*, align 8 %f.dbg.spill = alloca %"imp::nightly_works::{{closure}}::{{closure}}", align 1 %_15 = alloca %"core::mem::manually_drop::ManuallyDrop<proc_macro::Span>", align 4 %_14 = alloca %"proc_macro::Span", align 4 %data = alloca %"std::panicking::try::Data<imp::nightly_works::{{closure}}::{{closure}}, proc_macro::Span>", align 8 call void @llvm.dbg.declare(metadata %"imp::nightly_works::{{closure}}::{{closure}}"* %f.dbg.spill, metadata !2659, metadata !DIExpression()), !dbg !2805 call void @llvm.dbg.declare(metadata %"std::panicking::try::Data<imp::nightly_works::{{closure}}::{{closure}}, proc_macro::Span>"* %data, metadata !2660, metadata !DIExpression()), !dbg !2806 br label %12, !dbg !2807 12: ; preds = %start %13 = phi i64* [ getelementptr inbounds ([24 x i64], [24 x i64]* @__llvm_gcov_ctr.27, i64 0, i64 0), %start ], !dbg !2807 %14 = load i64, i64* %13, !dbg !2807 %15 = add i64 %14, 1, !dbg !2807 store i64 %15, i64* %13, !dbg !2807 %16 = bitcast %"core::mem::manually_drop::ManuallyDrop<imp::nightly_works::{{closure}}::{{closure}}>"* %9 to i8*, !dbg !2807 call void @llvm.lifetime.start.p0i8(i64 0, i8* %16), !dbg !2807 call void @llvm.dbg.declare(metadata !4, metadata !2812, metadata !DIExpression()), !dbg !2807 %17 = bitcast %"core::mem::manually_drop::ManuallyDrop<imp::nightly_works::{{closure}}::{{closure}}>"* %9 to %"imp::nightly_works::{{closure}}::{{closure}}"*, !dbg !2814 %18 = bitcast %"core::mem::manually_drop::ManuallyDrop<imp::nightly_works::{{closure}}::{{closure}}>"* %9 to i8*, !dbg !2815 call void @llvm.lifetime.end.p0i8(i64 0, i8* %18), !dbg !2815 br label %bb1, !dbg !2816 bb1: ; preds = %12 %19 = phi i64* [ getelementptr inbounds ([24 x i64], [24 x i64]* @__llvm_gcov_ctr.27, i64 0, i64 1), %12 ], !dbg !2817 %20 = load i64, i64* %19, !dbg !2817 %21 = add i64 %20, 1, !dbg !2817 store i64 %21, i64* %19, !dbg !2817 %22 = bitcast %"std::panicking::try::Data<imp::nightly_works::{{closure}}::{{closure}}, proc_macro::Span>"* %data to %"core::mem::manually_drop::ManuallyDrop<imp::nightly_works::{{closure}}::{{closure}}>"*, !dbg !2817 %data_ptr = bitcast %"std::panicking::try::Data<imp::nightly_works::{{closure}}::{{closure}}, proc_macro::Span>"* %data to i8*, !dbg !2818 store i8* %data_ptr, i8** %data_ptr.dbg.spill, align 8, !dbg !2818 call void @llvm.dbg.declare(metadata i8** %data_ptr.dbg.spill, metadata !2683, metadata !DIExpression()), !dbg !2819 %23 = bitcast i32* %4 to i8* call void @llvm.lifetime.start.p0i8(i64 4, i8* %23) %24 = bitcast i32* %5 to i8* call void @llvm.lifetime.start.p0i8(i64 4, i8* %24) %25 = bitcast %"std::panicking::try::Data<imp::nightly_works::{{closure}}::{{closure}}, proc_macro::Span>"** %data.dbg.spill3.i1 to i8* call void @llvm.lifetime.start.p0i8(i64 8, i8* %25) %26 = bitcast %"std::panicking::try::Data<imp::nightly_works::{{closure}}::{{closure}}, proc_macro::Span>"** %data.dbg.spill2.i2 to i8* call void @llvm.lifetime.start.p0i8(i64 8, i8* %26) %27 = bitcast %"imp::nightly_works::{{closure}}::{{closure}}"* %f.dbg.spill.i to i8* call void @llvm.lifetime.start.p0i8(i64 0, i8* %27) %28 = bitcast i8** %data.dbg.spill.i3 to i8* call void @llvm.lifetime.start.p0i8(i64 8, i8* %28) %29 = bitcast %"proc_macro::Span"* %_9.i to i8* call void @llvm.lifetime.start.p0i8(i64 4, i8* %29) %30 = bitcast %"core::mem::manually_drop::ManuallyDrop<proc_macro::Span>"* %_8.i to i8* call void @llvm.lifetime.start.p0i8(i64 4, i8* %30) store i8* %data_ptr, i8** %data.dbg.spill.i3, align 8 store %"std::panicking::try::Data<imp::nightly_works::{{closure}}::{{closure}}, proc_macro::Span>"* %data, %"std::panicking::try::Data<imp::nightly_works::{{closure}}::{{closure}}, proc_macro::Span>"** %data.dbg.spill2.i2, align 8, !dbg !2820 store %"std::panicking::try::Data<imp::nightly_works::{{closure}}::{{closure}}, proc_macro::Span>"* %data, %"std::panicking::try::Data<imp::nightly_works::{{closure}}::{{closure}}, proc_macro::Span>"** %data.dbg.spill3.i1, align 8, !dbg !2821 %_7.i = bitcast %"std::panicking::try::Data<imp::nightly_works::{{closure}}::{{closure}}, proc_macro::Span>"* %data to %"core::mem::manually_drop::ManuallyDrop<imp::nightly_works::{{closure}}::{{closure}}>"*, !dbg !2822 %31 = bitcast %"core::mem::manually_drop::ManuallyDrop<imp::nightly_works::{{closure}}::{{closure}}>"** %slot.dbg.spill.i6 to i8* call void @llvm.lifetime.start.p0i8(i64 8, i8* %31) store %"core::mem::manually_drop::ManuallyDrop<imp::nightly_works::{{closure}}::{{closure}}>"* %_7.i, %"core::mem::manually_drop::ManuallyDrop<imp::nightly_works::{{closure}}::{{closure}}>"** %slot.dbg.spill.i6, align 8 %_3.i = bitcast %"core::mem::manually_drop::ManuallyDrop<imp::nightly_works::{{closure}}::{{closure}}>"* %_7.i to %"imp::nightly_works::{{closure}}::{{closure}}"*, !dbg !2823 %32 = bitcast %"imp::nightly_works::{{closure}}::{{closure}}"** %src.dbg.spill.i to i8* call void @llvm.lifetime.start.p0i8(i64 8, i8* %32) %33 = bitcast %"core::mem::maybe_uninit::MaybeUninit<imp::nightly_works::{{closure}}::{{closure}}>"* %tmp.i to i8* call void @llvm.lifetime.start.p0i8(i64 0, i8* %33) store %"imp::nightly_works::{{closure}}::{{closure}}"* %_3.i, %"imp::nightly_works::{{closure}}::{{closure}}"** %src.dbg.spill.i, align 8 %34 = bitcast %"core::mem::maybe_uninit::MaybeUninit<imp::nightly_works::{{closure}}::{{closure}}>"* %1 to i8*, !dbg !2824 call void @llvm.lifetime.start.p0i8(i64 0, i8* %34), !dbg !2824 %35 = bitcast %"core::mem::maybe_uninit::MaybeUninit<imp::nightly_works::{{closure}}::{{closure}}>"* %1 to {}*, !dbg !2824 %36 = bitcast %"core::mem::maybe_uninit::MaybeUninit<imp::nightly_works::{{closure}}::{{closure}}>"* %1 to i8*, !dbg !2829 call void @llvm.lifetime.end.p0i8(i64 0, i8* %36), !dbg !2829 br label %.noexc8, !dbg !2829 .noexc8: ; preds = %bb1 %37 = phi i64* [ getelementptr inbounds ([24 x i64], [24 x i64]* @__llvm_gcov_ctr.27, i64 0, i64 2), %bb1 ] %38 = load i64, i64* %37 %39 = add i64 %38, 1 store i64 %39, i64* %37 %40 = bitcast %"core::mem::maybe_uninit::MaybeUninit<imp::nightly_works::{{closure}}::{{closure}}>"** %self.dbg.spill.i to i8* call void @llvm.lifetime.start.p0i8(i64 8, i8* %40) store %"core::mem::maybe_uninit::MaybeUninit<imp::nightly_works::{{closure}}::{{closure}}>"* %tmp.i, %"core::mem::maybe_uninit::MaybeUninit<imp::nightly_works::{{closure}}::{{closure}}>"** %self.dbg.spill.i, align 8 %_4.i = bitcast %"core::mem::maybe_uninit::MaybeUninit<imp::nightly_works::{{closure}}::{{closure}}>"* %tmp.i to %"core::mem::manually_drop::ManuallyDrop<imp::nightly_works::{{closure}}::{{closure}}>"*, !dbg !2830 %41 = bitcast %"core::mem::manually_drop::ManuallyDrop<imp::nightly_works::{{closure}}::{{closure}}>"** %self.dbg.spill.i17 to i8* call void @llvm.lifetime.start.p0i8(i64 8, i8* %41) store %"core::mem::manually_drop::ManuallyDrop<imp::nightly_works::{{closure}}::{{closure}}>"* %_4.i, %"core::mem::manually_drop::ManuallyDrop<imp::nightly_works::{{closure}}::{{closure}}>"** %self.dbg.spill.i17, align 8 %_3.i18 = bitcast %"core::mem::manually_drop::ManuallyDrop<imp::nightly_works::{{closure}}::{{closure}}>"* %_4.i to %"imp::nightly_works::{{closure}}::{{closure}}"*, !dbg !2831 %42 = bitcast %"core::mem::manually_drop::ManuallyDrop<imp::nightly_works::{{closure}}::{{closure}}>"** %self.dbg.spill.i17 to i8*, !dbg !2832 call void @llvm.lifetime.end.p0i8(i64 8, i8* %42), !dbg !2832 br label %"_ZN4core3mem12maybe_uninit20MaybeUninit$LT$T$GT$10as_mut_ptr17hf722aeb96a111a56E.exit", !dbg !2832 "_ZN4core3mem12maybe_uninit20MaybeUninit$LT$T$GT$10as_mut_ptr17hf722aeb96a111a56E.exit": ; preds = %.noexc8 %43 = phi i64* [ getelementptr inbounds ([24 x i64], [24 x i64]* @__llvm_gcov_ctr.27, i64 0, i64 3), %.noexc8 ], !dbg !2833 %44 = load i64, i64* %43, !dbg !2833 %45 = add i64 %44, 1, !dbg !2833 store i64 %45, i64* %43, !dbg !2833 %46 = bitcast %"core::mem::maybe_uninit::MaybeUninit<imp::nightly_works::{{closure}}::{{closure}}>"** %self.dbg.spill.i to i8*, !dbg !2833 call void @llvm.lifetime.end.p0i8(i64 8, i8* %46), !dbg !2833 br label %_5.i.noexc, !dbg !2833 _5.i.noexc: ; preds = %"_ZN4core3mem12maybe_uninit20MaybeUninit$LT$T$GT$10as_mut_ptr17hf722aeb96a111a56E.exit" %47 = phi i64* [ getelementptr inbounds ([24 x i64], [24 x i64]* @__llvm_gcov_ctr.27, i64 0, i64 4), %"_ZN4core3mem12maybe_uninit20MaybeUninit$LT$T$GT$10as_mut_ptr17hf722aeb96a111a56E.exit" ] %48 = load i64, i64* %47 %49 = add i64 %48, 1 store i64 %49, i64* %47 %50 = bitcast i64* %count.dbg.spill.i to i8* call void @llvm.lifetime.start.p0i8(i64 8, i8* %50) %51 = bitcast %"imp::nightly_works::{{closure}}::{{closure}}"** %dst.dbg.spill.i to i8* call void @llvm.lifetime.start.p0i8(i64 8, i8* %51) %52 = bitcast %"imp::nightly_works::{{closure}}::{{closure}}"** %src.dbg.spill.i14 to i8* call void @llvm.lifetime.start.p0i8(i64 8, i8* %52) store %"imp::nightly_works::{{closure}}::{{closure}}"* %_3.i, %"imp::nightly_works::{{closure}}::{{closure}}"** %src.dbg.spill.i14, align 8 store %"imp::nightly_works::{{closure}}::{{closure}}"* %_3.i18, %"imp::nightly_works::{{closure}}::{{closure}}"** %dst.dbg.spill.i, align 8 store i64 1, i64* %count.dbg.spill.i, align 8 %53 = bitcast %"imp::nightly_works::{{closure}}::{{closure}}"* %_3.i18 to i8*, !dbg !2834 %54 = bitcast %"imp::nightly_works::{{closure}}::{{closure}}"* %_3.i to i8*, !dbg !2834 call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 1 %53, i8* align 1 %54, i64 0, i1 false), !dbg !2834 %55 = bitcast i64* %count.dbg.spill.i to i8*, !dbg !2835 call void @llvm.lifetime.end.p0i8(i64 8, i8* %55), !dbg !2835 %56 = bitcast %"imp::nightly_works::{{closure}}::{{closure}}"** %dst.dbg.spill.i to i8*, !dbg !2835 call void @llvm.lifetime.end.p0i8(i64 8, i8* %56), !dbg !2835 %57 = bitcast %"imp::nightly_works::{{closure}}::{{closure}}"** %src.dbg.spill.i14 to i8*, !dbg !2835 call void @llvm.lifetime.end.p0i8(i64 8, i8* %57), !dbg !2835 br label %.noexc10, !dbg !2835 .noexc10: ; preds = %_5.i.noexc %58 = phi i64* [ getelementptr inbounds ([24 x i64], [24 x i64]* @__llvm_gcov_ctr.27, i64 0, i64 5), %_5.i.noexc ], !dbg !2836 %59 = load i64, i64* %58, !dbg !2836 %60 = add i64 %59, 1, !dbg !2836 store i64 %60, i64* %58, !dbg !2836 call void @llvm.dbg.declare(metadata !4, metadata !2841, metadata !DIExpression()), !dbg !2836 call void @llvm.dbg.declare(metadata !4, metadata !2843, metadata !DIExpression()), !dbg !2848 br label %"_ZN4core3mem12maybe_uninit20MaybeUninit$LT$T$GT$11assume_init17h2ab98d4d58a1c1e5E.exit", !dbg !2850 "_ZN4core3mem12maybe_uninit20MaybeUninit$LT$T$GT$11assume_init17h2ab98d4d58a1c1e5E.exit": ; preds = %.noexc10 %61 = phi i64* [ getelementptr inbounds ([24 x i64], [24 x i64]* @__llvm_gcov_ctr.27, i64 0, i64 6), %.noexc10 ], !dbg !2851 %62 = load i64, i64* %61, !dbg !2851 %63 = add i64 %62, 1, !dbg !2851 store i64 %63, i64* %61, !dbg !2851 br label %_ZN4core3ptr4read17h90aeca10dfe636a6E.exit, !dbg !2851 _ZN4core3ptr4read17h90aeca10dfe636a6E.exit: ; preds = %"_ZN4core3mem12maybe_uninit20MaybeUninit$LT$T$GT$11assume_init17h2ab98d4d58a1c1e5E.exit" %64 = phi i64* [ getelementptr inbounds ([24 x i64], [24 x i64]* @__llvm_gcov_ctr.27, i64 0, i64 7), %"_ZN4core3mem12maybe_uninit20MaybeUninit$LT$T$GT$11assume_init17h2ab98d4d58a1c1e5E.exit" ], !dbg !2852 %65 = load i64, i64* %64, !dbg !2852 %66 = add i64 %65, 1, !dbg !2852 store i64 %66, i64* %64, !dbg !2852 %67 = bitcast %"imp::nightly_works::{{closure}}::{{closure}}"** %src.dbg.spill.i to i8*, !dbg !2852 call void @llvm.lifetime.end.p0i8(i64 8, i8* %67), !dbg !2852 %68 = bitcast %"core::mem::maybe_uninit::MaybeUninit<imp::nightly_works::{{closure}}::{{closure}}>"* %tmp.i to i8*, !dbg !2852 call void @llvm.lifetime.end.p0i8(i64 0, i8* %68), !dbg !2852 br label %"_ZN4core3mem13manually_drop21ManuallyDrop$LT$T$GT$4take17hcb3d321b87fdb138E.exit", !dbg !2852 "_ZN4core3mem13manually_drop21ManuallyDrop$LT$T$GT$4take17hcb3d321b87fdb138E.exit": ; preds = %_ZN4core3ptr4read17h90aeca10dfe636a6E.exit %69 = phi i64* [ getelementptr inbounds ([24 x i64], [24 x i64]* @__llvm_gcov_ctr.27, i64 0, i64 8), %_ZN4core3ptr4read17h90aeca10dfe636a6E.exit ], !dbg !2853 %70 = load i64, i64* %69, !dbg !2853 %71 = add i64 %70, 1, !dbg !2853 store i64 %71, i64* %69, !dbg !2853 %72 = bitcast %"core::mem::manually_drop::ManuallyDrop<imp::nightly_works::{{closure}}::{{closure}}>"** %slot.dbg.spill.i6 to i8*, !dbg !2853 call void @llvm.lifetime.end.p0i8(i64 8, i8* %72), !dbg !2853 br label %.noexc, !dbg !2853 .noexc: ; preds = %"_ZN4core3mem13manually_drop21ManuallyDrop$LT$T$GT$4take17hcb3d321b87fdb138E.exit" %73 = phi i64* [ getelementptr inbounds ([24 x i64], [24 x i64]* @__llvm_gcov_ctr.27, i64 0, i64 9), %"_ZN4core3mem13manually_drop21ManuallyDrop$LT$T$GT$4take17hcb3d321b87fdb138E.exit" ], !dbg !2854 %74 = load i64, i64* %73, !dbg !2854 %75 = add i64 %74, 1, !dbg !2854 store i64 %75, i64* %73, !dbg !2854 ; invoke proc_macro2::imp::nightly_works::{{closure}}::{{closure}} %76 = invoke i32 @"_ZN11proc_macro23imp13nightly_works28_$u7b$$u7b$closure$u7d$$u7d$28_$u7b$$u7b$closure$u7d$$u7d$17h918411ad0b79ae9fE"() to label %.noexc4 unwind label %catch.i, !dbg !2854 .noexc4: ; preds = %.noexc %77 = phi i64* [ getelementptr inbounds ([24 x i64], [24 x i64]* @__llvm_gcov_ctr.27, i64 0, i64 10), %.noexc ], !dbg !2854 %78 = load i64, i64* %77, !dbg !2854 %79 = add i64 %78, 1, !dbg !2854 store i64 %79, i64* %77, !dbg !2854 store i32 %76, i32* %5, align 4, !dbg !2854 %80 = bitcast %"proc_macro::Span"* %_9.i to i8*, !dbg !2854 %81 = bitcast i32* %5 to i8*, !dbg !2854 call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 4 %80, i8* align 4 %81, i64 4, i1 false), !dbg !2854 %82 = bitcast %"proc_macro::Span"* %_9.i to i32*, !dbg !2855 %83 = load i32, i32* %82, align 4, !dbg !2855 %84 = bitcast %"proc_macro::Span"* %_2.i to i8* call void @llvm.lifetime.start.p0i8(i64 4, i8* %84) %85 = bitcast %"core::mem::manually_drop::ManuallyDrop<proc_macro::Span>"* %2 to i8* call void @llvm.lifetime.start.p0i8(i64 4, i8* %85) %86 = bitcast i32* %3 to i8* call void @llvm.lifetime.start.p0i8(i64 4, i8* %86) %87 = bitcast %"proc_macro::Span"* %value.i to i8* call void @llvm.lifetime.start.p0i8(i64 4, i8* %87) store i32 %83, i32* %3, align 4 %88 = bitcast %"proc_macro::Span"* %value.i to i8* %89 = bitcast i32* %3 to i8* call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 4 %88, i8* align 4 %89, i64 4, i1 false) %90 = bitcast %"proc_macro::Span"* %_2.i to i8*, !dbg !2856 %91 = bitcast %"proc_macro::Span"* %value.i to i8*, !dbg !2856 call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 4 %90, i8* align 4 %91, i64 4, i1 false), !dbg !2856 %92 = bitcast %"core::mem::manually_drop::ManuallyDrop<proc_macro::Span>"* %2 to %"proc_macro::Span"*, !dbg !2857 %93 = bitcast %"proc_macro::Span"* %92 to i8*, !dbg !2857 %94 = bitcast %"proc_macro::Span"* %_2.i to i8*, !dbg !2857 call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 4 %93, i8* align 4 %94, i64 4, i1 false), !dbg !2857 %95 = bitcast %"core::mem::manually_drop::ManuallyDrop<proc_macro::Span>"* %2 to i32*, !dbg !2858 %96 = load i32, i32* %95, align 4, !dbg !2858 %97 = bitcast %"proc_macro::Span"* %_2.i to i8*, !dbg !2858 call void @llvm.lifetime.end.p0i8(i64 4, i8* %97), !dbg !2858 %98 = bitcast %"core::mem::manually_drop::ManuallyDrop<proc_macro::Span>"* %2 to i8*, !dbg !2858 call void @llvm.lifetime.end.p0i8(i64 4, i8* %98), !dbg !2858 %99 = bitcast i32* %3 to i8*, !dbg !2858 call void @llvm.lifetime.end.p0i8(i64 4, i8* %99), !dbg !2858 %100 = bitcast %"proc_macro::Span"* %value.i to i8*, !dbg !2858 call void @llvm.lifetime.end.p0i8(i64 4, i8* %100), !dbg !2858 br label %_ZN3std9panicking3try7do_call17h16e99b926c5155e9E.exit, !dbg !2858 _ZN3std9panicking3try7do_call17h16e99b926c5155e9E.exit: ; preds = %.noexc4 %101 = phi i64* [ getelementptr inbounds ([24 x i64], [24 x i64]* @__llvm_gcov_ctr.27, i64 0, i64 12), %.noexc4 ], !dbg !2855 %102 = load i64, i64* %101, !dbg !2855 %103 = add i64 %102, 1, !dbg !2855 store i64 %103, i64* %101, !dbg !2855 store i32 %96, i32* %4, align 4, !dbg !2855 %104 = bitcast %"core::mem::manually_drop::ManuallyDrop<proc_macro::Span>"* %_8.i to i8*, !dbg !2855 %105 = bitcast i32* %4 to i8*, !dbg !2855 call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 4 %104, i8* align 4 %105, i64 4, i1 false), !dbg !2855 %106 = bitcast %"std::panicking::try::Data<imp::nightly_works::{{closure}}::{{closure}}, proc_macro::Span>"* %data to %"core::mem::manually_drop::ManuallyDrop<proc_macro::Span>"*, !dbg !2859 %107 = bitcast %"core::mem::manually_drop::ManuallyDrop<proc_macro::Span>"* %106 to i8*, !dbg !2859 %108 = bitcast %"core::mem::manually_drop::ManuallyDrop<proc_macro::Span>"* %_8.i to i8*, !dbg !2859 call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 8 %107, i8* align 4 %108, i64 4, i1 false), !dbg !2859 %109 = bitcast i32* %4 to i8*, !dbg !2860 call void @llvm.lifetime.end.p0i8(i64 4, i8* %109), !dbg !2860 %110 = bitcast i32* %5 to i8*, !dbg !2860 call void @llvm.lifetime.end.p0i8(i64 4, i8* %110), !dbg !2860 %111 = bitcast %"std::panicking::try::Data<imp::nightly_works::{{closure}}::{{closure}}, proc_macro::Span>"** %data.dbg.spill3.i1 to i8*, !dbg !2860 call void @llvm.lifetime.end.p0i8(i64 8, i8* %111), !dbg !2860 %112 = bitcast %"std::panicking::try::Data<imp::nightly_works::{{closure}}::{{closure}}, proc_macro::Span>"** %data.dbg.spill2.i2 to i8*, !dbg !2860 call void @llvm.lifetime.end.p0i8(i64 8, i8* %112), !dbg !2860 %113 = bitcast %"imp::nightly_works::{{closure}}::{{closure}}"* %f.dbg.spill.i to i8*, !dbg !2860 call void @llvm.lifetime.end.p0i8(i64 0, i8* %113), !dbg !2860 %114 = bitcast i8** %data.dbg.spill.i3 to i8*, !dbg !2860 call void @llvm.lifetime.end.p0i8(i64 8, i8* %114), !dbg !2860 %115 = bitcast %"proc_macro::Span"* %_9.i to i8*, !dbg !2860 call void @llvm.lifetime.end.p0i8(i64 4, i8* %115), !dbg !2860 %116 = bitcast %"core::mem::manually_drop::ManuallyDrop<proc_macro::Span>"* %_8.i to i8*, !dbg !2860 call void @llvm.lifetime.end.p0i8(i64 4, i8* %116), !dbg !2860 br label %then.i, !dbg !2860 then.i: ; preds = %_ZN3std9panicking3try7do_call17h16e99b926c5155e9E.exit %117 = phi i64* [ getelementptr inbounds ([24 x i64], [24 x i64]* @__llvm_gcov_ctr.27, i64 0, i64 13), %_ZN3std9panicking3try7do_call17h16e99b926c5155e9E.exit ], !dbg !2861 %118 = load i64, i64* %117, !dbg !2861 %119 = add i64 %118, 1, !dbg !2861 store i64 %119, i64* %117, !dbg !2861 br label %__rust_try.exit, !dbg !2861 catch.i: ; preds = %.noexc %120 = phi i64* [ getelementptr inbounds ([24 x i64], [24 x i64]* @__llvm_gcov_ctr.27, i64 0, i64 11), %.noexc ], !dbg !2861 %121 = landingpad { i8*, i32 } catch i8* null, !dbg !2861 %122 = load i64, i64* %120, !dbg !2861 %123 = add i64 %122, 1, !dbg !2861 store i64 %123, i64* %120, !dbg !2861 %124 = extractvalue { i8*, i32 } %121, 0, !dbg !2861 %125 = bitcast { {}*, [3 x i64]* }* %obj.dbg.spill.i to i8* call void @llvm.lifetime.start.p0i8(i64 16, i8* %125) %126 = bitcast %"std::panicking::try::Data<imp::nightly_works::{{closure}}::{{closure}}, proc_macro::Span>"** %data.dbg.spill3.i to i8* call void @llvm.lifetime.start.p0i8(i64 8, i8* %126) %127 = bitcast %"std::panicking::try::Data<imp::nightly_works::{{closure}}::{{closure}}, proc_macro::Span>"** %data.dbg.spill2.i to i8* call void @llvm.lifetime.start.p0i8(i64 8, i8* %127) %128 = bitcast i8** %payload.dbg.spill.i to i8* call void @llvm.lifetime.start.p0i8(i64 8, i8* %128) %129 = bitcast i8** %data.dbg.spill.i to i8* call void @llvm.lifetime.start.p0i8(i64 8, i8* %129) store i8* %data_ptr, i8** %data.dbg.spill.i, align 8 store i8* %124, i8** %payload.dbg.spill.i, align 8 store %"std::panicking::try::Data<imp::nightly_works::{{closure}}::{{closure}}, proc_macro::Span>"* %data, %"std::panicking::try::Data<imp::nightly_works::{{closure}}::{{closure}}, proc_macro::Span>"** %data.dbg.spill2.i, align 8, !dbg !2862 store %"std::panicking::try::Data<imp::nightly_works::{{closure}}::{{closure}}, proc_macro::Span>"* %data, %"std::panicking::try::Data<imp::nightly_works::{{closure}}::{{closure}}, proc_macro::Span>"** %data.dbg.spill3.i, align 8, !dbg !2863 ; call std::panicking::try::cleanup %130 = call { {}*, [3 x i64]* } @_ZN3std9panicking3try7cleanup17h97268322f249355eE(i8* %124), !dbg !2864 %obj.0.i = extractvalue { {}*, [3 x i64]* } %130, 0, !dbg !2864 %obj.1.i = extractvalue { {}*, [3 x i64]* } %130, 1, !dbg !2864 %131 = getelementptr inbounds { {}*, [3 x i64]* }, { {}*, [3 x i64]* }* %obj.dbg.spill.i, i32 0, i32 0, !dbg !2864 store {}* %obj.0.i, {}** %131, align 8, !dbg !2864 %132 = getelementptr inbounds { {}*, [3 x i64]* }, { {}*, [3 x i64]* }* %obj.dbg.spill.i, i32 0, i32 1, !dbg !2864 store [3 x i64]* %obj.1.i, [3 x i64]** %132, align 8, !dbg !2864 %133 = bitcast { {}*, [3 x i64]* }* %value.dbg.spill.i to i8* call void @llvm.lifetime.start.p0i8(i64 16, i8* %133) %134 = bitcast { i8*, i64* }* %6 to i8* call void @llvm.lifetime.start.p0i8(i64 16, i8* %134) %135 = getelementptr inbounds { {}*, [3 x i64]* }, { {}*, [3 x i64]* }* %value.dbg.spill.i, i32 0, i32 0 store {}* %obj.0.i, {}** %135, align 8, !noalias !2865 %136 = getelementptr inbounds { {}*, [3 x i64]* }, { {}*, [3 x i64]* }* %value.dbg.spill.i, i32 0, i32 1 store [3 x i64]* %obj.1.i, [3 x i64]** %136, align 8, !noalias !2865 %137 = bitcast { i8*, i64* }* %6 to { {}*, [3 x i64]* }*, !dbg !2869 %138 = getelementptr inbounds { {}*, [3 x i64]* }, { {}*, [3 x i64]* }* %137, i32 0, i32 0, !dbg !2869 store {}* %obj.0.i, {}** %138, align 8, !dbg !2869, !noalias !2865 %139 = getelementptr inbounds { {}*, [3 x i64]* }, { {}*, [3 x i64]* }* %137, i32 0, i32 1, !dbg !2869 store [3 x i64]* %obj.1.i, [3 x i64]** %139, align 8, !dbg !2869, !noalias !2865 %140 = getelementptr inbounds { i8*, i64* }, { i8*, i64* }* %6, i32 0, i32 0, !dbg !2870 %141 = load i8*, i8** %140, align 8, !dbg !2870, !noalias !2865, !nonnull !4 %142 = getelementptr inbounds { i8*, i64* }, { i8*, i64* }* %6, i32 0, i32 1, !dbg !2870 %143 = load i64*, i64** %142, align 8, !dbg !2870, !noalias !2865, !nonnull !4 %144 = insertvalue { i8*, i64* } undef, i8* %141, 0, !dbg !2870 %145 = insertvalue { i8*, i64* } %144, i64* %143, 1, !dbg !2870 %146 = bitcast { {}*, [3 x i64]* }* %value.dbg.spill.i to i8*, !dbg !2870 call void @llvm.lifetime.end.p0i8(i64 16, i8* %146), !dbg !2870 %147 = bitcast { i8*, i64* }* %6 to i8*, !dbg !2870 call void @llvm.lifetime.end.p0i8(i64 16, i8* %147), !dbg !2870 %_8.0.i = extractvalue { i8*, i64* } %145, 0, !dbg !2871 %_8.1.i = extractvalue { i8*, i64* } %145, 1, !dbg !2871 %148 = bitcast %"std::panicking::try::Data<imp::nightly_works::{{closure}}::{{closure}}, proc_macro::Span>"* %data to { i8*, i64* }*, !dbg !2872 %149 = getelementptr inbounds { i8*, i64* }, { i8*, i64* }* %148, i32 0, i32 0, !dbg !2872 store i8* %_8.0.i, i8** %149, align 8, !dbg !2872 %150 = getelementptr inbounds { i8*, i64* }, { i8*, i64* }* %148, i32 0, i32 1, !dbg !2872 store i64* %_8.1.i, i64** %150, align 8, !dbg !2872 %151 = bitcast { {}*, [3 x i64]* }* %obj.dbg.spill.i to i8*, !dbg !2873 call void @llvm.lifetime.end.p0i8(i64 16, i8* %151), !dbg !2873 %152 = bitcast %"std::panicking::try::Data<imp::nightly_works::{{closure}}::{{closure}}, proc_macro::Span>"** %data.dbg.spill3.i to i8*, !dbg !2873 call void @llvm.lifetime.end.p0i8(i64 8, i8* %152), !dbg !2873 %153 = bitcast %"std::panicking::try::Data<imp::nightly_works::{{closure}}::{{closure}}, proc_macro::Span>"** %data.dbg.spill2.i to i8*, !dbg !2873 call void @llvm.lifetime.end.p0i8(i64 8, i8* %153), !dbg !2873 %154 = bitcast i8** %payload.dbg.spill.i to i8*, !dbg !2873 call void @llvm.lifetime.end.p0i8(i64 8, i8* %154), !dbg !2873 %155 = bitcast i8** %data.dbg.spill.i to i8*, !dbg !2873 call void @llvm.lifetime.end.p0i8(i64 8, i8* %155), !dbg !2873 br label %__rust_try.exit, !dbg !2861 __rust_try.exit: ; preds = %catch.i, %then.i %156 = phi i64* [ getelementptr inbounds ([24 x i64], [24 x i64]* @__llvm_gcov_ctr.27, i64 0, i64 15), %catch.i ], [ getelementptr inbounds ([24 x i64], [24 x i64]* @__llvm_gcov_ctr.27, i64 0, i64 14), %then.i ] %157 = phi i32 [ 0, %then.i ], [ 1, %catch.i ] %158 = load i64, i64* %156, !dbg !2861 %159 = add i64 %158, 1, !dbg !2861 store i64 %159, i64* %156, !dbg !2861 store i32 %157, i32* %11, align 4, !dbg !2861 %_10 = load i32, i32* %11, align 4, !dbg !2861 br label %bb2, !dbg !2861 bb2: ; preds = %__rust_try.exit %160 = phi i64* [ getelementptr inbounds ([24 x i64], [24 x i64]* @__llvm_gcov_ctr.27, i64 0, i64 16), %__rust_try.exit ], !dbg !2861 %161 = load i64, i64* %160, !dbg !2861 %162 = add i64 %161, 1, !dbg !2861 store i64 %162, i64* %160, !dbg !2861 %_9 = icmp eq i32 %_10, 0, !dbg !2861 br i1 %_9, label %bb4, label %bb3, !dbg !2874 bb3: ; preds = %bb2 %163 = phi i64* [ getelementptr inbounds ([24 x i64], [24 x i64]* @__llvm_gcov_ctr.27, i64 0, i64 18), %bb2 ], !dbg !2875 %164 = load i64, i64* %163, !dbg !2875 %165 = add i64 %164, 1, !dbg !2875 store i64 %165, i64* %163, !dbg !2875 %166 = bitcast %"std::panicking::try::Data<imp::nightly_works::{{closure}}::{{closure}}, proc_macro::Span>"* %data to { i8*, i64* }*, !dbg !2875 %167 = getelementptr inbounds { i8*, i64* }, { i8*, i64* }* %166, i32 0, i32 0, !dbg !2875 %_18.0 = load i8*, i8** %167, align 8, !dbg !2875, !nonnull !4 %168 = getelementptr inbounds { i8*, i64* }, { i8*, i64* }* %166, i32 0, i32 1, !dbg !2875 %_18.1 = load i64*, i64** %168, align 8, !dbg !2875, !nonnull !4 %169 = bitcast { i8*, i64* }* %slot.dbg.spill.i to i8* call void @llvm.lifetime.start.p0i8(i64 16, i8* %169) %170 = getelementptr inbounds { i8*, i64* }, { i8*, i64* }* %slot.dbg.spill.i, i32 0, i32 0 store i8* %_18.0, i8** %170, align 8, !noalias !2876 %171 = getelementptr inbounds { i8*, i64* }, { i8*, i64* }* %slot.dbg.spill.i, i32 0, i32 1 store i64* %_18.1, i64** %171, align 8, !noalias !2876 %172 = bitcast i8* %_18.0 to {}*, !dbg !2880 %173 = bitcast i64* %_18.1 to [3 x i64]*, !dbg !2880 %174 = insertvalue { {}*, [3 x i64]* } undef, {}* %172, 0, !dbg !2881 %175 = insertvalue { {}*, [3 x i64]* } %174, [3 x i64]* %173, 1, !dbg !2881 %176 = bitcast { i8*, i64* }* %slot.dbg.spill.i to i8*, !dbg !2881 call void @llvm.lifetime.end.p0i8(i64 16, i8* %176), !dbg !2881 %_17.0 = extractvalue { {}*, [3 x i64]* } %175, 0, !dbg !2882 %_17.1 = extractvalue { {}*, [3 x i64]* } %175, 1, !dbg !2882 br label %bb6, !dbg !2882 bb4: ; preds = %bb2 %177 = phi i64* [ getelementptr inbounds ([24 x i64], [24 x i64]* @__llvm_gcov_ctr.27, i64 0, i64 17), %bb2 ], !dbg !2883 %178 = load i64, i64* %177, !dbg !2883 %179 = add i64 %178, 1, !dbg !2883 store i64 %179, i64* %177, !dbg !2883 %180 = bitcast %"std::panicking::try::Data<imp::nightly_works::{{closure}}::{{closure}}, proc_macro::Span>"* %data to %"core::mem::manually_drop::ManuallyDrop<proc_macro::Span>"*, !dbg !2883 %181 = bitcast %"core::mem::manually_drop::ManuallyDrop<proc_macro::Span>"* %_15 to i8*, !dbg !2883 %182 = bitcast %"core::mem::manually_drop::ManuallyDrop<proc_macro::Span>"* %180 to i8*, !dbg !2883 call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 4 %181, i8* align 8 %182, i64 4, i1 false), !dbg !2883 %183 = bitcast %"core::mem::manually_drop::ManuallyDrop<proc_macro::Span>"* %_15 to i32*, !dbg !2884 %184 = load i32, i32* %183, align 4, !dbg !2884 %185 = bitcast %"proc_macro::Span"* %7 to i8* call void @llvm.lifetime.start.p0i8(i64 4, i8* %185) %186 = bitcast i32* %8 to i8* call void @llvm.lifetime.start.p0i8(i64 4, i8* %186) %187 = bitcast %"core::mem::manually_drop::ManuallyDrop<proc_macro::Span>"* %slot.i to i8* call void @llvm.lifetime.start.p0i8(i64 4, i8* %187) store i32 %184, i32* %8, align 4 %188 = bitcast %"core::mem::manually_drop::ManuallyDrop<proc_macro::Span>"* %slot.i to i8* %189 = bitcast i32* %8 to i8* call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 4 %188, i8* align 4 %189, i64 4, i1 false) %190 = bitcast %"core::mem::manually_drop::ManuallyDrop<proc_macro::Span>"* %slot.i to %"proc_macro::Span"*, !dbg !2885 %191 = bitcast %"proc_macro::Span"* %7 to i8*, !dbg !2885 %192 = bitcast %"proc_macro::Span"* %190 to i8*, !dbg !2885 call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 4 %191, i8* align 4 %192, i64 4, i1 false), !dbg !2885 %193 = bitcast %"proc_macro::Span"* %7 to i32*, !dbg !2886 %194 = load i32, i32* %193, align 4, !dbg !2886 %195 = bitcast %"proc_macro::Span"* %7 to i8*, !dbg !2886 call void @llvm.lifetime.end.p0i8(i64 4, i8* %195), !dbg !2886 %196 = bitcast i32* %8 to i8*, !dbg !2886 call void @llvm.lifetime.end.p0i8(i64 4, i8* %196), !dbg !2886 %197 = bitcast %"core::mem::manually_drop::ManuallyDrop<proc_macro::Span>"* %slot.i to i8*, !dbg !2886 call void @llvm.lifetime.end.p0i8(i64 4, i8* %197), !dbg !2886 store i32 %194, i32* %10, align 4, !dbg !2884 %198 = bitcast %"proc_macro::Span"* %_14 to i8*, !dbg !2884 %199 = bitcast i32* %10 to i8*, !dbg !2884 call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 4 %198, i8* align 4 %199, i64 4, i1 false), !dbg !2884 br label %bb5, !dbg !2884 bb5: ; preds = %bb4 %200 = phi i64* [ getelementptr inbounds ([24 x i64], [24 x i64]* @__llvm_gcov_ctr.27, i64 0, i64 20), %bb4 ], !dbg !2887 %201 = load i64, i64* %200, !dbg !2887 %202 = add i64 %201, 1, !dbg !2887 store i64 %202, i64* %200, !dbg !2887 %203 = bitcast %"core::result::Result<proc_macro::Span, alloc::boxed::Box<core::any::Any>>"* %0 to %"core::result::Result<proc_macro::Span, alloc::boxed::Box<core::any::Any>>::Ok"*, !dbg !2887 %204 = getelementptr inbounds %"core::result::Result<proc_macro::Span, alloc::boxed::Box<core::any::Any>>::Ok", %"core::result::Result<proc_macro::Span, alloc::boxed::Box<core::any::Any>>::Ok"* %203, i32 0, i32 1, !dbg !2887 %205 = bitcast %"proc_macro::Span"* %204 to i8*, !dbg !2887 %206 = bitcast %"proc_macro::Span"* %_14 to i8*, !dbg !2887 call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 4 %205, i8* align 4 %206, i64 4, i1 false), !dbg !2887 %207 = bitcast %"core::result::Result<proc_macro::Span, alloc::boxed::Box<core::any::Any>>"* %0 to i32*, !dbg !2887 store i32 0, i32* %207, align 8, !dbg !2887 br label %bb7, !dbg !2874 bb6: ; preds = %bb3 %208 = phi i64* [ getelementptr inbounds ([24 x i64], [24 x i64]* @__llvm_gcov_ctr.27, i64 0, i64 19), %bb3 ], !dbg !2888 %209 = load i64, i64* %208, !dbg !2888 %210 = add i64 %209, 1, !dbg !2888 store i64 %210, i64* %208, !dbg !2888 %211 = bitcast %"core::result::Result<proc_macro::Span, alloc::boxed::Box<core::any::Any>>"* %0 to %"core::result::Result<proc_macro::Span, alloc::boxed::Box<core::any::Any>>::Err"*, !dbg !2888 %212 = getelementptr inbounds %"core::result::Result<proc_macro::Span, alloc::boxed::Box<core::any::Any>>::Err", %"core::result::Result<proc_macro::Span, alloc::boxed::Box<core::any::Any>>::Err"* %211, i32 0, i32 1, !dbg !2888 %213 = getelementptr inbounds { {}*, [3 x i64]* }, { {}*, [3 x i64]* }* %212, i32 0, i32 0, !dbg !2888 store {}* %_17.0, {}** %213, align 8, !dbg !2888 %214 = getelementptr inbounds { {}*, [3 x i64]* }, { {}*, [3 x i64]* }* %212, i32 0, i32 1, !dbg !2888 store [3 x i64]* %_17.1, [3 x i64]** %214, align 8, !dbg !2888 %215 = bitcast %"core::result::Result<proc_macro::Span, alloc::boxed::Box<core::any::Any>>"* %0 to i32*, !dbg !2888 store i32 1, i32* %215, align 8, !dbg !2888 br label %bb7, !dbg !2874 bb7: ; preds = %bb6, %bb5 %216 = phi i64* [ getelementptr inbounds ([24 x i64], [24 x i64]* @__llvm_gcov_ctr.27, i64 0, i64 22), %bb6 ], [ getelementptr inbounds ([24 x i64], [24 x i64]* @__llvm_gcov_ctr.27, i64 0, i64 21), %bb5 ], !dbg !2889 %217 = load i64, i64* %216, !dbg !2889 %218 = add i64 %217, 1, !dbg !2889 store i64 %218, i64* %216, !dbg !2889 %219 = load i64, i64* getelementptr inbounds ([24 x i64], [24 x i64]* @__llvm_gcov_ctr.27, i64 0, i64 23), !dbg !2889 %220 = add i64 %219, 1, !dbg !2889 store i64 %220, i64* getelementptr inbounds ([24 x i64], [24 x i64]* @__llvm_gcov_ctr.27, i64 0, i64 23), !dbg !2889 ret void, !dbg !2889 } -
Amanieu created this gist
Mar 19, 2020 .There are no files selected for viewing
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 charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,521 @@ ; std::panicking::try ; Function Attrs: nonlazybind uwtable define void @_ZN3std9panicking3try17h798c4ca7bded36a6E(%"core::result::Result<core::result::Result<proc_macro::TokenStream, imp::LexError>, alloc::boxed::Box<core::any::Any>>"* noalias nocapture sret dereferenceable(24), i64* noalias readonly align 8 dereferenceable(16) %f) unnamed_addr #1 personality i32 (i32, i32, i64, %"unwind::libunwind::_Unwind_Exception"*, %"unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality !dbg !2890 { start: %1 = alloca i8*, align 8 %self.dbg.spill.i20 = alloca i64**, align 8 call void @llvm.dbg.declare(metadata i64*** %self.dbg.spill.i20, metadata !2912, metadata !DIExpression()), !dbg !2919 %self.dbg.spill.i17 = alloca i8**, align 8 call void @llvm.dbg.declare(metadata i8*** %self.dbg.spill.i17, metadata !2931, metadata !DIExpression()), !dbg !2960 %count.dbg.spill.i = alloca i64, align 8 call void @llvm.dbg.declare(metadata i64* %count.dbg.spill.i, metadata !2961, metadata !DIExpression()), !dbg !2968 %dst.dbg.spill.i = alloca i64**, align 8 call void @llvm.dbg.declare(metadata i64*** %dst.dbg.spill.i, metadata !2967, metadata !DIExpression()), !dbg !2970 %src.dbg.spill.i16 = alloca i64**, align 8 call void @llvm.dbg.declare(metadata i64*** %src.dbg.spill.i16, metadata !2966, metadata !DIExpression()), !dbg !2971 %slot.dbg.spill.i15 = alloca i64*, align 8 call void @llvm.dbg.declare(metadata i64** %slot.dbg.spill.i15, metadata !2972, metadata !DIExpression()), !dbg !2977 %self.dbg.spill.i = alloca i8*, align 8 call void @llvm.dbg.declare(metadata i8** %self.dbg.spill.i, metadata !2983, metadata !DIExpression()), !dbg !2985 %src.dbg.spill.i = alloca i64**, align 8 call void @llvm.dbg.declare(metadata i64*** %src.dbg.spill.i, metadata !2939, metadata !DIExpression()), !dbg !2986 %tmp.i = alloca i8*, align 8 call void @llvm.dbg.declare(metadata i8** %tmp.i, metadata !2940, metadata !DIExpression()), !dbg !2987 %slot.dbg.spill.i7 = alloca i64**, align 8 call void @llvm.dbg.declare(metadata i64*** %slot.dbg.spill.i7, metadata !2946, metadata !DIExpression()), !dbg !2988 %_2.i = alloca %"core::result::Result<proc_macro::TokenStream, imp::LexError>", align 4 %2 = alloca %"core::mem::manually_drop::ManuallyDrop<core::result::Result<proc_macro::TokenStream, imp::LexError>>", align 4 %3 = alloca i64, align 8 %value.i = alloca %"core::result::Result<proc_macro::TokenStream, imp::LexError>", align 4 call void @llvm.dbg.declare(metadata %"core::result::Result<proc_macro::TokenStream, imp::LexError>"* %value.i, metadata !2989, metadata !DIExpression()), !dbg !2994 %4 = alloca i64, align 8 %5 = alloca i64, align 8 %f.dbg.spill.i = alloca i64*, align 8 call void @llvm.dbg.declare(metadata i64** %f.dbg.spill.i, metadata !2957, metadata !DIExpression()), !dbg !2996 %data.dbg.spill3.i2 = alloca %"std::panicking::try::Data<imp::proc_macro_parse::{{closure}}, core::result::Result<proc_macro::TokenStream, imp::LexError>>"*, align 8 call void @llvm.dbg.declare(metadata %"std::panicking::try::Data<imp::proc_macro_parse::{{closure}}, core::result::Result<proc_macro::TokenStream, imp::LexError>>"** %data.dbg.spill3.i2, metadata !2955, metadata !DIExpression()), !dbg !2997 %data.dbg.spill2.i3 = alloca %"std::panicking::try::Data<imp::proc_macro_parse::{{closure}}, core::result::Result<proc_macro::TokenStream, imp::LexError>>"*, align 8 call void @llvm.dbg.declare(metadata %"std::panicking::try::Data<imp::proc_macro_parse::{{closure}}, core::result::Result<proc_macro::TokenStream, imp::LexError>>"** %data.dbg.spill2.i3, metadata !2953, metadata !DIExpression()), !dbg !2998 %data.dbg.spill.i4 = alloca i8*, align 8 call void @llvm.dbg.declare(metadata i8** %data.dbg.spill.i4, metadata !2952, metadata !DIExpression()), !dbg !2999 %_9.i = alloca %"core::result::Result<proc_macro::TokenStream, imp::LexError>", align 4 %_8.i = alloca %"core::mem::manually_drop::ManuallyDrop<core::result::Result<proc_macro::TokenStream, imp::LexError>>", align 4 %value.dbg.spill.i1 = alloca { {}*, [3 x i64]* }, align 8 call void @llvm.dbg.declare(metadata { {}*, [3 x i64]* }* %value.dbg.spill.i1, metadata !2766, metadata !DIExpression()), !dbg !3000 %6 = alloca { i8*, i64* }, align 8 %obj.dbg.spill.i = alloca { {}*, [3 x i64]* }, align 8 call void @llvm.dbg.declare(metadata { {}*, [3 x i64]* }* %obj.dbg.spill.i, metadata !3011, metadata !DIExpression()), !dbg !3013 %data.dbg.spill3.i = alloca %"std::panicking::try::Data<imp::proc_macro_parse::{{closure}}, core::result::Result<proc_macro::TokenStream, imp::LexError>>"*, align 8 call void @llvm.dbg.declare(metadata %"std::panicking::try::Data<imp::proc_macro_parse::{{closure}}, core::result::Result<proc_macro::TokenStream, imp::LexError>>"** %data.dbg.spill3.i, metadata !3010, metadata !DIExpression()), !dbg !3014 %data.dbg.spill2.i = alloca %"std::panicking::try::Data<imp::proc_macro_parse::{{closure}}, core::result::Result<proc_macro::TokenStream, imp::LexError>>"*, align 8 call void @llvm.dbg.declare(metadata %"std::panicking::try::Data<imp::proc_macro_parse::{{closure}}, core::result::Result<proc_macro::TokenStream, imp::LexError>>"** %data.dbg.spill2.i, metadata !3009, metadata !DIExpression()), !dbg !3015 %payload.dbg.spill.i = alloca i8*, align 8 call void @llvm.dbg.declare(metadata i8** %payload.dbg.spill.i, metadata !3008, metadata !DIExpression()), !dbg !3016 %data.dbg.spill.i = alloca i8*, align 8 call void @llvm.dbg.declare(metadata i8** %data.dbg.spill.i, metadata !3007, metadata !DIExpression()), !dbg !3017 %slot.dbg.spill.i = alloca { i8*, i64* }, align 8 call void @llvm.dbg.declare(metadata { i8*, i64* }* %slot.dbg.spill.i, metadata !2791, metadata !DIExpression()), !dbg !3018 %7 = alloca %"core::result::Result<proc_macro::TokenStream, imp::LexError>", align 4 %8 = alloca i64, align 8 %slot.i = alloca %"core::mem::manually_drop::ManuallyDrop<core::result::Result<proc_macro::TokenStream, imp::LexError>>", align 4 call void @llvm.dbg.declare(metadata %"core::mem::manually_drop::ManuallyDrop<core::result::Result<proc_macro::TokenStream, imp::LexError>>"* %slot.i, metadata !3020, metadata !DIExpression()), !dbg !3025 %value.dbg.spill.i = alloca i64*, align 8 call void @llvm.dbg.declare(metadata i64** %value.dbg.spill.i, metadata !3027, metadata !DIExpression()), !dbg !3032 %9 = alloca i64*, align 8 %10 = alloca i64, align 8 %11 = alloca i32, align 4 %data_ptr.dbg.spill = alloca i8*, align 8 %f.dbg.spill = alloca i64*, align 8 %_15 = alloca %"core::mem::manually_drop::ManuallyDrop<core::result::Result<proc_macro::TokenStream, imp::LexError>>", align 4 %_14 = alloca %"core::result::Result<proc_macro::TokenStream, imp::LexError>", align 4 %data = alloca %"std::panicking::try::Data<imp::proc_macro_parse::{{closure}}, core::result::Result<proc_macro::TokenStream, imp::LexError>>", align 8 br label %12 12: ; preds = %start %13 = phi i64* [ getelementptr inbounds ([24 x i64], [24 x i64]* @__llvm_gcov_ctr.28, i64 0, i64 0), %start ] %14 = load i64, i64* %13 %15 = add i64 %14, 1 store i64 %15, i64* %13 store i64* %f, i64** %f.dbg.spill, align 8 call void @llvm.dbg.declare(metadata i64** %f.dbg.spill, metadata !2892, metadata !DIExpression()), !dbg !3034 call void @llvm.dbg.declare(metadata %"std::panicking::try::Data<imp::proc_macro_parse::{{closure}}, core::result::Result<proc_macro::TokenStream, imp::LexError>>"* %data, metadata !2893, metadata !DIExpression()), !dbg !3035 %16 = bitcast i64** %value.dbg.spill.i to i8* call void @llvm.lifetime.start.p0i8(i64 8, i8* %16) %17 = bitcast i64** %9 to i8* call void @llvm.lifetime.start.p0i8(i64 8, i8* %17) store i64* %f, i64** %value.dbg.spill.i, align 8, !noalias !3036 store i64* %f, i64** %9, align 8, !dbg !3039, !noalias !3036 %18 = load i64*, i64** %9, align 8, !dbg !3040, !noalias !3036, !nonnull !4 %19 = bitcast i64** %value.dbg.spill.i to i8*, !dbg !3040 call void @llvm.lifetime.end.p0i8(i64 8, i8* %19), !dbg !3040 %20 = bitcast i64** %9 to i8*, !dbg !3040 call void @llvm.lifetime.end.p0i8(i64 8, i8* %20), !dbg !3040 br label %bb1, !dbg !3041 bb1: ; preds = %12 %21 = phi i64* [ getelementptr inbounds ([24 x i64], [24 x i64]* @__llvm_gcov_ctr.28, i64 0, i64 1), %12 ], !dbg !3042 %22 = load i64, i64* %21, !dbg !3042 %23 = add i64 %22, 1, !dbg !3042 store i64 %23, i64* %21, !dbg !3042 %24 = bitcast %"std::panicking::try::Data<imp::proc_macro_parse::{{closure}}, core::result::Result<proc_macro::TokenStream, imp::LexError>>"* %data to i64**, !dbg !3042 store i64* %18, i64** %24, align 8, !dbg !3042 %data_ptr = bitcast %"std::panicking::try::Data<imp::proc_macro_parse::{{closure}}, core::result::Result<proc_macro::TokenStream, imp::LexError>>"* %data to i8*, !dbg !3043 store i8* %data_ptr, i8** %data_ptr.dbg.spill, align 8, !dbg !3043 call void @llvm.dbg.declare(metadata i8** %data_ptr.dbg.spill, metadata !2909, metadata !DIExpression()), !dbg !3044 %25 = bitcast i64* %4 to i8* call void @llvm.lifetime.start.p0i8(i64 8, i8* %25) %26 = bitcast i64* %5 to i8* call void @llvm.lifetime.start.p0i8(i64 8, i8* %26) %27 = bitcast i64** %f.dbg.spill.i to i8* call void @llvm.lifetime.start.p0i8(i64 8, i8* %27) %28 = bitcast %"std::panicking::try::Data<imp::proc_macro_parse::{{closure}}, core::result::Result<proc_macro::TokenStream, imp::LexError>>"** %data.dbg.spill3.i2 to i8* call void @llvm.lifetime.start.p0i8(i64 8, i8* %28) %29 = bitcast %"std::panicking::try::Data<imp::proc_macro_parse::{{closure}}, core::result::Result<proc_macro::TokenStream, imp::LexError>>"** %data.dbg.spill2.i3 to i8* call void @llvm.lifetime.start.p0i8(i64 8, i8* %29) %30 = bitcast i8** %data.dbg.spill.i4 to i8* call void @llvm.lifetime.start.p0i8(i64 8, i8* %30) %31 = bitcast %"core::result::Result<proc_macro::TokenStream, imp::LexError>"* %_9.i to i8* call void @llvm.lifetime.start.p0i8(i64 8, i8* %31) %32 = bitcast %"core::mem::manually_drop::ManuallyDrop<core::result::Result<proc_macro::TokenStream, imp::LexError>>"* %_8.i to i8* call void @llvm.lifetime.start.p0i8(i64 8, i8* %32) store i8* %data_ptr, i8** %data.dbg.spill.i4, align 8 store %"std::panicking::try::Data<imp::proc_macro_parse::{{closure}}, core::result::Result<proc_macro::TokenStream, imp::LexError>>"* %data, %"std::panicking::try::Data<imp::proc_macro_parse::{{closure}}, core::result::Result<proc_macro::TokenStream, imp::LexError>>"** %data.dbg.spill2.i3, align 8, !dbg !3045 store %"std::panicking::try::Data<imp::proc_macro_parse::{{closure}}, core::result::Result<proc_macro::TokenStream, imp::LexError>>"* %data, %"std::panicking::try::Data<imp::proc_macro_parse::{{closure}}, core::result::Result<proc_macro::TokenStream, imp::LexError>>"** %data.dbg.spill3.i2, align 8, !dbg !3046 %_7.i = bitcast %"std::panicking::try::Data<imp::proc_macro_parse::{{closure}}, core::result::Result<proc_macro::TokenStream, imp::LexError>>"* %data to i64**, !dbg !3047 %33 = bitcast i64*** %slot.dbg.spill.i7 to i8* call void @llvm.lifetime.start.p0i8(i64 8, i8* %33) store i64** %_7.i, i64*** %slot.dbg.spill.i7, align 8 %34 = bitcast i64*** %src.dbg.spill.i to i8* call void @llvm.lifetime.start.p0i8(i64 8, i8* %34) %35 = bitcast i8** %tmp.i to i8* call void @llvm.lifetime.start.p0i8(i64 8, i8* %35) store i64** %_7.i, i64*** %src.dbg.spill.i, align 8 %36 = bitcast i8** %1 to i8*, !dbg !3048 call void @llvm.lifetime.start.p0i8(i64 8, i8* %36), !dbg !3048 %37 = bitcast i8** %1 to {}*, !dbg !3048 %38 = load i8*, i8** %1, align 8, !dbg !3053 %39 = bitcast i8** %1 to i8*, !dbg !3053 call void @llvm.lifetime.end.p0i8(i64 8, i8* %39), !dbg !3053 br label %.noexc10, !dbg !3053 .noexc10: ; preds = %bb1 %40 = phi i64* [ getelementptr inbounds ([24 x i64], [24 x i64]* @__llvm_gcov_ctr.28, i64 0, i64 2), %bb1 ], !dbg !3054 %41 = load i64, i64* %40, !dbg !3054 %42 = add i64 %41, 1, !dbg !3054 store i64 %42, i64* %40, !dbg !3054 store i8* %38, i8** %tmp.i, align 8, !dbg !3054 %43 = bitcast i8*** %self.dbg.spill.i17 to i8* call void @llvm.lifetime.start.p0i8(i64 8, i8* %43) store i8** %tmp.i, i8*** %self.dbg.spill.i17, align 8 %_4.i = bitcast i8** %tmp.i to i64**, !dbg !3055 %44 = bitcast i64*** %self.dbg.spill.i20 to i8* call void @llvm.lifetime.start.p0i8(i64 8, i8* %44) store i64** %_4.i, i64*** %self.dbg.spill.i20, align 8 %45 = bitcast i64*** %self.dbg.spill.i20 to i8*, !dbg !3056 call void @llvm.lifetime.end.p0i8(i64 8, i8* %45), !dbg !3056 br label %"_ZN4core3mem12maybe_uninit20MaybeUninit$LT$T$GT$10as_mut_ptr17h3aa36a16b4891551E.exit", !dbg !3056 "_ZN4core3mem12maybe_uninit20MaybeUninit$LT$T$GT$10as_mut_ptr17h3aa36a16b4891551E.exit": ; preds = %.noexc10 %46 = phi i64* [ getelementptr inbounds ([24 x i64], [24 x i64]* @__llvm_gcov_ctr.28, i64 0, i64 3), %.noexc10 ], !dbg !3057 %47 = load i64, i64* %46, !dbg !3057 %48 = add i64 %47, 1, !dbg !3057 store i64 %48, i64* %46, !dbg !3057 %49 = bitcast i8*** %self.dbg.spill.i17 to i8*, !dbg !3057 call void @llvm.lifetime.end.p0i8(i64 8, i8* %49), !dbg !3057 br label %_5.i.noexc, !dbg !3057 _5.i.noexc: ; preds = %"_ZN4core3mem12maybe_uninit20MaybeUninit$LT$T$GT$10as_mut_ptr17h3aa36a16b4891551E.exit" %50 = phi i64* [ getelementptr inbounds ([24 x i64], [24 x i64]* @__llvm_gcov_ctr.28, i64 0, i64 4), %"_ZN4core3mem12maybe_uninit20MaybeUninit$LT$T$GT$10as_mut_ptr17h3aa36a16b4891551E.exit" ] %51 = load i64, i64* %50 %52 = add i64 %51, 1 store i64 %52, i64* %50 %53 = bitcast i64* %count.dbg.spill.i to i8* call void @llvm.lifetime.start.p0i8(i64 8, i8* %53) %54 = bitcast i64*** %dst.dbg.spill.i to i8* call void @llvm.lifetime.start.p0i8(i64 8, i8* %54) %55 = bitcast i64*** %src.dbg.spill.i16 to i8* call void @llvm.lifetime.start.p0i8(i64 8, i8* %55) store i64** %_7.i, i64*** %src.dbg.spill.i16, align 8 store i64** %_4.i, i64*** %dst.dbg.spill.i, align 8 store i64 1, i64* %count.dbg.spill.i, align 8 %56 = bitcast i64** %_4.i to i8*, !dbg !3058 %57 = bitcast i64** %_7.i to i8*, !dbg !3058 call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 8 %56, i8* align 8 %57, i64 8, i1 false), !dbg !3058 %58 = bitcast i64* %count.dbg.spill.i to i8*, !dbg !3059 call void @llvm.lifetime.end.p0i8(i64 8, i8* %58), !dbg !3059 %59 = bitcast i64*** %dst.dbg.spill.i to i8*, !dbg !3059 call void @llvm.lifetime.end.p0i8(i64 8, i8* %59), !dbg !3059 %60 = bitcast i64*** %src.dbg.spill.i16 to i8*, !dbg !3059 call void @llvm.lifetime.end.p0i8(i64 8, i8* %60), !dbg !3059 br label %.noexc12, !dbg !3059 .noexc12: ; preds = %_5.i.noexc %61 = phi i64* [ getelementptr inbounds ([24 x i64], [24 x i64]* @__llvm_gcov_ctr.28, i64 0, i64 5), %_5.i.noexc ], !dbg !3060 %62 = load i64, i64* %61, !dbg !3060 %63 = add i64 %62, 1, !dbg !3060 store i64 %63, i64* %61, !dbg !3060 %_7.i9 = load i8*, i8** %tmp.i, align 8, !dbg !3060 %64 = bitcast i8** %self.dbg.spill.i to i8* call void @llvm.lifetime.start.p0i8(i64 8, i8* %64) store i8* %_7.i9, i8** %self.dbg.spill.i, align 8 %_3.i = bitcast i8* %_7.i9 to i64*, !dbg !3061 %65 = bitcast i64** %slot.dbg.spill.i15 to i8* call void @llvm.lifetime.start.p0i8(i64 8, i8* %65) store i64* %_3.i, i64** %slot.dbg.spill.i15, align 8, !noalias !3062 %66 = bitcast i64** %slot.dbg.spill.i15 to i8*, !dbg !3065 call void @llvm.lifetime.end.p0i8(i64 8, i8* %66), !dbg !3065 br label %"_ZN4core3mem12maybe_uninit20MaybeUninit$LT$T$GT$11assume_init17h07d6920d6d98d12bE.exit", !dbg !3065 "_ZN4core3mem12maybe_uninit20MaybeUninit$LT$T$GT$11assume_init17h07d6920d6d98d12bE.exit": ; preds = %.noexc12 %67 = phi i64* [ getelementptr inbounds ([24 x i64], [24 x i64]* @__llvm_gcov_ctr.28, i64 0, i64 6), %.noexc12 ], !dbg !3066 %68 = load i64, i64* %67, !dbg !3066 %69 = add i64 %68, 1, !dbg !3066 store i64 %69, i64* %67, !dbg !3066 %70 = bitcast i8** %self.dbg.spill.i to i8*, !dbg !3066 call void @llvm.lifetime.end.p0i8(i64 8, i8* %70), !dbg !3066 br label %_ZN4core3ptr4read17h87039b83fe842100E.exit, !dbg !3066 _ZN4core3ptr4read17h87039b83fe842100E.exit: ; preds = %"_ZN4core3mem12maybe_uninit20MaybeUninit$LT$T$GT$11assume_init17h07d6920d6d98d12bE.exit" %71 = phi i64* [ getelementptr inbounds ([24 x i64], [24 x i64]* @__llvm_gcov_ctr.28, i64 0, i64 7), %"_ZN4core3mem12maybe_uninit20MaybeUninit$LT$T$GT$11assume_init17h07d6920d6d98d12bE.exit" ], !dbg !3067 %72 = load i64, i64* %71, !dbg !3067 %73 = add i64 %72, 1, !dbg !3067 store i64 %73, i64* %71, !dbg !3067 %74 = bitcast i64*** %src.dbg.spill.i to i8*, !dbg !3067 call void @llvm.lifetime.end.p0i8(i64 8, i8* %74), !dbg !3067 %75 = bitcast i8** %tmp.i to i8*, !dbg !3067 call void @llvm.lifetime.end.p0i8(i64 8, i8* %75), !dbg !3067 br label %"_ZN4core3mem13manually_drop21ManuallyDrop$LT$T$GT$4take17hadd935f24105f1b0E.exit", !dbg !3067 "_ZN4core3mem13manually_drop21ManuallyDrop$LT$T$GT$4take17hadd935f24105f1b0E.exit": ; preds = %_ZN4core3ptr4read17h87039b83fe842100E.exit %76 = phi i64* [ getelementptr inbounds ([24 x i64], [24 x i64]* @__llvm_gcov_ctr.28, i64 0, i64 8), %_ZN4core3ptr4read17h87039b83fe842100E.exit ], !dbg !3068 %77 = load i64, i64* %76, !dbg !3068 %78 = add i64 %77, 1, !dbg !3068 store i64 %78, i64* %76, !dbg !3068 %79 = bitcast i64*** %slot.dbg.spill.i7 to i8*, !dbg !3068 call void @llvm.lifetime.end.p0i8(i64 8, i8* %79), !dbg !3068 br label %f.i.noexc, !dbg !3068 f.i.noexc: ; preds = %"_ZN4core3mem13manually_drop21ManuallyDrop$LT$T$GT$4take17hadd935f24105f1b0E.exit" %80 = phi i64* [ getelementptr inbounds ([24 x i64], [24 x i64]* @__llvm_gcov_ctr.28, i64 0, i64 9), %"_ZN4core3mem13manually_drop21ManuallyDrop$LT$T$GT$4take17hadd935f24105f1b0E.exit" ], !dbg !3069 %81 = load i64, i64* %80, !dbg !3069 %82 = add i64 %81, 1, !dbg !3069 store i64 %82, i64* %80, !dbg !3069 store i64* %_3.i, i64** %f.dbg.spill.i, align 8, !dbg !3069 ; invoke proc_macro2::imp::proc_macro_parse::{{closure}} %83 = invoke i64 @"_ZN11proc_macro23imp16proc_macro_parse28_$u7b$$u7b$closure$u7d$$u7d$17h2474aa3ead5f269eE"(i64* noalias readonly align 8 dereferenceable(16) %_3.i) to label %.noexc unwind label %catch.i, !dbg !3070 .noexc: ; preds = %f.i.noexc %84 = phi i64* [ getelementptr inbounds ([24 x i64], [24 x i64]* @__llvm_gcov_ctr.28, i64 0, i64 10), %f.i.noexc ], !dbg !3070 %85 = load i64, i64* %84, !dbg !3070 %86 = add i64 %85, 1, !dbg !3070 store i64 %86, i64* %84, !dbg !3070 store i64 %83, i64* %5, align 8, !dbg !3070 %87 = bitcast %"core::result::Result<proc_macro::TokenStream, imp::LexError>"* %_9.i to i8*, !dbg !3070 %88 = bitcast i64* %5 to i8*, !dbg !3070 call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 4 %87, i8* align 8 %88, i64 8, i1 false), !dbg !3070 %89 = bitcast %"core::result::Result<proc_macro::TokenStream, imp::LexError>"* %_9.i to i64*, !dbg !3071 %90 = load i64, i64* %89, align 4, !dbg !3071 %91 = bitcast %"core::result::Result<proc_macro::TokenStream, imp::LexError>"* %_2.i to i8* call void @llvm.lifetime.start.p0i8(i64 8, i8* %91) %92 = bitcast %"core::mem::manually_drop::ManuallyDrop<core::result::Result<proc_macro::TokenStream, imp::LexError>>"* %2 to i8* call void @llvm.lifetime.start.p0i8(i64 8, i8* %92) %93 = bitcast i64* %3 to i8* call void @llvm.lifetime.start.p0i8(i64 8, i8* %93) %94 = bitcast %"core::result::Result<proc_macro::TokenStream, imp::LexError>"* %value.i to i8* call void @llvm.lifetime.start.p0i8(i64 8, i8* %94) store i64 %90, i64* %3, align 8 %95 = bitcast %"core::result::Result<proc_macro::TokenStream, imp::LexError>"* %value.i to i8* %96 = bitcast i64* %3 to i8* call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 4 %95, i8* align 8 %96, i64 8, i1 false) %97 = bitcast %"core::result::Result<proc_macro::TokenStream, imp::LexError>"* %_2.i to i8*, !dbg !3072 %98 = bitcast %"core::result::Result<proc_macro::TokenStream, imp::LexError>"* %value.i to i8*, !dbg !3072 call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 4 %97, i8* align 4 %98, i64 8, i1 false), !dbg !3072 %99 = bitcast %"core::mem::manually_drop::ManuallyDrop<core::result::Result<proc_macro::TokenStream, imp::LexError>>"* %2 to %"core::result::Result<proc_macro::TokenStream, imp::LexError>"*, !dbg !3073 %100 = bitcast %"core::result::Result<proc_macro::TokenStream, imp::LexError>"* %99 to i8*, !dbg !3073 %101 = bitcast %"core::result::Result<proc_macro::TokenStream, imp::LexError>"* %_2.i to i8*, !dbg !3073 call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 4 %100, i8* align 4 %101, i64 8, i1 false), !dbg !3073 %102 = bitcast %"core::mem::manually_drop::ManuallyDrop<core::result::Result<proc_macro::TokenStream, imp::LexError>>"* %2 to i64*, !dbg !3074 %103 = load i64, i64* %102, align 4, !dbg !3074 %104 = bitcast %"core::result::Result<proc_macro::TokenStream, imp::LexError>"* %_2.i to i8*, !dbg !3074 call void @llvm.lifetime.end.p0i8(i64 8, i8* %104), !dbg !3074 %105 = bitcast %"core::mem::manually_drop::ManuallyDrop<core::result::Result<proc_macro::TokenStream, imp::LexError>>"* %2 to i8*, !dbg !3074 call void @llvm.lifetime.end.p0i8(i64 8, i8* %105), !dbg !3074 %106 = bitcast i64* %3 to i8*, !dbg !3074 call void @llvm.lifetime.end.p0i8(i64 8, i8* %106), !dbg !3074 %107 = bitcast %"core::result::Result<proc_macro::TokenStream, imp::LexError>"* %value.i to i8*, !dbg !3074 call void @llvm.lifetime.end.p0i8(i64 8, i8* %107), !dbg !3074 br label %_ZN3std9panicking3try7do_call17hcfe14690490a6707E.exit, !dbg !3074 _ZN3std9panicking3try7do_call17hcfe14690490a6707E.exit: ; preds = %.noexc %108 = phi i64* [ getelementptr inbounds ([24 x i64], [24 x i64]* @__llvm_gcov_ctr.28, i64 0, i64 12), %.noexc ], !dbg !3071 %109 = load i64, i64* %108, !dbg !3071 %110 = add i64 %109, 1, !dbg !3071 store i64 %110, i64* %108, !dbg !3071 store i64 %103, i64* %4, align 8, !dbg !3071 %111 = bitcast %"core::mem::manually_drop::ManuallyDrop<core::result::Result<proc_macro::TokenStream, imp::LexError>>"* %_8.i to i8*, !dbg !3071 %112 = bitcast i64* %4 to i8*, !dbg !3071 call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 4 %111, i8* align 8 %112, i64 8, i1 false), !dbg !3071 %113 = bitcast %"std::panicking::try::Data<imp::proc_macro_parse::{{closure}}, core::result::Result<proc_macro::TokenStream, imp::LexError>>"* %data to %"core::mem::manually_drop::ManuallyDrop<core::result::Result<proc_macro::TokenStream, imp::LexError>>"*, !dbg !3075 %114 = bitcast %"core::mem::manually_drop::ManuallyDrop<core::result::Result<proc_macro::TokenStream, imp::LexError>>"* %113 to i8*, !dbg !3075 %115 = bitcast %"core::mem::manually_drop::ManuallyDrop<core::result::Result<proc_macro::TokenStream, imp::LexError>>"* %_8.i to i8*, !dbg !3075 call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 8 %114, i8* align 4 %115, i64 8, i1 false), !dbg !3075 %116 = bitcast i64* %4 to i8*, !dbg !3076 call void @llvm.lifetime.end.p0i8(i64 8, i8* %116), !dbg !3076 %117 = bitcast i64* %5 to i8*, !dbg !3076 call void @llvm.lifetime.end.p0i8(i64 8, i8* %117), !dbg !3076 %118 = bitcast i64** %f.dbg.spill.i to i8*, !dbg !3076 call void @llvm.lifetime.end.p0i8(i64 8, i8* %118), !dbg !3076 %119 = bitcast %"std::panicking::try::Data<imp::proc_macro_parse::{{closure}}, core::result::Result<proc_macro::TokenStream, imp::LexError>>"** %data.dbg.spill3.i2 to i8*, !dbg !3076 call void @llvm.lifetime.end.p0i8(i64 8, i8* %119), !dbg !3076 %120 = bitcast %"std::panicking::try::Data<imp::proc_macro_parse::{{closure}}, core::result::Result<proc_macro::TokenStream, imp::LexError>>"** %data.dbg.spill2.i3 to i8*, !dbg !3076 call void @llvm.lifetime.end.p0i8(i64 8, i8* %120), !dbg !3076 %121 = bitcast i8** %data.dbg.spill.i4 to i8*, !dbg !3076 call void @llvm.lifetime.end.p0i8(i64 8, i8* %121), !dbg !3076 %122 = bitcast %"core::result::Result<proc_macro::TokenStream, imp::LexError>"* %_9.i to i8*, !dbg !3076 call void @llvm.lifetime.end.p0i8(i64 8, i8* %122), !dbg !3076 %123 = bitcast %"core::mem::manually_drop::ManuallyDrop<core::result::Result<proc_macro::TokenStream, imp::LexError>>"* %_8.i to i8*, !dbg !3076 call void @llvm.lifetime.end.p0i8(i64 8, i8* %123), !dbg !3076 br label %then.i, !dbg !3076 then.i: ; preds = %_ZN3std9panicking3try7do_call17hcfe14690490a6707E.exit %124 = phi i64* [ getelementptr inbounds ([24 x i64], [24 x i64]* @__llvm_gcov_ctr.28, i64 0, i64 13), %_ZN3std9panicking3try7do_call17hcfe14690490a6707E.exit ], !dbg !3077 %125 = load i64, i64* %124, !dbg !3077 %126 = add i64 %125, 1, !dbg !3077 store i64 %126, i64* %124, !dbg !3077 br label %__rust_try.exit, !dbg !3077 catch.i: ; preds = %f.i.noexc %127 = phi i64* [ getelementptr inbounds ([24 x i64], [24 x i64]* @__llvm_gcov_ctr.28, i64 0, i64 11), %f.i.noexc ], !dbg !3077 %128 = landingpad { i8*, i32 } catch i8* null, !dbg !3077 %129 = load i64, i64* %127, !dbg !3077 %130 = add i64 %129, 1, !dbg !3077 store i64 %130, i64* %127, !dbg !3077 %131 = extractvalue { i8*, i32 } %128, 0, !dbg !3077 %132 = bitcast { {}*, [3 x i64]* }* %obj.dbg.spill.i to i8* call void @llvm.lifetime.start.p0i8(i64 16, i8* %132) %133 = bitcast %"std::panicking::try::Data<imp::proc_macro_parse::{{closure}}, core::result::Result<proc_macro::TokenStream, imp::LexError>>"** %data.dbg.spill3.i to i8* call void @llvm.lifetime.start.p0i8(i64 8, i8* %133) %134 = bitcast %"std::panicking::try::Data<imp::proc_macro_parse::{{closure}}, core::result::Result<proc_macro::TokenStream, imp::LexError>>"** %data.dbg.spill2.i to i8* call void @llvm.lifetime.start.p0i8(i64 8, i8* %134) %135 = bitcast i8** %payload.dbg.spill.i to i8* call void @llvm.lifetime.start.p0i8(i64 8, i8* %135) %136 = bitcast i8** %data.dbg.spill.i to i8* call void @llvm.lifetime.start.p0i8(i64 8, i8* %136) store i8* %data_ptr, i8** %data.dbg.spill.i, align 8 store i8* %131, i8** %payload.dbg.spill.i, align 8 store %"std::panicking::try::Data<imp::proc_macro_parse::{{closure}}, core::result::Result<proc_macro::TokenStream, imp::LexError>>"* %data, %"std::panicking::try::Data<imp::proc_macro_parse::{{closure}}, core::result::Result<proc_macro::TokenStream, imp::LexError>>"** %data.dbg.spill2.i, align 8, !dbg !3078 store %"std::panicking::try::Data<imp::proc_macro_parse::{{closure}}, core::result::Result<proc_macro::TokenStream, imp::LexError>>"* %data, %"std::panicking::try::Data<imp::proc_macro_parse::{{closure}}, core::result::Result<proc_macro::TokenStream, imp::LexError>>"** %data.dbg.spill3.i, align 8, !dbg !3079 ; call std::panicking::try::cleanup %137 = call { {}*, [3 x i64]* } @_ZN3std9panicking3try7cleanup17h97268322f249355eE(i8* %131), !dbg !3080 %obj.0.i = extractvalue { {}*, [3 x i64]* } %137, 0, !dbg !3080 %obj.1.i = extractvalue { {}*, [3 x i64]* } %137, 1, !dbg !3080 %138 = getelementptr inbounds { {}*, [3 x i64]* }, { {}*, [3 x i64]* }* %obj.dbg.spill.i, i32 0, i32 0, !dbg !3080 store {}* %obj.0.i, {}** %138, align 8, !dbg !3080 %139 = getelementptr inbounds { {}*, [3 x i64]* }, { {}*, [3 x i64]* }* %obj.dbg.spill.i, i32 0, i32 1, !dbg !3080 store [3 x i64]* %obj.1.i, [3 x i64]** %139, align 8, !dbg !3080 %140 = bitcast { {}*, [3 x i64]* }* %value.dbg.spill.i1 to i8* call void @llvm.lifetime.start.p0i8(i64 16, i8* %140) %141 = bitcast { i8*, i64* }* %6 to i8* call void @llvm.lifetime.start.p0i8(i64 16, i8* %141) %142 = getelementptr inbounds { {}*, [3 x i64]* }, { {}*, [3 x i64]* }* %value.dbg.spill.i1, i32 0, i32 0 store {}* %obj.0.i, {}** %142, align 8, !noalias !3081 %143 = getelementptr inbounds { {}*, [3 x i64]* }, { {}*, [3 x i64]* }* %value.dbg.spill.i1, i32 0, i32 1 store [3 x i64]* %obj.1.i, [3 x i64]** %143, align 8, !noalias !3081 %144 = bitcast { i8*, i64* }* %6 to { {}*, [3 x i64]* }*, !dbg !3085 %145 = getelementptr inbounds { {}*, [3 x i64]* }, { {}*, [3 x i64]* }* %144, i32 0, i32 0, !dbg !3085 store {}* %obj.0.i, {}** %145, align 8, !dbg !3085, !noalias !3081 %146 = getelementptr inbounds { {}*, [3 x i64]* }, { {}*, [3 x i64]* }* %144, i32 0, i32 1, !dbg !3085 store [3 x i64]* %obj.1.i, [3 x i64]** %146, align 8, !dbg !3085, !noalias !3081 %147 = getelementptr inbounds { i8*, i64* }, { i8*, i64* }* %6, i32 0, i32 0, !dbg !3086 %148 = load i8*, i8** %147, align 8, !dbg !3086, !noalias !3081, !nonnull !4 %149 = getelementptr inbounds { i8*, i64* }, { i8*, i64* }* %6, i32 0, i32 1, !dbg !3086 %150 = load i64*, i64** %149, align 8, !dbg !3086, !noalias !3081, !nonnull !4 %151 = insertvalue { i8*, i64* } undef, i8* %148, 0, !dbg !3086 %152 = insertvalue { i8*, i64* } %151, i64* %150, 1, !dbg !3086 %153 = bitcast { {}*, [3 x i64]* }* %value.dbg.spill.i1 to i8*, !dbg !3086 call void @llvm.lifetime.end.p0i8(i64 16, i8* %153), !dbg !3086 %154 = bitcast { i8*, i64* }* %6 to i8*, !dbg !3086 call void @llvm.lifetime.end.p0i8(i64 16, i8* %154), !dbg !3086 %_8.0.i = extractvalue { i8*, i64* } %152, 0, !dbg !3087 %_8.1.i = extractvalue { i8*, i64* } %152, 1, !dbg !3087 %155 = bitcast %"std::panicking::try::Data<imp::proc_macro_parse::{{closure}}, core::result::Result<proc_macro::TokenStream, imp::LexError>>"* %data to { i8*, i64* }*, !dbg !3088 %156 = getelementptr inbounds { i8*, i64* }, { i8*, i64* }* %155, i32 0, i32 0, !dbg !3088 store i8* %_8.0.i, i8** %156, align 8, !dbg !3088 %157 = getelementptr inbounds { i8*, i64* }, { i8*, i64* }* %155, i32 0, i32 1, !dbg !3088 store i64* %_8.1.i, i64** %157, align 8, !dbg !3088 %158 = bitcast { {}*, [3 x i64]* }* %obj.dbg.spill.i to i8*, !dbg !3089 call void @llvm.lifetime.end.p0i8(i64 16, i8* %158), !dbg !3089 %159 = bitcast %"std::panicking::try::Data<imp::proc_macro_parse::{{closure}}, core::result::Result<proc_macro::TokenStream, imp::LexError>>"** %data.dbg.spill3.i to i8*, !dbg !3089 call void @llvm.lifetime.end.p0i8(i64 8, i8* %159), !dbg !3089 %160 = bitcast %"std::panicking::try::Data<imp::proc_macro_parse::{{closure}}, core::result::Result<proc_macro::TokenStream, imp::LexError>>"** %data.dbg.spill2.i to i8*, !dbg !3089 call void @llvm.lifetime.end.p0i8(i64 8, i8* %160), !dbg !3089 %161 = bitcast i8** %payload.dbg.spill.i to i8*, !dbg !3089 call void @llvm.lifetime.end.p0i8(i64 8, i8* %161), !dbg !3089 %162 = bitcast i8** %data.dbg.spill.i to i8*, !dbg !3089 call void @llvm.lifetime.end.p0i8(i64 8, i8* %162), !dbg !3089 br label %__rust_try.exit, !dbg !3077 __rust_try.exit: ; preds = %catch.i, %then.i %163 = phi i64* [ getelementptr inbounds ([24 x i64], [24 x i64]* @__llvm_gcov_ctr.28, i64 0, i64 15), %catch.i ], [ getelementptr inbounds ([24 x i64], [24 x i64]* @__llvm_gcov_ctr.28, i64 0, i64 14), %then.i ] %164 = phi i32 [ 0, %then.i ], [ 1, %catch.i ] %165 = load i64, i64* %163, !dbg !3077 %166 = add i64 %165, 1, !dbg !3077 store i64 %166, i64* %163, !dbg !3077 store i32 %164, i32* %11, align 4, !dbg !3077 %_10 = load i32, i32* %11, align 4, !dbg !3077 br label %bb2, !dbg !3077 bb2: ; preds = %__rust_try.exit %167 = phi i64* [ getelementptr inbounds ([24 x i64], [24 x i64]* @__llvm_gcov_ctr.28, i64 0, i64 16), %__rust_try.exit ], !dbg !3077 %168 = load i64, i64* %167, !dbg !3077 %169 = add i64 %168, 1, !dbg !3077 store i64 %169, i64* %167, !dbg !3077 %_9 = icmp eq i32 %_10, 0, !dbg !3077 br i1 %_9, label %bb4, label %bb3, !dbg !3090 bb3: ; preds = %bb2 %170 = phi i64* [ getelementptr inbounds ([24 x i64], [24 x i64]* @__llvm_gcov_ctr.28, i64 0, i64 18), %bb2 ], !dbg !3091 %171 = load i64, i64* %170, !dbg !3091 %172 = add i64 %171, 1, !dbg !3091 store i64 %172, i64* %170, !dbg !3091 %173 = bitcast %"std::panicking::try::Data<imp::proc_macro_parse::{{closure}}, core::result::Result<proc_macro::TokenStream, imp::LexError>>"* %data to { i8*, i64* }*, !dbg !3091 %174 = getelementptr inbounds { i8*, i64* }, { i8*, i64* }* %173, i32 0, i32 0, !dbg !3091 %_18.0 = load i8*, i8** %174, align 8, !dbg !3091, !nonnull !4 %175 = getelementptr inbounds { i8*, i64* }, { i8*, i64* }* %173, i32 0, i32 1, !dbg !3091 %_18.1 = load i64*, i64** %175, align 8, !dbg !3091, !nonnull !4 %176 = bitcast { i8*, i64* }* %slot.dbg.spill.i to i8* call void @llvm.lifetime.start.p0i8(i64 16, i8* %176) %177 = getelementptr inbounds { i8*, i64* }, { i8*, i64* }* %slot.dbg.spill.i, i32 0, i32 0 store i8* %_18.0, i8** %177, align 8, !noalias !3092 %178 = getelementptr inbounds { i8*, i64* }, { i8*, i64* }* %slot.dbg.spill.i, i32 0, i32 1 store i64* %_18.1, i64** %178, align 8, !noalias !3092 %179 = bitcast i8* %_18.0 to {}*, !dbg !3096 %180 = bitcast i64* %_18.1 to [3 x i64]*, !dbg !3096 %181 = insertvalue { {}*, [3 x i64]* } undef, {}* %179, 0, !dbg !3097 %182 = insertvalue { {}*, [3 x i64]* } %181, [3 x i64]* %180, 1, !dbg !3097 %183 = bitcast { i8*, i64* }* %slot.dbg.spill.i to i8*, !dbg !3097 call void @llvm.lifetime.end.p0i8(i64 16, i8* %183), !dbg !3097 %_17.0 = extractvalue { {}*, [3 x i64]* } %182, 0, !dbg !3098 %_17.1 = extractvalue { {}*, [3 x i64]* } %182, 1, !dbg !3098 br label %bb6, !dbg !3098 bb4: ; preds = %bb2 %184 = phi i64* [ getelementptr inbounds ([24 x i64], [24 x i64]* @__llvm_gcov_ctr.28, i64 0, i64 17), %bb2 ], !dbg !3099 %185 = load i64, i64* %184, !dbg !3099 %186 = add i64 %185, 1, !dbg !3099 store i64 %186, i64* %184, !dbg !3099 %187 = bitcast %"std::panicking::try::Data<imp::proc_macro_parse::{{closure}}, core::result::Result<proc_macro::TokenStream, imp::LexError>>"* %data to %"core::mem::manually_drop::ManuallyDrop<core::result::Result<proc_macro::TokenStream, imp::LexError>>"*, !dbg !3099 %188 = bitcast %"core::mem::manually_drop::ManuallyDrop<core::result::Result<proc_macro::TokenStream, imp::LexError>>"* %_15 to i8*, !dbg !3099 %189 = bitcast %"core::mem::manually_drop::ManuallyDrop<core::result::Result<proc_macro::TokenStream, imp::LexError>>"* %187 to i8*, !dbg !3099 call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 4 %188, i8* align 8 %189, i64 8, i1 false), !dbg !3099 %190 = bitcast %"core::mem::manually_drop::ManuallyDrop<core::result::Result<proc_macro::TokenStream, imp::LexError>>"* %_15 to i64*, !dbg !3100 %191 = load i64, i64* %190, align 4, !dbg !3100 %192 = bitcast %"core::result::Result<proc_macro::TokenStream, imp::LexError>"* %7 to i8* call void @llvm.lifetime.start.p0i8(i64 8, i8* %192) %193 = bitcast i64* %8 to i8* call void @llvm.lifetime.start.p0i8(i64 8, i8* %193) %194 = bitcast %"core::mem::manually_drop::ManuallyDrop<core::result::Result<proc_macro::TokenStream, imp::LexError>>"* %slot.i to i8* call void @llvm.lifetime.start.p0i8(i64 8, i8* %194) store i64 %191, i64* %8, align 8 %195 = bitcast %"core::mem::manually_drop::ManuallyDrop<core::result::Result<proc_macro::TokenStream, imp::LexError>>"* %slot.i to i8* %196 = bitcast i64* %8 to i8* call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 4 %195, i8* align 8 %196, i64 8, i1 false) %197 = bitcast %"core::mem::manually_drop::ManuallyDrop<core::result::Result<proc_macro::TokenStream, imp::LexError>>"* %slot.i to %"core::result::Result<proc_macro::TokenStream, imp::LexError>"*, !dbg !3101 %198 = bitcast %"core::result::Result<proc_macro::TokenStream, imp::LexError>"* %7 to i8*, !dbg !3101 %199 = bitcast %"core::result::Result<proc_macro::TokenStream, imp::LexError>"* %197 to i8*, !dbg !3101 call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 4 %198, i8* align 4 %199, i64 8, i1 false), !dbg !3101 %200 = bitcast %"core::result::Result<proc_macro::TokenStream, imp::LexError>"* %7 to i64*, !dbg !3102 %201 = load i64, i64* %200, align 4, !dbg !3102 %202 = bitcast %"core::result::Result<proc_macro::TokenStream, imp::LexError>"* %7 to i8*, !dbg !3102 call void @llvm.lifetime.end.p0i8(i64 8, i8* %202), !dbg !3102 %203 = bitcast i64* %8 to i8*, !dbg !3102 call void @llvm.lifetime.end.p0i8(i64 8, i8* %203), !dbg !3102 %204 = bitcast %"core::mem::manually_drop::ManuallyDrop<core::result::Result<proc_macro::TokenStream, imp::LexError>>"* %slot.i to i8*, !dbg !3102 call void @llvm.lifetime.end.p0i8(i64 8, i8* %204), !dbg !3102 store i64 %201, i64* %10, align 8, !dbg !3100 %205 = bitcast %"core::result::Result<proc_macro::TokenStream, imp::LexError>"* %_14 to i8*, !dbg !3100 %206 = bitcast i64* %10 to i8*, !dbg !3100 call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 4 %205, i8* align 8 %206, i64 8, i1 false), !dbg !3100 br label %bb5, !dbg !3100 bb5: ; preds = %bb4 %207 = phi i64* [ getelementptr inbounds ([24 x i64], [24 x i64]* @__llvm_gcov_ctr.28, i64 0, i64 20), %bb4 ], !dbg !3103 %208 = load i64, i64* %207, !dbg !3103 %209 = add i64 %208, 1, !dbg !3103 store i64 %209, i64* %207, !dbg !3103 %210 = bitcast %"core::result::Result<core::result::Result<proc_macro::TokenStream, imp::LexError>, alloc::boxed::Box<core::any::Any>>"* %0 to %"core::result::Result<core::result::Result<proc_macro::TokenStream, imp::LexError>, alloc::boxed::Box<core::any::Any>>::Ok"*, !dbg !3103 %211 = getelementptr inbounds %"core::result::Result<core::result::Result<proc_macro::TokenStream, imp::LexError>, alloc::boxed::Box<core::any::Any>>::Ok", %"core::result::Result<core::result::Result<proc_macro::TokenStream, imp::LexError>, alloc::boxed::Box<core::any::Any>>::Ok"* %210, i32 0, i32 1, !dbg !3103 %212 = bitcast %"core::result::Result<proc_macro::TokenStream, imp::LexError>"* %211 to i8*, !dbg !3103 %213 = bitcast %"core::result::Result<proc_macro::TokenStream, imp::LexError>"* %_14 to i8*, !dbg !3103 call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 4 %212, i8* align 4 %213, i64 8, i1 false), !dbg !3103 %214 = bitcast %"core::result::Result<core::result::Result<proc_macro::TokenStream, imp::LexError>, alloc::boxed::Box<core::any::Any>>"* %0 to i32*, !dbg !3103 store i32 0, i32* %214, align 8, !dbg !3103 br label %bb7, !dbg !3090 bb6: ; preds = %bb3 %215 = phi i64* [ getelementptr inbounds ([24 x i64], [24 x i64]* @__llvm_gcov_ctr.28, i64 0, i64 19), %bb3 ], !dbg !3104 %216 = load i64, i64* %215, !dbg !3104 %217 = add i64 %216, 1, !dbg !3104 store i64 %217, i64* %215, !dbg !3104 %218 = bitcast %"core::result::Result<core::result::Result<proc_macro::TokenStream, imp::LexError>, alloc::boxed::Box<core::any::Any>>"* %0 to %"core::result::Result<core::result::Result<proc_macro::TokenStream, imp::LexError>, alloc::boxed::Box<core::any::Any>>::Err"*, !dbg !3104 %219 = getelementptr inbounds %"core::result::Result<core::result::Result<proc_macro::TokenStream, imp::LexError>, alloc::boxed::Box<core::any::Any>>::Err", %"core::result::Result<core::result::Result<proc_macro::TokenStream, imp::LexError>, alloc::boxed::Box<core::any::Any>>::Err"* %218, i32 0, i32 1, !dbg !3104 %220 = getelementptr inbounds { {}*, [3 x i64]* }, { {}*, [3 x i64]* }* %219, i32 0, i32 0, !dbg !3104 store {}* %_17.0, {}** %220, align 8, !dbg !3104 %221 = getelementptr inbounds { {}*, [3 x i64]* }, { {}*, [3 x i64]* }* %219, i32 0, i32 1, !dbg !3104 store [3 x i64]* %_17.1, [3 x i64]** %221, align 8, !dbg !3104 %222 = bitcast %"core::result::Result<core::result::Result<proc_macro::TokenStream, imp::LexError>, alloc::boxed::Box<core::any::Any>>"* %0 to i32*, !dbg !3104 store i32 1, i32* %222, align 8, !dbg !3104 br label %bb7, !dbg !3090 bb7: ; preds = %bb6, %bb5 %223 = phi i64* [ getelementptr inbounds ([24 x i64], [24 x i64]* @__llvm_gcov_ctr.28, i64 0, i64 22), %bb6 ], [ getelementptr inbounds ([24 x i64], [24 x i64]* @__llvm_gcov_ctr.28, i64 0, i64 21), %bb5 ], !dbg !3105 %224 = load i64, i64* %223, !dbg !3105 %225 = add i64 %224, 1, !dbg !3105 store i64 %225, i64* %223, !dbg !3105 %226 = load i64, i64* getelementptr inbounds ([24 x i64], [24 x i64]* @__llvm_gcov_ctr.28, i64 0, i64 23), !dbg !3105 %227 = add i64 %226, 1, !dbg !3105 store i64 %227, i64* getelementptr inbounds ([24 x i64], [24 x i64]* @__llvm_gcov_ctr.28, i64 0, i64 23), !dbg !3105 ret void, !dbg !3105 } 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 charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,405 @@ .section .text._ZN3std9panicking3try17h2c4df7f3f9c79acfE,"ax",@progbits .globl _ZN3std9panicking3try17h2c4df7f3f9c79acfE .p2align 4, 0x90 .type _ZN3std9panicking3try17h2c4df7f3f9c79acfE,@function _ZN3std9panicking3try17h2c4df7f3f9c79acfE: .Lfunc_begin27: .loc 27 240 0 .cfi_startproc .cfi_personality 155, DW.ref.rust_eh_personality .cfi_lsda 27, .Lexception8 subq $616, %rsp .cfi_def_cfa_offset 624 movq %rdi, %rax leaq __llvm_gcov_ctr.27(%rip), %rcx movq %rdi, 280(%rsp) movq %rax, 272(%rsp) movq %rcx, 264(%rsp) movq 264(%rsp), %rax leaq __llvm_gcov_ctr.27(%rip), %rcx addq $8, %rcx .Ltmp380: .file 28 "/rustc/f509b26a7730d721ef87423a72b3fdf8724b4afa/src/libcore/mem/manually_drop.rs" .loc 28 68 22 prologue_end movq (%rax), %rdx addq $1, %rdx movq %rdx, (%rax) movq %rcx, 256(%rsp) .Ltmp381: .loc 28 0 22 is_stmt 0 movq 256(%rsp), %rax leaq __llvm_gcov_ctr.27(%rip), %rcx addq $16, %rcx .loc 27 271 20 is_stmt 1 movq (%rax), %rdx addq $1, %rdx movq %rdx, (%rax) .Ltmp382: .loc 27 273 20 leaq 288(%rsp), %rax movq %rax, %rdx movq %rdx, 328(%rsp) movq %rdx, 480(%rsp) .Ltmp383: .loc 27 328 24 movq %rax, 496(%rsp) .Ltmp384: .loc 27 329 24 movq %rax, 504(%rsp) movq %rax, 544(%rsp) movq %rax, 560(%rsp) movq %rdx, 248(%rsp) movq %rax, 240(%rsp) movq %rcx, 232(%rsp) .loc 27 0 24 is_stmt 0 movq 232(%rsp), %rax leaq __llvm_gcov_ctr.27(%rip), %rcx addq $24, %rcx movq (%rax), %rdx addq $1, %rdx movq %rdx, (%rax) leaq 552(%rsp), %rax movq %rax, 592(%rsp) movq %rax, 600(%rsp) movq %rax, 224(%rsp) movq %rcx, 216(%rsp) movq 216(%rsp), %rax leaq __llvm_gcov_ctr.27(%rip), %rcx addq $32, %rcx .Ltmp385: .file 29 "/rustc/f509b26a7730d721ef87423a72b3fdf8724b4afa/src/libcore/mem/maybe_uninit.rs" .loc 29 449 6 is_stmt 1 movq (%rax), %rdx addq $1, %rdx movq %rdx, (%rax) movq %rcx, 208(%rsp) .Ltmp386: .loc 29 0 6 is_stmt 0 movq 208(%rsp), %rax leaq __llvm_gcov_ctr.27(%rip), %rcx addq $40, %rcx movq (%rax), %rdx addq $1, %rdx movq %rdx, (%rax) movq 240(%rsp), %rax movq %rax, 568(%rsp) movq 224(%rsp), %rdx movq %rdx, 576(%rsp) movq $1, 584(%rsp) movq %rcx, 200(%rsp) movq 200(%rsp), %rax leaq __llvm_gcov_ctr.27(%rip), %rcx addq $48, %rcx .Ltmp387: .loc 29 497 31 is_stmt 1 movq (%rax), %rdx addq $1, %rdx movq %rdx, (%rax) movq %rcx, 192(%rsp) .loc 29 0 31 is_stmt 0 movq 192(%rsp), %rax leaq __llvm_gcov_ctr.27(%rip), %rcx addq $56, %rcx .loc 29 503 6 is_stmt 1 movq (%rax), %rdx addq $1, %rdx movq %rdx, (%rax) movq %rcx, 184(%rsp) .Ltmp388: .loc 29 0 6 is_stmt 0 movq 184(%rsp), %rax leaq __llvm_gcov_ctr.27(%rip), %rcx addq $64, %rcx .loc 4 630 2 is_stmt 1 movq (%rax), %rdx addq $1, %rdx movq %rdx, (%rax) movq %rcx, 176(%rsp) .Ltmp389: .loc 4 0 2 is_stmt 0 movq 176(%rsp), %rax leaq __llvm_gcov_ctr.27(%rip), %rcx addq $72, %rcx .loc 28 112 6 is_stmt 1 movq (%rax), %rdx addq $1, %rdx movq %rdx, (%rax) movq %rcx, 168(%rsp) .Ltmp390: .loc 28 0 6 is_stmt 0 movq 168(%rsp), %rax .Ltmp391: .loc 27 331 40 is_stmt 1 movq (%rax), %rcx addq $1, %rcx movq %rcx, (%rax) leaq __llvm_gcov_ctr.27+88(%rip), %rax leaq __llvm_gcov_ctr.27+80(%rip), %rcx .Ltmp377: movq %rax, 160(%rsp) movq %rcx, 152(%rsp) callq _ZN11proc_macro23imp13nightly_works28_$u7b$$u7b$closure$u7d$$u7d$28_$u7b$$u7b$closure$u7d$$u7d$17h918411ad0b79ae9fE .Ltmp378: movq 152(%rsp), %rcx movl %eax, 148(%rsp) movq %rcx, 136(%rsp) jmp .LBB27_11 .LBB27_11: .loc 27 0 40 is_stmt 0 movq 136(%rsp), %rax leaq __llvm_gcov_ctr.27(%rip), %rcx addq $96, %rcx .loc 27 331 40 movq (%rax), %rdx addq $1, %rdx movq %rdx, (%rax) movl 148(%rsp), %esi movl %esi, 512(%rsp) movl 512(%rsp), %edi movl %edi, 472(%rsp) .loc 27 331 22 movl 472(%rsp), %edi movl %edi, 524(%rsp) movl 524(%rsp), %edi movl %edi, 520(%rsp) .Ltmp392: .loc 28 69 24 is_stmt 1 movl 520(%rsp), %edi movl %edi, 536(%rsp) .loc 28 69 9 is_stmt 0 movl 536(%rsp), %edi movl %edi, 528(%rsp) .loc 28 70 6 is_stmt 1 movl 528(%rsp), %edi movl %edi, 132(%rsp) movq %rcx, 120(%rsp) .Ltmp393: .loc 28 0 6 is_stmt 0 movq 120(%rsp), %rax leaq __llvm_gcov_ctr.27(%rip), %rcx addq $104, %rcx .loc 27 331 22 is_stmt 1 movq (%rax), %rdx addq $1, %rdx movq %rdx, (%rax) movl 132(%rsp), %esi movl %esi, 516(%rsp) movl 516(%rsp), %edi movl %edi, 464(%rsp) .loc 27 331 13 is_stmt 0 movl 464(%rsp), %edi movl %edi, 288(%rsp) movq %rcx, 112(%rsp) .Ltmp394: .loc 27 0 13 movq 112(%rsp), %rax leaq __llvm_gcov_ctr.27(%rip), %rcx addq $112, %rcx xorl %edx, %edx .loc 27 274 15 is_stmt 1 movq (%rax), %rsi addq $1, %rsi movq %rsi, (%rax) movq %rcx, 104(%rsp) movl %edx, 100(%rsp) jmp .LBB27_15 .LBB27_14: .loc 27 0 15 is_stmt 0 movq 160(%rsp), %rcx movl $1, %esi .Ltmp379: leaq __llvm_gcov_ctr.27(%rip), %rdi addq $120, %rdi .loc 27 274 15 movq (%rcx), %r8 addq $1, %r8 movq %r8, (%rcx) movq 248(%rsp), %rcx movq %rcx, 384(%rsp) movq %rax, 392(%rsp) leaq 288(%rsp), %r8 .Ltmp395: .loc 27 341 24 is_stmt 1 movq %r8, 400(%rsp) .Ltmp396: .loc 27 342 24 movq %r8, 408(%rsp) .Ltmp397: .loc 27 343 23 movq _ZN3std9panicking3try7cleanup17h97268322f249355eE@GOTPCREL(%rip), %r8 movq %rdi, 88(%rsp) movq %rax, %rdi movl %esi, 84(%rsp) movq %rdx, 72(%rsp) callq *%r8 movq %rax, 416(%rsp) movq %rdx, 424(%rsp) movq %rax, 448(%rsp) movq %rdx, 456(%rsp) .Ltmp398: .loc 28 69 9 movq %rax, 432(%rsp) movq %rdx, 440(%rsp) .loc 28 70 6 movq 432(%rsp), %rax movq 440(%rsp), %rcx .Ltmp399: .loc 27 344 13 movq %rax, 288(%rsp) movq %rcx, 296(%rsp) movq 88(%rsp), %rax movl 84(%rsp), %esi movq %rax, 104(%rsp) movl %esi, 100(%rsp) .Ltmp400: .LBB27_15: .loc 27 0 13 is_stmt 0 movl 100(%rsp), %eax movq 104(%rsp), %rcx leaq __llvm_gcov_ctr.27(%rip), %rdx addq $128, %rdx .loc 27 274 15 is_stmt 1 movq (%rcx), %rsi addq $1, %rsi movq %rsi, (%rcx) movl %eax, 336(%rsp) movl 336(%rsp), %eax movl %eax, 68(%rsp) movq %rdx, 56(%rsp) .loc 27 0 15 is_stmt 0 movq 56(%rsp), %rax leaq __llvm_gcov_ctr.27(%rip), %rcx movq %rcx, %rdx addq $136, %rdx addq $144, %rcx .loc 27 274 15 movq (%rax), %rsi addq $1, %rsi movq %rsi, (%rax) movl 68(%rsp), %edi cmpl $0, %edi movq %rcx, 48(%rsp) movq %rdx, 40(%rsp) .loc 27 274 12 je .LBB27_18 .loc 27 0 12 movq 48(%rsp), %rax leaq __llvm_gcov_ctr.27(%rip), %rcx addq $152, %rcx .loc 27 277 38 is_stmt 1 movq (%rax), %rdx addq $1, %rdx movq %rdx, (%rax) movq 288(%rsp), %rax movq 296(%rsp), %rdx movq %rax, 368(%rsp) movq %rdx, 376(%rsp) movq %rax, 32(%rsp) movq %rdx, 24(%rsp) movq %rcx, 16(%rsp) .loc 27 277 13 is_stmt 0 jmp .LBB27_20 .LBB27_18: .loc 27 0 13 movq 40(%rsp), %rax leaq __llvm_gcov_ctr.27(%rip), %rcx addq $160, %rcx .loc 27 275 37 is_stmt 1 movq (%rax), %rdx addq $1, %rdx movq %rdx, (%rax) movl 288(%rsp), %esi movl %esi, 312(%rsp) .loc 27 275 12 is_stmt 0 movl 312(%rsp), %esi movl %esi, 356(%rsp) movl 356(%rsp), %esi movl %esi, 352(%rsp) .Ltmp401: .loc 28 87 9 is_stmt 1 movl 352(%rsp), %esi movl %esi, 360(%rsp) .loc 28 88 6 movl 360(%rsp), %esi .Ltmp402: .loc 27 275 12 movl %esi, 340(%rsp) movl 340(%rsp), %esi movl %esi, 304(%rsp) movq %rcx, 8(%rsp) .loc 27 0 12 is_stmt 0 movq 8(%rsp), %rax leaq __llvm_gcov_ctr.27(%rip), %rcx addq $168, %rcx .loc 27 275 9 movq (%rax), %rdx addq $1, %rdx movq %rdx, (%rax) movl 304(%rsp), %esi movq 280(%rsp), %rax movl %esi, 4(%rax) movl $0, (%rax) movq %rcx, (%rsp) .loc 27 274 12 is_stmt 1 jmp .LBB27_21 .LBB27_20: .loc 27 0 12 is_stmt 0 movq 16(%rsp), %rax leaq __llvm_gcov_ctr.27(%rip), %rcx addq $176, %rcx .loc 27 277 9 is_stmt 1 movq (%rax), %rdx addq $1, %rdx movq %rdx, (%rax) movq 280(%rsp), %rax movq 32(%rsp), %rdx movq %rdx, 8(%rax) movq 24(%rsp), %rsi movq %rsi, 16(%rax) movl $1, (%rax) movq %rcx, (%rsp) .Ltmp403: .LBB27_21: .loc 27 0 9 is_stmt 0 movq (%rsp), %rax .loc 27 347 2 is_stmt 1 movq (%rax), %rcx addq $1, %rcx movq %rcx, (%rax) movq __llvm_gcov_ctr.27+184(%rip), %rax addq $1, %rax movq %rax, __llvm_gcov_ctr.27+184(%rip) movq 272(%rsp), %rax addq $616, %rsp .cfi_def_cfa_offset 8 retq .Ltmp404: .Lfunc_end27: .size _ZN3std9panicking3try17h2c4df7f3f9c79acfE, .Lfunc_end27-_ZN3std9panicking3try17h2c4df7f3f9c79acfE .cfi_endproc .section .gcc_except_table,"a",@progbits .p2align 2 GCC_except_table27: .Lexception8: .byte 255 .byte 156 .uleb128 .Lttbase0-.Lttbaseref0 .Lttbaseref0: .byte 1 .uleb128 .Lcst_end8-.Lcst_begin8 .Lcst_begin8: .uleb128 .Ltmp377-.Lfunc_begin27 .uleb128 .Ltmp378-.Ltmp377 .uleb128 .Ltmp379-.Lfunc_begin27 .byte 1 .uleb128 .Ltmp378-.Lfunc_begin27 .uleb128 .Lfunc_end27-.Ltmp378 .byte 0 .byte 0 .Lcst_end8: .byte 1 .byte 0 .p2align 2 .quad 0 .Lttbase0: .p2align 2