; ModuleID = 'dump2.ll' source_filename = "#transduce#140" target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128-ni:10:11:12:13" target triple = "x86_64-unknown-linux-gnu" @jl_undefref_exception = external constant ptr @"_j_const#3" = private unnamed_addr constant i64 1, align 8 @"+Core.GenericMemory#6992.jit" = private alias ptr, inttoptr (i64 140182880142192 to ptr) @"+Core.GenericMemoryRef#6999.jit" = private alias ptr, inttoptr (i64 140182881935488 to ptr) @"+Core.GenericMemoryRef#7008.jit" = private alias ptr, inttoptr (i64 140182914280336 to ptr) @"+Core.ArgumentError#7025.jit" = private alias ptr, inttoptr (i64 140182933492304 to ptr) @"jl_global#7023.jit" = private alias ptr, inttoptr (i64 140182984708704 to ptr) @"+Core.Array#7032.jit" = private alias ptr, inttoptr (i64 140183040478224 to ptr) @"+Core.GenericMemoryRef#7019.jit" = private alias ptr, inttoptr (i64 140183040478480 to ptr) @"+Core.GenericMemory#7031.jit" = private alias ptr, inttoptr (i64 140183040478608 to ptr) @"+BangBang.SafeCollector#7001.jit" = private alias ptr, inttoptr (i64 140183040478672 to ptr) @"+Transducers.ResultShim#7035.jit" = private alias ptr, inttoptr (i64 140183040478736 to ptr) @"+BangBang.SafeCollector#7002.jit" = private alias ptr, inttoptr (i64 140183044178256 to ptr) @"+Core.Array#6994.jit" = private alias ptr, inttoptr (i64 140183073272144 to ptr) define swiftcc nonnull ptr addrspace(10) @"julia_#transduce#140_6985"(ptr nonnull swiftself %pgcstack_arg, ptr addrspace(11) nocapture noundef nonnull readonly align 8 dereferenceable(8) %"xform::Composition", ptr addrspace(11) nocapture noundef nonnull readonly align 8 dereferenceable(8) %"init::SafeCollector", ptr addrspace(10) noundef nonnull align 8 dereferenceable(24) %"coll::Array") #0 { top: %"new::Tuple" = alloca [1 x i64], align 8 %"new::ResultShim" = alloca { { i64 } }, align 8 %0 = alloca { { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) }, { i64 } }, align 8 %1 = alloca [2 x ptr addrspace(10)], align 8 %2 = alloca [1 x { [1 x ptr addrspace(10)] }], align 8 %3 = alloca { ptr addrspace(10), i64, i64 }, align 8 %4 = alloca { { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) }, { ptr addrspace(10), i64 } }, align 8 %5 = alloca [3 x ptr addrspace(10)], align 8 %6 = alloca [1 x { [1 x ptr addrspace(10)] }], align 8 %7 = alloca { { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) }, { ptr addrspace(10), i64 } }, align 8 %8 = alloca { ptr addrspace(10), i64, i64 }, align 8 %9 = alloca { ptr, ptr addrspace(10) }, align 8 %10 = alloca [1 x ptr addrspace(10)], align 8 %11 = alloca { ptr addrspace(10), i64, i64, i64, i64, i64, ptr addrspace(10), { ptr, ptr addrspace(10) } }, align 8 %"new::Tuple185" = alloca [1 x i64], align 8 %"new::Tuple237" = alloca [1 x i64], align 8 %12 = alloca [1 x { [1 x ptr addrspace(10)] }], align 8 %13 = alloca { { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) }, { i64 } }, align 8 %14 = alloca { ptr addrspace(10), i64, i64 }, align 8 %"new::Tuple307" = alloca [1 x i64], align 8 %pgcstack = call ptr @julia.get_pgcstack() %ptls_field = getelementptr inbounds ptr, ptr %pgcstack, i64 2 %ptls_load = load ptr, ptr %ptls_field, align 8, !tbaa !3 %15 = getelementptr inbounds ptr, ptr %ptls_load, i64 2 %safepoint = load ptr, ptr %15, align 8, !tbaa !7, !invariant.load !9 fence syncscope("singlethread") seq_cst call void @julia.safepoint(ptr %safepoint) fence syncscope("singlethread") seq_cst %"xform::Composition.inner_ptr.unbox.unpack" = load ptr addrspace(10), ptr addrspace(11) %"xform::Composition", align 8, !tbaa !7, !invariant.load !9, !alias.scope !10, !noalias !13 %16 = addrspacecast ptr addrspace(10) %"coll::Array" to ptr addrspace(11) %17 = getelementptr inbounds i8, ptr addrspace(11) %16, i64 16 %.size.sroa.0.0.copyload = load i64, ptr addrspace(11) %17, align 8, !tbaa !18, !alias.scope !19, !noalias !20 %.not.not = icmp eq i64 %.size.sroa.0.0.copyload, 0 br i1 %.not.not, label %L8, label %L59 L8: ; preds = %top %"init::SafeCollector.i_ptr.unbox" = load i64, ptr addrspace(11) %"init::SafeCollector", align 8, !tbaa !7, !invariant.load !9, !alias.scope !10, !noalias !13 %18 = icmp slt i64 %"init::SafeCollector.i_ptr.unbox", 1 br i1 %18, label %L17, label %L13 L13: ; preds = %L8 %"Memory{Nothing}[]" = call ptr addrspace(10) @jl_alloc_genericmemory(ptr addrspace(10) addrspacecast (ptr @"+Core.GenericMemory#6992.jit" to ptr addrspace(10)), i64 4) %current_task5 = getelementptr inbounds ptr, ptr %pgcstack, i64 -14 %"new::Array" = call noalias nonnull align 8 dereferenceable(24) ptr addrspace(10) @julia.gc_alloc_obj(ptr nonnull %current_task5, i64 24, ptr addrspace(10) addrspacecast (ptr @"+Core.Array#6994.jit" to ptr addrspace(10))) #23 %19 = addrspacecast ptr addrspace(10) %"new::Array" to ptr addrspace(11) %20 = getelementptr inbounds ptr addrspace(10), ptr addrspace(11) %19, i64 1 store ptr addrspace(10) null, ptr addrspace(11) %20, align 8, !tbaa !21, !alias.scope !23, !noalias !24 store i64 0, ptr addrspace(11) %19, align 8, !tbaa !25, !alias.scope !23, !noalias !24 %.repack88 = getelementptr inbounds { i64, ptr addrspace(10) }, ptr addrspace(11) %19, i64 0, i32 1 store ptr addrspace(10) %"Memory{Nothing}[]", ptr addrspace(11) %.repack88, align 8, !tbaa !25, !alias.scope !23, !noalias !24 %"new::Array.size_ptr" = getelementptr inbounds i8, ptr addrspace(11) %19, i64 16 store i64 4, ptr addrspace(11) %"new::Array.size_ptr", align 8, !tbaa !18, !alias.scope !27, !noalias !28 br label %L20 L17: ; preds = %L8 %.instance = load atomic ptr addrspace(10), ptr getelementptr inbounds (ptr, ptr @"+Core.GenericMemory#6992.jit", i64 4) unordered, align 16, !tbaa !7, !invariant.load !9, !alias.scope !10, !noalias !13 %.not = icmp eq ptr addrspace(10) %.instance, null br i1 %.not, label %fail, label %pass L20: ; preds = %pass, %L13 %value_phi = phi ptr addrspace(10) [ %"new::Array", %L13 ], [ %"new::Array34", %pass ] %21 = add i64 %"init::SafeCollector.i_ptr.unbox", -1 %22 = call swiftcc nonnull ptr addrspace(10) @"j_copyto!_6996"(ptr nonnull swiftself %pgcstack, ptr addrspace(10) nonnull %value_phi, i64 signext 1, i64 signext 1, i64 signext %21) %23 = addrspacecast ptr addrspace(10) %value_phi to ptr addrspace(11) %24 = getelementptr inbounds i8, ptr addrspace(11) %23, i64 16 %value_phi.size.sroa.0.0.copyload = load i64, ptr addrspace(11) %24, align 8, !tbaa !18, !alias.scope !19, !noalias !20 %.not90 = icmp ult i64 %21, %value_phi.size.sroa.0.0.copyload br i1 %.not90, label %L37, label %L34 L34: ; preds = %L20 %25 = load i64, ptr addrspace(11) %"init::SafeCollector", align 8, !tbaa !18, !alias.scope !29, !noalias !30 store i64 %25, ptr %"new::Tuple", align 8, !tbaa !18, !alias.scope !29, !noalias !30 %26 = addrspacecast ptr %"new::Tuple" to ptr addrspace(11) call swiftcc void @j_throw_boundserror_7005(ptr nonnull swiftself %pgcstack, ptr addrspace(10) nonnull %value_phi, ptr addrspace(11) nocapture readonly %26) #6 unreachable L37: ; preds = %L20 %27 = load i64, ptr addrspace(11) %23, align 8, !tbaa !25, !alias.scope !23, !noalias !24 %28 = getelementptr inbounds { i64, ptr addrspace(10) }, ptr addrspace(11) %23, i64 0, i32 1 %29 = load ptr addrspace(10), ptr addrspace(11) %28, align 8, !tbaa !25, !alias.scope !23, !noalias !24, !dereferenceable_or_null !31, !align !32 %30 = add i64 %27, -1 %31 = add i64 %30, %"init::SafeCollector.i_ptr.unbox" %32 = addrspacecast ptr addrspace(10) %29 to ptr addrspace(11) %33 = load i64, ptr addrspace(11) %32, align 8, !tbaa !33, !range !35, !alias.scope !23, !noalias !24 %34 = icmp ult i64 %31, %33 br i1 %34, label %idxend, label %oob L59: ; preds = %top br i1 false, label %L68, label %L71 L68: ; preds = %L59 call swiftcc void @j_throw_boundserror_7037(ptr nonnull swiftself %pgcstack, ptr addrspace(10) nonnull %"coll::Array", ptr addrspace(11) nocapture readonly addrspacecast (ptr @"_j_const#3" to ptr addrspace(11))) #6 unreachable L71: ; preds = %L59 %35 = load ptr, ptr addrspace(11) %16, align 8, !tbaa !25, !alias.scope !23, !noalias !24 %36 = getelementptr inbounds { ptr, ptr addrspace(10) }, ptr addrspace(11) %16, i64 0, i32 1 %37 = load ptr addrspace(10), ptr addrspace(11) %36, align 8, !tbaa !25, !alias.scope !23, !noalias !24, !dereferenceable_or_null !31, !align !32 %38 = addrspacecast ptr addrspace(10) %37 to ptr addrspace(11) %39 = load i64, ptr addrspace(11) %38, align 8, !tbaa !33, !range !36, !alias.scope !23, !noalias !24 %.not98 = icmp ne i64 %39, 0 %.data_ptr = getelementptr inbounds { i64, ptr }, ptr addrspace(10) %37, i64 0, i32 1 %40 = load ptr, ptr addrspace(10) %.data_ptr, align 8, !tbaa !7, !invariant.load !9, !alias.scope !10, !noalias !13, !nonnull !9 %41 = ptrtoint ptr %40 to i64 %42 = ptrtoint ptr %35 to i64 %43 = sub i64 %42, %41 %44 = mul nuw nsw i64 %39, 24 %45 = icmp ult i64 %43, %44 %46 = and i1 %.not98, %45 br i1 %46, label %idxend50, label %oob46 L99.L117_crit_edge: ; preds = %guard_exit343 br label %L117 L117: ; preds = %guard_exit338, %L99.L117_crit_edge %value_phi66.lcssa = phi i64 [ %70, %L99.L117_crit_edge ], [ 2, %guard_exit338 ] store i64 %value_phi66.lcssa, ptr %"new::Tuple307", align 8, !tbaa !37, !alias.scope !39, !noalias !40 %47 = addrspacecast ptr %"new::Tuple307" to ptr addrspace(11) call swiftcc void @j_throw_boundserror_7037(ptr nonnull swiftself %pgcstack, ptr addrspace(10) nonnull %"coll::Array", ptr addrspace(11) nocapture readonly %47) #6 unreachable L120: ; preds = %guard_exit343, %L120.lr.ph %.sroa.0.1227 = phi i64 [ undef, %L120.lr.ph ], [ %.sroa.0.1226, %guard_exit343 ] %.sroa.049.0.copyload50221 = phi i64 [ undef, %L120.lr.ph ], [ %.sroa.049.0.copyload50220, %guard_exit343 ] %unionalloca.sroa.0.0206215 = phi i64 [ undef, %L120.lr.ph ], [ %unionalloca.sroa.0.0206214, %guard_exit343 ] %48 = phi i64 [ 1, %L120.lr.ph ], [ %value_phi66209, %guard_exit343 ] %value_phi71213 = phi { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) } [ %.state_ptr.unbox.fca.1.insert, %L120.lr.ph ], [ %value_phi108, %guard_exit343 ] %value_phi70212 = phi { ptr addrspace(10), i64 } [ zeroinitializer, %L120.lr.ph ], [ %value_phi102, %guard_exit343 ] %value_phi69211 = phi { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) } [ zeroinitializer, %L120.lr.ph ], [ %value_phi103, %guard_exit343 ] %value_phi68210 = phi i8 [ 0, %L120.lr.ph ], [ %value_phi104, %guard_exit343 ] %value_phi66209 = phi i64 [ 2, %L120.lr.ph ], [ %70, %guard_exit343 ] %.sroa.0.0208 = phi i64 [ undef, %L120.lr.ph ], [ %.sroa.0.2, %guard_exit343 ] %.sroa.014.0207 = phi i64 [ undef, %L120.lr.ph ], [ %.sroa.014.2, %guard_exit343 ] %unionalloca.sroa.0.0206 = phi i64 [ undef, %L120.lr.ph ], [ %unionalloca.sroa.0.2, %guard_exit343 ] %.sroa.070.0205 = phi i64 [ %.sroa.070.0.copyload, %L120.lr.ph ], [ %.sroa.049.1, %guard_exit343 ] %.sroa.049.0204 = phi i64 [ undef, %L120.lr.ph ], [ %.sroa.049.1, %guard_exit343 ] %.sroa.047.0203 = phi i64 [ undef, %L120.lr.ph ], [ %.sroa.047.1, %guard_exit343 ] %49 = load ptr, ptr addrspace(11) %16, align 8, !tbaa !25, !alias.scope !23, !noalias !24 %50 = load ptr addrspace(10), ptr addrspace(11) %36, align 8, !tbaa !25, !alias.scope !23, !noalias !24, !dereferenceable_or_null !31, !align !32 %51 = addrspacecast ptr addrspace(10) %50 to ptr addrspace(11) %52 = load i64, ptr addrspace(11) %51, align 8, !tbaa !33, !range !36, !alias.scope !23, !noalias !24 %53 = shl nuw nsw i64 %52, 1 %54 = add i64 %52, %48 %.not107 = icmp ult i64 %54, %53 %55 = getelementptr inbounds { ptr addrspace(10), i64, i64 }, ptr %49, i64 %48 %.data_ptr85 = getelementptr inbounds { i64, ptr }, ptr addrspace(10) %50, i64 0, i32 1 %56 = load ptr, ptr addrspace(10) %.data_ptr85, align 8, !tbaa !7, !invariant.load !9, !alias.scope !10, !noalias !13, !nonnull !9 %57 = ptrtoint ptr %56 to i64 %58 = ptrtoint ptr %55 to i64 %59 = sub i64 %58, %57 %60 = mul nuw nsw i64 %52, 24 %61 = icmp ult i64 %59, %60 %62 = and i1 %.not107, %61 br i1 %62, label %idxend91, label %oob86 L125: ; preds = %pass97 store ptr addrspace(10) %"xform::Composition.inner_ptr.unbox.unpack", ptr %6, align 8 %.fca.0.0.0.extract57 = extractvalue { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) } %value_phi69211, 0, 0 store ptr addrspace(10) %.fca.0.0.0.extract57, ptr %7, align 8 %.fca.0.0.1.extract59 = extractvalue { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) } %value_phi69211, 0, 1 store i64 %.fca.0.0.1.extract59, ptr %.fca.0.0.1.gep60, align 8 %.fca.0.0.2.extract61 = extractvalue { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) } %value_phi69211, 0, 2 store i64 %.fca.0.0.2.extract61, ptr %.fca.0.0.2.gep62, align 8 %.fca.0.1.extract63 = extractvalue { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) } %value_phi69211, 1 store ptr addrspace(10) %.fca.0.1.extract63, ptr %.fca.0.1.gep64, align 8 %.fca.1.0.extract65 = extractvalue { ptr addrspace(10), i64 } %value_phi70212, 0 store ptr addrspace(10) %.fca.1.0.extract65, ptr %.fca.1.0.gep66, align 8 %.fca.1.1.extract = extractvalue { ptr addrspace(10), i64 } %value_phi70212, 1 store i64 %.fca.1.1.extract, ptr %.fca.1.1.gep, align 8 store ptr addrspace(10) %.unpack110, ptr %8, align 8 store i64 %.unpack112, ptr %.fca.1.gep54, align 8 store i64 %.unpack114, ptr %.fca.2.gep56, align 8 call swiftcc void @j_f_7013(ptr noalias nocapture noundef nonnull sret({ { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) }, { ptr addrspace(10), i64 } }) %4, ptr noalias nocapture noundef nonnull %5, ptr nonnull swiftself %pgcstack, ptr addrspace(11) nocapture readonly %196, ptr addrspace(11) nocapture readonly %197, ptr addrspace(11) nocapture readonly %198) %.result_ptr101.unbox.fca.0.load = load ptr addrspace(10), ptr %.result_ptr101, align 8 %.result_ptr101.unbox.fca.0.insert = insertvalue { ptr addrspace(10), i64 } poison, ptr addrspace(10) %.result_ptr101.unbox.fca.0.load, 0 %.result_ptr101.unbox.fca.1.load = load i64, ptr %.result_ptr101.unbox.fca.1.gep, align 8 %.result_ptr101.unbox.fca.1.insert = insertvalue { ptr addrspace(10), i64 } %.result_ptr101.unbox.fca.0.insert, i64 %.result_ptr101.unbox.fca.1.load, 1 %.state_ptr99.unbox.fca.0.0.load = load ptr addrspace(10), ptr %4, align 8 %.state_ptr99.unbox.fca.0.0.insert = insertvalue { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) } poison, ptr addrspace(10) %.state_ptr99.unbox.fca.0.0.load, 0, 0 %.state_ptr99.unbox.fca.0.1.load = load i64, ptr %.state_ptr99.unbox.fca.0.1.gep, align 8 %.state_ptr99.unbox.fca.0.1.insert = insertvalue { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) } %.state_ptr99.unbox.fca.0.0.insert, i64 %.state_ptr99.unbox.fca.0.1.load, 0, 1 %.state_ptr99.unbox.fca.0.2.load = load i64, ptr %.state_ptr99.unbox.fca.0.2.gep, align 8 %.state_ptr99.unbox.fca.0.2.insert = insertvalue { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) } %.state_ptr99.unbox.fca.0.1.insert, i64 %.state_ptr99.unbox.fca.0.2.load, 0, 2 %.state_ptr99.unbox.fca.1.load = load ptr addrspace(10), ptr %.state_ptr99.unbox.fca.1.gep, align 8 %.state_ptr99.unbox.fca.1.insert = insertvalue { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) } %.state_ptr99.unbox.fca.0.2.insert, ptr addrspace(10) %.state_ptr99.unbox.fca.1.load, 1 br label %L170 L131: ; preds = %pass97 store ptr addrspace(10) %"xform::Composition.inner_ptr.unbox.unpack", ptr %12, align 8 %.fca.0.0.0.extract = extractvalue { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) } %value_phi71213, 0, 0 store ptr addrspace(10) %.fca.0.0.0.extract, ptr %13, align 8 %.fca.0.0.1.extract = extractvalue { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) } %value_phi71213, 0, 1 store i64 %.fca.0.0.1.extract, ptr %.fca.0.0.1.gep, align 8 %.fca.0.0.2.extract = extractvalue { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) } %value_phi71213, 0, 2 store i64 %.fca.0.0.2.extract, ptr %.fca.0.0.2.gep, align 8 %.fca.0.1.extract = extractvalue { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) } %value_phi71213, 1 store ptr addrspace(10) %.fca.0.1.extract, ptr %.fca.0.1.gep, align 8 store i64 %.sroa.070.0205, ptr %.fca.1.0.gep, align 8 store ptr addrspace(10) %.unpack110, ptr %14, align 8 store i64 %.unpack112, ptr %.fca.1.gep, align 8 store i64 %.unpack114, ptr %.fca.2.gep, align 8 %63 = call swiftcc nonnull ptr addrspace(10) @j_f_7034(ptr nonnull swiftself %pgcstack, ptr addrspace(11) nocapture readonly %199, ptr addrspace(11) nocapture readonly %200, ptr addrspace(11) nocapture readonly %201) %64 = call ptr addrspace(10) @julia.typeof(ptr addrspace(10) nonnull %63) %65 = addrspacecast ptr addrspace(10) %64 to ptr addrspace(11) %66 = call nonnull ptr @julia.pointer_from_objref(ptr addrspace(11) %65) #8 %exactly_isa256.not = icmp eq ptr %66, @"+Transducers.ResultShim#7035.jit" br i1 %exactly_isa256.not, label %guard_pass400, label %guard_pass406 L142: ; preds = %guard_pass406, %guard_pass400 %value_phi266 = phi { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) } [ %.state_ptr265.unbox158, %guard_pass400 ], [ %.state_ptr305.unbox166, %guard_pass406 ] br i1 %exactly_isa256.not, label %L156, label %L155 L155: ; preds = %L142 %67 = addrspacecast ptr addrspace(10) %63 to ptr addrspace(11) %.result_ptr296 = getelementptr inbounds { { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) }, { i64 } }, ptr addrspace(11) %67, i64 0, i32 1 %unionalloca.sroa.0.0.copyload16 = load i64, ptr addrspace(11) %.result_ptr296, align 8, !tbaa !18, !alias.scope !41, !noalias !42 br i1 false, label %guard_exit443, label %guard_pass442 L156: ; preds = %L142 %68 = addrspacecast ptr addrspace(10) %63 to ptr addrspace(11) %.result_ptr279 = getelementptr inbounds { { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) }, { ptr addrspace(10), i64 } }, ptr addrspace(11) %68, i64 0, i32 1 %"box::SafeCollector412" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr nonnull %current_task411, i64 16, ptr addrspace(10) addrspacecast (ptr @"+BangBang.SafeCollector#7001.jit" to ptr addrspace(10))) #23 call void @llvm.memcpy.p10.p11.i64(ptr addrspace(10) noundef nonnull align 8 dereferenceable(16) %"box::SafeCollector412", ptr addrspace(11) noundef align 8 dereferenceable(16) %.result_ptr279, i64 16, i1 false), !tbaa !43, !alias.scope !47, !noalias !48 %69 = addrspacecast ptr addrspace(10) %"box::SafeCollector412" to ptr addrspace(11) br i1 true, label %isa, label %guard_exit421 L170: ; preds = %guard_pass378, %L125 %.sroa.0.1226 = phi i64 [ %.sroa.0.1, %guard_pass378 ], [ %.sroa.0.1227, %L125 ] %.sroa.049.0.copyload50220 = phi i64 [ %.sroa.014.1, %guard_pass378 ], [ %.sroa.049.0.copyload50221, %L125 ] %unionalloca.sroa.0.0206214 = phi i64 [ %unionalloca.sroa.0.1176, %guard_pass378 ], [ %unionalloca.sroa.0.0206215, %L125 ] %.sroa.047.1 = phi i64 [ %.sroa.0.1, %guard_pass378 ], [ %.sroa.047.0203, %L125 ] %.sroa.049.1 = phi i64 [ %.sroa.014.1, %guard_pass378 ], [ %.sroa.049.0204, %L125 ] %unionalloca.sroa.0.2 = phi i64 [ %unionalloca.sroa.0.1176, %guard_pass378 ], [ %unionalloca.sroa.0.0206, %L125 ] %.sroa.014.2 = phi i64 [ %.sroa.014.1, %guard_pass378 ], [ %.sroa.014.0207, %L125 ] %.sroa.0.2 = phi i64 [ %.sroa.0.1, %guard_pass378 ], [ %.sroa.0.0208, %L125 ] %value_phi102 = phi { ptr addrspace(10), i64 } [ %value_phi283, %guard_pass378 ], [ %.result_ptr101.unbox.fca.1.insert, %L125 ] %value_phi103 = phi { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) } [ %value_phi282, %guard_pass378 ], [ %.state_ptr99.unbox.fca.1.insert, %L125 ] %value_phi104 = phi i8 [ %value_phi281, %guard_pass378 ], [ 1, %L125 ] %value_phi106 = phi { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) } [ %value_phi282, %guard_pass378 ], [ %.state_ptr99.unbox.fca.1.insert, %L125 ] %value_phi107 = phi { ptr addrspace(10), i64 } [ %value_phi286, %guard_pass378 ], [ %.result_ptr101.unbox.fca.1.insert, %L125 ] %value_phi108 = phi { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) } [ %value_phi287, %guard_pass378 ], [ zeroinitializer, %L125 ] %.not117.not = icmp eq i64 %value_phi66209, %value_phi61 %70 = add nuw i64 %value_phi66209, 1 br i1 %.not117.not, label %L191, label %guard_exit343 L191: ; preds = %L170 %.not118 = icmp eq i8 %value_phi104, 0 br i1 %.not118, label %L295, label %L197 L197: ; preds = %L191 %value_phi117.data = extractvalue { ptr addrspace(10), i64 } %value_phi107, 0 %value_phi117.i = extractvalue { ptr addrspace(10), i64 } %value_phi107, 1 %71 = addrspacecast ptr addrspace(10) %value_phi117.data to ptr addrspace(11) %72 = getelementptr inbounds i8, ptr addrspace(11) %71, i64 16 %value_phi117.data.size.sroa.0.0.copyload = load i64, ptr addrspace(11) %72, align 8, !tbaa !18, !alias.scope !19, !noalias !20 %.not119 = icmp slt i64 %value_phi117.data.size.sroa.0.0.copyload, %value_phi117.i br i1 %.not119, label %L206, label %L263 L206: ; preds = %L197 %73 = add i64 %value_phi117.data.size.sroa.0.0.copyload, 1 %74 = shl i64 %value_phi117.data.size.sroa.0.0.copyload, 1 %75 = call i64 @llvm.smax.i64(i64 %73, i64 %74) %76 = call i64 @llvm.smax.i64(i64 %75, i64 4) %.not121 = icmp slt i64 %value_phi117.data.size.sroa.0.0.copyload, %76 br i1 %.not121, label %L223, label %L247 L223: ; preds = %L206 %77 = sub i64 %76, %value_phi117.data.size.sroa.0.0.copyload %78 = icmp slt i64 %77, 0 br i1 %78, label %L243, label %L226 L226: ; preds = %L223 %79 = load ptr, ptr addrspace(11) %71, align 8, !tbaa !25, !alias.scope !23, !noalias !24 %80 = getelementptr inbounds { ptr, ptr addrspace(10) }, ptr addrspace(11) %71, i64 0, i32 1 %81 = load ptr addrspace(10), ptr addrspace(11) %80, align 8, !tbaa !25, !alias.scope !23, !noalias !24, !dereferenceable_or_null !31, !align !32 %82 = addrspacecast ptr addrspace(10) %81 to ptr addrspace(11) %.data_ptr151 = getelementptr inbounds { i64, ptr }, ptr addrspace(10) %81, i64 0, i32 1 %83 = load ptr, ptr addrspace(10) %.data_ptr151, align 8, !tbaa !7, !invariant.load !9, !alias.scope !10, !noalias !13, !nonnull !9 %84 = ptrtoint ptr %83 to i64 %85 = ptrtoint ptr %79 to i64 %86 = sub i64 %85, %84 %87 = lshr exact i64 %86, 5 store i64 %76, ptr addrspace(11) %72, align 8, !tbaa !18, !alias.scope !49, !noalias !20 %88 = add i64 %87, %76 %.unbox = load i64, ptr addrspace(11) %82, align 8, !tbaa !33, !alias.scope !23, !noalias !24 %.not122 = icmp slt i64 %.unbox, %88 br i1 %.not122, label %L240, label %L263 L240: ; preds = %L226 %89 = add nuw nsw i64 %87, 1 store ptr addrspace(10) %value_phi117.data, ptr %11, align 8 %.fca.1.gep32 = getelementptr inbounds { ptr addrspace(10), i64, i64, i64, i64, i64, ptr addrspace(10), { ptr, ptr addrspace(10) } }, ptr %11, i64 0, i32 1 store i64 %88, ptr %.fca.1.gep32, align 8 %.fca.2.gep34 = getelementptr inbounds { ptr addrspace(10), i64, i64, i64, i64, i64, ptr addrspace(10), { ptr, ptr addrspace(10) } }, ptr %11, i64 0, i32 2 store i64 %89, ptr %.fca.2.gep34, align 8 %.fca.3.gep = getelementptr inbounds { ptr addrspace(10), i64, i64, i64, i64, i64, ptr addrspace(10), { ptr, ptr addrspace(10) } }, ptr %11, i64 0, i32 3 store i64 %76, ptr %.fca.3.gep, align 8 %.fca.4.gep = getelementptr inbounds { ptr addrspace(10), i64, i64, i64, i64, i64, ptr addrspace(10), { ptr, ptr addrspace(10) } }, ptr %11, i64 0, i32 4 store i64 %value_phi117.data.size.sroa.0.0.copyload, ptr %.fca.4.gep, align 8 %.fca.5.gep = getelementptr inbounds { ptr addrspace(10), i64, i64, i64, i64, i64, ptr addrspace(10), { ptr, ptr addrspace(10) } }, ptr %11, i64 0, i32 5 store i64 %.unbox, ptr %.fca.5.gep, align 8 %.fca.6.gep = getelementptr inbounds { ptr addrspace(10), i64, i64, i64, i64, i64, ptr addrspace(10), { ptr, ptr addrspace(10) } }, ptr %11, i64 0, i32 6 store ptr addrspace(10) %81, ptr %.fca.6.gep, align 8 %.fca.7.0.gep = getelementptr inbounds { ptr addrspace(10), i64, i64, i64, i64, i64, ptr addrspace(10), { ptr, ptr addrspace(10) } }, ptr %11, i64 0, i32 7, i32 0 store ptr %79, ptr %.fca.7.0.gep, align 8 %.fca.7.1.gep = getelementptr inbounds { ptr addrspace(10), i64, i64, i64, i64, i64, ptr addrspace(10), { ptr, ptr addrspace(10) } }, ptr %11, i64 0, i32 7, i32 1 store ptr addrspace(10) %81, ptr %.fca.7.1.gep, align 8 %90 = addrspacecast ptr %11 to ptr addrspace(11) call swiftcc void @"j_#131_7018"(ptr noalias nocapture noundef nonnull sret({ ptr, ptr addrspace(10) }) %9, ptr noalias nocapture noundef nonnull %10, ptr nonnull swiftself %pgcstack, ptr addrspace(11) nocapture readonly %90) br label %L263 L243: ; preds = %L223 %91 = call swiftcc [1 x ptr addrspace(10)] @j_ArgumentError_7022(ptr nonnull swiftself %pgcstack, ptr addrspace(10) addrspacecast (ptr @"jl_global#7023.jit" to ptr addrspace(10))) %current_task188 = getelementptr inbounds ptr, ptr %pgcstack, i64 -14 %"box::ArgumentError" = call noalias nonnull align 8 dereferenceable(8) ptr addrspace(10) @julia.gc_alloc_obj(ptr nonnull %current_task188, i64 8, ptr addrspace(10) addrspacecast (ptr @"+Core.ArgumentError#7025.jit" to ptr addrspace(10))) #23 %92 = extractvalue [1 x ptr addrspace(10)] %91, 0 store ptr addrspace(10) %92, ptr addrspace(10) %"box::ArgumentError", align 8, !tbaa !43, !alias.scope !47, !noalias !48 %93 = addrspacecast ptr addrspace(10) %"box::ArgumentError" to ptr addrspace(12) call void @ijl_throw(ptr addrspace(12) %93) unreachable L247: ; preds = %L206 %.not138 = icmp eq i64 %76, %value_phi117.data.size.sroa.0.0.copyload br i1 %.not138, label %L263, label %L254 L254: ; preds = %L247 %94 = sub i64 %value_phi117.data.size.sroa.0.0.copyload, %76 call swiftcc void @"j__deleteend!_7030"(ptr nonnull swiftself %pgcstack, ptr addrspace(10) %value_phi117.data, i64 signext %94) br label %L263 L263: ; preds = %L254, %L247, %L240, %L226, %L197 %95 = add i64 %value_phi117.i, -1 %value_phi159.size.sroa.0.0.copyload = load i64, ptr addrspace(11) %72, align 8, !tbaa !18, !alias.scope !19, !noalias !20 %.not123 = icmp ult i64 %95, %value_phi159.size.sroa.0.0.copyload br i1 %.not123, label %L275, label %L272 L272: ; preds = %L263 store i64 %value_phi117.i, ptr %"new::Tuple185", align 8, !tbaa !37, !alias.scope !39, !noalias !40 %96 = addrspacecast ptr %"new::Tuple185" to ptr addrspace(11) call swiftcc void @j_throw_boundserror_7020(ptr nonnull swiftself %pgcstack, ptr addrspace(10) %value_phi117.data, ptr addrspace(11) nocapture readonly %96) #6 unreachable L275: ; preds = %L263 %97 = load ptr, ptr addrspace(11) %71, align 8, !tbaa !25, !alias.scope !23, !noalias !24 %98 = getelementptr inbounds { ptr, ptr addrspace(10) }, ptr addrspace(11) %71, i64 0, i32 1 %99 = load ptr addrspace(10), ptr addrspace(11) %98, align 8, !tbaa !25, !alias.scope !23, !noalias !24, !dereferenceable_or_null !31, !align !32 %100 = addrspacecast ptr addrspace(10) %99 to ptr addrspace(11) %101 = load i64, ptr addrspace(11) %100, align 8, !tbaa !33, !range !50, !alias.scope !23, !noalias !24 %102 = shl nuw nsw i64 %101, 1 %103 = add i64 %101, %95 %.not124 = icmp ult i64 %103, %102 %104 = getelementptr inbounds { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) }, ptr %97, i64 %95 %.data_ptr169 = getelementptr inbounds { i64, ptr }, ptr addrspace(10) %99, i64 0, i32 1 %105 = load ptr, ptr addrspace(10) %.data_ptr169, align 8, !tbaa !7, !invariant.load !9, !alias.scope !10, !noalias !13, !nonnull !9 %106 = ptrtoint ptr %105 to i64 %107 = ptrtoint ptr %104 to i64 %108 = sub i64 %107, %106 %109 = shl nuw nsw i64 %101, 5 %110 = icmp ult i64 %108, %109 %111 = and i1 %.not124, %110 br i1 %111, label %idxend174, label %oob170 L295: ; preds = %L191.thread, %L191 %value_phi118186 = phi { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) } [ %.state_ptr.unbox385.fca.1.insert, %L191.thread ], [ %value_phi108, %L191 ] %.sroa.045.0185 = phi i64 [ %.sroa.045.0.copyload46, %L191.thread ], [ %.sroa.047.1, %L191 ] %112 = icmp slt i64 %.sroa.045.0185, 1 br i1 %112, label %L304, label %L300 L300: ; preds = %L295 %"Memory{NamedTuple}[]" = call ptr addrspace(10) @jl_alloc_genericmemory(ptr addrspace(10) addrspacecast (ptr @"+Core.GenericMemory#7031.jit" to ptr addrspace(10)), i64 4) %.data_ptr202 = getelementptr inbounds { i64, ptr }, ptr addrspace(10) %"Memory{NamedTuple}[]", i64 0, i32 1 %113 = load ptr, ptr addrspace(10) %.data_ptr202, align 8, !tbaa !7, !invariant.load !9, !alias.scope !10, !noalias !13, !nonnull !9 %current_task204 = getelementptr inbounds ptr, ptr %pgcstack, i64 -14 %"new::Array205" = call noalias nonnull align 8 dereferenceable(24) ptr addrspace(10) @julia.gc_alloc_obj(ptr nonnull %current_task204, i64 24, ptr addrspace(10) addrspacecast (ptr @"+Core.Array#7032.jit" to ptr addrspace(10))) #23 %114 = addrspacecast ptr addrspace(10) %"new::Array205" to ptr addrspace(11) %115 = getelementptr inbounds ptr addrspace(10), ptr addrspace(11) %114, i64 1 store ptr addrspace(10) null, ptr addrspace(11) %115, align 8, !tbaa !21, !alias.scope !23, !noalias !24 store ptr %113, ptr addrspace(11) %114, align 8, !tbaa !25, !alias.scope !23, !noalias !24 %.repack139 = getelementptr inbounds { ptr, ptr addrspace(10) }, ptr addrspace(11) %114, i64 0, i32 1 store ptr addrspace(10) %"Memory{NamedTuple}[]", ptr addrspace(11) %.repack139, align 8, !tbaa !25, !alias.scope !23, !noalias !24 %"new::Array205.size_ptr" = getelementptr inbounds i8, ptr addrspace(11) %114, i64 16 store i64 4, ptr addrspace(11) %"new::Array205.size_ptr", align 8, !tbaa !18, !alias.scope !27, !noalias !28 br label %L307 L304: ; preds = %L295 %.instance243 = load atomic ptr addrspace(10), ptr getelementptr inbounds (ptr, ptr @"+Core.GenericMemory#7031.jit", i64 4) unordered, align 16, !tbaa !7, !invariant.load !9, !alias.scope !10, !noalias !13 %.not152 = icmp eq ptr addrspace(10) %.instance243, null br i1 %.not152, label %fail245, label %pass246 L307: ; preds = %pass246, %L300 %value_phi206 = phi ptr addrspace(10) [ %"new::Array205", %L300 ], [ %"new::Array252", %pass246 ] %116 = add i64 %.sroa.045.0185, -1 %117 = call swiftcc nonnull ptr addrspace(10) @"j_copyto!_7033"(ptr nonnull swiftself %pgcstack, ptr addrspace(10) nonnull %value_phi206, i64 signext 1, i64 signext 1, i64 signext %116) %118 = addrspacecast ptr addrspace(10) %value_phi206 to ptr addrspace(11) %119 = getelementptr inbounds i8, ptr addrspace(11) %118, i64 16 %value_phi206.size.sroa.0.0.copyload = load i64, ptr addrspace(11) %119, align 8, !tbaa !18, !alias.scope !19, !noalias !20 %.not141 = icmp ult i64 %116, %value_phi206.size.sroa.0.0.copyload br i1 %.not141, label %L324, label %L321 L321: ; preds = %L307 store i64 %.sroa.045.0185, ptr %"new::Tuple237", align 8, !tbaa !37, !alias.scope !39, !noalias !40 %120 = addrspacecast ptr %"new::Tuple237" to ptr addrspace(11) call swiftcc void @j_throw_boundserror_7020(ptr nonnull swiftself %pgcstack, ptr addrspace(10) nonnull %value_phi206, ptr addrspace(11) nocapture readonly %120) #6 unreachable L324: ; preds = %L307 %121 = load ptr, ptr addrspace(11) %118, align 8, !tbaa !25, !alias.scope !23, !noalias !24 %122 = getelementptr inbounds { ptr, ptr addrspace(10) }, ptr addrspace(11) %118, i64 0, i32 1 %123 = load ptr addrspace(10), ptr addrspace(11) %122, align 8, !tbaa !25, !alias.scope !23, !noalias !24, !dereferenceable_or_null !31, !align !32 %124 = addrspacecast ptr addrspace(10) %123 to ptr addrspace(11) %125 = load i64, ptr addrspace(11) %124, align 8, !tbaa !33, !range !50, !alias.scope !23, !noalias !24 %126 = shl nuw nsw i64 %125, 1 %127 = add i64 %125, %116 %.not142 = icmp ult i64 %127, %126 %128 = getelementptr inbounds { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) }, ptr %121, i64 %116 %.data_ptr221 = getelementptr inbounds { i64, ptr }, ptr addrspace(10) %123, i64 0, i32 1 %129 = load ptr, ptr addrspace(10) %.data_ptr221, align 8, !tbaa !7, !invariant.load !9, !alias.scope !10, !noalias !13, !nonnull !9 %130 = ptrtoint ptr %129 to i64 %131 = ptrtoint ptr %128 to i64 %132 = sub i64 %131, %130 %133 = shl nuw nsw i64 %125, 5 %134 = icmp ult i64 %132, %133 %135 = and i1 %.not142, %134 br i1 %135, label %idxend227, label %oob222 L349: ; preds = %guard_exit232, %guard_exit179 %value_phi117.data.pn = phi ptr addrspace(10) [ %value_phi117.data, %guard_exit179 ], [ %value_phi206, %guard_exit232 ] %.pn134.in = phi i64 [ %value_phi117.i, %guard_exit179 ], [ %.sroa.045.0185, %guard_exit232 ] %.pn134 = add i64 %.pn134.in, 1 %current_task319 = getelementptr inbounds ptr, ptr %pgcstack, i64 -14 %"box::SafeCollector320" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr nonnull %current_task319, i64 16, ptr addrspace(10) addrspacecast (ptr @"+BangBang.SafeCollector#7001.jit" to ptr addrspace(10))) #23 store ptr addrspace(10) %value_phi117.data.pn, ptr addrspace(10) %"box::SafeCollector320", align 8, !tbaa !43, !alias.scope !47, !noalias !48 %"box::SafeCollector320.repack136" = getelementptr inbounds { ptr addrspace(10), i64 }, ptr addrspace(10) %"box::SafeCollector320", i64 0, i32 1 store i64 %.pn134, ptr addrspace(10) %"box::SafeCollector320.repack136", align 8, !tbaa !43, !alias.scope !47, !noalias !48 br i1 false, label %guard_pass23, label %guard_pass L359: ; preds = %guard_pass23, %guard_pass %value_phi21189 = phi ptr addrspace(10) [ %value_phi21188, %guard_pass23 ], [ %"box::SafeCollector320", %guard_pass ] ret ptr addrspace(10) %value_phi21189 oob: ; preds = %L37 %current_task16 = getelementptr inbounds ptr, ptr %pgcstack, i64 -14 %"box::GenericMemoryRef" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr nonnull %current_task16, i64 16, ptr addrspace(10) addrspacecast (ptr @"+Core.GenericMemoryRef#6999.jit" to ptr addrspace(10))) #23 store i64 %27, ptr addrspace(10) %"box::GenericMemoryRef", align 8, !tbaa !43, !alias.scope !47, !noalias !48 %"box::GenericMemoryRef.repack91" = getelementptr inbounds { i64, ptr addrspace(10) }, ptr addrspace(10) %"box::GenericMemoryRef", i64 0, i32 1 store ptr addrspace(10) %29, ptr addrspace(10) %"box::GenericMemoryRef.repack91", align 8, !tbaa !43, !alias.scope !47, !noalias !48 %136 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef" to ptr addrspace(12) call void @ijl_bounds_error_int(ptr addrspace(12) %136, i64 %"init::SafeCollector.i_ptr.unbox") unreachable idxend: ; preds = %L37 br i1 false, label %oob17, label %L349.thread oob17: ; preds = %idxend %137 = addrspacecast ptr addrspace(10) %29 to ptr addrspace(12) call void @ijl_bounds_error_int(ptr addrspace(12) %137, i64 1) unreachable L349.thread: ; preds = %idxend %138 = add i64 %"init::SafeCollector.i_ptr.unbox", 1 %current_task316 = getelementptr inbounds ptr, ptr %pgcstack, i64 -14 %"box::SafeCollector" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr nonnull %current_task316, i64 16, ptr addrspace(10) addrspacecast (ptr @"+BangBang.SafeCollector#7002.jit" to ptr addrspace(10))) #23 store ptr addrspace(10) %value_phi, ptr addrspace(10) %"box::SafeCollector", align 8, !tbaa !43, !alias.scope !47, !noalias !48 %"box::SafeCollector.repack93" = getelementptr inbounds { ptr addrspace(10), i64 }, ptr addrspace(10) %"box::SafeCollector", i64 0, i32 1 store i64 %138, ptr addrspace(10) %"box::SafeCollector.repack93", align 8, !tbaa !43, !alias.scope !47, !noalias !48 br label %guard_pass23 guard_pass: ; preds = %L349 %139 = call ptr addrspace(10) @julia.typeof(ptr addrspace(10) nonnull %"box::SafeCollector320") %140 = addrspacecast ptr addrspace(10) %139 to ptr addrspace(11) %141 = call nonnull ptr @julia.pointer_from_objref(ptr addrspace(11) %140) #8 br label %L359 guard_pass23: ; preds = %L349.thread, %L349 %value_phi21188 = phi ptr addrspace(10) [ %"box::SafeCollector", %L349.thread ], [ %"box::SafeCollector320", %L349 ] %142 = call ptr addrspace(10) @julia.typeof(ptr addrspace(10) nonnull %value_phi21188) %143 = addrspacecast ptr addrspace(10) %142 to ptr addrspace(11) %144 = call nonnull ptr @julia.pointer_from_objref(ptr addrspace(11) %143) #8 br label %L359 fail: ; preds = %L17 %jl_undefref_exception = load ptr, ptr @jl_undefref_exception, align 8, !tbaa !7, !invariant.load !9, !alias.scope !10, !noalias !13, !nonnull !9 %145 = addrspacecast ptr %jl_undefref_exception to ptr addrspace(12) call void @ijl_throw(ptr addrspace(12) %145) unreachable pass: ; preds = %L17 %current_task33 = getelementptr inbounds ptr, ptr %pgcstack, i64 -14 %"new::Array34" = call noalias nonnull align 8 dereferenceable(24) ptr addrspace(10) @julia.gc_alloc_obj(ptr nonnull %current_task33, i64 24, ptr addrspace(10) addrspacecast (ptr @"+Core.Array#6994.jit" to ptr addrspace(10))) #23 %146 = addrspacecast ptr addrspace(10) %"new::Array34" to ptr addrspace(11) %147 = getelementptr inbounds ptr addrspace(10), ptr addrspace(11) %146, i64 1 store ptr addrspace(10) null, ptr addrspace(11) %147, align 8, !tbaa !21, !alias.scope !23, !noalias !24 store i64 0, ptr addrspace(11) %146, align 8, !tbaa !25, !alias.scope !23, !noalias !24 %.repack95 = getelementptr inbounds { i64, ptr addrspace(10) }, ptr addrspace(11) %146, i64 0, i32 1 store ptr addrspace(10) %.instance, ptr addrspace(11) %.repack95, align 8, !tbaa !25, !alias.scope !23, !noalias !24 %"new::Array34.size_ptr" = getelementptr inbounds i8, ptr addrspace(11) %146, i64 16 store i64 0, ptr addrspace(11) %"new::Array34.size_ptr", align 8, !tbaa !18, !alias.scope !27, !noalias !28 br label %L20 oob46: ; preds = %L71 %current_task48 = getelementptr inbounds ptr, ptr %pgcstack, i64 -14 %"box::GenericMemoryRef49" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr nonnull %current_task48, i64 16, ptr addrspace(10) addrspacecast (ptr @"+Core.GenericMemoryRef#7008.jit" to ptr addrspace(10))) #23 store ptr %35, ptr addrspace(10) %"box::GenericMemoryRef49", align 8, !tbaa !43, !alias.scope !47, !noalias !48 %"box::GenericMemoryRef49.repack99" = getelementptr inbounds { ptr, ptr addrspace(10) }, ptr addrspace(10) %"box::GenericMemoryRef49", i64 0, i32 1 store ptr addrspace(10) %37, ptr addrspace(10) %"box::GenericMemoryRef49.repack99", align 8, !tbaa !43, !alias.scope !47, !noalias !48 %148 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef49" to ptr addrspace(12) call void @ijl_bounds_error_int(ptr addrspace(12) %148, i64 1) unreachable idxend50: ; preds = %L71 br i1 false, label %oob51, label %load52 oob51: ; preds = %idxend50 %149 = addrspacecast ptr addrspace(10) %37 to ptr addrspace(12) call void @ijl_bounds_error_int(ptr addrspace(12) %149, i64 1) unreachable load52: ; preds = %idxend50 %150 = call ptr addrspace(13) @julia.gc_loaded(ptr addrspace(10) %37, ptr %35) %.unpack = load ptr addrspace(10), ptr addrspace(13) %150, align 8, !tbaa !51, !alias.scope !47, !noalias !48 %.not105 = icmp eq ptr addrspace(10) %.unpack, null br i1 %.not105, label %fail54, label %pass55 fail54: ; preds = %load52 %jl_undefref_exception53 = load ptr, ptr @jl_undefref_exception, align 8, !tbaa !7, !invariant.load !9, !alias.scope !10, !noalias !13, !nonnull !9 %151 = addrspacecast ptr %jl_undefref_exception53 to ptr addrspace(12) call void @ijl_throw(ptr addrspace(12) %151) unreachable pass55: ; preds = %load52 %.elt101 = getelementptr inbounds { ptr addrspace(10), i64, i64 }, ptr addrspace(13) %150, i64 0, i32 1 %.unpack102 = load i64, ptr addrspace(13) %.elt101, align 8, !tbaa !51, !alias.scope !47, !noalias !48 %.elt103 = getelementptr inbounds { ptr addrspace(10), i64, i64 }, ptr addrspace(13) %150, i64 0, i32 2 %.unpack104 = load i64, ptr addrspace(13) %.elt103, align 8, !tbaa !51, !alias.scope !47, !noalias !48 %152 = load i64, ptr addrspace(11) %"init::SafeCollector", align 8, !tbaa !18, !alias.scope !29, !noalias !30 store i64 %152, ptr %"new::ResultShim", align 8, !tbaa !18, !alias.scope !29, !noalias !30 store ptr addrspace(10) %"xform::Composition.inner_ptr.unbox.unpack", ptr %2, align 8 %153 = addrspacecast ptr %2 to ptr addrspace(11) %154 = addrspacecast ptr %"new::ResultShim" to ptr addrspace(11) store ptr addrspace(10) %.unpack, ptr %3, align 8 %.fca.1.gep75 = getelementptr inbounds { ptr addrspace(10), i64, i64 }, ptr %3, i64 0, i32 1 store i64 %.unpack102, ptr %.fca.1.gep75, align 8 %.fca.2.gep77 = getelementptr inbounds { ptr addrspace(10), i64, i64 }, ptr %3, i64 0, i32 2 store i64 %.unpack104, ptr %.fca.2.gep77, align 8 %155 = addrspacecast ptr %3 to ptr addrspace(11) call swiftcc void @j_f_7010(ptr noalias nocapture noundef nonnull sret({ { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) }, { i64 } }) %0, ptr noalias nocapture noundef nonnull %1, ptr nonnull swiftself %pgcstack, ptr addrspace(11) nocapture readonly %153, ptr addrspace(11) nocapture readonly %154, ptr addrspace(11) nocapture readonly %155) %.result_ptr = getelementptr inbounds { { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) }, { i64 } }, ptr %0, i64 0, i32 1 %156 = load i64, ptr addrspace(11) %17, align 8, !tbaa !18, !alias.scope !19, !noalias !20 %value_phi61 = call i64 @llvm.smax.i64(i64 %156, i64 1) %157 = icmp ult i64 %value_phi61, 2 br i1 %157, label %L191.thread, label %guard_exit338 oob86: ; preds = %L120 %current_task89 = getelementptr inbounds ptr, ptr %pgcstack, i64 -14 %"box::GenericMemoryRef90" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr nonnull %current_task89, i64 16, ptr addrspace(10) addrspacecast (ptr @"+Core.GenericMemoryRef#7008.jit" to ptr addrspace(10))) #23 store ptr %49, ptr addrspace(10) %"box::GenericMemoryRef90", align 8, !tbaa !43, !alias.scope !47, !noalias !48 %"box::GenericMemoryRef90.repack108" = getelementptr inbounds { ptr, ptr addrspace(10) }, ptr addrspace(10) %"box::GenericMemoryRef90", i64 0, i32 1 store ptr addrspace(10) %50, ptr addrspace(10) %"box::GenericMemoryRef90.repack108", align 8, !tbaa !43, !alias.scope !47, !noalias !48 %158 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef90" to ptr addrspace(12) call void @ijl_bounds_error_int(ptr addrspace(12) %158, i64 %value_phi66209) unreachable idxend91: ; preds = %L120 %159 = icmp eq i64 %52, 0 br i1 %159, label %oob93, label %load94 oob93: ; preds = %idxend91 %160 = addrspacecast ptr addrspace(10) %50 to ptr addrspace(12) call void @ijl_bounds_error_int(ptr addrspace(12) %160, i64 1) unreachable load94: ; preds = %idxend91 %161 = call ptr addrspace(13) @julia.gc_loaded(ptr addrspace(10) %50, ptr %49) %162 = getelementptr inbounds { ptr addrspace(10), i64, i64 }, ptr addrspace(13) %161, i64 %48 %.unpack110 = load ptr addrspace(10), ptr addrspace(13) %162, align 8, !tbaa !51, !alias.scope !47, !noalias !48 %.elt111 = getelementptr inbounds { ptr addrspace(10), i64, i64 }, ptr addrspace(13) %161, i64 %48, i32 1 %.unpack112 = load i64, ptr addrspace(13) %.elt111, align 8, !tbaa !51, !alias.scope !47, !noalias !48 %.elt113 = getelementptr inbounds { ptr addrspace(10), i64, i64 }, ptr addrspace(13) %161, i64 %48, i32 2 %.unpack114 = load i64, ptr addrspace(13) %.elt113, align 8, !tbaa !51, !alias.scope !47, !noalias !48 %.not115 = icmp eq ptr addrspace(10) %.unpack110, null br i1 %.not115, label %fail96, label %pass97 fail96: ; preds = %load94 %jl_undefref_exception95 = load ptr, ptr @jl_undefref_exception, align 8, !tbaa !7, !invariant.load !9, !alias.scope !10, !noalias !13, !nonnull !9 %163 = addrspacecast ptr %jl_undefref_exception95 to ptr addrspace(12) call void @ijl_throw(ptr addrspace(12) %163) unreachable pass97: ; preds = %load94 %.not116 = icmp eq i8 %value_phi68210, 0 br i1 %.not116, label %L131, label %L125 oob170: ; preds = %L275 %current_task172 = getelementptr inbounds ptr, ptr %pgcstack, i64 -14 %"box::GenericMemoryRef173" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr nonnull %current_task172, i64 16, ptr addrspace(10) addrspacecast (ptr @"+Core.GenericMemoryRef#7019.jit" to ptr addrspace(10))) #23 store ptr %97, ptr addrspace(10) %"box::GenericMemoryRef173", align 8, !tbaa !43, !alias.scope !47, !noalias !48 %"box::GenericMemoryRef173.repack125" = getelementptr inbounds { ptr, ptr addrspace(10) }, ptr addrspace(10) %"box::GenericMemoryRef173", i64 0, i32 1 store ptr addrspace(10) %99, ptr addrspace(10) %"box::GenericMemoryRef173.repack125", align 8, !tbaa !43, !alias.scope !47, !noalias !48 %164 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef173" to ptr addrspace(12) call void @ijl_bounds_error_int(ptr addrspace(12) %164, i64 %value_phi117.i) unreachable idxend174: ; preds = %L275 %165 = icmp eq i64 %101, 0 br i1 %165, label %oob176, label %load177 oob176: ; preds = %idxend174 %166 = addrspacecast ptr addrspace(10) %99 to ptr addrspace(12) call void @ijl_bounds_error_int(ptr addrspace(12) %166, i64 1) unreachable load177: ; preds = %idxend174 %167 = call ptr addrspace(13) @julia.gc_loaded(ptr addrspace(10) %99, ptr %97) %168 = getelementptr inbounds { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) }, ptr addrspace(13) %167, i64 %95 %169 = getelementptr inbounds { i64, ptr }, ptr addrspace(11) %100, i64 0, i32 1 %170 = load ptr, ptr addrspace(11) %169, align 8, !tbaa !53, !alias.scope !23, !noalias !24, !nonnull !9 %171 = getelementptr inbounds ptr addrspace(10), ptr addrspace(11) %100, i64 2 %172 = addrspacecast ptr %170 to ptr addrspace(11) %.not127 = icmp eq ptr addrspace(11) %171, %172 br i1 %.not127, label %guard_exit179, label %guard_pass178 guard_pass178: ; preds = %load177 %173 = getelementptr inbounds { i64, ptr }, ptr addrspace(11) %100, i64 1 %174 = load ptr addrspace(10), ptr addrspace(11) %173, align 8, !tbaa !7, !invariant.load !9, !alias.scope !10, !noalias !13 %175 = icmp eq ptr addrspace(10) %174, null %176 = select i1 %175, ptr addrspace(10) %99, ptr addrspace(10) %174 br label %guard_exit179 guard_exit179: ; preds = %guard_pass178, %load177 %guard_res180 = phi ptr addrspace(10) [ %99, %load177 ], [ %176, %guard_pass178 ] %value_phi116.elt = extractvalue { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) } %value_phi106, 0 %value_phi116.elt.elt = extractvalue { ptr addrspace(10), i64, i64 } %value_phi116.elt, 0 store ptr addrspace(10) %value_phi116.elt.elt, ptr addrspace(13) %168, align 8, !tbaa !51, !alias.scope !47, !noalias !48 %.repack130 = getelementptr inbounds { ptr addrspace(10), i64, i64 }, ptr addrspace(13) %168, i64 0, i32 1 %value_phi116.elt.elt131 = extractvalue { ptr addrspace(10), i64, i64 } %value_phi116.elt, 1 store i64 %value_phi116.elt.elt131, ptr addrspace(13) %.repack130, align 8, !tbaa !51, !alias.scope !47, !noalias !48 %.repack132 = getelementptr inbounds { ptr addrspace(10), i64, i64 }, ptr addrspace(13) %168, i64 0, i32 2 %value_phi116.elt.elt133 = extractvalue { ptr addrspace(10), i64, i64 } %value_phi116.elt, 2 store i64 %value_phi116.elt.elt133, ptr addrspace(13) %.repack132, align 8, !tbaa !51, !alias.scope !47, !noalias !48 %.repack128 = getelementptr inbounds { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) }, ptr addrspace(13) %167, i64 %95, i32 1 %value_phi116.elt129 = extractvalue { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) } %value_phi106, 1 store ptr addrspace(10) %value_phi116.elt129, ptr addrspace(13) %.repack128, align 8, !tbaa !51, !alias.scope !47, !noalias !48 %177 = extractvalue { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) } %value_phi106, 0, 0 call void (ptr addrspace(10), ...) @julia.write_barrier(ptr addrspace(10) %guard_res180, ptr addrspace(10) %177, ptr addrspace(10) %value_phi116.elt129) br label %L349 oob222: ; preds = %L324 %current_task225 = getelementptr inbounds ptr, ptr %pgcstack, i64 -14 %"box::GenericMemoryRef226" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr nonnull %current_task225, i64 16, ptr addrspace(10) addrspacecast (ptr @"+Core.GenericMemoryRef#7019.jit" to ptr addrspace(10))) #23 store ptr %121, ptr addrspace(10) %"box::GenericMemoryRef226", align 8, !tbaa !43, !alias.scope !47, !noalias !48 %"box::GenericMemoryRef226.repack143" = getelementptr inbounds { ptr, ptr addrspace(10) }, ptr addrspace(10) %"box::GenericMemoryRef226", i64 0, i32 1 store ptr addrspace(10) %123, ptr addrspace(10) %"box::GenericMemoryRef226.repack143", align 8, !tbaa !43, !alias.scope !47, !noalias !48 %178 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef226" to ptr addrspace(12) call void @ijl_bounds_error_int(ptr addrspace(12) %178, i64 %.sroa.045.0185) unreachable idxend227: ; preds = %L324 %179 = icmp eq i64 %125, 0 br i1 %179, label %oob229, label %load230 oob229: ; preds = %idxend227 %180 = addrspacecast ptr addrspace(10) %123 to ptr addrspace(12) call void @ijl_bounds_error_int(ptr addrspace(12) %180, i64 1) unreachable load230: ; preds = %idxend227 %181 = call ptr addrspace(13) @julia.gc_loaded(ptr addrspace(10) %123, ptr %121) %182 = getelementptr inbounds { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) }, ptr addrspace(13) %181, i64 %116 %183 = getelementptr inbounds { i64, ptr }, ptr addrspace(11) %124, i64 0, i32 1 %184 = load ptr, ptr addrspace(11) %183, align 8, !tbaa !53, !alias.scope !23, !noalias !24, !nonnull !9 %185 = getelementptr inbounds ptr addrspace(10), ptr addrspace(11) %124, i64 2 %186 = addrspacecast ptr %184 to ptr addrspace(11) %.not145 = icmp eq ptr addrspace(11) %185, %186 br i1 %.not145, label %guard_exit232, label %guard_pass231 guard_pass231: ; preds = %load230 %187 = getelementptr inbounds { i64, ptr }, ptr addrspace(11) %124, i64 1 %188 = load ptr addrspace(10), ptr addrspace(11) %187, align 8, !tbaa !7, !invariant.load !9, !alias.scope !10, !noalias !13 %189 = icmp eq ptr addrspace(10) %188, null %190 = select i1 %189, ptr addrspace(10) %123, ptr addrspace(10) %188 br label %guard_exit232 guard_exit232: ; preds = %guard_pass231, %load230 %guard_res233 = phi ptr addrspace(10) [ %123, %load230 ], [ %190, %guard_pass231 ] %value_phi118.elt = extractvalue { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) } %value_phi118186, 0 %value_phi118.elt.elt = extractvalue { ptr addrspace(10), i64, i64 } %value_phi118.elt, 0 store ptr addrspace(10) %value_phi118.elt.elt, ptr addrspace(13) %182, align 8, !tbaa !51, !alias.scope !47, !noalias !48 %.repack148 = getelementptr inbounds { ptr addrspace(10), i64, i64 }, ptr addrspace(13) %182, i64 0, i32 1 %value_phi118.elt.elt149 = extractvalue { ptr addrspace(10), i64, i64 } %value_phi118.elt, 1 store i64 %value_phi118.elt.elt149, ptr addrspace(13) %.repack148, align 8, !tbaa !51, !alias.scope !47, !noalias !48 %.repack150 = getelementptr inbounds { ptr addrspace(10), i64, i64 }, ptr addrspace(13) %182, i64 0, i32 2 %value_phi118.elt.elt151 = extractvalue { ptr addrspace(10), i64, i64 } %value_phi118.elt, 2 store i64 %value_phi118.elt.elt151, ptr addrspace(13) %.repack150, align 8, !tbaa !51, !alias.scope !47, !noalias !48 %.repack146 = getelementptr inbounds { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) }, ptr addrspace(13) %181, i64 %116, i32 1 %value_phi118.elt147 = extractvalue { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) } %value_phi118186, 1 store ptr addrspace(10) %value_phi118.elt147, ptr addrspace(13) %.repack146, align 8, !tbaa !51, !alias.scope !47, !noalias !48 %191 = extractvalue { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) } %value_phi118186, 0, 0 call void (ptr addrspace(10), ...) @julia.write_barrier(ptr addrspace(10) %guard_res233, ptr addrspace(10) %191, ptr addrspace(10) %value_phi118.elt147) br label %L349 fail245: ; preds = %L304 %jl_undefref_exception244 = load ptr, ptr @jl_undefref_exception, align 8, !tbaa !7, !invariant.load !9, !alias.scope !10, !noalias !13, !nonnull !9 %192 = addrspacecast ptr %jl_undefref_exception244 to ptr addrspace(12) call void @ijl_throw(ptr addrspace(12) %192) unreachable pass246: ; preds = %L304 %.data_ptr248 = getelementptr inbounds { i64, ptr }, ptr addrspace(10) %.instance243, i64 0, i32 1 %193 = load ptr, ptr addrspace(10) %.data_ptr248, align 8, !tbaa !7, !invariant.load !9, !alias.scope !10, !noalias !13, !nonnull !9 %current_task251 = getelementptr inbounds ptr, ptr %pgcstack, i64 -14 %"new::Array252" = call noalias nonnull align 8 dereferenceable(24) ptr addrspace(10) @julia.gc_alloc_obj(ptr nonnull %current_task251, i64 24, ptr addrspace(10) addrspacecast (ptr @"+Core.Array#7032.jit" to ptr addrspace(10))) #23 %194 = addrspacecast ptr addrspace(10) %"new::Array252" to ptr addrspace(11) %195 = getelementptr inbounds ptr addrspace(10), ptr addrspace(11) %194, i64 1 store ptr addrspace(10) null, ptr addrspace(11) %195, align 8, !tbaa !21, !alias.scope !23, !noalias !24 store ptr %193, ptr addrspace(11) %194, align 8, !tbaa !25, !alias.scope !23, !noalias !24 %.repack153 = getelementptr inbounds { ptr, ptr addrspace(10) }, ptr addrspace(11) %194, i64 0, i32 1 store ptr addrspace(10) %.instance243, ptr addrspace(11) %.repack153, align 8, !tbaa !25, !alias.scope !23, !noalias !24 %"new::Array252.size_ptr" = getelementptr inbounds i8, ptr addrspace(11) %194, i64 16 store i64 0, ptr addrspace(11) %"new::Array252.size_ptr", align 8, !tbaa !18, !alias.scope !27, !noalias !28 br label %L307 guard_exit338: ; preds = %pass55 %.state_ptr.unbox.fca.0.0.load = load ptr addrspace(10), ptr %0, align 8 %.state_ptr.unbox.fca.0.0.insert = insertvalue { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) } poison, ptr addrspace(10) %.state_ptr.unbox.fca.0.0.load, 0, 0 %.state_ptr.unbox.fca.0.1.gep = getelementptr inbounds { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) }, ptr %0, i64 0, i32 0, i32 1 %.state_ptr.unbox.fca.0.1.load = load i64, ptr %.state_ptr.unbox.fca.0.1.gep, align 8 %.state_ptr.unbox.fca.0.1.insert = insertvalue { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) } %.state_ptr.unbox.fca.0.0.insert, i64 %.state_ptr.unbox.fca.0.1.load, 0, 1 %.state_ptr.unbox.fca.0.2.gep = getelementptr inbounds { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) }, ptr %0, i64 0, i32 0, i32 2 %.state_ptr.unbox.fca.0.2.load = load i64, ptr %.state_ptr.unbox.fca.0.2.gep, align 8 %.state_ptr.unbox.fca.0.2.insert = insertvalue { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) } %.state_ptr.unbox.fca.0.1.insert, i64 %.state_ptr.unbox.fca.0.2.load, 0, 2 %.state_ptr.unbox.fca.1.gep = getelementptr inbounds { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) }, ptr %0, i64 0, i32 1 %.state_ptr.unbox.fca.1.load = load ptr addrspace(10), ptr %.state_ptr.unbox.fca.1.gep, align 8 %.state_ptr.unbox.fca.1.insert = insertvalue { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) } %.state_ptr.unbox.fca.0.2.insert, ptr addrspace(10) %.state_ptr.unbox.fca.1.load, 1 %.sroa.070.0.copyload = load i64, ptr %.result_ptr, align 8, !tbaa !37, !alias.scope !39, !noalias !40 %.size76.sroa.0.0.copyload201 = load i64, ptr addrspace(11) %17, align 8, !tbaa !18, !alias.scope !19, !noalias !20 %.not106202 = icmp ult i64 1, %.size76.sroa.0.0.copyload201 br i1 %.not106202, label %L120.lr.ph, label %L117 L120.lr.ph: ; preds = %guard_exit338 %196 = addrspacecast ptr %6 to ptr addrspace(11) %.fca.0.0.1.gep60 = getelementptr inbounds { { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) }, { ptr addrspace(10), i64 } }, ptr %7, i64 0, i32 0, i32 0, i32 1 %.fca.0.0.2.gep62 = getelementptr inbounds { { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) }, { ptr addrspace(10), i64 } }, ptr %7, i64 0, i32 0, i32 0, i32 2 %.fca.0.1.gep64 = getelementptr inbounds { { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) }, { ptr addrspace(10), i64 } }, ptr %7, i64 0, i32 0, i32 1 %.fca.1.0.gep66 = getelementptr inbounds { { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) }, { ptr addrspace(10), i64 } }, ptr %7, i64 0, i32 1, i32 0 %.fca.1.1.gep = getelementptr inbounds { { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) }, { ptr addrspace(10), i64 } }, ptr %7, i64 0, i32 1, i32 1 %197 = addrspacecast ptr %7 to ptr addrspace(11) %.fca.1.gep54 = getelementptr inbounds { ptr addrspace(10), i64, i64 }, ptr %8, i64 0, i32 1 %.fca.2.gep56 = getelementptr inbounds { ptr addrspace(10), i64, i64 }, ptr %8, i64 0, i32 2 %198 = addrspacecast ptr %8 to ptr addrspace(11) %.result_ptr101 = getelementptr inbounds { { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) }, { ptr addrspace(10), i64 } }, ptr %4, i64 0, i32 1 %.result_ptr101.unbox.fca.1.gep = getelementptr inbounds { { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) }, { ptr addrspace(10), i64 } }, ptr %4, i64 0, i32 1, i32 1 %.state_ptr99.unbox.fca.0.1.gep = getelementptr inbounds { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) }, ptr %4, i64 0, i32 0, i32 1 %.state_ptr99.unbox.fca.0.2.gep = getelementptr inbounds { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) }, ptr %4, i64 0, i32 0, i32 2 %.state_ptr99.unbox.fca.1.gep = getelementptr inbounds { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) }, ptr %4, i64 0, i32 1 %199 = addrspacecast ptr %12 to ptr addrspace(11) %.fca.0.0.1.gep = getelementptr inbounds { { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) }, { i64 } }, ptr %13, i64 0, i32 0, i32 0, i32 1 %.fca.0.0.2.gep = getelementptr inbounds { { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) }, { i64 } }, ptr %13, i64 0, i32 0, i32 0, i32 2 %.fca.0.1.gep = getelementptr inbounds { { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) }, { i64 } }, ptr %13, i64 0, i32 0, i32 1 %.fca.1.0.gep = getelementptr inbounds { { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) }, { i64 } }, ptr %13, i64 0, i32 1, i32 0 %200 = addrspacecast ptr %13 to ptr addrspace(11) %.fca.1.gep = getelementptr inbounds { ptr addrspace(10), i64, i64 }, ptr %14, i64 0, i32 1 %.fca.2.gep = getelementptr inbounds { ptr addrspace(10), i64, i64 }, ptr %14, i64 0, i32 2 %201 = addrspacecast ptr %14 to ptr addrspace(11) %current_task411 = getelementptr inbounds ptr, ptr %pgcstack, i64 -14 br label %L120 guard_exit343: ; preds = %L170 %.size76.sroa.0.0.copyload = load i64, ptr addrspace(11) %17, align 8, !tbaa !18, !alias.scope !19, !noalias !20 %.not106 = icmp ult i64 %value_phi66209, %.size76.sroa.0.0.copyload br i1 %.not106, label %L120, label %L99.L117_crit_edge guard_pass378: ; preds = %guard_pass448, %guard_exit443, %guard_pass434, %isa427, %guard_exit421 %unionalloca.sroa.0.1176 = phi i64 [ %unionalloca.sroa.0.0.copyload16, %guard_pass448 ], [ %unionalloca.sroa.0.0.copyload16, %guard_exit443 ], [ %unionalloca.sroa.0.0206, %guard_exit421 ], [ %unionalloca.sroa.0.0206, %guard_pass434 ], [ %unionalloca.sroa.0.0206, %isa427 ] %.sroa.014.1 = phi i64 [ %.sroa.014.3, %guard_pass448 ], [ %.sroa.014.3, %guard_exit443 ], [ %.sroa.014.0207, %guard_exit421 ], [ %.sroa.014.0207, %guard_pass434 ], [ %.sroa.014.0207, %isa427 ] %.sroa.0.1 = phi i64 [ %unionalloca.sroa.0.0.copyload16, %guard_pass448 ], [ %.sroa.0.0208, %guard_exit443 ], [ %.sroa.0.0208, %guard_exit421 ], [ %.sroa.0.0208, %guard_pass434 ], [ %.sroa.0.0208, %isa427 ] %value_phi281 = phi i8 [ 0, %guard_pass448 ], [ 0, %guard_exit443 ], [ 1, %guard_exit421 ], [ 1, %guard_pass434 ], [ 1, %isa427 ] %value_phi282 = phi { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) } [ zeroinitializer, %guard_pass448 ], [ zeroinitializer, %guard_exit443 ], [ %value_phi266, %guard_exit421 ], [ %value_phi266, %guard_pass434 ], [ %value_phi266, %isa427 ] %value_phi283 = phi { ptr addrspace(10), i64 } [ zeroinitializer, %guard_pass448 ], [ zeroinitializer, %guard_exit443 ], [ %guard_res423, %guard_exit421 ], [ %guard_res423, %guard_pass434 ], [ %guard_res423, %isa427 ] %value_phi286 = phi { ptr addrspace(10), i64 } [ zeroinitializer, %guard_pass448 ], [ zeroinitializer, %guard_exit443 ], [ zeroinitializer, %isa427 ], [ %.unbox436.fca.1.insert, %guard_pass434 ], [ zeroinitializer, %guard_exit421 ] %value_phi287 = phi { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) } [ %value_phi266, %guard_pass448 ], [ %value_phi266, %guard_exit443 ], [ zeroinitializer, %guard_exit421 ], [ zeroinitializer, %guard_pass434 ], [ zeroinitializer, %isa427 ] br label %L170 L191.thread: ; preds = %pass55 %.state_ptr.unbox385.fca.0.0.load = load ptr addrspace(10), ptr %0, align 8 %.state_ptr.unbox385.fca.0.0.insert = insertvalue { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) } poison, ptr addrspace(10) %.state_ptr.unbox385.fca.0.0.load, 0, 0 %.state_ptr.unbox385.fca.0.1.gep = getelementptr inbounds { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) }, ptr %0, i64 0, i32 0, i32 1 %.state_ptr.unbox385.fca.0.1.load = load i64, ptr %.state_ptr.unbox385.fca.0.1.gep, align 8 %.state_ptr.unbox385.fca.0.1.insert = insertvalue { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) } %.state_ptr.unbox385.fca.0.0.insert, i64 %.state_ptr.unbox385.fca.0.1.load, 0, 1 %.state_ptr.unbox385.fca.0.2.gep = getelementptr inbounds { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) }, ptr %0, i64 0, i32 0, i32 2 %.state_ptr.unbox385.fca.0.2.load = load i64, ptr %.state_ptr.unbox385.fca.0.2.gep, align 8 %.state_ptr.unbox385.fca.0.2.insert = insertvalue { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) } %.state_ptr.unbox385.fca.0.1.insert, i64 %.state_ptr.unbox385.fca.0.2.load, 0, 2 %.state_ptr.unbox385.fca.1.gep = getelementptr inbounds { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) }, ptr %0, i64 0, i32 1 %.state_ptr.unbox385.fca.1.load = load ptr addrspace(10), ptr %.state_ptr.unbox385.fca.1.gep, align 8 %.state_ptr.unbox385.fca.1.insert = insertvalue { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) } %.state_ptr.unbox385.fca.0.2.insert, ptr addrspace(10) %.state_ptr.unbox385.fca.1.load, 1 %.sroa.045.0.copyload46 = load i64, ptr %.result_ptr, align 8, !tbaa !37, !alias.scope !39, !noalias !40 br label %L295 guard_pass400: ; preds = %L131 %202 = addrspacecast ptr addrspace(10) %63 to ptr addrspace(11) %.state_ptr265.unbox.unpack.unpack = load ptr addrspace(10), ptr addrspace(11) %202, align 8, !tbaa !43, !alias.scope !47, !noalias !48 %203 = insertvalue { ptr addrspace(10), i64, i64 } poison, ptr addrspace(10) %.state_ptr265.unbox.unpack.unpack, 0 %.state_ptr265.unbox.unpack.elt159 = getelementptr inbounds { ptr addrspace(10), i64, i64 }, ptr addrspace(11) %202, i64 0, i32 1 %.state_ptr265.unbox.unpack.unpack160 = load i64, ptr addrspace(11) %.state_ptr265.unbox.unpack.elt159, align 8, !tbaa !43, !alias.scope !47, !noalias !48 %204 = insertvalue { ptr addrspace(10), i64, i64 } %203, i64 %.state_ptr265.unbox.unpack.unpack160, 1 %.state_ptr265.unbox.unpack.elt161 = getelementptr inbounds { ptr addrspace(10), i64, i64 }, ptr addrspace(11) %202, i64 0, i32 2 %.state_ptr265.unbox.unpack.unpack162 = load i64, ptr addrspace(11) %.state_ptr265.unbox.unpack.elt161, align 8, !tbaa !43, !alias.scope !47, !noalias !48 %.state_ptr265.unbox.unpack163 = insertvalue { ptr addrspace(10), i64, i64 } %204, i64 %.state_ptr265.unbox.unpack.unpack162, 2 %205 = insertvalue { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) } poison, { ptr addrspace(10), i64, i64 } %.state_ptr265.unbox.unpack163, 0 %.state_ptr265.unbox.elt156 = getelementptr inbounds { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) }, ptr addrspace(11) %202, i64 0, i32 1 %.state_ptr265.unbox.unpack157 = load ptr addrspace(10), ptr addrspace(11) %.state_ptr265.unbox.elt156, align 8, !tbaa !43, !alias.scope !47, !noalias !48 %.state_ptr265.unbox158 = insertvalue { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) } %205, ptr addrspace(10) %.state_ptr265.unbox.unpack157, 1 br label %L142 guard_pass406: ; preds = %L131 %206 = addrspacecast ptr addrspace(10) %63 to ptr addrspace(11) %.state_ptr305.unbox.unpack.unpack = load ptr addrspace(10), ptr addrspace(11) %206, align 8, !tbaa !43, !alias.scope !47, !noalias !48 %207 = insertvalue { ptr addrspace(10), i64, i64 } poison, ptr addrspace(10) %.state_ptr305.unbox.unpack.unpack, 0 %.state_ptr305.unbox.unpack.elt167 = getelementptr inbounds { ptr addrspace(10), i64, i64 }, ptr addrspace(11) %206, i64 0, i32 1 %.state_ptr305.unbox.unpack.unpack168 = load i64, ptr addrspace(11) %.state_ptr305.unbox.unpack.elt167, align 8, !tbaa !43, !alias.scope !47, !noalias !48 %208 = insertvalue { ptr addrspace(10), i64, i64 } %207, i64 %.state_ptr305.unbox.unpack.unpack168, 1 %.state_ptr305.unbox.unpack.elt169 = getelementptr inbounds { ptr addrspace(10), i64, i64 }, ptr addrspace(11) %206, i64 0, i32 2 %.state_ptr305.unbox.unpack.unpack170 = load i64, ptr addrspace(11) %.state_ptr305.unbox.unpack.elt169, align 8, !tbaa !43, !alias.scope !47, !noalias !48 %.state_ptr305.unbox.unpack171 = insertvalue { ptr addrspace(10), i64, i64 } %208, i64 %.state_ptr305.unbox.unpack.unpack170, 2 %209 = insertvalue { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) } poison, { ptr addrspace(10), i64, i64 } %.state_ptr305.unbox.unpack171, 0 %.state_ptr305.unbox.elt164 = getelementptr inbounds { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) }, ptr addrspace(11) %206, i64 0, i32 1 %.state_ptr305.unbox.unpack165 = load ptr addrspace(10), ptr addrspace(11) %.state_ptr305.unbox.elt164, align 8, !tbaa !43, !alias.scope !47, !noalias !48 %.state_ptr305.unbox166 = insertvalue { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) } %209, ptr addrspace(10) %.state_ptr305.unbox.unpack165, 1 br label %L142 isa: ; preds = %L156 %210 = call nonnull ptr @julia.pointer_from_objref(ptr addrspace(11) addrspacecast (ptr @"+BangBang.SafeCollector#7001.jit" to ptr addrspace(11))) #8 %211 = icmp eq ptr %210, @"+BangBang.SafeCollector#7001.jit" br i1 %211, label %guard_pass420, label %guard_exit421 guard_pass420: ; preds = %isa %.unbox422.fca.0.load = load ptr addrspace(10), ptr addrspace(11) %69, align 8, !tbaa !37, !alias.scope !39, !noalias !40 %.unbox422.fca.0.insert = insertvalue { ptr addrspace(10), i64 } poison, ptr addrspace(10) %.unbox422.fca.0.load, 0 %.sroa.gep18 = getelementptr inbounds { ptr addrspace(10), i64 }, ptr addrspace(11) %69, i64 0, i32 1 %.unbox422.fca.1.load = load i64, ptr addrspace(11) %.sroa.gep18, align 8, !tbaa !37, !alias.scope !39, !noalias !40 %.unbox422.fca.1.insert = insertvalue { ptr addrspace(10), i64 } %.unbox422.fca.0.insert, i64 %.unbox422.fca.1.load, 1 br label %guard_exit421 guard_exit421: ; preds = %guard_pass420, %isa, %L156 %guard_res423 = phi { ptr addrspace(10), i64 } [ zeroinitializer, %isa ], [ %.unbox422.fca.1.insert, %guard_pass420 ], [ zeroinitializer, %L156 ] br i1 true, label %isa427, label %guard_pass378 isa427: ; preds = %guard_exit421 %212 = call nonnull ptr @julia.pointer_from_objref(ptr addrspace(11) addrspacecast (ptr @"+BangBang.SafeCollector#7001.jit" to ptr addrspace(11))) #8 %213 = icmp eq ptr %212, @"+BangBang.SafeCollector#7001.jit" br i1 %213, label %guard_pass434, label %guard_pass378 guard_pass434: ; preds = %isa427 %.unbox436.fca.0.load = load ptr addrspace(10), ptr addrspace(11) %69, align 8, !tbaa !37, !alias.scope !39, !noalias !40 %.unbox436.fca.0.insert = insertvalue { ptr addrspace(10), i64 } poison, ptr addrspace(10) %.unbox436.fca.0.load, 0 %.sroa.gep24 = getelementptr inbounds { ptr addrspace(10), i64 }, ptr addrspace(11) %69, i64 0, i32 1 %.unbox436.fca.1.load = load i64, ptr addrspace(11) %.sroa.gep24, align 8, !tbaa !37, !alias.scope !39, !noalias !40 %.unbox436.fca.1.insert = insertvalue { ptr addrspace(10), i64 } %.unbox436.fca.0.insert, i64 %.unbox436.fca.1.load, 1 br label %guard_pass378 guard_pass442: ; preds = %L155 br label %guard_exit443 guard_exit443: ; preds = %guard_pass442, %L155 %.sroa.014.3 = phi i64 [ %unionalloca.sroa.0.0.copyload16, %guard_pass442 ], [ %.sroa.014.0207, %L155 ] br i1 false, label %guard_pass378, label %guard_pass448 guard_pass448: ; preds = %guard_exit443 br label %guard_pass378 } ; Function Attrs: noinline optnone define nonnull ptr addrspace(10) @"jfptr_#transduce#140_6986"(ptr addrspace(10) %"function::Core.Function", ptr noalias nocapture noundef readonly %"args::Any[]", i32 %"nargs::UInt32") #1 { top: %pgcstack = call ptr @julia.get_pgcstack() %0 = getelementptr inbounds ptr addrspace(10), ptr %"args::Any[]", i32 2 %1 = load ptr addrspace(10), ptr %0, align 8, !tbaa !7, !invariant.load !9, !alias.scope !10, !noalias !13, !nonnull !9, !dereferenceable !32, !align !32 %2 = addrspacecast ptr addrspace(10) %1 to ptr addrspace(11) %3 = getelementptr inbounds ptr addrspace(10), ptr %"args::Any[]", i32 4 %4 = load ptr addrspace(10), ptr %3, align 8, !tbaa !7, !invariant.load !9, !alias.scope !10, !noalias !13, !nonnull !9, !dereferenceable !32, !align !32 %5 = addrspacecast ptr addrspace(10) %4 to ptr addrspace(11) %6 = getelementptr inbounds ptr addrspace(10), ptr %"args::Any[]", i32 5 %7 = load ptr addrspace(10), ptr %6, align 8, !tbaa !7, !invariant.load !9, !alias.scope !10, !noalias !13, !nonnull !9, !dereferenceable !55, !align !32 %8 = call swiftcc nonnull ptr addrspace(10) @"julia_#transduce#140_6985"(ptr nonnull swiftself %pgcstack, ptr addrspace(11) nocapture readonly %2, ptr addrspace(11) nocapture readonly %5, ptr addrspace(10) %7) ret ptr addrspace(10) %8 } declare ptr @julia.get_pgcstack() ; Function Attrs: memory(argmem: readwrite, inaccessiblemem: readwrite) declare void @julia.safepoint(ptr) #2 ; Function Attrs: willreturn memory(argmem: read, inaccessiblemem: readwrite) declare nonnull align 16 dereferenceable(16) ptr addrspace(10) @jl_alloc_genericmemory(ptr addrspace(10), i64) #3 ; Function Attrs: nounwind willreturn allockind("alloc") allocsize(1) memory(argmem: read, inaccessiblemem: readwrite) declare noalias nonnull ptr addrspace(10) @julia.gc_alloc_obj(ptr, i64, ptr addrspace(10)) #4 declare swiftcc nonnull ptr addrspace(10) @"j_copyto!_6996"(ptr nonnull swiftself, ptr addrspace(10), i64 signext, i64 signext, i64 signext) #5 ; Function Attrs: noreturn declare void @ijl_bounds_error_int(ptr addrspace(12), i64) #6 ; Function Attrs: norecurse nounwind memory(none) declare nonnull ptr addrspace(10) @julia.typeof(ptr addrspace(10)) #7 ; Function Attrs: nounwind memory(none) declare nonnull ptr @julia.pointer_from_objref(ptr addrspace(11)) #8 ; Function Attrs: noreturn declare swiftcc void @j_throw_boundserror_7005(ptr nonnull swiftself, ptr addrspace(10), ptr addrspace(11) nocapture readonly) #9 ; Function Attrs: noreturn declare void @ijl_throw(ptr addrspace(12)) #6 ; Function Attrs: norecurse nosync nounwind speculatable willreturn memory(none) declare noundef nonnull ptr addrspace(13) @julia.gc_loaded(ptr addrspace(10) nocapture noundef nonnull readnone, ptr noundef nonnull readnone) #10 declare swiftcc void @j_f_7010(ptr noalias nocapture noundef sret({ { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) }, { i64 } }), ptr noalias nocapture noundef, ptr nonnull swiftself, ptr addrspace(11) nocapture readonly, ptr addrspace(11) nocapture readonly, ptr addrspace(11) nocapture readonly) #11 declare swiftcc void @j_f_7013(ptr noalias nocapture noundef sret({ { { ptr addrspace(10), i64, i64 }, ptr addrspace(10) }, { ptr addrspace(10), i64 } }), ptr noalias nocapture noundef, ptr nonnull swiftself, ptr addrspace(11) nocapture readonly, ptr addrspace(11) nocapture readonly, ptr addrspace(11) nocapture readonly) #12 declare swiftcc void @"j_#131_7018"(ptr noalias nocapture noundef sret({ ptr, ptr addrspace(10) }), ptr noalias nocapture noundef, ptr nonnull swiftself, ptr addrspace(11) nocapture readonly) #13 ; Function Attrs: norecurse nounwind memory(inaccessiblemem: readwrite) declare void @julia.write_barrier(ptr addrspace(10) readonly, ...) #14 ; Function Attrs: noreturn declare swiftcc void @j_throw_boundserror_7020(ptr nonnull swiftself, ptr addrspace(10), ptr addrspace(11) nocapture readonly) #15 declare swiftcc [1 x ptr addrspace(10)] @j_ArgumentError_7022(ptr nonnull swiftself, ptr addrspace(10)) #16 declare swiftcc void @"j__deleteend!_7030"(ptr nonnull swiftself, ptr addrspace(10), i64 signext) #17 declare swiftcc nonnull ptr addrspace(10) @"j_copyto!_7033"(ptr nonnull swiftself, ptr addrspace(10), i64 signext, i64 signext, i64 signext) #18 declare swiftcc nonnull ptr addrspace(10) @j_f_7034(ptr nonnull swiftself, ptr addrspace(11) nocapture readonly, ptr addrspace(11) nocapture readonly, ptr addrspace(11) nocapture readonly) #19 ; Function Attrs: noreturn declare swiftcc void @j_throw_boundserror_7037(ptr nonnull swiftself, ptr addrspace(10), ptr addrspace(11) nocapture readonly) #20 ; Function Attrs: nocallback nofree nounwind willreturn memory(argmem: readwrite) declare void @llvm.memcpy.p10.p11.i64(ptr addrspace(10) noalias nocapture writeonly, ptr addrspace(11) noalias nocapture readonly, i64, i1 immarg) #21 ; Function Attrs: nocallback nofree nosync nounwind speculatable willreturn memory(none) declare i64 @llvm.smax.i64(i64, i64) #22 attributes #0 = { "frame-pointer"="all" "julia.fsig"="var\22#transduce#140\22(Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}, typeof(Transducers.transduce), Transducers.Composition{Transducers.AdHocXF{typeof(Main.f), Nothing, typeof(Main.flushlast)}, Transducers.Map{Type{BangBang.NoBang.SingletonVector{T} where T}}}, Transducers.AdHocRF{typeof(BangBang.collector), typeof(Base.identity), typeof(BangBang.append!!), typeof(Base.identity), typeof(Base.identity), Nothing}, BangBang.SafeCollector{BangBang.NoBang.Empty{Array{Union{}, 1}}}, Array{Base.SubString{String}, 1})" "probe-stack"="inline-asm" } attributes #1 = { noinline optnone "frame-pointer"="all" "probe-stack"="inline-asm" } attributes #2 = { memory(argmem: readwrite, inaccessiblemem: readwrite) } attributes #3 = { willreturn memory(argmem: read, inaccessiblemem: readwrite) } attributes #4 = { nounwind willreturn allockind("alloc") allocsize(1) memory(argmem: read, inaccessiblemem: readwrite) } attributes #5 = { "frame-pointer"="all" "julia.fsig"="copyto!(Array{Nothing, 1}, Int64, BangBang.NoBang.Empty{Array{Union{}, 1}}, Int64, Int64)" "probe-stack"="inline-asm" } attributes #6 = { noreturn } attributes #7 = { norecurse nounwind memory(none) } attributes #8 = { nounwind memory(none) } attributes #9 = { noreturn "frame-pointer"="all" "julia.fsig"="throw_boundserror(Array{Nothing, 1}, Tuple{Int64})" "probe-stack"="inline-asm" } attributes #10 = { norecurse nosync nounwind speculatable willreturn memory(none) } attributes #11 = { "frame-pointer"="all" "julia.fsig"="f(Transducers.RFShim{Transducers.Reduction{Transducers.Map{Type{BangBang.NoBang.SingletonVector{T} where T}}, Transducers.BottomRF{Transducers.AdHocRF{typeof(BangBang.collector), typeof(Base.identity), typeof(BangBang.append!!), typeof(Base.identity), typeof(Base.identity), Nothing}}}}, Transducers.ResultShim{Nothing, BangBang.SafeCollector{BangBang.NoBang.Empty{Array{Union{}, 1}}}}, Base.SubString{String})" "probe-stack"="inline-asm" } attributes #12 = { "frame-pointer"="all" "julia.fsig"="f(Transducers.RFShim{Transducers.Reduction{Transducers.Map{Type{BangBang.NoBang.SingletonVector{T} where T}}, Transducers.BottomRF{Transducers.AdHocRF{typeof(BangBang.collector), typeof(Base.identity), typeof(BangBang.append!!), typeof(Base.identity), typeof(Base.identity), Nothing}}}}, Transducers.ResultShim{NamedTuple{(:name, :lines), Tuple{Base.SubString{String}, Array{String, 1}}}, BangBang.SafeCollector{Array{NamedTuple{(:name, :lines), Tuple{Base.SubString{String}, Array{String, 1}}}, 1}}}, Base.SubString{String})" "probe-stack"="inline-asm" } attributes #13 = { "frame-pointer"="all" "julia.fsig"="(::Base.var\22#131#132\22{Array{NamedTuple{(:name, :lines), Tuple{Base.SubString{String}, Array{String, 1}}}, 1}, Int64, Int64, Int64, Int64, Int64, GenericMemory{:not_atomic, NamedTuple{(:name, :lines), Tuple{Base.SubString{String}, Array{String, 1}}}, Core.AddrSpace{Core}(0x00)}, GenericMemoryRef{:not_atomic, NamedTuple{(:name, :lines), Tuple{Base.SubString{String}, Array{String, 1}}}, Core.AddrSpace{Core}(0x00)}})()" "probe-stack"="inline-asm" } attributes #14 = { norecurse nounwind memory(inaccessiblemem: readwrite) } attributes #15 = { noreturn "frame-pointer"="all" "julia.fsig"="throw_boundserror(Array{NamedTuple{(:name, :lines), Tuple{Base.SubString{String}, Array{String, 1}}}, 1}, Tuple{Int64})" "probe-stack"="inline-asm" } attributes #16 = { "frame-pointer"="all" "julia.fsig"="(::Type{ArgumentError})(String)" "probe-stack"="inline-asm" } attributes #17 = { "frame-pointer"="all" "julia.fsig"="_deleteend!(Array{NamedTuple{(:name, :lines), Tuple{Base.SubString{String}, Array{String, 1}}}, 1}, Int64)" "probe-stack"="inline-asm" } attributes #18 = { "frame-pointer"="all" "julia.fsig"="copyto!(Array{NamedTuple{(:name, :lines), Tuple{Base.SubString{String}, Array{String, 1}}}, 1}, Int64, BangBang.NoBang.Empty{Array{Union{}, 1}}, Int64, Int64)" "probe-stack"="inline-asm" } attributes #19 = { "frame-pointer"="all" "julia.fsig"="f(Transducers.RFShim{Transducers.Reduction{Transducers.Map{Type{BangBang.NoBang.SingletonVector{T} where T}}, Transducers.BottomRF{Transducers.AdHocRF{typeof(BangBang.collector), typeof(Base.identity), typeof(BangBang.append!!), typeof(Base.identity), typeof(Base.identity), Nothing}}}}, Transducers.ResultShim{NamedTuple{(:name, :lines), Tuple{Base.SubString{String}, Array{String, 1}}}, BangBang.SafeCollector{BangBang.NoBang.Empty{Array{Union{}, 1}}}}, Base.SubString{String})" "probe-stack"="inline-asm" } attributes #20 = { noreturn "frame-pointer"="all" "julia.fsig"="throw_boundserror(Array{Base.SubString{String}, 1}, Tuple{Int64})" "probe-stack"="inline-asm" } attributes #21 = { nocallback nofree nounwind willreturn memory(argmem: readwrite) } attributes #22 = { nocallback nofree nosync nounwind speculatable willreturn memory(none) } attributes #23 = { nounwind willreturn allockind("alloc,uninitialized") allocsize(1) memory(argmem: read, inaccessiblemem: readwrite) } !llvm.module.flags = !{!0, !1, !2} !0 = !{i32 2, !"Dwarf Version", i32 4} !1 = !{i32 2, !"Debug Info Version", i32 3} !2 = !{i32 2, !"julia.debug_level", i32 2} !3 = !{!4, !4, i64 0} !4 = !{!"jtbaa_gcframe", !5, i64 0} !5 = !{!"jtbaa", !6, i64 0} !6 = !{!"jtbaa"} !7 = !{!8, !8, i64 0, i64 1} !8 = !{!"jtbaa_const", !5, i64 0} !9 = !{} !10 = !{!11} !11 = !{!"jnoalias_const", !12} !12 = !{!"jnoalias"} !13 = !{!14, !15, !16, !17} !14 = !{!"jnoalias_gcframe", !12} !15 = !{!"jnoalias_stack", !12} !16 = !{!"jnoalias_data", !12} !17 = !{!"jnoalias_typemd", !12} !18 = !{!5, !5, i64 0} !19 = !{!17, !15} !20 = !{!14, !16, !11} !21 = !{!22, !22, i64 0} !22 = !{!"jtbaa_array", !5, i64 0} !23 = !{!17} !24 = !{!14, !15, !16, !11} !25 = !{!26, !26, i64 0} !26 = !{!"jtbaa_arrayptr", !22, i64 0} !27 = !{!16, !17} !28 = !{!14, !15, !11} !29 = !{!11, !15} !30 = !{!14, !16, !17} !31 = !{i64 16} !32 = !{i64 8} !33 = !{!34, !34, i64 0, i64 1} !34 = !{!"jtbaa_memorylen", !22, i64 0} !35 = !{i64 0, i64 9223372036854775807} !36 = !{i64 0, i64 384307168202282325} !37 = !{!38, !38, i64 0} !38 = !{!"jtbaa_stack", !5, i64 0} !39 = !{!15} !40 = !{!14, !16, !17, !11} !41 = !{!16, !15} !42 = !{!14, !17, !11} !43 = !{!44, !44, i64 0} !44 = !{!"jtbaa_immut", !45, i64 0} !45 = !{!"jtbaa_value", !46, i64 0} !46 = !{!"jtbaa_data", !5, i64 0} !47 = !{!16} !48 = !{!14, !15, !17, !11} !49 = !{!15, !17} !50 = !{i64 0, i64 288230376151711743} !51 = !{!52, !52, i64 0} !52 = !{!"jtbaa_arraybuf", !46, i64 0} !53 = !{!54, !54, i64 0, i64 1} !54 = !{!"jtbaa_memoryown", !22, i64 0} !55 = !{i64 24}