Created
February 14, 2018 19:37
-
-
Save alexcrichton/c39d44ea1df7293b5a522293340be6ee to your computer and use it in GitHub Desktop.
This file contains 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 = 'bad-position-simple.bad_position_simple0-317d481089b8c8fe83113de504472633.rs.rcgu.thin-lto-after-patch.bc' | |
source_filename = "bad_position_simple0-317d481089b8c8fe83113de504472633.rs" | |
target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" | |
target triple = "x86_64-unknown-linux-gnu" | |
%"core::result::Result<usize, usize>" = type { [0 x i64], i64, [1 x i64] } | |
%"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] } | |
@str.7 = internal constant [22 x i8] c"bad-position-simple.rs" | |
@panic_bounds_check_loc.8 = private unnamed_addr constant { { [0 x i8]*, i64 }, i32, i32 } { { [0 x i8]*, i64 } { [0 x i8]* bitcast ([22 x i8]* @str.7 to [0 x i8]*), i64 22 }, i32 9, i32 43 }, align 8 | |
; Function Attrs: uwtable | |
define hidden void @_ZN19bad_position_simple4test21import_path_to_string17h099030e197a06397E([0 x i32]* noalias nonnull readonly, i64) unnamed_addr #0 personality i32 (i32, i32, i64, %"unwind::libunwind::_Unwind_Exception"*, %"unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality { | |
%3 = alloca %"core::result::Result<usize, usize>", align 8 | |
%4 = alloca %"core::result::Result<usize, usize>", align 8 | |
%5 = alloca %"core::result::Result<usize, usize>", align 8 | |
%6 = alloca %"core::result::Result<usize, usize>", align 8 | |
%7 = alloca %"core::result::Result<usize, usize>", align 8 | |
%8 = alloca %"core::result::Result<usize, usize>", align 8 | |
%9 = alloca %"core::result::Result<usize, usize>", align 8 | |
%10 = alloca %"core::result::Result<usize, usize>", align 8 | |
%11 = alloca %"core::result::Result<usize, usize>", align 8 | |
%12 = alloca %"core::result::Result<usize, usize>", align 8 | |
%13 = alloca %"core::result::Result<usize, usize>", align 8 | |
%14 = getelementptr inbounds [0 x i32], [0 x i32]* %0, i64 0, i64 0 | |
%15 = getelementptr inbounds [0 x i32], [0 x i32]* %0, i64 0, i64 %1 | |
%16 = ptrtoint i32* %15 to i64 | |
%17 = bitcast %"core::result::Result<usize, usize>"* %13 to i8* | |
%18 = bitcast %"core::result::Result<usize, usize>"* %3 to i8* | |
%19 = bitcast %"core::result::Result<usize, usize>"* %4 to i8* | |
%20 = bitcast %"core::result::Result<usize, usize>"* %5 to i8* | |
%21 = bitcast %"core::result::Result<usize, usize>"* %6 to i8* | |
%22 = bitcast %"core::result::Result<usize, usize>"* %7 to i8* | |
%23 = bitcast %"core::result::Result<usize, usize>"* %8 to i8* | |
%24 = bitcast %"core::result::Result<usize, usize>"* %9 to i8* | |
%25 = bitcast %"core::result::Result<usize, usize>"* %10 to i8* | |
%26 = bitcast %"core::result::Result<usize, usize>"* %11 to i8* | |
%27 = bitcast %"core::result::Result<usize, usize>"* %12 to i8* | |
%28 = getelementptr inbounds %"core::result::Result<usize, usize>", %"core::result::Result<usize, usize>"* %11, i64 0, i32 2, i64 0 | |
%29 = getelementptr inbounds %"core::result::Result<usize, usize>", %"core::result::Result<usize, usize>"* %11, i64 0, i32 0, i64 0 | |
%30 = getelementptr inbounds %"core::result::Result<usize, usize>", %"core::result::Result<usize, usize>"* %12, i64 0, i32 0, i64 0 | |
%31 = getelementptr inbounds %"core::result::Result<usize, usize>", %"core::result::Result<usize, usize>"* %12, i64 0, i32 2, i64 0 | |
%32 = getelementptr inbounds %"core::result::Result<usize, usize>", %"core::result::Result<usize, usize>"* %9, i64 0, i32 2, i64 0 | |
%33 = getelementptr inbounds %"core::result::Result<usize, usize>", %"core::result::Result<usize, usize>"* %9, i64 0, i32 0, i64 0 | |
%34 = getelementptr inbounds %"core::result::Result<usize, usize>", %"core::result::Result<usize, usize>"* %10, i64 0, i32 0, i64 0 | |
%35 = getelementptr inbounds %"core::result::Result<usize, usize>", %"core::result::Result<usize, usize>"* %10, i64 0, i32 2, i64 0 | |
%36 = getelementptr inbounds %"core::result::Result<usize, usize>", %"core::result::Result<usize, usize>"* %7, i64 0, i32 2, i64 0 | |
%37 = getelementptr inbounds %"core::result::Result<usize, usize>", %"core::result::Result<usize, usize>"* %7, i64 0, i32 0, i64 0 | |
%38 = getelementptr inbounds %"core::result::Result<usize, usize>", %"core::result::Result<usize, usize>"* %8, i64 0, i32 0, i64 0 | |
%39 = getelementptr inbounds %"core::result::Result<usize, usize>", %"core::result::Result<usize, usize>"* %8, i64 0, i32 2, i64 0 | |
%40 = getelementptr inbounds %"core::result::Result<usize, usize>", %"core::result::Result<usize, usize>"* %5, i64 0, i32 2, i64 0 | |
%41 = getelementptr inbounds %"core::result::Result<usize, usize>", %"core::result::Result<usize, usize>"* %5, i64 0, i32 0, i64 0 | |
%42 = getelementptr inbounds %"core::result::Result<usize, usize>", %"core::result::Result<usize, usize>"* %6, i64 0, i32 0, i64 0 | |
%43 = getelementptr inbounds %"core::result::Result<usize, usize>", %"core::result::Result<usize, usize>"* %6, i64 0, i32 2, i64 0 | |
%44 = shl nuw i64 %1, 2 | |
%45 = sdiv i64 %44, 4 | |
%46 = icmp ugt i64 %45, 3 | |
br i1 %46, label %47, label %53 | |
; <label>:47: ; preds = %2 | |
br label %62 | |
; <label>:48: ; preds = %103 | |
%49 = ptrtoint i32* %110 to i64 | |
%50 = sub i64 %16, %49 | |
%51 = sdiv i64 %50, 4 | |
%52 = icmp ugt i64 %51, 3 | |
br i1 %52, label %62, label %53 | |
; <label>:53: ; preds = %48, %2 | |
%54 = phi i32* [ %14, %2 ], [ %110, %48 ] | |
%55 = phi i64 [ 0, %2 ], [ %112, %48 ] | |
%56 = getelementptr inbounds %"core::result::Result<usize, usize>", %"core::result::Result<usize, usize>"* %3, i64 0, i32 2, i64 0 | |
%57 = getelementptr inbounds %"core::result::Result<usize, usize>", %"core::result::Result<usize, usize>"* %3, i64 0, i32 0, i64 0 | |
%58 = getelementptr inbounds %"core::result::Result<usize, usize>", %"core::result::Result<usize, usize>"* %4, i64 0, i32 0, i64 0 | |
%59 = getelementptr inbounds %"core::result::Result<usize, usize>", %"core::result::Result<usize, usize>"* %4, i64 0, i32 2, i64 0 | |
%60 = icmp eq i32* %54, %15 | |
br i1 %60, label %116, label %61 | |
; <label>:61: ; preds = %53 | |
br label %118 | |
; <label>:62: ; preds = %48, %47 | |
%63 = phi i64 [ %112, %48 ], [ 0, %47 ] | |
%64 = phi i32* [ %110, %48 ], [ %14, %47 ] | |
%65 = getelementptr inbounds i32, i32* %64, i64 1 | |
%66 = load i32, i32* %64, align 4, !alias.scope !4, !noalias !9 | |
%67 = icmp eq i32 %66, 1 | |
%68 = zext i1 %67 to i64 | |
%69 = add i64 %63, %68 | |
%70 = xor i1 %67, true | |
%71 = zext i1 %70 to i64 | |
store i64 %69, i64* %28, align 8, !alias.scope !13, !noalias !14 | |
store i64 %71, i64* %29, align 8, !alias.scope !13, !noalias !14 | |
call void @"_ZN78_$LT$core..result..Result$LT$T$C$$u20$E$GT$$u20$as$u20$core..ops..try..Try$GT$11into_result17h20c389a4d040cb5eE"(%"core::result::Result<usize, usize>"* noalias nocapture nonnull sret dereferenceable(16) %12, %"core::result::Result<usize, usize>"* noalias nocapture nonnull dereferenceable(16) %11) | |
%72 = load i64, i64* %30, align 8, !range !15, !noalias !16 | |
%73 = icmp eq i64 %72, 1 | |
%74 = load i64, i64* %31, align 8, !noalias !16 | |
br i1 %73, label %75, label %77 | |
; <label>:75: ; preds = %62 | |
%76 = call i64 @"_ZN50_$LT$T$u20$as$u20$core..convert..From$LT$T$GT$$GT$4from17h514ffbaf3bb75a3eE"(i64 %74) | |
call void @"_ZN78_$LT$core..result..Result$LT$T$C$$u20$E$GT$$u20$as$u20$core..ops..try..Try$GT$10from_error17h222e7515b9cde0afE"(%"core::result::Result<usize, usize>"* noalias nocapture nonnull sret dereferenceable(16) %13, i64 %76) | |
br label %135 | |
; <label>:77: ; preds = %62 | |
%78 = getelementptr inbounds i32, i32* %64, i64 2 | |
%79 = load i32, i32* %65, align 4, !alias.scope !17, !noalias !22 | |
%80 = icmp eq i32 %79, 1 | |
%81 = zext i1 %80 to i64 | |
%82 = add i64 %74, %81 | |
%83 = xor i1 %80, true | |
%84 = zext i1 %83 to i64 | |
store i64 %82, i64* %32, align 8, !alias.scope !24, !noalias !25 | |
store i64 %84, i64* %33, align 8, !alias.scope !24, !noalias !25 | |
call void @"_ZN78_$LT$core..result..Result$LT$T$C$$u20$E$GT$$u20$as$u20$core..ops..try..Try$GT$11into_result17h20c389a4d040cb5eE"(%"core::result::Result<usize, usize>"* noalias nocapture nonnull sret dereferenceable(16) %10, %"core::result::Result<usize, usize>"* noalias nocapture nonnull dereferenceable(16) %9) | |
%85 = load i64, i64* %34, align 8, !range !15, !noalias !16 | |
%86 = icmp eq i64 %85, 1 | |
%87 = load i64, i64* %35, align 8, !noalias !16 | |
br i1 %86, label %88, label %90 | |
; <label>:88: ; preds = %77 | |
%89 = call i64 @"_ZN50_$LT$T$u20$as$u20$core..convert..From$LT$T$GT$$GT$4from17h514ffbaf3bb75a3eE"(i64 %87) | |
call void @"_ZN78_$LT$core..result..Result$LT$T$C$$u20$E$GT$$u20$as$u20$core..ops..try..Try$GT$10from_error17h222e7515b9cde0afE"(%"core::result::Result<usize, usize>"* noalias nocapture nonnull sret dereferenceable(16) %13, i64 %89) | |
br label %135 | |
; <label>:90: ; preds = %77 | |
%91 = getelementptr inbounds i32, i32* %64, i64 3 | |
%92 = load i32, i32* %78, align 4, !alias.scope !26, !noalias !31 | |
%93 = icmp eq i32 %92, 1 | |
%94 = zext i1 %93 to i64 | |
%95 = add i64 %87, %94 | |
%96 = xor i1 %93, true | |
%97 = zext i1 %96 to i64 | |
store i64 %95, i64* %36, align 8, !alias.scope !33, !noalias !34 | |
store i64 %97, i64* %37, align 8, !alias.scope !33, !noalias !34 | |
call void @"_ZN78_$LT$core..result..Result$LT$T$C$$u20$E$GT$$u20$as$u20$core..ops..try..Try$GT$11into_result17h20c389a4d040cb5eE"(%"core::result::Result<usize, usize>"* noalias nocapture nonnull sret dereferenceable(16) %8, %"core::result::Result<usize, usize>"* noalias nocapture nonnull dereferenceable(16) %7) | |
%98 = load i64, i64* %38, align 8, !range !15, !noalias !16 | |
%99 = icmp eq i64 %98, 1 | |
%100 = load i64, i64* %39, align 8, !noalias !16 | |
br i1 %99, label %101, label %103 | |
; <label>:101: ; preds = %90 | |
%102 = call i64 @"_ZN50_$LT$T$u20$as$u20$core..convert..From$LT$T$GT$$GT$4from17h514ffbaf3bb75a3eE"(i64 %100) | |
call void @"_ZN78_$LT$core..result..Result$LT$T$C$$u20$E$GT$$u20$as$u20$core..ops..try..Try$GT$10from_error17h222e7515b9cde0afE"(%"core::result::Result<usize, usize>"* noalias nocapture nonnull sret dereferenceable(16) %13, i64 %102) | |
br label %135 | |
; <label>:103: ; preds = %90 | |
%104 = load i32, i32* %91, align 4, !alias.scope !35, !noalias !40 | |
%105 = icmp eq i32 %104, 1 | |
%106 = zext i1 %105 to i64 | |
%107 = add i64 %100, %106 | |
%108 = xor i1 %105, true | |
%109 = zext i1 %108 to i64 | |
store i64 %107, i64* %40, align 8, !alias.scope !42, !noalias !43 | |
store i64 %109, i64* %41, align 8, !alias.scope !42, !noalias !43 | |
call void @"_ZN78_$LT$core..result..Result$LT$T$C$$u20$E$GT$$u20$as$u20$core..ops..try..Try$GT$11into_result17h20c389a4d040cb5eE"(%"core::result::Result<usize, usize>"* noalias nocapture nonnull sret dereferenceable(16) %6, %"core::result::Result<usize, usize>"* noalias nocapture nonnull dereferenceable(16) %5) | |
%110 = getelementptr inbounds i32, i32* %64, i64 4 | |
%111 = load i64, i64* %42, align 8, !range !15, !noalias !16 | |
%112 = load i64, i64* %43, align 8, !noalias !16 | |
%113 = icmp eq i64 %111, 1 | |
br i1 %113, label %114, label %48 | |
; <label>:114: ; preds = %103 | |
%115 = call i64 @"_ZN50_$LT$T$u20$as$u20$core..convert..From$LT$T$GT$$GT$4from17h514ffbaf3bb75a3eE"(i64 %112) | |
call void @"_ZN78_$LT$core..result..Result$LT$T$C$$u20$E$GT$$u20$as$u20$core..ops..try..Try$GT$10from_error17h222e7515b9cde0afE"(%"core::result::Result<usize, usize>"* noalias nocapture nonnull sret dereferenceable(16) %13, i64 %115) | |
br label %135 | |
; <label>:116: ; preds = %131, %53 | |
%117 = phi i64 [ %55, %53 ], [ %129, %131 ] | |
call void @"_ZN78_$LT$core..result..Result$LT$T$C$$u20$E$GT$$u20$as$u20$core..ops..try..Try$GT$7from_ok17hed12cd599a454669E"(%"core::result::Result<usize, usize>"* noalias nocapture nonnull sret dereferenceable(16) %13, i64 %117) | |
br label %135 | |
; <label>:118: ; preds = %131, %61 | |
%119 = phi i64 [ %129, %131 ], [ %55, %61 ] | |
%120 = phi i32* [ %121, %131 ], [ %54, %61 ] | |
%121 = getelementptr inbounds i32, i32* %120, i64 1 | |
%122 = load i32, i32* %120, align 4, !alias.scope !44, !noalias !49 | |
%123 = icmp eq i32 %122, 1 | |
%124 = zext i1 %123 to i64 | |
%125 = add i64 %119, %124 | |
%126 = xor i1 %123, true | |
%127 = zext i1 %126 to i64 | |
store i64 %125, i64* %56, align 8, !alias.scope !51, !noalias !52 | |
store i64 %127, i64* %57, align 8, !alias.scope !51, !noalias !52 | |
call void @"_ZN78_$LT$core..result..Result$LT$T$C$$u20$E$GT$$u20$as$u20$core..ops..try..Try$GT$11into_result17h20c389a4d040cb5eE"(%"core::result::Result<usize, usize>"* noalias nocapture nonnull sret dereferenceable(16) %4, %"core::result::Result<usize, usize>"* noalias nocapture nonnull dereferenceable(16) %3) | |
%128 = load i64, i64* %58, align 8, !range !15, !noalias !16 | |
%129 = load i64, i64* %59, align 8, !noalias !16 | |
%130 = icmp eq i64 %128, 1 | |
br i1 %130, label %133, label %131 | |
; <label>:131: ; preds = %118 | |
%132 = icmp eq i32* %121, %15 | |
br i1 %132, label %116, label %118 | |
; <label>:133: ; preds = %118 | |
%134 = call i64 @"_ZN50_$LT$T$u20$as$u20$core..convert..From$LT$T$GT$$GT$4from17h514ffbaf3bb75a3eE"(i64 %129) | |
call void @"_ZN78_$LT$core..result..Result$LT$T$C$$u20$E$GT$$u20$as$u20$core..ops..try..Try$GT$10from_error17h222e7515b9cde0afE"(%"core::result::Result<usize, usize>"* noalias nocapture nonnull sret dereferenceable(16) %13, i64 %134) | |
br label %135 | |
; <label>:135: ; preds = %133, %116, %114, %101, %88, %75 | |
%136 = getelementptr inbounds %"core::result::Result<usize, usize>", %"core::result::Result<usize, usize>"* %13, i64 0, i32 0, i64 0 | |
%137 = load i64, i64* %136, align 8, !range !15, !alias.scope !53, !noalias !56 | |
%138 = icmp eq i64 %137, 1 | |
br i1 %138, label %139, label %144 | |
; <label>:139: ; preds = %135 | |
%140 = getelementptr inbounds %"core::result::Result<usize, usize>", %"core::result::Result<usize, usize>"* %13, i64 0, i32 2, i64 0 | |
%141 = load i64, i64* %140, align 8, !alias.scope !53, !noalias !56 | |
%142 = icmp ult i64 %141, %1 | |
tail call void @llvm.assume(i1 %142) #2, !noalias !58 | |
%143 = add i64 %141, 1 | |
br label %144 | |
; <label>:144: ; preds = %139, %135 | |
%145 = phi i64 [ %143, %139 ], [ undef, %135 ] | |
%146 = phi i64 [ 1, %139 ], [ 0, %135 ] | |
%147 = tail call zeroext i1 @_ZN4core5slice8SliceExt8is_empty17h5df57ca3a59651deE([0 x i32]* noalias nonnull readonly %0, i64 %1) | |
br i1 %147, label %148, label %149 | |
; <label>:148: ; preds = %154, %144 | |
br label %151 | |
; <label>:149: ; preds = %144 | |
%150 = icmp eq i64 %1, 0 | |
br i1 %150, label %177, label %154, !prof !65 | |
; <label>:151: ; preds = %154, %148 | |
%152 = phi i1 [ false, %148 ], [ true, %154 ] | |
%153 = icmp eq i64 %146, 1 | |
br i1 %153, label %158, label %157 | |
; <label>:154: ; preds = %149 | |
%155 = load i32, i32* %14, align 4 | |
%156 = icmp eq i32 %155, 1 | |
br i1 %156, label %151, label %148 | |
; <label>:157: ; preds = %151 | |
br i1 %152, label %165, label %172 | |
; <label>:158: ; preds = %151 | |
%159 = icmp ugt i64 %145, %1 | |
br i1 %152, label %161, label %163 | |
; <label>:160: ; preds = %176, %172, %163, %161 | |
ret void | |
; <label>:161: ; preds = %158 | |
br i1 %159, label %162, label %160 | |
; <label>:162: ; preds = %161 | |
tail call void @_ZN4core5slice20slice_index_len_fail17h41ae248f36c196f1E(i64 %145, i64 %1) | |
unreachable | |
; <label>:163: ; preds = %158 | |
br i1 %159, label %164, label %160 | |
; <label>:164: ; preds = %163 | |
tail call void @_ZN4core5slice20slice_index_len_fail17h41ae248f36c196f1E(i64 %145, i64 %1) | |
unreachable | |
; <label>:165: ; preds = %157 | |
%166 = icmp eq i64 %1, 0 | |
br i1 %166, label %167, label %168 | |
; <label>:167: ; preds = %165 | |
tail call void @_ZN4core5slice22slice_index_order_fail17hd0a9eb5d87471258E(i64 1, i64 0) | |
unreachable | |
; <label>:168: ; preds = %165 | |
%169 = getelementptr inbounds [0 x i32], [0 x i32]* %0, i64 0, i64 1 | |
%170 = add i64 %1, -1 | |
%171 = bitcast i32* %169 to [0 x i32]* | |
br label %172 | |
; <label>:172: ; preds = %168, %157 | |
%173 = phi [0 x i32]* [ %171, %168 ], [ %0, %157 ] | |
%174 = phi i64 [ %170, %168 ], [ %1, %157 ] | |
%175 = tail call zeroext i1 @_ZN4core5slice8SliceExt8is_empty17h5df57ca3a59651deE([0 x i32]* noalias nonnull readonly %173, i64 %174) | |
br i1 %175, label %160, label %176 | |
; <label>:176: ; preds = %172 | |
tail call void @_ZN19bad_position_simple3foo3foo17h0d3289c3fdce124fE(i64 %174) | |
br label %160 | |
; <label>:177: ; preds = %149 | |
tail call void @_ZN4core9panicking18panic_bounds_check17hb9ff1ec5af7b2839E({ [0 x i64], { [0 x i8]*, i64 }, [0 x i32], i32, [0 x i32], i32, [0 x i32] }* noalias readonly dereferenceable(24) bitcast ({ { [0 x i8]*, i64 }, i32, i32 }* @panic_bounds_check_loc.8 to { [0 x i64], { [0 x i8]*, i64 }, [0 x i32], i32, [0 x i32], i32, [0 x i32] }*), i64 0, i64 0) | |
unreachable | |
} | |
declare i32 @rust_eh_personality(i32, i32, i64, %"unwind::libunwind::_Unwind_Exception"*, %"unwind::libunwind::_Unwind_Context"*) unnamed_addr #1 | |
; Function Attrs: nounwind | |
declare void @llvm.assume(i1) #2 | |
; Function Attrs: cold noinline noreturn | |
declare void @_ZN4core5slice22slice_index_order_fail17hd0a9eb5d87471258E(i64, i64) unnamed_addr #3 | |
; Function Attrs: cold noinline noreturn | |
declare void @_ZN4core5slice20slice_index_len_fail17h41ae248f36c196f1E(i64, i64) unnamed_addr #3 | |
; Function Attrs: cold noinline noreturn | |
declare void @_ZN4core9panicking18panic_bounds_check17hb9ff1ec5af7b2839E({ [0 x i64], { [0 x i8]*, i64 }, [0 x i32], i32, [0 x i32], i32, [0 x i32] }* noalias readonly dereferenceable(24), i64, i64) unnamed_addr #3 | |
; Function Attrs: cold noinline | |
declare hidden void @_ZN19bad_position_simple3foo3foo17h0d3289c3fdce124fE(i64) unnamed_addr #4 | |
; Function Attrs: argmemonly nounwind | |
; Function Attrs: argmemonly nounwind | |
; Function Attrs: norecurse nounwind readnone uwtable | |
define available_externally hidden zeroext i1 @_ZN4core5slice8SliceExt8is_empty17h5df57ca3a59651deE([0 x i32]* noalias nocapture nonnull readonly, i64) unnamed_addr #6 !thinlto_src_module !66 { | |
%3 = icmp eq i64 %1, 0 | |
ret i1 %3 | |
} | |
; Function Attrs: norecurse nounwind readnone uwtable | |
define available_externally hidden i64 @"_ZN50_$LT$T$u20$as$u20$core..convert..From$LT$T$GT$$GT$4from17h514ffbaf3bb75a3eE"(i64 returned) unnamed_addr #6 !thinlto_src_module !67 { | |
ret i64 %0 | |
} | |
; Function Attrs: norecurse nounwind uwtable | |
define available_externally hidden void @"_ZN78_$LT$core..result..Result$LT$T$C$$u20$E$GT$$u20$as$u20$core..ops..try..Try$GT$10from_error17h222e7515b9cde0afE"(%"core::result::Result<usize, usize>"* noalias nocapture sret dereferenceable(16), i64) unnamed_addr #7 !thinlto_src_module !68 { | |
%3 = getelementptr inbounds %"core::result::Result<usize, usize>", %"core::result::Result<usize, usize>"* %0, i64 0, i32 2, i64 0 | |
store i64 %1, i64* %3, align 8 | |
%4 = getelementptr inbounds %"core::result::Result<usize, usize>", %"core::result::Result<usize, usize>"* %0, i64 0, i32 0, i64 0 | |
store i64 1, i64* %4, align 8 | |
ret void | |
} | |
; Function Attrs: nounwind uwtable | |
define available_externally hidden void @"_ZN78_$LT$core..result..Result$LT$T$C$$u20$E$GT$$u20$as$u20$core..ops..try..Try$GT$11into_result17h20c389a4d040cb5eE"(%"core::result::Result<usize, usize>"* noalias nocapture sret dereferenceable(16), %"core::result::Result<usize, usize>"* noalias nocapture readonly dereferenceable(16)) unnamed_addr #8 !thinlto_src_module !68 { | |
%3 = bitcast %"core::result::Result<usize, usize>"* %1 to i8* | |
%4 = bitcast %"core::result::Result<usize, usize>"* %0 to i8* | |
tail call void @llvm.memcpy.p0i8.p0i8.i64(i8* nonnull %4, i8* nonnull %3, i64 16, i32 8, i1 false) | |
ret void | |
} | |
; Function Attrs: argmemonly nounwind | |
declare void @llvm.memcpy.p0i8.p0i8.i64(i8* nocapture writeonly, i8* nocapture readonly, i64, i32, i1) #5 | |
; Function Attrs: norecurse nounwind uwtable | |
define available_externally hidden void @"_ZN78_$LT$core..result..Result$LT$T$C$$u20$E$GT$$u20$as$u20$core..ops..try..Try$GT$7from_ok17hed12cd599a454669E"(%"core::result::Result<usize, usize>"* noalias nocapture sret dereferenceable(16), i64) unnamed_addr #7 !thinlto_src_module !68 { | |
%3 = getelementptr inbounds %"core::result::Result<usize, usize>", %"core::result::Result<usize, usize>"* %0, i64 0, i32 2, i64 0 | |
store i64 %1, i64* %3, align 8 | |
%4 = getelementptr inbounds %"core::result::Result<usize, usize>", %"core::result::Result<usize, usize>"* %0, i64 0, i32 0, i64 0 | |
store i64 0, i64* %4, align 8 | |
ret void | |
} | |
attributes #0 = { uwtable "probe-stack"="__rust_probestack" } | |
attributes #1 = { "probe-stack"="__rust_probestack" } | |
attributes #2 = { nounwind } | |
attributes #3 = { cold noinline noreturn "probe-stack"="__rust_probestack" } | |
attributes #4 = { cold noinline "probe-stack"="__rust_probestack" } | |
attributes #5 = { argmemonly nounwind } | |
attributes #6 = { norecurse nounwind readnone uwtable "probe-stack"="__rust_probestack" } | |
attributes #7 = { norecurse nounwind uwtable "probe-stack"="__rust_probestack" } | |
attributes #8 = { nounwind uwtable "probe-stack"="__rust_probestack" } | |
!1 = !{!2} | |
!2 = distinct !{!2, !3, !"_ZN91_$LT$core..slice..Iter$LT$$u27$a$C$$u20$T$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$8position17h8b58346f55ecd752E: argument 0"} | |
!3 = distinct !{!3, !"_ZN91_$LT$core..slice..Iter$LT$$u27$a$C$$u20$T$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$8position17h8b58346f55ecd752E"} | |
!4 = !{!5, !7} | |
!5 = distinct !{!5, !6, !"_ZN19bad_position_simple4test21import_path_to_string28_$u7b$$u7b$closure$u7d$$u7d$17hfb8fd737bf1a9981E: argument 0"} | |
!6 = distinct !{!6, !"_ZN19bad_position_simple4test21import_path_to_string28_$u7b$$u7b$closure$u7d$$u7d$17hfb8fd737bf1a9981E"} | |
!7 = distinct !{!7, !8, !"_ZN91_$LT$core..slice..Iter$LT$$u27$a$C$$u20$T$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$8position28_$u7b$$u7b$closure$u7d$$u7d$17ha78aa30fa5aeecc6E: argument 1"} | |
!8 = distinct !{!8, !"_ZN91_$LT$core..slice..Iter$LT$$u27$a$C$$u20$T$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$8position28_$u7b$$u7b$closure$u7d$$u7d$17ha78aa30fa5aeecc6E"} | |
!9 = !{!10, !11, !2} | |
!10 = distinct !{!10, !8, !"_ZN91_$LT$core..slice..Iter$LT$$u27$a$C$$u20$T$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$8position28_$u7b$$u7b$closure$u7d$$u7d$17ha78aa30fa5aeecc6E: argument 0"} | |
!11 = distinct !{!11, !12, !"_ZN91_$LT$core..slice..Iter$LT$$u27$a$C$$u20$T$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$8try_fold17he6b3066925144076E: argument 0"} | |
!12 = distinct !{!12, !"_ZN91_$LT$core..slice..Iter$LT$$u27$a$C$$u20$T$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$8try_fold17he6b3066925144076E"} | |
!13 = !{!10} | |
!14 = !{!7, !11, !2} | |
!15 = !{i64 0, i64 2} | |
!16 = !{!11, !2} | |
!17 = !{!18, !20} | |
!18 = distinct !{!18, !19, !"_ZN19bad_position_simple4test21import_path_to_string28_$u7b$$u7b$closure$u7d$$u7d$17hfb8fd737bf1a9981E: argument 0"} | |
!19 = distinct !{!19, !"_ZN19bad_position_simple4test21import_path_to_string28_$u7b$$u7b$closure$u7d$$u7d$17hfb8fd737bf1a9981E"} | |
!20 = distinct !{!20, !21, !"_ZN91_$LT$core..slice..Iter$LT$$u27$a$C$$u20$T$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$8position28_$u7b$$u7b$closure$u7d$$u7d$17ha78aa30fa5aeecc6E: argument 1"} | |
!21 = distinct !{!21, !"_ZN91_$LT$core..slice..Iter$LT$$u27$a$C$$u20$T$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$8position28_$u7b$$u7b$closure$u7d$$u7d$17ha78aa30fa5aeecc6E"} | |
!22 = !{!23, !11, !2} | |
!23 = distinct !{!23, !21, !"_ZN91_$LT$core..slice..Iter$LT$$u27$a$C$$u20$T$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$8position28_$u7b$$u7b$closure$u7d$$u7d$17ha78aa30fa5aeecc6E: argument 0"} | |
!24 = !{!23} | |
!25 = !{!20, !11, !2} | |
!26 = !{!27, !29} | |
!27 = distinct !{!27, !28, !"_ZN19bad_position_simple4test21import_path_to_string28_$u7b$$u7b$closure$u7d$$u7d$17hfb8fd737bf1a9981E: argument 0"} | |
!28 = distinct !{!28, !"_ZN19bad_position_simple4test21import_path_to_string28_$u7b$$u7b$closure$u7d$$u7d$17hfb8fd737bf1a9981E"} | |
!29 = distinct !{!29, !30, !"_ZN91_$LT$core..slice..Iter$LT$$u27$a$C$$u20$T$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$8position28_$u7b$$u7b$closure$u7d$$u7d$17ha78aa30fa5aeecc6E: argument 1"} | |
!30 = distinct !{!30, !"_ZN91_$LT$core..slice..Iter$LT$$u27$a$C$$u20$T$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$8position28_$u7b$$u7b$closure$u7d$$u7d$17ha78aa30fa5aeecc6E"} | |
!31 = !{!32, !11, !2} | |
!32 = distinct !{!32, !30, !"_ZN91_$LT$core..slice..Iter$LT$$u27$a$C$$u20$T$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$8position28_$u7b$$u7b$closure$u7d$$u7d$17ha78aa30fa5aeecc6E: argument 0"} | |
!33 = !{!32} | |
!34 = !{!29, !11, !2} | |
!35 = !{!36, !38} | |
!36 = distinct !{!36, !37, !"_ZN19bad_position_simple4test21import_path_to_string28_$u7b$$u7b$closure$u7d$$u7d$17hfb8fd737bf1a9981E: argument 0"} | |
!37 = distinct !{!37, !"_ZN19bad_position_simple4test21import_path_to_string28_$u7b$$u7b$closure$u7d$$u7d$17hfb8fd737bf1a9981E"} | |
!38 = distinct !{!38, !39, !"_ZN91_$LT$core..slice..Iter$LT$$u27$a$C$$u20$T$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$8position28_$u7b$$u7b$closure$u7d$$u7d$17ha78aa30fa5aeecc6E: argument 1"} | |
!39 = distinct !{!39, !"_ZN91_$LT$core..slice..Iter$LT$$u27$a$C$$u20$T$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$8position28_$u7b$$u7b$closure$u7d$$u7d$17ha78aa30fa5aeecc6E"} | |
!40 = !{!41, !11, !2} | |
!41 = distinct !{!41, !39, !"_ZN91_$LT$core..slice..Iter$LT$$u27$a$C$$u20$T$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$8position28_$u7b$$u7b$closure$u7d$$u7d$17ha78aa30fa5aeecc6E: argument 0"} | |
!42 = !{!41} | |
!43 = !{!38, !11, !2} | |
!44 = !{!45, !47} | |
!45 = distinct !{!45, !46, !"_ZN19bad_position_simple4test21import_path_to_string28_$u7b$$u7b$closure$u7d$$u7d$17hfb8fd737bf1a9981E: argument 0"} | |
!46 = distinct !{!46, !"_ZN19bad_position_simple4test21import_path_to_string28_$u7b$$u7b$closure$u7d$$u7d$17hfb8fd737bf1a9981E"} | |
!47 = distinct !{!47, !48, !"_ZN91_$LT$core..slice..Iter$LT$$u27$a$C$$u20$T$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$8position28_$u7b$$u7b$closure$u7d$$u7d$17ha78aa30fa5aeecc6E: argument 1"} | |
!48 = distinct !{!48, !"_ZN91_$LT$core..slice..Iter$LT$$u27$a$C$$u20$T$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$8position28_$u7b$$u7b$closure$u7d$$u7d$17ha78aa30fa5aeecc6E"} | |
!49 = !{!50, !11, !2} | |
!50 = distinct !{!50, !48, !"_ZN91_$LT$core..slice..Iter$LT$$u27$a$C$$u20$T$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$8position28_$u7b$$u7b$closure$u7d$$u7d$17ha78aa30fa5aeecc6E: argument 0"} | |
!51 = !{!50} | |
!52 = !{!47, !11, !2} | |
!53 = !{!54} | |
!54 = distinct !{!54, !55, !"_ZN47_$LT$core..result..Result$LT$T$C$$u20$E$GT$$GT$3err17h7575ad3e8a4fc754E: argument 1"} | |
!55 = distinct !{!55, !"_ZN47_$LT$core..result..Result$LT$T$C$$u20$E$GT$$GT$3err17h7575ad3e8a4fc754E"} | |
!56 = !{!57, !2} | |
!57 = distinct !{!57, !55, !"_ZN47_$LT$core..result..Result$LT$T$C$$u20$E$GT$$GT$3err17h7575ad3e8a4fc754E: argument 0"} | |
!58 = !{!59, !61, !63, !64, !2} | |
!59 = distinct !{!59, !60, !"_ZN91_$LT$core..slice..Iter$LT$$u27$a$C$$u20$T$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$8position28_$u7b$$u7b$closure$u7d$$u7d$17hf597cb41b063d103E: argument 0"} | |
!60 = distinct !{!60, !"_ZN91_$LT$core..slice..Iter$LT$$u27$a$C$$u20$T$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$8position28_$u7b$$u7b$closure$u7d$$u7d$17hf597cb41b063d103E"} | |
!61 = distinct !{!61, !62, !"_ZN38_$LT$core..option..Option$LT$T$GT$$GT$3map17ha98ac76136c43306E: argument 0"} | |
!62 = distinct !{!62, !"_ZN38_$LT$core..option..Option$LT$T$GT$$GT$3map17ha98ac76136c43306E"} | |
!63 = distinct !{!63, !62, !"_ZN38_$LT$core..option..Option$LT$T$GT$$GT$3map17ha98ac76136c43306E: argument 1"} | |
!64 = distinct !{!64, !62, !"_ZN38_$LT$core..option..Option$LT$T$GT$$GT$3map17ha98ac76136c43306E: argument 2"} | |
!65 = !{!"branch_weights", i32 1, i32 2000} | |
!66 = !{!"bad_position_simple1-317d481089b8c8fe83113de504472633.rs"} | |
!67 = !{!"bad_position_simple3-317d481089b8c8fe83113de504472633.rs"} | |
!68 = !{!"bad_position_simple5-317d481089b8c8fe83113de504472633.rs"} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment