-
Notifications
You must be signed in to change notification settings - Fork 57
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
List comprehension of empty arrays no longer works #460
Comments
Oh excellent, this hits exactly the recursive anonymous GC cache case that we didn't have a test for and needed one! This will unfortunately require a jll bump to fix (among a few other things) |
user: %_augmented21 = call fastcc { i8*, {} addrspace(10)*, {} addrspace(10)* } @fakeaugmented_julia_mapreduce_impl_1858.2({} addrspace(10)* %0, {} addrspace(10)* %"'", i64 %54, i64 %2), !dbg !67 NewF: ; Function Attrs: mustprogress noinline willreturn
define internal fastcc { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* } @augmented_julia_mapreduce_impl_1858({} addrspace(10)* noundef nonnull align 16 dereferenceable(40) %0, {} addrspace(10)* %"'", i64 signext %1, i64 signext %2) unnamed_addr #21 !dbg !1229 {
top:
%3 = call {}*** @julia.get_pgcstack()
%4 = alloca { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* }, align 8
store { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* } zeroinitializer, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* }* %4, align 8
%5 = bitcast {}*** %3 to {}**
%6 = getelementptr inbounds {}*, {}** %5, i64 -12
%7 = getelementptr inbounds {}*, {}** %6, i64 14
%8 = bitcast {}** %7 to i8**
%9 = load i8*, i8** %8, align 8
%10 = call noalias nonnull dereferenceable(304) dereferenceable_or_null(304) {} addrspace(10)* @jl_gc_alloc_typed(i8* %9, i64 304, {} addrspace(10)* addrspacecast ({}* inttoptr (i64 140090790965376 to {}*) to {} addrspace(10)*))
%tapemem = bitcast {} addrspace(10)* %10 to { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* } addrspace(10)*
%11 = getelementptr inbounds { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* }, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* }* %4, i32 0, i32 0
store {} addrspace(10)* %10, {} addrspace(10)** %11, align 8
%"iv'ac" = alloca i64, align 8
%"'ipl19_cache" = alloca {} addrspace(10)* addrspace(10)*, align 8
%subcache33_cache = alloca { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)*, align 8
%_cache = alloca {} addrspace(10)* addrspace(10)*, align 8
%"'ac34_cache" = alloca {} addrspace(10)* addrspace(10)*, align 8
%value_phi526_cache = alloca {} addrspace(10)* addrspace(10)*, align 8
%_cache35 = alloca {} addrspace(10)* addrspace(10)*, align 8
%.not = icmp eq i64 %2, %1, !dbg !1230
br i1 %.not, label %L3, label %L5, !dbg !1231
L3: ; preds = %top
%12 = add i64 %2, -1, !dbg !1232
%"'ipc" = bitcast {} addrspace(10)* %"'" to {} addrspace(10)* addrspace(13)* addrspace(10)*, !dbg !1232
%13 = bitcast {} addrspace(10)* %0 to {} addrspace(10)* addrspace(13)* addrspace(10)*, !dbg !1232
%"'ipc11" = addrspacecast {} addrspace(10)* addrspace(13)* addrspace(10)* %"'ipc" to {} addrspace(10)* addrspace(13)* addrspace(11)*, !dbg !1232
%14 = addrspacecast {} addrspace(10)* addrspace(13)* addrspace(10)* %13 to {} addrspace(10)* addrspace(13)* addrspace(11)*, !dbg !1232
%"'ipl12" = load {} addrspace(10)* addrspace(13)*, {} addrspace(10)* addrspace(13)* addrspace(11)* %"'ipc11", align 16, !dbg !1232, !tbaa !77, !nonnull !4
%15 = load {} addrspace(10)* addrspace(13)*, {} addrspace(10)* addrspace(13)* addrspace(11)* %14, align 16, !dbg !1232, !tbaa !77, !nonnull !4
%"'ipg" = getelementptr inbounds {} addrspace(10)*, {} addrspace(10)* addrspace(13)* %"'ipl12", i64 %12, !dbg !1232
%16 = getelementptr inbounds {} addrspace(10)*, {} addrspace(10)* addrspace(13)* %15, i64 %12, !dbg !1232
%"'ipl" = load {} addrspace(10)*, {} addrspace(10)* addrspace(13)* %"'ipg", align 8, !dbg !1232, !tbaa !85
%17 = getelementptr inbounds { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* }, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* } addrspace(10)* %tapemem, i32 0, i32 0, !dbg !1232
store {} addrspace(10)* %"'ipl", {} addrspace(10)* addrspace(10)* %17, align 8, !dbg !1232
call void ({} addrspace(10)*, ...) @julia.write_barrier({} addrspace(10)* %10, {} addrspace(10)* %"'ipl"), !dbg !1232
%18 = load {} addrspace(10)*, {} addrspace(10)* addrspace(13)* %16, align 8, !dbg !1232, !tbaa !85
%19 = getelementptr inbounds { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* }, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* } addrspace(10)* %tapemem, i32 0, i32 19, !dbg !1232
store {} addrspace(10)* %18, {} addrspace(10)* addrspace(10)* %19, align 8, !dbg !1232
call void ({} addrspace(10)*, ...) @julia.write_barrier({} addrspace(10)* %10, {} addrspace(10)* %18), !dbg !1232
%.not17 = icmp eq {} addrspace(10)* %18, null, !dbg !1232
br i1 %.not17, label %fail, label %common.ret, !dbg !1232
L5: ; preds = %top
%20 = sub i64 %2, %1, !dbg !1234
%.not18 = icmp slt i64 %20, 1024, !dbg !1236
br i1 %.not18, label %L8, label %L59, !dbg !1235
L8: ; preds = %L5
%21 = add i64 %1, -1, !dbg !1237
%"'ipc15" = bitcast {} addrspace(10)* %"'" to {} addrspace(10)* addrspace(13)* addrspace(10)*, !dbg !1237
%22 = bitcast {} addrspace(10)* %0 to {} addrspace(10)* addrspace(13)* addrspace(10)*, !dbg !1237
%"'ipc16" = addrspacecast {} addrspace(10)* addrspace(13)* addrspace(10)* %"'ipc15" to {} addrspace(10)* addrspace(13)* addrspace(11)*, !dbg !1237
%23 = addrspacecast {} addrspace(10)* addrspace(13)* addrspace(10)* %22 to {} addrspace(10)* addrspace(13)* addrspace(11)*, !dbg !1237
%"'ipl17" = load {} addrspace(10)* addrspace(13)*, {} addrspace(10)* addrspace(13)* addrspace(11)* %"'ipc16", align 16, !dbg !1237, !tbaa !77, !nonnull !4
%24 = load {} addrspace(10)* addrspace(13)*, {} addrspace(10)* addrspace(13)* addrspace(11)* %23, align 16, !dbg !1237, !tbaa !77, !nonnull !4
%"'ipg13" = getelementptr inbounds {} addrspace(10)*, {} addrspace(10)* addrspace(13)* %"'ipl17", i64 %21, !dbg !1237
%25 = getelementptr inbounds {} addrspace(10)*, {} addrspace(10)* addrspace(13)* %24, i64 %21, !dbg !1237
%"'ipl14" = load {} addrspace(10)*, {} addrspace(10)* addrspace(13)* %"'ipg13", align 8, !dbg !1237, !tbaa !85
%26 = getelementptr inbounds { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* }, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* } addrspace(10)* %tapemem, i32 0, i32 1, !dbg !1237
store {} addrspace(10)* %"'ipl14", {} addrspace(10)* addrspace(10)* %26, align 8, !dbg !1237
call void ({} addrspace(10)*, ...) @julia.write_barrier({} addrspace(10)* %10, {} addrspace(10)* %"'ipl14"), !dbg !1237
%27 = load {} addrspace(10)*, {} addrspace(10)* addrspace(13)* %25, align 8, !dbg !1237, !tbaa !85
%28 = getelementptr inbounds { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* }, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* } addrspace(10)* %tapemem, i32 0, i32 20, !dbg !1237
store {} addrspace(10)* %27, {} addrspace(10)* addrspace(10)* %28, align 8, !dbg !1237
call void ({} addrspace(10)*, ...) @julia.write_barrier({} addrspace(10)* %10, {} addrspace(10)* %27), !dbg !1237
%.not19 = icmp eq {} addrspace(10)* %27, null, !dbg !1237
br i1 %.not19, label %fail1, label %pass2, !dbg !1237
L32: ; preds = %pass9, %L32.preheader
%iv = phi i64 [ %iv.next, %pass9 ], [ 0, %L32.preheader ]
%29 = phi {} addrspace(10)* [ %"'ac34", %pass9 ], [ %"'ac31", %L32.preheader ]
%value_phi526 = phi {} addrspace(10)* [ %163, %pass9 ], [ %80, %L32.preheader ]
%iv.next = add nuw nsw i64 %iv, 1, !dbg !1239
%30 = add i64 %84, %iv, !dbg !1239
%"'ipl20" = load {} addrspace(10)* addrspace(13)*, {} addrspace(10)* addrspace(13)* addrspace(11)* %"'ipc16", align 16, !dbg !1239, !tbaa !77, !nonnull !4
%31 = load {} addrspace(10)* addrspace(13)*, {} addrspace(10)* addrspace(13)* addrspace(11)* %23, align 16, !dbg !1239, !tbaa !77, !nonnull !4
%"'ipg18" = getelementptr inbounds {} addrspace(10)*, {} addrspace(10)* addrspace(13)* %"'ipl20", i64 %30, !dbg !1239
%32 = getelementptr inbounds {} addrspace(10)*, {} addrspace(10)* addrspace(13)* %31, i64 %30, !dbg !1239
%"'ipl19" = load {} addrspace(10)*, {} addrspace(10)* addrspace(13)* %"'ipg18", align 8, !dbg !1239, !tbaa !85
%33 = load {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)** %"'ipl19_cache", align 8, !dbg !1239, !dereferenceable !829, !invariant.group !1243
%34 = getelementptr inbounds {} addrspace(10)*, {} addrspace(10)* addrspace(10)* %33, i64 %iv, !dbg !1239
store {} addrspace(10)* %"'ipl19", {} addrspace(10)* addrspace(10)* %34, align 8, !dbg !1239, !tbaa !85, !invariant.group !1244
%35 = load {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)** %value_phi526_cache, align 8, !dbg !1239, !dereferenceable !829, !invariant.group !1245
%36 = getelementptr inbounds {} addrspace(10)*, {} addrspace(10)* addrspace(10)* %35, i64 %iv, !dbg !1239
store {} addrspace(10)* %value_phi526, {} addrspace(10)* addrspace(10)* %36, align 8, !dbg !1239, !invariant.group !1246
%37 = bitcast {} addrspace(10)* addrspace(10)* %35 to {} addrspace(10)*, !dbg !1239
call void ({} addrspace(10)*, ...) @julia.write_barrier({} addrspace(10)* %37, {} addrspace(10)* %value_phi526), !dbg !1239
%38 = bitcast {} addrspace(10)* addrspace(10)* %33 to {} addrspace(10)*, !dbg !1239
call void ({} addrspace(10)*, ...) @julia.write_barrier({} addrspace(10)* %38, {} addrspace(10)* %"'ipl19"), !dbg !1239
%39 = load {} addrspace(10)*, {} addrspace(10)* addrspace(13)* %32, align 8, !dbg !1239, !tbaa !85
%40 = load {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)** %_cache35, align 8, !dbg !1239, !dereferenceable !829, !invariant.group !1247
%41 = getelementptr inbounds {} addrspace(10)*, {} addrspace(10)* addrspace(10)* %40, i64 %iv, !dbg !1239
store {} addrspace(10)* %39, {} addrspace(10)* addrspace(10)* %41, align 8, !dbg !1239, !tbaa !85, !invariant.group !1248
%42 = bitcast {} addrspace(10)* addrspace(10)* %40 to {} addrspace(10)*, !dbg !1239
call void ({} addrspace(10)*, ...) @julia.write_barrier({} addrspace(10)* %42, {} addrspace(10)* %39), !dbg !1239
%.not23 = icmp eq {} addrspace(10)* %39, null, !dbg !1239
br i1 %.not23, label %fail8, label %pass9, !dbg !1239
common.ret.loopexit: ; preds = %pass9
br label %common.ret, !dbg !1249
common.ret: ; preds = %pass4, %L59, %common.ret.loopexit, %L3
%43 = phi {} addrspace(10)* [ %"'ac", %L59 ], [ %"'ac31", %pass4 ], [ %"'ipl", %L3 ], [ %"'ac34", %common.ret.loopexit ]
%common.ret.op = phi {} addrspace(10)* [ %66, %L59 ], [ %80, %pass4 ], [ %18, %L3 ], [ %163, %common.ret.loopexit ]
%44 = insertvalue { i8*, {} addrspace(10)*, {} addrspace(10)* } undef, {} addrspace(10)* %common.ret.op, 1, !dbg !1249
%45 = getelementptr inbounds { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* }, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* }* %4, i32 0, i32 1, !dbg !1249
store {} addrspace(10)* %common.ret.op, {} addrspace(10)** %45, align 8, !dbg !1249
%46 = getelementptr inbounds { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* }, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* }* %4, i32 0, i32 2, !dbg !1249
store {} addrspace(10)* %43, {} addrspace(10)** %46, align 8, !dbg !1249
%47 = load { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* }, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* }* %4, align 8, !dbg !1249
ret { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* } %47, !dbg !1249
L59: ; preds = %L5
%48 = ashr i64 %20, 1, !dbg !1250
%49 = add i64 %48, %1, !dbg !1253
%_augmented24 = call fastcc { i8*, {} addrspace(10)*, {} addrspace(10)* } @fakeaugmented_julia_mapreduce_impl_1858.2({} addrspace(10)* %0, {} addrspace(10)* %"'", i64 %1, i64 %49), !dbg !1254
%subcache25 = extractvalue { i8*, {} addrspace(10)*, {} addrspace(10)* } %_augmented24, 0, !dbg !1254
%50 = getelementptr inbounds { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* }, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* } addrspace(10)* %tapemem, i32 0, i32 9, !dbg !1254
store i8* %subcache25, i8* addrspace(10)* %50, align 8, !dbg !1254
%51 = extractvalue { i8*, {} addrspace(10)*, {} addrspace(10)* } %_augmented24, 1, !dbg !1254
%52 = getelementptr inbounds { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* }, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* } addrspace(10)* %tapemem, i32 0, i32 10, !dbg !1255
store {} addrspace(10)* %51, {} addrspace(10)* addrspace(10)* %52, align 8, !dbg !1255
call void ({} addrspace(10)*, ...) @julia.write_barrier({} addrspace(10)* %10, {} addrspace(10)* %51), !dbg !1255
%"'ac26" = extractvalue { i8*, {} addrspace(10)*, {} addrspace(10)* } %_augmented24, 2, !dbg !1255
%53 = getelementptr inbounds { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* }, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* } addrspace(10)* %tapemem, i32 0, i32 11, !dbg !1255
store {} addrspace(10)* %"'ac26", {} addrspace(10)* addrspace(10)* %53, align 8, !dbg !1255
call void ({} addrspace(10)*, ...) @julia.write_barrier({} addrspace(10)* %10, {} addrspace(10)* %"'ac26"), !dbg !1255
%54 = add i64 %49, 1, !dbg !1255
%_augmented21 = call fastcc { i8*, {} addrspace(10)*, {} addrspace(10)* } @fakeaugmented_julia_mapreduce_impl_1858.2({} addrspace(10)* %0, {} addrspace(10)* %"'", i64 %54, i64 %2), !dbg !1256
%subcache22 = extractvalue { i8*, {} addrspace(10)*, {} addrspace(10)* } %_augmented21, 0, !dbg !1256
%55 = getelementptr inbounds { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* }, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* } addrspace(10)* %tapemem, i32 0, i32 6, !dbg !1256
store i8* %subcache22, i8* addrspace(10)* %55, align 8, !dbg !1256
%56 = extractvalue { i8*, {} addrspace(10)*, {} addrspace(10)* } %_augmented21, 1, !dbg !1256
%57 = getelementptr inbounds { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* }, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* } addrspace(10)* %tapemem, i32 0, i32 7, !dbg !1257
store {} addrspace(10)* %56, {} addrspace(10)* addrspace(10)* %57, align 8, !dbg !1257
call void ({} addrspace(10)*, ...) @julia.write_barrier({} addrspace(10)* %10, {} addrspace(10)* %56), !dbg !1257
%"'ac23" = extractvalue { i8*, {} addrspace(10)*, {} addrspace(10)* } %_augmented21, 2, !dbg !1257
%58 = getelementptr inbounds { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* }, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* } addrspace(10)* %tapemem, i32 0, i32 8, !dbg !1257
store {} addrspace(10)* %"'ac23", {} addrspace(10)* addrspace(10)* %58, align 8, !dbg !1257
call void ({} addrspace(10)*, ...) @julia.write_barrier({} addrspace(10)* %10, {} addrspace(10)* %"'ac23"), !dbg !1257
%_augmented = call fastcc { { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)* } @augmented_julia___1864({} addrspace(10)* %51, {} addrspace(10)* %"'ac26", {} addrspace(10)* %56, {} addrspace(10)* %"'ac23"), !dbg !1257
%subcache = extractvalue { { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)* } %_augmented, 0, !dbg !1257
%59 = getelementptr inbounds { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* }, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* } addrspace(10)* %tapemem, i32 0, i32 3, !dbg !1257
store { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } %subcache, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)* %59, align 8, !dbg !1257
%60 = extractvalue { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } %subcache, 0, !dbg !1257
%61 = extractvalue { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } %subcache, 1, !dbg !1257
%62 = extractvalue { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } %subcache, 2, !dbg !1257
%63 = extractvalue { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } %subcache, 3, !dbg !1257
%64 = extractvalue { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } %subcache, 4, !dbg !1257
%65 = extractvalue { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } %subcache, 5, !dbg !1257
call void ({} addrspace(10)*, ...) @julia.write_barrier({} addrspace(10)* %10, {} addrspace(10)* %65, {} addrspace(10)* %64, {} addrspace(10)* %63, {} addrspace(10)* %62, {} addrspace(10)* %61, {} addrspace(10)* %60), !dbg !1257
%66 = extractvalue { { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)* } %_augmented, 1, !dbg !1257
%67 = getelementptr inbounds { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* }, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* } addrspace(10)* %tapemem, i32 0, i32 4
store {} addrspace(10)* %66, {} addrspace(10)* addrspace(10)* %67, align 8
call void ({} addrspace(10)*, ...) @julia.write_barrier({} addrspace(10)* %10, {} addrspace(10)* %66)
%"'ac" = extractvalue { { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)* } %_augmented, 2
%68 = getelementptr inbounds { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* }, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* } addrspace(10)* %tapemem, i32 0, i32 5
store {} addrspace(10)* %"'ac", {} addrspace(10)* addrspace(10)* %68, align 8
call void ({} addrspace(10)*, ...) @julia.write_barrier({} addrspace(10)* %10, {} addrspace(10)* %"'ac")
br label %common.ret
fail: ; preds = %L3
call void @ijl_throw({} addrspace(12)* noundef addrspacecast ({}* inttoptr (i64 140100082098864 to {}*) to {} addrspace(12)*)) #23, !dbg !1232
unreachable, !dbg !1232
fail1: ; preds = %L8
call void @ijl_throw({} addrspace(12)* noundef addrspacecast ({}* inttoptr (i64 140100082098864 to {}*) to {} addrspace(12)*)) #23, !dbg !1237
unreachable, !dbg !1237
pass2: ; preds = %L8
%"'ipg27" = getelementptr inbounds {} addrspace(10)*, {} addrspace(10)* addrspace(13)* %"'ipl17", i64 %1, !dbg !1259
%69 = getelementptr inbounds {} addrspace(10)*, {} addrspace(10)* addrspace(13)* %24, i64 %1, !dbg !1259
%"'ipl28" = load {} addrspace(10)*, {} addrspace(10)* addrspace(13)* %"'ipg27", align 8, !dbg !1259, !tbaa !85
%70 = getelementptr inbounds { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* }, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* } addrspace(10)* %tapemem, i32 0, i32 12, !dbg !1259
store {} addrspace(10)* %"'ipl28", {} addrspace(10)* addrspace(10)* %70, align 8, !dbg !1259
call void ({} addrspace(10)*, ...) @julia.write_barrier({} addrspace(10)* %10, {} addrspace(10)* %"'ipl28"), !dbg !1259
%71 = load {} addrspace(10)*, {} addrspace(10)* addrspace(13)* %69, align 8, !dbg !1259, !tbaa !85
%72 = getelementptr inbounds { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* }, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* } addrspace(10)* %tapemem, i32 0, i32 23, !dbg !1259
store {} addrspace(10)* %71, {} addrspace(10)* addrspace(10)* %72, align 8, !dbg !1259
call void ({} addrspace(10)*, ...) @julia.write_barrier({} addrspace(10)* %10, {} addrspace(10)* %71), !dbg !1259
%.not20 = icmp eq {} addrspace(10)* %71, null, !dbg !1259
br i1 %.not20, label %fail3, label %pass4, !dbg !1259
fail3: ; preds = %pass2
call void @ijl_throw({} addrspace(12)* noundef addrspacecast ({}* inttoptr (i64 140100082098864 to {}*) to {} addrspace(12)*)) #23, !dbg !1259
unreachable, !dbg !1259
pass4: ; preds = %pass2
%_augmented29 = call fastcc { { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)* } @augmented_julia___1864({} addrspace(10)* %27, {} addrspace(10)* %"'ipl14", {} addrspace(10)* %71, {} addrspace(10)* %"'ipl28"), !dbg !1261
%subcache30 = extractvalue { { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)* } %_augmented29, 0, !dbg !1261
%73 = getelementptr inbounds { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* }, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* } addrspace(10)* %tapemem, i32 0, i32 13, !dbg !1261
store { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } %subcache30, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)* %73, align 8, !dbg !1261
%74 = extractvalue { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } %subcache30, 0, !dbg !1261
%75 = extractvalue { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } %subcache30, 1, !dbg !1261
%76 = extractvalue { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } %subcache30, 2, !dbg !1261
%77 = extractvalue { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } %subcache30, 3, !dbg !1261
%78 = extractvalue { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } %subcache30, 4, !dbg !1261
%79 = extractvalue { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } %subcache30, 5, !dbg !1261
call void ({} addrspace(10)*, ...) @julia.write_barrier({} addrspace(10)* %10, {} addrspace(10)* %79, {} addrspace(10)* %78, {} addrspace(10)* %77, {} addrspace(10)* %76, {} addrspace(10)* %75, {} addrspace(10)* %74), !dbg !1261
%80 = extractvalue { { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)* } %_augmented29, 1, !dbg !1261
%81 = getelementptr inbounds { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* }, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* } addrspace(10)* %tapemem, i32 0, i32 14, !dbg !1263
store {} addrspace(10)* %80, {} addrspace(10)* addrspace(10)* %81, align 8, !dbg !1263
call void ({} addrspace(10)*, ...) @julia.write_barrier({} addrspace(10)* %10, {} addrspace(10)* %80), !dbg !1263
%"'ac31" = extractvalue { { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)* } %_augmented29, 2, !dbg !1263
%82 = getelementptr inbounds { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* }, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* } addrspace(10)* %tapemem, i32 0, i32 15, !dbg !1263
store {} addrspace(10)* %"'ac31", {} addrspace(10)* addrspace(10)* %82, align 8, !dbg !1263
call void ({} addrspace(10)*, ...) @julia.write_barrier({} addrspace(10)* %10, {} addrspace(10)* %"'ac31"), !dbg !1263
%83 = add i64 %1, 2, !dbg !1263
%.not21 = icmp sgt i64 %83, %2, !dbg !1265
%84 = add i64 %1, 1, !dbg !1267
%value_phi = select i1 %.not21, i64 %84, i64 %2, !dbg !1267
%85 = sub i64 %value_phi, %83, !dbg !1270
%86 = icmp ugt i64 %85, 9223372036854775806, !dbg !1274
br i1 %86, label %common.ret, label %L32.preheader, !dbg !1275
L32.preheader: ; preds = %pass4
%87 = add nuw i64 %85, 1, !dbg !1239
%88 = mul nuw i64 %87, 8, !dbg !1239
%89 = call {} addrspace(10)* @ijl_box_int64(i64 %87), !dbg !1239
%90 = call cc37 {} addrspace(10)* bitcast ({} addrspace(10)* ({} addrspace(10)*, {} addrspace(10)**, i32)* @jl_f_apply_type to {} addrspace(10)* ({} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*)*)({} addrspace(10)* null, {} addrspace(10)* addrspacecast ({}* inttoptr (i64 140090909122032 to {}*) to {} addrspace(10)*), {} addrspace(10)* %89, {} addrspace(10)* addrspacecast ({}* inttoptr (i64 140100079346576 to {}*) to {} addrspace(10)*)), !dbg !1239
%91 = bitcast {}*** %3 to {}**, !dbg !1239
%92 = getelementptr inbounds {}*, {}** %91, i64 -12, !dbg !1239
%93 = getelementptr inbounds {}*, {}** %92, i64 14, !dbg !1239
%94 = bitcast {}** %93 to i8**, !dbg !1239
%95 = load i8*, i8** %94, align 8, !dbg !1239
%96 = call noalias nonnull {} addrspace(10)* @jl_gc_alloc_typed(i8* %95, i64 %88, {} addrspace(10)* %90), !dbg !1239
%"'ipl19_malloccache" = bitcast {} addrspace(10)* %96 to {} addrspace(10)* addrspace(10)*, !dbg !1239
%97 = getelementptr inbounds { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* }, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* } addrspace(10)* %tapemem, i32 0, i32 2, !dbg !1239
store {} addrspace(10)* addrspace(10)* %"'ipl19_malloccache", {} addrspace(10)* addrspace(10)* addrspace(10)* %97, align 8, !dbg !1239
%98 = bitcast {} addrspace(10)* addrspace(10)* %"'ipl19_malloccache" to {} addrspace(10)*, !dbg !1239
call void ({} addrspace(10)*, ...) @julia.write_barrier({} addrspace(10)* %10, {} addrspace(10)* %98), !dbg !1239
store {} addrspace(10)* addrspace(10)* %"'ipl19_malloccache", {} addrspace(10)* addrspace(10)** %"'ipl19_cache", align 8, !dbg !1239, !invariant.group !1243
%99 = mul nuw i64 %87, 64, !dbg !1239
%100 = call {} addrspace(10)* @ijl_box_int64(i64 %87), !dbg !1239
%101 = call cc37 {} addrspace(10)* bitcast ({} addrspace(10)* ({} addrspace(10)*, {} addrspace(10)**, i32)* @jl_f_apply_type to {} addrspace(10)* ({} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*)*)({} addrspace(10)* null, {} addrspace(10)* addrspacecast ({}* inttoptr (i64 140090909122032 to {}*) to {} addrspace(10)*), {} addrspace(10)* %100, {} addrspace(10)* addrspacecast ({}* inttoptr (i64 140090935931088 to {}*) to {} addrspace(10)*)), !dbg !1239
%102 = bitcast {}*** %3 to {}**, !dbg !1239
%103 = getelementptr inbounds {}*, {}** %102, i64 -12, !dbg !1239
%104 = getelementptr inbounds {}*, {}** %103, i64 14, !dbg !1239
%105 = bitcast {}** %104 to i8**, !dbg !1239
%106 = load i8*, i8** %105, align 8, !dbg !1239
%107 = call noalias nonnull {} addrspace(10)* @jl_gc_alloc_typed(i8* %106, i64 %99, {} addrspace(10)* %101), !dbg !1239
%subcache33_malloccache = bitcast {} addrspace(10)* %107 to { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)*, !dbg !1239
%108 = getelementptr inbounds { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* }, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* } addrspace(10)* %tapemem, i32 0, i32 16, !dbg !1239
store { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)* %subcache33_malloccache, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)* addrspace(10)* %108, align 8, !dbg !1239
%109 = bitcast { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)* %subcache33_malloccache to {} addrspace(10)*, !dbg !1239
call void ({} addrspace(10)*, ...) @julia.write_barrier({} addrspace(10)* %10, {} addrspace(10)* %109), !dbg !1239
store { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)* %subcache33_malloccache, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)** %subcache33_cache, align 16, !dbg !1239, !invariant.group !1276
%110 = mul nuw i64 %87, 8, !dbg !1239
%111 = call {} addrspace(10)* @ijl_box_int64(i64 %87), !dbg !1239
%112 = call cc37 {} addrspace(10)* bitcast ({} addrspace(10)* ({} addrspace(10)*, {} addrspace(10)**, i32)* @jl_f_apply_type to {} addrspace(10)* ({} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*)*)({} addrspace(10)* null, {} addrspace(10)* addrspacecast ({}* inttoptr (i64 140090909122032 to {}*) to {} addrspace(10)*), {} addrspace(10)* %111, {} addrspace(10)* addrspacecast ({}* inttoptr (i64 140100079346576 to {}*) to {} addrspace(10)*)), !dbg !1239
%113 = bitcast {}*** %3 to {}**, !dbg !1239
%114 = getelementptr inbounds {}*, {}** %113, i64 -12, !dbg !1239
%115 = getelementptr inbounds {}*, {}** %114, i64 14, !dbg !1239
%116 = bitcast {}** %115 to i8**, !dbg !1239
%117 = load i8*, i8** %116, align 8, !dbg !1239
%118 = call noalias nonnull {} addrspace(10)* @jl_gc_alloc_typed(i8* %117, i64 %110, {} addrspace(10)* %112), !dbg !1239
%_malloccache = bitcast {} addrspace(10)* %118 to {} addrspace(10)* addrspace(10)*, !dbg !1239
%119 = getelementptr inbounds { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* }, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* } addrspace(10)* %tapemem, i32 0, i32 17, !dbg !1239
store {} addrspace(10)* addrspace(10)* %_malloccache, {} addrspace(10)* addrspace(10)* addrspace(10)* %119, align 8, !dbg !1239
%120 = bitcast {} addrspace(10)* addrspace(10)* %_malloccache to {} addrspace(10)*, !dbg !1239
call void ({} addrspace(10)*, ...) @julia.write_barrier({} addrspace(10)* %10, {} addrspace(10)* %120), !dbg !1239
store {} addrspace(10)* addrspace(10)* %_malloccache, {} addrspace(10)* addrspace(10)** %_cache, align 8, !dbg !1239, !invariant.group !1277
%121 = mul nuw i64 %87, 8, !dbg !1239
%122 = call {} addrspace(10)* @ijl_box_int64(i64 %87), !dbg !1239
%123 = call cc37 {} addrspace(10)* bitcast ({} addrspace(10)* ({} addrspace(10)*, {} addrspace(10)**, i32)* @jl_f_apply_type to {} addrspace(10)* ({} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*)*)({} addrspace(10)* null, {} addrspace(10)* addrspacecast ({}* inttoptr (i64 140090909122032 to {}*) to {} addrspace(10)*), {} addrspace(10)* %122, {} addrspace(10)* addrspacecast ({}* inttoptr (i64 140100079346576 to {}*) to {} addrspace(10)*)), !dbg !1239
%124 = bitcast {}*** %3 to {}**, !dbg !1239
%125 = getelementptr inbounds {}*, {}** %124, i64 -12, !dbg !1239
%126 = getelementptr inbounds {}*, {}** %125, i64 14, !dbg !1239
%127 = bitcast {}** %126 to i8**, !dbg !1239
%128 = load i8*, i8** %127, align 8, !dbg !1239
%129 = call noalias nonnull {} addrspace(10)* @jl_gc_alloc_typed(i8* %128, i64 %121, {} addrspace(10)* %123), !dbg !1239
%"'ac34_malloccache" = bitcast {} addrspace(10)* %129 to {} addrspace(10)* addrspace(10)*, !dbg !1239
%130 = getelementptr inbounds { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* }, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* } addrspace(10)* %tapemem, i32 0, i32 18, !dbg !1239
store {} addrspace(10)* addrspace(10)* %"'ac34_malloccache", {} addrspace(10)* addrspace(10)* addrspace(10)* %130, align 8, !dbg !1239
%131 = bitcast {} addrspace(10)* addrspace(10)* %"'ac34_malloccache" to {} addrspace(10)*, !dbg !1239
call void ({} addrspace(10)*, ...) @julia.write_barrier({} addrspace(10)* %10, {} addrspace(10)* %131), !dbg !1239
store {} addrspace(10)* addrspace(10)* %"'ac34_malloccache", {} addrspace(10)* addrspace(10)** %"'ac34_cache", align 8, !dbg !1239, !invariant.group !1278
%132 = mul nuw i64 %87, 8, !dbg !1239
%133 = call {} addrspace(10)* @ijl_box_int64(i64 %87), !dbg !1239
%134 = call cc37 {} addrspace(10)* bitcast ({} addrspace(10)* ({} addrspace(10)*, {} addrspace(10)**, i32)* @jl_f_apply_type to {} addrspace(10)* ({} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*)*)({} addrspace(10)* null, {} addrspace(10)* addrspacecast ({}* inttoptr (i64 140090909122032 to {}*) to {} addrspace(10)*), {} addrspace(10)* %133, {} addrspace(10)* addrspacecast ({}* inttoptr (i64 140100079346576 to {}*) to {} addrspace(10)*)), !dbg !1239
%135 = bitcast {}*** %3 to {}**, !dbg !1239
%136 = getelementptr inbounds {}*, {}** %135, i64 -12, !dbg !1239
%137 = getelementptr inbounds {}*, {}** %136, i64 14, !dbg !1239
%138 = bitcast {}** %137 to i8**, !dbg !1239
%139 = load i8*, i8** %138, align 8, !dbg !1239
%140 = call noalias nonnull {} addrspace(10)* @jl_gc_alloc_typed(i8* %139, i64 %132, {} addrspace(10)* %134), !dbg !1239
%value_phi526_malloccache = bitcast {} addrspace(10)* %140 to {} addrspace(10)* addrspace(10)*, !dbg !1239
%141 = getelementptr inbounds { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* }, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* } addrspace(10)* %tapemem, i32 0, i32 21, !dbg !1239
store {} addrspace(10)* addrspace(10)* %value_phi526_malloccache, {} addrspace(10)* addrspace(10)* addrspace(10)* %141, align 8, !dbg !1239
%142 = bitcast {} addrspace(10)* addrspace(10)* %value_phi526_malloccache to {} addrspace(10)*, !dbg !1239
call void ({} addrspace(10)*, ...) @julia.write_barrier({} addrspace(10)* %10, {} addrspace(10)* %142), !dbg !1239
store {} addrspace(10)* addrspace(10)* %value_phi526_malloccache, {} addrspace(10)* addrspace(10)** %value_phi526_cache, align 8, !dbg !1239, !invariant.group !1245
%143 = mul nuw i64 %87, 8, !dbg !1239
%144 = call {} addrspace(10)* @ijl_box_int64(i64 %87), !dbg !1239
%145 = call cc37 {} addrspace(10)* bitcast ({} addrspace(10)* ({} addrspace(10)*, {} addrspace(10)**, i32)* @jl_f_apply_type to {} addrspace(10)* ({} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*)*)({} addrspace(10)* null, {} addrspace(10)* addrspacecast ({}* inttoptr (i64 140090909122032 to {}*) to {} addrspace(10)*), {} addrspace(10)* %144, {} addrspace(10)* addrspacecast ({}* inttoptr (i64 140100079346576 to {}*) to {} addrspace(10)*)), !dbg !1239
%146 = bitcast {}*** %3 to {}**, !dbg !1239
%147 = getelementptr inbounds {}*, {}** %146, i64 -12, !dbg !1239
%148 = getelementptr inbounds {}*, {}** %147, i64 14, !dbg !1239
%149 = bitcast {}** %148 to i8**, !dbg !1239
%150 = load i8*, i8** %149, align 8, !dbg !1239
%151 = call noalias nonnull {} addrspace(10)* @jl_gc_alloc_typed(i8* %150, i64 %143, {} addrspace(10)* %145), !dbg !1239
%_malloccache36 = bitcast {} addrspace(10)* %151 to {} addrspace(10)* addrspace(10)*, !dbg !1239
%152 = getelementptr inbounds { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* }, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, i8*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)*, {} addrspace(10)* } addrspace(10)* %tapemem, i32 0, i32 22, !dbg !1239
store {} addrspace(10)* addrspace(10)* %_malloccache36, {} addrspace(10)* addrspace(10)* addrspace(10)* %152, align 8, !dbg !1239
%153 = bitcast {} addrspace(10)* addrspace(10)* %_malloccache36 to {} addrspace(10)*, !dbg !1239
call void ({} addrspace(10)*, ...) @julia.write_barrier({} addrspace(10)* %10, {} addrspace(10)* %153), !dbg !1239
store {} addrspace(10)* addrspace(10)* %_malloccache36, {} addrspace(10)* addrspace(10)** %_cache35, align 8, !dbg !1239, !invariant.group !1247
br label %L32, !dbg !1239
fail8: ; preds = %L32
call void @ijl_throw({} addrspace(12)* addrspacecast ({}* inttoptr (i64 140100082098864 to {}*) to {} addrspace(12)*)) #24, !dbg !1239
unreachable, !dbg !1239
pass9: ; preds = %L32
%_augmented32 = call fastcc { { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)* } @augmented_julia___1864({} addrspace(10)* %value_phi526, {} addrspace(10)* %29, {} addrspace(10)* %39, {} addrspace(10)* %"'ipl19"), !dbg !1279
%subcache33 = extractvalue { { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)* } %_augmented32, 0, !dbg !1279
%154 = load { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)*, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)** %subcache33_cache, align 8, !dbg !1279, !dereferenceable !829, !invariant.group !1276
%155 = getelementptr inbounds { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)* %154, i64 %iv, !dbg !1279
store { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } %subcache33, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)* %155, align 16, !dbg !1279, !invariant.group !1281
%156 = bitcast { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } addrspace(10)* %154 to {} addrspace(10)*, !dbg !1279
%157 = extractvalue { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } %subcache33, 0, !dbg !1279
%158 = extractvalue { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } %subcache33, 1, !dbg !1279
%159 = extractvalue { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } %subcache33, 2, !dbg !1279
%160 = extractvalue { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } %subcache33, 3, !dbg !1279
%161 = extractvalue { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } %subcache33, 4, !dbg !1279
%162 = extractvalue { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 } %subcache33, 5, !dbg !1279
call void ({} addrspace(10)*, ...) @julia.write_barrier({} addrspace(10)* %156, {} addrspace(10)* %162, {} addrspace(10)* %161, {} addrspace(10)* %160, {} addrspace(10)* %159, {} addrspace(10)* %158, {} addrspace(10)* %157), !dbg !1279
%163 = extractvalue { { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)* } %_augmented32, 1, !dbg !1279
%164 = load {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)** %_cache, align 8, !dbg !1279, !dereferenceable !829, !invariant.group !1277
%165 = getelementptr inbounds {} addrspace(10)*, {} addrspace(10)* addrspace(10)* %164, i64 %iv, !dbg !1279
store {} addrspace(10)* %163, {} addrspace(10)* addrspace(10)* %165, align 8, !dbg !1279, !invariant.group !1282
%166 = bitcast {} addrspace(10)* addrspace(10)* %164 to {} addrspace(10)*, !dbg !1279
call void ({} addrspace(10)*, ...) @julia.write_barrier({} addrspace(10)* %166, {} addrspace(10)* %163), !dbg !1279
%"'ac34" = extractvalue { { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, i64, i1, i1, i1, i1, i1, i1 }, {} addrspace(10)*, {} addrspace(10)* } %_augmented32, 2, !dbg !1283
%167 = load {} addrspace(10)* addrspace(10)*, {} addrspace(10)* addrspace(10)** %"'ac34_cache", align 8, !dbg !1283, !dereferenceable !829, !invariant.group !1278
%168 = getelementptr inbounds {} addrspace(10)*, {} addrspace(10)* addrspace(10)* %167, i64 %iv, !dbg !1283
store {} addrspace(10)* %"'ac34", {} addrspace(10)* addrspace(10)* %168, align 8, !dbg !1283, !invariant.group !1285
%169 = bitcast {} addrspace(10)* addrspace(10)* %167 to {} addrspace(10)*, !dbg !1283
call void ({} addrspace(10)*, ...) @julia.write_barrier({} addrspace(10)* %169, {} addrspace(10)* %"'ac34"), !dbg !1283
%exitcond.not = icmp eq i64 %iv, %85, !dbg !1283
br i1 %exitcond.not, label %common.ret.loopexit, label %L32, !dbg !1284, !llvm.loop !1286
}
julia: /home/wmoses/.julia/artifacts/ffd25b575618865cee0c288729a95629485632ee/include/llvm/IR/InstrTypes.h:1445: void llvm::CallBase::setCalledFunction(llvm::FunctionType*, llvm::Value*): Assertion `getType() == FTy->getReturnType()' failed. |
This should now be fixed on main. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
I am on Julia 1.8.1. The following worked on commit eb030aa:
But on the next commit 2e862cb (with Enzyme_jll 0.0.38) it errors:
The text was updated successfully, but these errors were encountered: