Package evaluation to test QuadGK on Julia 1.14.0-DEV.50 (b60d1db399*) started at 2025-11-09T12:41:51.683 ################################################################################ # Set-up # Installing PkgEval dependencies (TestEnv)... Set-up completed after 8.96s ################################################################################ # Installation # Installing QuadGK... Resolving package versions... Updating `~/.julia/environments/v1.14/Project.toml` [1fd47b50] + QuadGK v2.11.2 Updating `~/.julia/environments/v1.14/Manifest.toml` [864edb3b] + DataStructures v0.19.3 [bac558e1] + OrderedCollections v1.8.1 [1fd47b50] + QuadGK v2.11.2 [56f22d72] + Artifacts v1.11.0 [8f399da3] + Libdl v1.11.0 [37e2e46d] + LinearAlgebra v1.13.0 [e66e0078] + CompilerSupportLibraries_jll v1.3.0+1 [4536629a] + OpenBLAS_jll v0.3.29+0 [8e850b90] + libblastrampoline_jll v5.15.0+0 Installation completed after 4.04s ################################################################################ # Precompilation # Precompiling PkgEval dependencies... ┌ Error: Failed to use TestEnv.jl; test dependencies will not be precompiled │ exception = │ UndefVarError: `project_rel_path` not defined in `TestEnv` │ Suggestion: this global was defined as `Pkg.Operations.project_rel_path` but not assigned a value. │ Stacktrace: │ [1] get_test_dir(ctx::Pkg.Types.Context, pkgspec::PackageSpec) │ @ TestEnv ~/.julia/packages/TestEnv/nGMfF/src/julia-1.11/common.jl:75 │ [2] test_dir_has_project_file │ @ ~/.julia/packages/TestEnv/nGMfF/src/julia-1.11/common.jl:52 [inlined] │ [3] maybe_gen_project_override! │ @ ~/.julia/packages/TestEnv/nGMfF/src/julia-1.11/common.jl:83 [inlined] │ [4] activate(pkg::String; allow_reresolve::Bool) │ @ TestEnv ~/.julia/packages/TestEnv/nGMfF/src/julia-1.11/activate_set.jl:12 │ [5] activate(pkg::String) │ @ TestEnv ~/.julia/packages/TestEnv/nGMfF/src/julia-1.11/activate_set.jl:9 │ [6] top-level scope │ @ /PkgEval.jl/scripts/precompile.jl:24 │ [7] include(mod::Module, _path::String) │ @ Base ./Base.jl:309 │ [8] exec_options(opts::Base.JLOptions) │ @ Base ./client.jl:344 │ [9] _start() │ @ Base ./client.jl:577 └ @ Main /PkgEval.jl/scripts/precompile.jl:26 Precompiling package dependencies... Precompilation completed after 12.55s ################################################################################ # Testing # Testing QuadGK Status `/tmp/jl_U2nBac/Project.toml` [7da242da] Enzyme v0.13.97 [1fd47b50] QuadGK v2.11.2 [37e2e46d] LinearAlgebra v1.13.0 [8dfed614] Test v1.11.0 Status `/tmp/jl_U2nBac/Manifest.toml` [fa961155] CEnum v0.5.0 [864edb3b] DataStructures v0.19.3 [7da242da] Enzyme v0.13.97 [f151be2c] EnzymeCore v0.8.15 [e2ba6199] ExprTools v0.1.10 [61eb1bfa] GPUCompiler v1.7.2 [692b3bcd] JLLWrappers v1.7.1 [929cbde3] LLVM v9.4.4 [d8793406] ObjectFile v0.5.0 [bac558e1] OrderedCollections v1.8.1 [aea7be01] PrecompileTools v1.3.3 [21216c6a] Preferences v1.5.0 [1fd47b50] QuadGK v2.11.2 [189a3867] Reexport v1.2.2 [6c6a2e73] Scratch v1.3.0 [53d494c1] StructIO v0.3.1 [e689c965] Tracy v0.1.6 ⌅ [7cc45869] Enzyme_jll v0.0.208+0 [dad2f222] LLVMExtra_jll v0.0.38+0 [ad6e5548] LibTracyClient_jll v0.9.1+6 [0dad84c5] ArgTools v1.1.2 [56f22d72] Artifacts v1.11.0 [2a0f44e3] Base64 v1.11.0 [ade2ca70] Dates v1.11.0 [f43a241f] Downloads v1.7.0 [7b1f6079] FileWatching v1.11.0 [b77e0a4c] InteractiveUtils v1.11.0 [ac6e5ff7] JuliaSyntaxHighlighting v1.12.0 [4af54fe1] LazyArtifacts v1.11.0 [b27032c2] LibCURL v1.0.0 [76f85450] LibGit2 v1.11.0 [8f399da3] Libdl v1.11.0 [37e2e46d] LinearAlgebra v1.13.0 [56ddb016] Logging v1.11.0 [d6f4376e] Markdown v1.11.0 [ca575930] NetworkOptions v1.3.0 [44cfe95a] Pkg v1.13.0 [de0858da] Printf v1.11.0 [9a3f8284] Random v1.11.0 [ea8e919c] SHA v1.0.0 [9e88b42a] Serialization v1.11.0 [2f01184e] SparseArrays v1.13.0 [f489334b] StyledStrings v1.11.0 [fa267f1f] TOML v1.0.3 [a4e569a6] Tar v1.10.0 [8dfed614] Test v1.11.0 [cf7118a7] UUIDs v1.11.0 [4ec0a83e] Unicode v1.11.0 [e66e0078] CompilerSupportLibraries_jll v1.3.0+1 [deac9b47] LibCURL_jll v8.16.0+0 [e37daf67] LibGit2_jll v1.9.1+0 [29816b5a] LibSSH2_jll v1.11.3+1 [14a3606d] MozillaCACerts_jll v2025.11.4 [4536629a] OpenBLAS_jll v0.3.29+0 [458c3c95] OpenSSL_jll v3.5.4+0 [efcefdf7] PCRE2_jll v10.47.0+0 [bea87d4a] SuiteSparse_jll v7.10.1+0 [83775a58] Zlib_jll v1.3.1+2 [3161d3a3] Zstd_jll v1.5.7+1 [8e850b90] libblastrampoline_jll v5.15.0+0 [8e850ede] nghttp2_jll v1.68.0+1 [3f19e933] p7zip_jll v17.7.0+0 Info Packages marked with ⌅ have new versions available but compatibility constraints restrict them from upgrading. Testing Running tests... Test Summary: | Pass Total Time quadgk | 14 14 25.5s Test Summary: | Pass Total Time inference | 6 6 5.4s Test Summary: | Pass Total Time gauss | 14 14 17.2s Test Summary: | Pass Total Time kronrod | 105 105 21.7s Test Summary: | Pass Total Time HollowSymTridiagonal | 20 20 4.4s Test Summary: | Pass Total Time inplace | 5 5 24.1s Test Summary: | Pass Total Time inplace Inf | 3 3 12.2s Test Summary: | Pass Total Time segbuf | 3 3 1.5s Test Summary: | Pass Total Time quadgk_count and quadgk_print | 4 4 1.4s Test Summary: | Pass Total Time batch | 44 44 2.2s Test Summary: | Pass Total Time batch Inf | 3 3 6.6s Test Summary: | Pass Total Time issue 89 | 1 1 0.5s Test Summary: | Pass Total Time issue 86 | 3 3 16.5s Test Summary: | Pass Total Time eval_segbuf | 62 62 41.3s Enzyme: Error During Test at /home/pkgeval/.julia/packages/QuadGK/7rND3/test/runtests.jl:469 Test threw exception Expression: cos(0.3) ≈ ((Enzyme.autodiff(Reverse, f1, Active(0.3)))[1])[1] LLVM error: Added modules have incompatible data layouts: e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128 (module) vs e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128-ni:10:11:12:13 (jit) Stacktrace: [1] macro expansion @ ~/.julia/packages/LLVM/iza6e/src/executionengine/utils.jl:28 [inlined] [2] add! @ ~/.julia/packages/LLVM/iza6e/src/orc.jl:434 [inlined] [3] add!(mod::LLVM.Module) @ Enzyme.Compiler.JIT ~/.julia/packages/Enzyme/EPXUy/src/compiler/orcv2.jl:258 [4] _link(job::GPUCompiler.CompilerJob{<:Enzyme.Compiler.EnzymeTarget}, mod::LLVM.Module, edges::Vector{Any}, adjoint_name::String, primal_name::Union{Nothing, String}, TapeType::Any, prepost::String) @ Enzyme.Compiler ~/.julia/packages/Enzyme/EPXUy/src/compiler.jl:5923 [5] cached_compilation @ ~/.julia/packages/Enzyme/EPXUy/src/compiler.jl:6016 [inlined] [6] thunkbase(mi::Core.MethodInstance, World::UInt64, FA::Type{<:Annotation}, A::Type{<:Annotation}, TT::Type, Mode::Enzyme.API.CDerivativeMode, width::Int64, ModifiedBetween::NTuple{N, Bool} where N, ReturnPrimal::Bool, ShadowInit::Bool, ABI::Type, ErrIfFuncWritten::Bool, RuntimeActivity::Bool, StrongZero::Bool, edges::Vector{Any}) @ Enzyme.Compiler ~/.julia/packages/Enzyme/EPXUy/src/compiler.jl:6131 [7] thunk_generator(world::UInt64, source::Union{LineNumberNode, Method}, FA::Type, A::Type, TT::Type, Mode::Enzyme.API.CDerivativeMode, Width::Int64, ModifiedBetween::NTuple{N, Bool} where N, ReturnPrimal::Bool, ShadowInit::Bool, ABI::Type, ErrIfFuncWritten::Bool, RuntimeActivity::Bool, StrongZero::Bool, self::Any, fakeworld::Any, fa::Type, a::Type, tt::Type, mode::Type, width::Type, modifiedbetween::Type, returnprimal::Type, shadowinit::Type, abi::Type, erriffuncwritten::Type, runtimeactivity::Type, strongzero::Type) @ Enzyme.Compiler ~/.julia/packages/Enzyme/EPXUy/src/compiler.jl:6275 [8] autodiff @ ~/.julia/packages/Enzyme/EPXUy/src/Enzyme.jl:502 [inlined] [9] autodiff @ ~/.julia/packages/Enzyme/EPXUy/src/Enzyme.jl:562 [inlined] [10] autodiff(mode::ReverseMode{false, false, false, FFIABI, false, false}, f::typeof(f1), args::Active{Float64}) @ Enzyme ~/.julia/packages/Enzyme/EPXUy/src/Enzyme.jl:534 [11] top-level scope @ ~/.julia/packages/QuadGK/7rND3/test/runtests.jl:469 [12] macro expansion @ /opt/julia/share/julia/stdlib/v1.14/Test/src/Test.jl:1961 [inlined] [13] macro expansion @ ~/.julia/packages/QuadGK/7rND3/test/runtests.jl:469 [inlined] [14] macro expansion @ /opt/julia/share/julia/stdlib/v1.14/Test/src/Test.jl:750 [inlined] Enzyme: Error During Test at /home/pkgeval/.julia/packages/QuadGK/7rND3/test/runtests.jl:470 Test threw exception Expression: -(cos(0.3)) ≈ ((Enzyme.autodiff(Reverse, f2, Active(0.3)))[1])[1] LLVM error: Added modules have incompatible data layouts: e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128 (module) vs e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128-ni:10:11:12:13 (jit) Stacktrace: [1] macro expansion @ ~/.julia/packages/LLVM/iza6e/src/executionengine/utils.jl:28 [inlined] [2] add! @ ~/.julia/packages/LLVM/iza6e/src/orc.jl:434 [inlined] [3] add!(mod::LLVM.Module) @ Enzyme.Compiler.JIT ~/.julia/packages/Enzyme/EPXUy/src/compiler/orcv2.jl:258 [4] _link(job::GPUCompiler.CompilerJob{<:Enzyme.Compiler.EnzymeTarget}, mod::LLVM.Module, edges::Vector{Any}, adjoint_name::String, primal_name::Union{Nothing, String}, TapeType::Any, prepost::String) @ Enzyme.Compiler ~/.julia/packages/Enzyme/EPXUy/src/compiler.jl:5923 [5] cached_compilation @ ~/.julia/packages/Enzyme/EPXUy/src/compiler.jl:6016 [inlined] [6] thunkbase(mi::Core.MethodInstance, World::UInt64, FA::Type{<:Annotation}, A::Type{<:Annotation}, TT::Type, Mode::Enzyme.API.CDerivativeMode, width::Int64, ModifiedBetween::NTuple{N, Bool} where N, ReturnPrimal::Bool, ShadowInit::Bool, ABI::Type, ErrIfFuncWritten::Bool, RuntimeActivity::Bool, StrongZero::Bool, edges::Vector{Any}) @ Enzyme.Compiler ~/.julia/packages/Enzyme/EPXUy/src/compiler.jl:6131 [7] thunk_generator(world::UInt64, source::Union{LineNumberNode, Method}, FA::Type, A::Type, TT::Type, Mode::Enzyme.API.CDerivativeMode, Width::Int64, ModifiedBetween::NTuple{N, Bool} where N, ReturnPrimal::Bool, ShadowInit::Bool, ABI::Type, ErrIfFuncWritten::Bool, RuntimeActivity::Bool, StrongZero::Bool, self::Any, fakeworld::Any, fa::Type, a::Type, tt::Type, mode::Type, width::Type, modifiedbetween::Type, returnprimal::Type, shadowinit::Type, abi::Type, erriffuncwritten::Type, runtimeactivity::Type, strongzero::Type) @ Enzyme.Compiler ~/.julia/packages/Enzyme/EPXUy/src/compiler.jl:6275 [8] autodiff @ ~/.julia/packages/Enzyme/EPXUy/src/Enzyme.jl:502 [inlined] [9] autodiff @ ~/.julia/packages/Enzyme/EPXUy/src/Enzyme.jl:562 [inlined] [10] autodiff(mode::ReverseMode{false, false, false, FFIABI, false, false}, f::typeof(f2), args::Active{Float64}) @ Enzyme ~/.julia/packages/Enzyme/EPXUy/src/Enzyme.jl:534 [11] top-level scope @ ~/.julia/packages/QuadGK/7rND3/test/runtests.jl:469 [12] macro expansion @ /opt/julia/share/julia/stdlib/v1.14/Test/src/Test.jl:1961 [inlined] [13] macro expansion @ ~/.julia/packages/QuadGK/7rND3/test/runtests.jl:470 [inlined] [14] macro expansion @ /opt/julia/share/julia/stdlib/v1.14/Test/src/Test.jl:750 [inlined] Enzyme: Error During Test at /home/pkgeval/.julia/packages/QuadGK/7rND3/test/runtests.jl:471 Test threw exception Expression: (0.3 * cos(0.3) - sin(0.3)) / (0.3 * 0.3) ≈ ((Enzyme.autodiff(Reverse, f3, Active(0.3)))[1])[1] LLVM error: Added modules have incompatible data layouts: e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128 (module) vs e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128-ni:10:11:12:13 (jit) Stacktrace: [1] macro expansion @ ~/.julia/packages/LLVM/iza6e/src/executionengine/utils.jl:28 [inlined] [2] add! @ ~/.julia/packages/LLVM/iza6e/src/orc.jl:434 [inlined] [3] add!(mod::LLVM.Module) @ Enzyme.Compiler.JIT ~/.julia/packages/Enzyme/EPXUy/src/compiler/orcv2.jl:258 [4] _link(job::GPUCompiler.CompilerJob{<:Enzyme.Compiler.EnzymeTarget}, mod::LLVM.Module, edges::Vector{Any}, adjoint_name::String, primal_name::Union{Nothing, String}, TapeType::Any, prepost::String) @ Enzyme.Compiler ~/.julia/packages/Enzyme/EPXUy/src/compiler.jl:5923 [5] cached_compilation @ ~/.julia/packages/Enzyme/EPXUy/src/compiler.jl:6016 [inlined] [6] thunkbase(mi::Core.MethodInstance, World::UInt64, FA::Type{<:Annotation}, A::Type{<:Annotation}, TT::Type, Mode::Enzyme.API.CDerivativeMode, width::Int64, ModifiedBetween::NTuple{N, Bool} where N, ReturnPrimal::Bool, ShadowInit::Bool, ABI::Type, ErrIfFuncWritten::Bool, RuntimeActivity::Bool, StrongZero::Bool, edges::Vector{Any}) @ Enzyme.Compiler ~/.julia/packages/Enzyme/EPXUy/src/compiler.jl:6131 [7] thunk_generator(world::UInt64, source::Union{LineNumberNode, Method}, FA::Type, A::Type, TT::Type, Mode::Enzyme.API.CDerivativeMode, Width::Int64, ModifiedBetween::NTuple{N, Bool} where N, ReturnPrimal::Bool, ShadowInit::Bool, ABI::Type, ErrIfFuncWritten::Bool, RuntimeActivity::Bool, StrongZero::Bool, self::Any, fakeworld::Any, fa::Type, a::Type, tt::Type, mode::Type, width::Type, modifiedbetween::Type, returnprimal::Type, shadowinit::Type, abi::Type, erriffuncwritten::Type, runtimeactivity::Type, strongzero::Type) @ Enzyme.Compiler ~/.julia/packages/Enzyme/EPXUy/src/compiler.jl:6275 [8] autodiff @ ~/.julia/packages/Enzyme/EPXUy/src/Enzyme.jl:502 [inlined] [9] autodiff @ ~/.julia/packages/Enzyme/EPXUy/src/Enzyme.jl:562 [inlined] [10] autodiff(mode::ReverseMode{false, false, false, FFIABI, false, false}, f::typeof(f3), args::Active{Float64}) @ Enzyme ~/.julia/packages/Enzyme/EPXUy/src/Enzyme.jl:534 [11] top-level scope @ ~/.julia/packages/QuadGK/7rND3/test/runtests.jl:469 [12] macro expansion @ /opt/julia/share/julia/stdlib/v1.14/Test/src/Test.jl:1961 [inlined] [13] macro expansion @ ~/.julia/packages/QuadGK/7rND3/test/runtests.jl:471 [inlined] [14] macro expansion @ /opt/julia/share/julia/stdlib/v1.14/Test/src/Test.jl:750 [inlined] Enzyme: Error During Test at /home/pkgeval/.julia/packages/QuadGK/7rND3/test/runtests.jl:473 Test threw exception Expression: cos(0.3) ≈ ((Enzyme.autodiff(Reverse, f1_count, Active(0.3)))[1])[1] AssertionError: Enzyme Internal Error (expectLen != length(parameters(f))) define internal void @julia_eigvec1__52560(ptr noalias nocapture noundef nonnull sret({ ptr addrspace(10), [1 x [2 x i64]], i64, i64 }) align 8 dereferenceable(40) %sret_return, ptr noalias nocapture noundef nonnull align 8 dereferenceable(8) "enzymejl_returnRoots" %return_roots, ptr addrspace(11) nocapture noundef nonnull readonly align 8 dereferenceable(40) %"v::SubArray", ptr nocapture noundef nonnull readonly align 8 dereferenceable(8) %.roots.v, ptr addrspace(11) nocapture noundef nonnull readonly align 8 dereferenceable(40) %"H::HollowSymTridiagonal", ptr nocapture noundef nonnull readonly align 8 dereferenceable(8) %.roots.H, double %"\CE\BB::Float64") #18 !dbg !933 { top: %"new::Tuple" = alloca [1 x i64], align 8 %.size = alloca i64, align 8 %"new::Tuple11" = alloca [1 x i64], align 8 %.size16 = alloca i64, align 8 %"new::Tuple44" = alloca [1 x i64], align 8 %.size49 = alloca i64, align 8 %"new::Tuple77" = alloca [1 x i64], align 8 %.size82 = alloca i64, align 8 %"new::Tuple110" = alloca [1 x i64], align 8 %.size115 = alloca i64, align 8 %"new::Tuple143" = alloca [1 x i64], align 8 %.size148 = alloca i64, align 8 %"new::Tuple182" = alloca [1 x i64], align 8 %.size187 = alloca i64, align 8 %"new::Tuple215" = alloca [1 x i64], align 8 %.size220 = alloca i64, align 8 %"new::Tuple248" = alloca [1 x i64], align 8 %.size253 = alloca i64, align 8 %"new::Tuple281" = alloca [1 x i64], align 8 %.size286 = alloca i64, align 8 %"new::Tuple314" = alloca [1 x i64], align 8 %.size319 = alloca i64, align 8 %"new::Tuple347" = alloca [1 x i64], align 8 %.size352 = alloca i64, align 8 %"new::OneTo" = alloca [1 x i64], align 8 %"new::Tuple387" = alloca [1 x i64], align 8 %"new::Tuple388" = alloca [1 x i64], align 8 %.size393 = alloca i64, align 8 %"new::Tuple421" = alloca [1 x i64], align 8 %.size426 = alloca i64, align 8 %"new::Tuple454" = alloca [1 x i64], align 8 %0 = alloca ptr addrspace(10), align 8 %"new::Tuple457" = alloca [1 x i64], align 8 %1 = alloca ptr addrspace(10), align 8 %"new::Tuple464" = alloca [1 x i64], align 8 %2 = alloca ptr addrspace(10), align 8 %"new::Tuple469" = alloca [1 x i64], align 8 %3 = alloca ptr addrspace(10), align 8 %"new::Tuple474" = alloca [1 x i64], align 8 %4 = alloca ptr addrspace(10), align 8 %"new::Tuple479" = alloca [1 x i64], align 8 %5 = alloca ptr addrspace(10), align 8 %"new::Tuple484" = alloca [1 x i64], align 8 %6 = alloca ptr addrspace(10), align 8 %"new::Tuple489" = alloca [1 x i64], align 8 %7 = alloca ptr addrspace(10), align 8 %"new::Tuple494" = alloca [1 x i64], align 8 %8 = alloca ptr addrspace(10), align 8 %"new::Tuple499" = alloca [1 x i64], align 8 %9 = alloca ptr addrspace(10), align 8 %"new::Tuple504" = alloca [1 x i64], align 8 %10 = alloca ptr addrspace(10), align 8 %"new::Tuple509" = alloca [1 x i64], align 8 %11 = alloca ptr addrspace(10), align 8 %"new::Tuple514" = alloca [1 x i64], align 8 %12 = alloca ptr addrspace(10), align 8 %"new::Tuple519" = alloca [1 x i64], align 8 %13 = alloca ptr addrspace(10), align 8 %pgcstack = call ptr @julia.get_pgcstack() call void @llvm.memset.p0.i64(ptr align 8 %13, i8 0, i64 8, i1 false), !tbaa !121, !alias.scope !368, !noalias !369 call void @llvm.memset.p0.i64(ptr align 8 %12, i8 0, i64 8, i1 false), !tbaa !121, !alias.scope !368, !noalias !369 call void @llvm.memset.p0.i64(ptr align 8 %11, i8 0, i64 8, i1 false), !tbaa !121, !alias.scope !368, !noalias !369 call void @llvm.memset.p0.i64(ptr align 8 %10, i8 0, i64 8, i1 false), !tbaa !121, !alias.scope !368, !noalias !369 call void @llvm.memset.p0.i64(ptr align 8 %9, i8 0, i64 8, i1 false), !tbaa !121, !alias.scope !368, !noalias !369 call void @llvm.memset.p0.i64(ptr align 8 %8, i8 0, i64 8, i1 false), !tbaa !121, !alias.scope !368, !noalias !369 call void @llvm.memset.p0.i64(ptr align 8 %7, i8 0, i64 8, i1 false), !tbaa !121, !alias.scope !368, !noalias !369 call void @llvm.memset.p0.i64(ptr align 8 %6, i8 0, i64 8, i1 false), !tbaa !121, !alias.scope !368, !noalias !369 call void @llvm.memset.p0.i64(ptr align 8 %5, i8 0, i64 8, i1 false), !tbaa !121, !alias.scope !368, !noalias !369 call void @llvm.memset.p0.i64(ptr align 8 %4, i8 0, i64 8, i1 false), !tbaa !121, !alias.scope !368, !noalias !369 call void @llvm.memset.p0.i64(ptr align 8 %3, i8 0, i64 8, i1 false), !tbaa !121, !alias.scope !368, !noalias !369 call void @llvm.memset.p0.i64(ptr align 8 %2, i8 0, i64 8, i1 false), !tbaa !121, !alias.scope !368, !noalias !369 call void @llvm.memset.p0.i64(ptr align 8 %1, i8 0, i64 8, i1 false), !tbaa !121, !alias.scope !368, !noalias !369 call void @llvm.memset.p0.i64(ptr align 8 %0, i8 0, i64 8, i1 false), !tbaa !121, !alias.scope !368, !noalias !369 %current_task = getelementptr inbounds i8, ptr %pgcstack, i32 -152 %ptls_field = getelementptr inbounds i8, ptr %current_task, i32 168 %ptls_load = load ptr, ptr %ptls_field, align 8, !tbaa !121 %14 = getelementptr inbounds i8, ptr %ptls_load, i32 16 %safepoint = load atomic ptr, ptr %14 monotonic, align 8, !tbaa !125 fence syncscope("singlethread") seq_cst call void @julia.safepoint(ptr %safepoint) fence syncscope("singlethread") seq_cst %15 = getelementptr inbounds i8, ptr %.roots.v, i32 0 %16 = load ptr addrspace(10), ptr %15, align 8, !tbaa !125, !alias.scope !128, !noalias !131 %17 = getelementptr inbounds i8, ptr %.roots.H, i32 0 %18 = load ptr addrspace(10), ptr %17, align 8, !tbaa !125, !alias.scope !128, !noalias !131 %19 = getelementptr inbounds i8, ptr addrspace(11) %"H::HollowSymTridiagonal", i32 8, !dbg !935 %.stop_ptr = getelementptr inbounds i8, ptr addrspace(11) %19, i32 8, !dbg !949 %.stop_ptr.unbox = load i64, ptr addrspace(11) %.stop_ptr, align 8, !dbg !960, !tbaa !125, !alias.scope !128, !noalias !131 %.unbox = load i64, ptr addrspace(11) %19, align 8, !dbg !960, !tbaa !125, !alias.scope !128, !noalias !131 %20 = sub i64 %.stop_ptr.unbox, %.unbox, !dbg !960 %21 = add i64 1, %20, !dbg !963 %22 = add i64 %21, 1, !dbg !965 br label %L10, !dbg !965 L10: ; preds = %top %23 = getelementptr inbounds i8, ptr addrspace(11) %"v::SubArray", i32 8, !dbg !966 %.stop_ptr1 = getelementptr inbounds i8, ptr addrspace(11) %23, i32 8, !dbg !971 %.stop_ptr1.unbox = load i64, ptr addrspace(11) %.stop_ptr1, align 8, !dbg !977, !tbaa !125, !alias.scope !128, !noalias !131 %.unbox2 = load i64, ptr addrspace(11) %23, align 8, !dbg !977, !tbaa !125, !alias.scope !128, !noalias !131 %24 = sub i64 %.stop_ptr1.unbox, %.unbox2, !dbg !977 %25 = add i64 1, %24, !dbg !979 %26 = icmp eq i64 %22, %25, !dbg !980 %27 = xor i1 %26, true, !dbg !970 br i1 %27, label %L668, label %L18, !dbg !970 L18: ; preds = %L10 br i1 false, label %L37, label %L21, !dbg !982 L21: ; preds = %L18 %28 = getelementptr inbounds i8, ptr %"new::Tuple", i32 0, !dbg !982 call void @llvm.memcpy.p0.p0.i64(ptr align 8 %28, ptr align 8 @_j_const_5_4, i64 8, i1 false), !dbg !982, !tbaa !140, !alias.scope !586, !noalias !587 %29 = getelementptr inbounds i8, ptr addrspace(11) %"v::SubArray", i32 8, !dbg !985 %.stop_ptr3 = getelementptr inbounds i8, ptr addrspace(11) %29, i32 8, !dbg !993 %.stop_ptr3.unbox = load i64, ptr addrspace(11) %.stop_ptr3, align 8, !dbg !1002, !tbaa !125, !alias.scope !128, !noalias !131 %.unbox4 = load i64, ptr addrspace(11) %29, align 8, !dbg !1002, !tbaa !125, !alias.scope !128, !noalias !131 %30 = sub i64 %.stop_ptr3.unbox, %.unbox4, !dbg !1002 %31 = add i64 1, %30, !dbg !1004 %32 = icmp ult i64 0, %31, !dbg !1005 %33 = xor i1 %32, true, !dbg !992 br i1 %33, label %L34, label %L33, !dbg !992 L33: ; preds = %L21 br label %L36, !dbg !992 L34: ; preds = %L21 %34 = getelementptr inbounds i8, ptr %13, i32 0, !dbg !992 store ptr addrspace(10) %16, ptr %34, align 8, !dbg !992 %35 = addrspacecast ptr %"new::Tuple" to ptr addrspace(11), !dbg !992 call void @julia_throw_boundserror_52557(ptr addrspace(11) nocapture readonly %"v::SubArray", ptr nocapture readonly %13, ptr addrspace(11) nocapture readonly %35) #133, !dbg !992 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !992 unreachable, !dbg !992 L36: ; preds = %L33 br label %L37, !dbg !992 L37: ; preds = %L36, %L18 %36 = getelementptr inbounds i8, ptr addrspace(11) %"v::SubArray", i32 24, !dbg !1009 %.unbox5 = load i64, ptr addrspace(11) %36, align 8, !dbg !1013, !tbaa !125, !alias.scope !128, !noalias !131 %37 = add i64 %.unbox5, 1, !dbg !1013 br i1 false, label %L54, label %L43, !dbg !1014 L43: ; preds = %L37 %38 = sub i64 %37, 1, !dbg !1018 %39 = addrspacecast ptr addrspace(10) %16 to ptr addrspace(11), !dbg !1020 %.size_ptr = getelementptr inbounds i8, ptr addrspace(11) %39, i32 16, !dbg !1020 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %.size, ptr addrspace(11) align 8 %.size_ptr, i64 8, i1 false), !dbg !1020, !tbaa !140, !alias.scope !303, !noalias !304 %bitcast = load i64, ptr %.size, align 8, !dbg !1018, !tbaa !305, !alias.scope !307, !noalias !308 %40 = icmp ult i64 %38, %bitcast, !dbg !1018 %41 = xor i1 %40, true, !dbg !1014 br i1 %41, label %L51, label %L50, !dbg !1014 L50: ; preds = %L43 br label %L54, !dbg !1014 L51: ; preds = %L43 %42 = getelementptr inbounds i8, ptr %"new::Tuple519", i32 0, !dbg !1014 store i64 %37, ptr %42, align 8, !dbg !1014, !tbaa !305, !alias.scope !307, !noalias !308 %43 = addrspacecast ptr %"new::Tuple519" to ptr addrspace(11), !dbg !1014 call void @julia_throw_boundserror_52431(ptr addrspace(10) %16, ptr addrspace(11) nocapture readonly %43) #133, !dbg !1014 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !1014 unreachable, !dbg !1014 L54: ; preds = %L50, %L37 %44 = addrspacecast ptr addrspace(10) %16 to ptr addrspace(11), !dbg !1023 %45 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %44, i32 0, i32 0, !dbg !1023 %memoryref_data = load ptr, ptr addrspace(11) %45, align 8, !dbg !1023, !tbaa !310, !alias.scope !313, !noalias !314 %46 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %44, i32 0, i32 1, !dbg !1023 %memoryref_mem = load ptr addrspace(10), ptr addrspace(11) %46, align 8, !dbg !1023, !tbaa !310, !alias.scope !313, !noalias !314, !dereferenceable_or_null !139, !align !137 %47 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data, 0, !dbg !1023 %.ref = insertvalue { ptr, ptr addrspace(10) } %47, ptr addrspace(10) %memoryref_mem, 1, !dbg !1023 %memoryref_offset = sub i64 %37, 1, !dbg !1024 %48 = addrspacecast ptr addrspace(10) %memoryref_mem to ptr addrspace(11), !dbg !1024 %49 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %48, i32 0, i32 0, !dbg !1024 %memory_len = load i64, ptr addrspace(11) %49, align 8, !dbg !1024, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %50 = add nuw i64 %memory_len, %memory_len, !dbg !1024 %51 = add i64 %memoryref_offset, %memory_len, !dbg !1024 %memoryref_ovflw = icmp uge i64 %51, %50, !dbg !1024 %memoryref_byteoffset = mul i64 %memoryref_offset, 8, !dbg !1024 %memoryref_data_byteoffset = getelementptr i8, ptr %memoryref_data, i64 %memoryref_byteoffset, !dbg !1024 %52 = addrspacecast ptr addrspace(10) %memoryref_mem to ptr addrspace(11), !dbg !1024 %53 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %52, i32 0, i32 0, !dbg !1024 %memory_len6 = load i64, ptr addrspace(11) %53, align 8, !dbg !1024, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %54 = addrspacecast ptr addrspace(10) %memoryref_mem to ptr addrspace(11), !dbg !1024 %memory_data_ptr = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %54, i32 0, i32 1, !dbg !1024 %memory_data = load ptr, ptr addrspace(11) %memory_data_ptr, align 8, !dbg !1024, !tbaa !318, !alias.scope !313, !noalias !314, !nonnull !0 %55 = ptrtoint ptr %memory_data to i64, !dbg !1024 %56 = ptrtoint ptr %memoryref_data_byteoffset to i64, !dbg !1024 %57 = sub i64 %56, %55, !dbg !1024 %memoryref_bytelen = mul nuw nsw i64 %memory_len6, 8, !dbg !1024 %memoryref_isinbounds = icmp ult i64 %57, %memoryref_bytelen, !dbg !1024 %58 = xor i1 %memoryref_ovflw, true, !dbg !1024 %"memoryref_isinbounds¬ovflw" = and i1 %58, %memoryref_isinbounds, !dbg !1024 br i1 %"memoryref_isinbounds¬ovflw", label %idxend, label %oob, !dbg !1024 L58: ; preds = %load br label %L59, !dbg !1016 L59: ; preds = %L58 br label %L60, !dbg !1016 L60: ; preds = %L59 %59 = icmp slt i64 1, %22, !dbg !1025 %60 = xor i1 %59, true, !dbg !1028 br i1 %60, label %L667, label %L62, !dbg !1028 L62: ; preds = %L60 br i1 false, label %L80, label %L64, !dbg !1029 L64: ; preds = %L62 %61 = getelementptr inbounds i8, ptr %"new::Tuple11", i32 0, !dbg !1029 call void @llvm.memcpy.p0.p0.i64(ptr align 8 %61, ptr align 8 @_j_const_5_4, i64 8, i1 false), !dbg !1029, !tbaa !140, !alias.scope !586, !noalias !587 %62 = getelementptr inbounds i8, ptr addrspace(11) %"v::SubArray", i32 8, !dbg !1032 %.stop_ptr12 = getelementptr inbounds i8, ptr addrspace(11) %62, i32 8, !dbg !1037 %.stop_ptr12.unbox = load i64, ptr addrspace(11) %.stop_ptr12, align 8, !dbg !1044, !tbaa !125, !alias.scope !128, !noalias !131 %.unbox13 = load i64, ptr addrspace(11) %62, align 8, !dbg !1044, !tbaa !125, !alias.scope !128, !noalias !131 %63 = sub i64 %.stop_ptr12.unbox, %.unbox13, !dbg !1044 %64 = add i64 1, %63, !dbg !1046 %65 = icmp ult i64 0, %64, !dbg !1047 %66 = xor i1 %65, true, !dbg !1036 br i1 %66, label %L77, label %L76, !dbg !1036 L76: ; preds = %L64 br label %L79, !dbg !1036 L77: ; preds = %L64 %67 = getelementptr inbounds i8, ptr %12, i32 0, !dbg !1036 store ptr addrspace(10) %16, ptr %67, align 8, !dbg !1036 %68 = addrspacecast ptr %"new::Tuple11" to ptr addrspace(11), !dbg !1036 call void @julia_throw_boundserror_52557(ptr addrspace(11) nocapture readonly %"v::SubArray", ptr nocapture readonly %12, ptr addrspace(11) nocapture readonly %68) #133, !dbg !1036 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !1036 unreachable, !dbg !1036 L79: ; preds = %L76 br label %L80, !dbg !1036 L80: ; preds = %L79, %L62 %69 = getelementptr inbounds i8, ptr addrspace(11) %"v::SubArray", i32 24, !dbg !1049 %.unbox14 = load i64, ptr addrspace(11) %69, align 8, !dbg !1052, !tbaa !125, !alias.scope !128, !noalias !131 %70 = add i64 %.unbox14, 1, !dbg !1052 br i1 false, label %L97, label %L85, !dbg !1053 L85: ; preds = %L80 %71 = sub i64 %70, 1, !dbg !1055 %72 = addrspacecast ptr addrspace(10) %16 to ptr addrspace(11), !dbg !1057 %.size_ptr15 = getelementptr inbounds i8, ptr addrspace(11) %72, i32 16, !dbg !1057 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %.size16, ptr addrspace(11) align 8 %.size_ptr15, i64 8, i1 false), !dbg !1057, !tbaa !140, !alias.scope !303, !noalias !304 %bitcast17 = load i64, ptr %.size16, align 8, !dbg !1055, !tbaa !305, !alias.scope !307, !noalias !308 %73 = icmp ult i64 %71, %bitcast17, !dbg !1055 %74 = xor i1 %73, true, !dbg !1056 br i1 %74, label %L93, label %L92, !dbg !1056 L92: ; preds = %L85 br label %L96, !dbg !1056 L93: ; preds = %L85 %75 = getelementptr inbounds i8, ptr %"new::Tuple514", i32 0, !dbg !1056 store i64 %70, ptr %75, align 8, !dbg !1056, !tbaa !305, !alias.scope !307, !noalias !308 %76 = addrspacecast ptr %"new::Tuple514" to ptr addrspace(11), !dbg !1056 call void @julia_throw_boundserror_52431(ptr addrspace(10) %16, ptr addrspace(11) nocapture readonly %76) #133, !dbg !1056 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !1056 unreachable, !dbg !1056 L96: ; preds = %L92 br label %L97, !dbg !1056 L97: ; preds = %L96, %L80 %77 = addrspacecast ptr addrspace(10) %16 to ptr addrspace(11), !dbg !1059 %78 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %77, i32 0, i32 0, !dbg !1059 %memoryref_data19 = load ptr, ptr addrspace(11) %78, align 8, !dbg !1059, !tbaa !310, !alias.scope !313, !noalias !314 %79 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %77, i32 0, i32 1, !dbg !1059 %memoryref_mem39 = load ptr addrspace(10), ptr addrspace(11) %79, align 8, !dbg !1059, !tbaa !310, !alias.scope !313, !noalias !314, !dereferenceable_or_null !139, !align !137 %80 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data19, 0, !dbg !1059 %.ref18 = insertvalue { ptr, ptr addrspace(10) } %80, ptr addrspace(10) %memoryref_mem39, 1, !dbg !1059 %memoryref_offset21 = sub i64 %70, 1, !dbg !1059 %81 = addrspacecast ptr addrspace(10) %memoryref_mem39 to ptr addrspace(11), !dbg !1059 %82 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %81, i32 0, i32 0, !dbg !1059 %memory_len22 = load i64, ptr addrspace(11) %82, align 8, !dbg !1059, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %83 = add nuw i64 %memory_len22, %memory_len22, !dbg !1059 %84 = add i64 %memoryref_offset21, %memory_len22, !dbg !1059 %memoryref_ovflw23 = icmp uge i64 %84, %83, !dbg !1059 %memoryref_byteoffset24 = mul i64 %memoryref_offset21, 8, !dbg !1059 %memoryref_data_byteoffset25 = getelementptr i8, ptr %memoryref_data19, i64 %memoryref_byteoffset24, !dbg !1059 %85 = addrspacecast ptr addrspace(10) %memoryref_mem39 to ptr addrspace(11), !dbg !1059 %86 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %85, i32 0, i32 0, !dbg !1059 %memory_len26 = load i64, ptr addrspace(11) %86, align 8, !dbg !1059, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %87 = addrspacecast ptr addrspace(10) %memoryref_mem39 to ptr addrspace(11), !dbg !1059 %memory_data_ptr27 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %87, i32 0, i32 1, !dbg !1059 %memory_data28 = load ptr, ptr addrspace(11) %memory_data_ptr27, align 8, !dbg !1059, !tbaa !318, !alias.scope !313, !noalias !314, !nonnull !0 %88 = ptrtoint ptr %memory_data28 to i64, !dbg !1059 %89 = ptrtoint ptr %memoryref_data_byteoffset25 to i64, !dbg !1059 %90 = sub i64 %89, %88, !dbg !1059 %memoryref_bytelen29 = mul nuw nsw i64 %memory_len26, 8, !dbg !1059 %memoryref_isinbounds30 = icmp ult i64 %90, %memoryref_bytelen29, !dbg !1059 %91 = xor i1 %memoryref_ovflw23, true, !dbg !1059 %"memoryref_isinbounds¬ovflw31" = and i1 %91, %memoryref_isinbounds30, !dbg !1059 br i1 %"memoryref_isinbounds¬ovflw31", label %idxend37, label %oob32, !dbg !1059 L101: ; preds = %load42 br label %L102, !dbg !1059 L102: ; preds = %L101 br i1 false, label %L120, label %L104, !dbg !1060 L104: ; preds = %L102 %92 = getelementptr inbounds i8, ptr %"new::Tuple44", i32 0, !dbg !1060 call void @llvm.memcpy.p0.p0.i64(ptr align 8 %92, ptr align 8 @_j_const_5_4, i64 8, i1 false), !dbg !1060, !tbaa !140, !alias.scope !586, !noalias !587 %93 = getelementptr inbounds i8, ptr addrspace(11) %"v::SubArray", i32 8, !dbg !1062 %.stop_ptr45 = getelementptr inbounds i8, ptr addrspace(11) %93, i32 8, !dbg !1067 %.stop_ptr45.unbox = load i64, ptr addrspace(11) %.stop_ptr45, align 8, !dbg !1074, !tbaa !125, !alias.scope !128, !noalias !131 %.unbox46 = load i64, ptr addrspace(11) %93, align 8, !dbg !1074, !tbaa !125, !alias.scope !128, !noalias !131 %94 = sub i64 %.stop_ptr45.unbox, %.unbox46, !dbg !1074 %95 = add i64 1, %94, !dbg !1076 %96 = icmp ult i64 0, %95, !dbg !1077 %97 = xor i1 %96, true, !dbg !1066 br i1 %97, label %L117, label %L116, !dbg !1066 L116: ; preds = %L104 br label %L119, !dbg !1066 L117: ; preds = %L104 %98 = getelementptr inbounds i8, ptr %11, i32 0, !dbg !1066 store ptr addrspace(10) %16, ptr %98, align 8, !dbg !1066 %99 = addrspacecast ptr %"new::Tuple44" to ptr addrspace(11), !dbg !1066 call void @julia_throw_boundserror_52557(ptr addrspace(11) nocapture readonly %"v::SubArray", ptr nocapture readonly %11, ptr addrspace(11) nocapture readonly %99) #133, !dbg !1066 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !1066 unreachable, !dbg !1066 L119: ; preds = %L116 br label %L120, !dbg !1066 L120: ; preds = %L119, %L102 %100 = getelementptr inbounds i8, ptr addrspace(11) %"v::SubArray", i32 24, !dbg !1079 %.unbox47 = load i64, ptr addrspace(11) %100, align 8, !dbg !1082, !tbaa !125, !alias.scope !128, !noalias !131 %101 = add i64 %.unbox47, 1, !dbg !1082 br i1 false, label %L137, label %L125, !dbg !1083 L125: ; preds = %L120 %102 = sub i64 %101, 1, !dbg !1084 %103 = addrspacecast ptr addrspace(10) %16 to ptr addrspace(11), !dbg !1086 %.size_ptr48 = getelementptr inbounds i8, ptr addrspace(11) %103, i32 16, !dbg !1086 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %.size49, ptr addrspace(11) align 8 %.size_ptr48, i64 8, i1 false), !dbg !1086, !tbaa !140, !alias.scope !303, !noalias !304 %bitcast50 = load i64, ptr %.size49, align 8, !dbg !1084, !tbaa !305, !alias.scope !307, !noalias !308 %104 = icmp ult i64 %102, %bitcast50, !dbg !1084 %105 = xor i1 %104, true, !dbg !1085 br i1 %105, label %L133, label %L132, !dbg !1085 L132: ; preds = %L125 br label %L136, !dbg !1085 L133: ; preds = %L125 %106 = getelementptr inbounds i8, ptr %"new::Tuple509", i32 0, !dbg !1085 store i64 %101, ptr %106, align 8, !dbg !1085, !tbaa !305, !alias.scope !307, !noalias !308 %107 = addrspacecast ptr %"new::Tuple509" to ptr addrspace(11), !dbg !1085 call void @julia_throw_boundserror_52431(ptr addrspace(10) %16, ptr addrspace(11) nocapture readonly %107) #133, !dbg !1085 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !1085 unreachable, !dbg !1085 L136: ; preds = %L132 br label %L137, !dbg !1085 L137: ; preds = %L136, %L120 %108 = addrspacecast ptr addrspace(10) %16 to ptr addrspace(11), !dbg !1088 %109 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %108, i32 0, i32 0, !dbg !1088 %memoryref_data52 = load ptr, ptr addrspace(11) %109, align 8, !dbg !1088, !tbaa !310, !alias.scope !313, !noalias !314 %110 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %108, i32 0, i32 1, !dbg !1088 %memoryref_mem72 = load ptr addrspace(10), ptr addrspace(11) %110, align 8, !dbg !1088, !tbaa !310, !alias.scope !313, !noalias !314, !dereferenceable_or_null !139, !align !137 %111 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data52, 0, !dbg !1088 %.ref51 = insertvalue { ptr, ptr addrspace(10) } %111, ptr addrspace(10) %memoryref_mem72, 1, !dbg !1088 %memoryref_offset54 = sub i64 %101, 1, !dbg !1088 %112 = addrspacecast ptr addrspace(10) %memoryref_mem72 to ptr addrspace(11), !dbg !1088 %113 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %112, i32 0, i32 0, !dbg !1088 %memory_len55 = load i64, ptr addrspace(11) %113, align 8, !dbg !1088, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %114 = add nuw i64 %memory_len55, %memory_len55, !dbg !1088 %115 = add i64 %memoryref_offset54, %memory_len55, !dbg !1088 %memoryref_ovflw56 = icmp uge i64 %115, %114, !dbg !1088 %memoryref_byteoffset57 = mul i64 %memoryref_offset54, 8, !dbg !1088 %memoryref_data_byteoffset58 = getelementptr i8, ptr %memoryref_data52, i64 %memoryref_byteoffset57, !dbg !1088 %116 = addrspacecast ptr addrspace(10) %memoryref_mem72 to ptr addrspace(11), !dbg !1088 %117 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %116, i32 0, i32 0, !dbg !1088 %memory_len59 = load i64, ptr addrspace(11) %117, align 8, !dbg !1088, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %118 = addrspacecast ptr addrspace(10) %memoryref_mem72 to ptr addrspace(11), !dbg !1088 %memory_data_ptr60 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %118, i32 0, i32 1, !dbg !1088 %memory_data61 = load ptr, ptr addrspace(11) %memory_data_ptr60, align 8, !dbg !1088, !tbaa !318, !alias.scope !313, !noalias !314, !nonnull !0 %119 = ptrtoint ptr %memory_data61 to i64, !dbg !1088 %120 = ptrtoint ptr %memoryref_data_byteoffset58 to i64, !dbg !1088 %121 = sub i64 %120, %119, !dbg !1088 %memoryref_bytelen62 = mul nuw nsw i64 %memory_len59, 8, !dbg !1088 %memoryref_isinbounds63 = icmp ult i64 %121, %memoryref_bytelen62, !dbg !1088 %122 = xor i1 %memoryref_ovflw56, true, !dbg !1088 %"memoryref_isinbounds¬ovflw64" = and i1 %122, %memoryref_isinbounds63, !dbg !1088 br i1 %"memoryref_isinbounds¬ovflw64", label %idxend70, label %oob65, !dbg !1088 L141: ; preds = %load75 br label %L142, !dbg !1088 L142: ; preds = %L141 %123 = fmul double %"\CE\BB::Float64", %558, !dbg !1089 br i1 false, label %L162, label %L146, !dbg !1060 L146: ; preds = %L142 %124 = getelementptr inbounds i8, ptr %"new::Tuple77", i32 0, !dbg !1060 call void @llvm.memcpy.p0.p0.i64(ptr align 8 %124, ptr align 8 @_j_const_5_4, i64 8, i1 false), !dbg !1060, !tbaa !140, !alias.scope !586, !noalias !587 %125 = getelementptr inbounds i8, ptr addrspace(11) %"H::HollowSymTridiagonal", i32 8, !dbg !1062 %.stop_ptr78 = getelementptr inbounds i8, ptr addrspace(11) %125, i32 8, !dbg !1067 %.stop_ptr78.unbox = load i64, ptr addrspace(11) %.stop_ptr78, align 8, !dbg !1074, !tbaa !125, !alias.scope !128, !noalias !131 %.unbox79 = load i64, ptr addrspace(11) %125, align 8, !dbg !1074, !tbaa !125, !alias.scope !128, !noalias !131 %126 = sub i64 %.stop_ptr78.unbox, %.unbox79, !dbg !1074 %127 = add i64 1, %126, !dbg !1076 %128 = icmp ult i64 0, %127, !dbg !1077 %129 = xor i1 %128, true, !dbg !1066 br i1 %129, label %L159, label %L158, !dbg !1066 L158: ; preds = %L146 br label %L161, !dbg !1066 L159: ; preds = %L146 %130 = getelementptr inbounds i8, ptr %10, i32 0, !dbg !1066 store ptr addrspace(10) %18, ptr %130, align 8, !dbg !1066 %131 = addrspacecast ptr %"new::Tuple77" to ptr addrspace(11), !dbg !1066 call void @julia_throw_boundserror_52557(ptr addrspace(11) nocapture readonly %"H::HollowSymTridiagonal", ptr nocapture readonly %10, ptr addrspace(11) nocapture readonly %131) #133, !dbg !1066 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !1066 unreachable, !dbg !1066 L161: ; preds = %L158 br label %L162, !dbg !1066 L162: ; preds = %L161, %L142 %132 = getelementptr inbounds i8, ptr addrspace(11) %"H::HollowSymTridiagonal", i32 24, !dbg !1079 %.unbox80 = load i64, ptr addrspace(11) %132, align 8, !dbg !1082, !tbaa !125, !alias.scope !128, !noalias !131 %133 = add i64 %.unbox80, 1, !dbg !1082 br i1 false, label %L179, label %L167, !dbg !1083 L167: ; preds = %L162 %134 = sub i64 %133, 1, !dbg !1084 %135 = addrspacecast ptr addrspace(10) %18 to ptr addrspace(11), !dbg !1086 %.size_ptr81 = getelementptr inbounds i8, ptr addrspace(11) %135, i32 16, !dbg !1086 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %.size82, ptr addrspace(11) align 8 %.size_ptr81, i64 8, i1 false), !dbg !1086, !tbaa !140, !alias.scope !303, !noalias !304 %bitcast83 = load i64, ptr %.size82, align 8, !dbg !1084, !tbaa !305, !alias.scope !307, !noalias !308 %136 = icmp ult i64 %134, %bitcast83, !dbg !1084 %137 = xor i1 %136, true, !dbg !1085 br i1 %137, label %L175, label %L174, !dbg !1085 L174: ; preds = %L167 br label %L178, !dbg !1085 L175: ; preds = %L167 %138 = getelementptr inbounds i8, ptr %"new::Tuple504", i32 0, !dbg !1085 store i64 %133, ptr %138, align 8, !dbg !1085, !tbaa !305, !alias.scope !307, !noalias !308 %139 = addrspacecast ptr %"new::Tuple504" to ptr addrspace(11), !dbg !1085 call void @julia_throw_boundserror_52431(ptr addrspace(10) %18, ptr addrspace(11) nocapture readonly %139) #133, !dbg !1085 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !1085 unreachable, !dbg !1085 L178: ; preds = %L174 br label %L179, !dbg !1085 L179: ; preds = %L178, %L162 %140 = addrspacecast ptr addrspace(10) %18 to ptr addrspace(11), !dbg !1088 %141 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %140, i32 0, i32 0, !dbg !1088 %memoryref_data85 = load ptr, ptr addrspace(11) %141, align 8, !dbg !1088, !tbaa !310, !alias.scope !313, !noalias !314 %142 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %140, i32 0, i32 1, !dbg !1088 %memoryref_mem105 = load ptr addrspace(10), ptr addrspace(11) %142, align 8, !dbg !1088, !tbaa !310, !alias.scope !313, !noalias !314, !dereferenceable_or_null !139, !align !137 %143 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data85, 0, !dbg !1088 %.ref84 = insertvalue { ptr, ptr addrspace(10) } %143, ptr addrspace(10) %memoryref_mem105, 1, !dbg !1088 %memoryref_offset87 = sub i64 %133, 1, !dbg !1088 %144 = addrspacecast ptr addrspace(10) %memoryref_mem105 to ptr addrspace(11), !dbg !1088 %145 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %144, i32 0, i32 0, !dbg !1088 %memory_len88 = load i64, ptr addrspace(11) %145, align 8, !dbg !1088, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %146 = add nuw i64 %memory_len88, %memory_len88, !dbg !1088 %147 = add i64 %memoryref_offset87, %memory_len88, !dbg !1088 %memoryref_ovflw89 = icmp uge i64 %147, %146, !dbg !1088 %memoryref_byteoffset90 = mul i64 %memoryref_offset87, 8, !dbg !1088 %memoryref_data_byteoffset91 = getelementptr i8, ptr %memoryref_data85, i64 %memoryref_byteoffset90, !dbg !1088 %148 = addrspacecast ptr addrspace(10) %memoryref_mem105 to ptr addrspace(11), !dbg !1088 %149 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %148, i32 0, i32 0, !dbg !1088 %memory_len92 = load i64, ptr addrspace(11) %149, align 8, !dbg !1088, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %150 = addrspacecast ptr addrspace(10) %memoryref_mem105 to ptr addrspace(11), !dbg !1088 %memory_data_ptr93 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %150, i32 0, i32 1, !dbg !1088 %memory_data94 = load ptr, ptr addrspace(11) %memory_data_ptr93, align 8, !dbg !1088, !tbaa !318, !alias.scope !313, !noalias !314, !nonnull !0 %151 = ptrtoint ptr %memory_data94 to i64, !dbg !1088 %152 = ptrtoint ptr %memoryref_data_byteoffset91 to i64, !dbg !1088 %153 = sub i64 %152, %151, !dbg !1088 %memoryref_bytelen95 = mul nuw nsw i64 %memory_len92, 8, !dbg !1088 %memoryref_isinbounds96 = icmp ult i64 %153, %memoryref_bytelen95, !dbg !1088 %154 = xor i1 %memoryref_ovflw89, true, !dbg !1088 %"memoryref_isinbounds¬ovflw97" = and i1 %154, %memoryref_isinbounds96, !dbg !1088 br i1 %"memoryref_isinbounds¬ovflw97", label %idxend103, label %oob98, !dbg !1088 L183: ; preds = %load108 br label %L184, !dbg !1088 L184: ; preds = %L183 %155 = fdiv double %123, %569, !dbg !1091 br i1 false, label %L203, label %L187, !dbg !1093 L187: ; preds = %L184 %156 = getelementptr inbounds i8, ptr %"new::Tuple110", i32 0, !dbg !1093 call void @llvm.memcpy.p0.p0.i64(ptr align 8 %156, ptr align 8 @_j_const_13, i64 8, i1 false), !dbg !1093, !tbaa !140, !alias.scope !586, !noalias !587 %157 = getelementptr inbounds i8, ptr addrspace(11) %"v::SubArray", i32 8, !dbg !1094 %.stop_ptr111 = getelementptr inbounds i8, ptr addrspace(11) %157, i32 8, !dbg !1099 %.stop_ptr111.unbox = load i64, ptr addrspace(11) %.stop_ptr111, align 8, !dbg !1106, !tbaa !125, !alias.scope !128, !noalias !131 %.unbox112 = load i64, ptr addrspace(11) %157, align 8, !dbg !1106, !tbaa !125, !alias.scope !128, !noalias !131 %158 = sub i64 %.stop_ptr111.unbox, %.unbox112, !dbg !1106 %159 = add i64 1, %158, !dbg !1108 %160 = icmp ult i64 1, %159, !dbg !1109 %161 = xor i1 %160, true, !dbg !1098 br i1 %161, label %L200, label %L199, !dbg !1098 L199: ; preds = %L187 br label %L202, !dbg !1098 L200: ; preds = %L187 %162 = getelementptr inbounds i8, ptr %9, i32 0, !dbg !1098 store ptr addrspace(10) %16, ptr %162, align 8, !dbg !1098 %163 = addrspacecast ptr %"new::Tuple110" to ptr addrspace(11), !dbg !1098 call void @julia_throw_boundserror_52557(ptr addrspace(11) nocapture readonly %"v::SubArray", ptr nocapture readonly %9, ptr addrspace(11) nocapture readonly %163) #133, !dbg !1098 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !1098 unreachable, !dbg !1098 L202: ; preds = %L199 br label %L203, !dbg !1098 L203: ; preds = %L202, %L184 %164 = getelementptr inbounds i8, ptr addrspace(11) %"v::SubArray", i32 24, !dbg !1111 %.unbox113 = load i64, ptr addrspace(11) %164, align 8, !dbg !1114, !tbaa !125, !alias.scope !128, !noalias !131 %165 = add i64 %.unbox113, 2, !dbg !1114 br i1 false, label %L219, label %L208, !dbg !1115 L208: ; preds = %L203 %166 = sub i64 %165, 1, !dbg !1117 %167 = addrspacecast ptr addrspace(10) %16 to ptr addrspace(11), !dbg !1118 %.size_ptr114 = getelementptr inbounds i8, ptr addrspace(11) %167, i32 16, !dbg !1118 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %.size115, ptr addrspace(11) align 8 %.size_ptr114, i64 8, i1 false), !dbg !1118, !tbaa !140, !alias.scope !303, !noalias !304 %bitcast116 = load i64, ptr %.size115, align 8, !dbg !1117, !tbaa !305, !alias.scope !307, !noalias !308 %168 = icmp ult i64 %166, %bitcast116, !dbg !1117 %169 = xor i1 %168, true, !dbg !1115 br i1 %169, label %L216, label %L215, !dbg !1115 L215: ; preds = %L208 br label %L219, !dbg !1115 L216: ; preds = %L208 %170 = getelementptr inbounds i8, ptr %"new::Tuple499", i32 0, !dbg !1115 store i64 %165, ptr %170, align 8, !dbg !1115, !tbaa !305, !alias.scope !307, !noalias !308 %171 = addrspacecast ptr %"new::Tuple499" to ptr addrspace(11), !dbg !1115 call void @julia_throw_boundserror_52431(ptr addrspace(10) %16, ptr addrspace(11) nocapture readonly %171) #133, !dbg !1115 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !1115 unreachable, !dbg !1115 L219: ; preds = %L215, %L203 %172 = addrspacecast ptr addrspace(10) %16 to ptr addrspace(11), !dbg !1120 %173 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %172, i32 0, i32 0, !dbg !1120 %memoryref_data118 = load ptr, ptr addrspace(11) %173, align 8, !dbg !1120, !tbaa !310, !alias.scope !313, !noalias !314 %174 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %172, i32 0, i32 1, !dbg !1120 %memoryref_mem138 = load ptr addrspace(10), ptr addrspace(11) %174, align 8, !dbg !1120, !tbaa !310, !alias.scope !313, !noalias !314, !dereferenceable_or_null !139, !align !137 %175 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data118, 0, !dbg !1120 %.ref117 = insertvalue { ptr, ptr addrspace(10) } %175, ptr addrspace(10) %memoryref_mem138, 1, !dbg !1120 %memoryref_offset120 = sub i64 %165, 1, !dbg !1121 %176 = addrspacecast ptr addrspace(10) %memoryref_mem138 to ptr addrspace(11), !dbg !1121 %177 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %176, i32 0, i32 0, !dbg !1121 %memory_len121 = load i64, ptr addrspace(11) %177, align 8, !dbg !1121, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %178 = add nuw i64 %memory_len121, %memory_len121, !dbg !1121 %179 = add i64 %memoryref_offset120, %memory_len121, !dbg !1121 %memoryref_ovflw122 = icmp uge i64 %179, %178, !dbg !1121 %memoryref_byteoffset123 = mul i64 %memoryref_offset120, 8, !dbg !1121 %memoryref_data_byteoffset124 = getelementptr i8, ptr %memoryref_data118, i64 %memoryref_byteoffset123, !dbg !1121 %180 = addrspacecast ptr addrspace(10) %memoryref_mem138 to ptr addrspace(11), !dbg !1121 %181 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %180, i32 0, i32 0, !dbg !1121 %memory_len125 = load i64, ptr addrspace(11) %181, align 8, !dbg !1121, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %182 = addrspacecast ptr addrspace(10) %memoryref_mem138 to ptr addrspace(11), !dbg !1121 %memory_data_ptr126 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %182, i32 0, i32 1, !dbg !1121 %memory_data127 = load ptr, ptr addrspace(11) %memory_data_ptr126, align 8, !dbg !1121, !tbaa !318, !alias.scope !313, !noalias !314, !nonnull !0 %183 = ptrtoint ptr %memory_data127 to i64, !dbg !1121 %184 = ptrtoint ptr %memoryref_data_byteoffset124 to i64, !dbg !1121 %185 = sub i64 %184, %183, !dbg !1121 %memoryref_bytelen128 = mul nuw nsw i64 %memory_len125, 8, !dbg !1121 %memoryref_isinbounds129 = icmp ult i64 %185, %memoryref_bytelen128, !dbg !1121 %186 = xor i1 %memoryref_ovflw122, true, !dbg !1121 %"memoryref_isinbounds¬ovflw130" = and i1 %186, %memoryref_isinbounds129, !dbg !1121 br i1 %"memoryref_isinbounds¬ovflw130", label %idxend136, label %oob131, !dbg !1121 L223: ; preds = %load141 br label %L224, !dbg !1116 L224: ; preds = %L223 br label %L225, !dbg !1116 L225: ; preds = %L224 br i1 false, label %L243, label %L227, !dbg !1122 L227: ; preds = %L225 %187 = getelementptr inbounds i8, ptr %"new::Tuple143", i32 0, !dbg !1122 call void @llvm.memcpy.p0.p0.i64(ptr align 8 %187, ptr align 8 @_j_const_13, i64 8, i1 false), !dbg !1122, !tbaa !140, !alias.scope !586, !noalias !587 %188 = getelementptr inbounds i8, ptr addrspace(11) %"v::SubArray", i32 8, !dbg !1124 %.stop_ptr144 = getelementptr inbounds i8, ptr addrspace(11) %188, i32 8, !dbg !1129 %.stop_ptr144.unbox = load i64, ptr addrspace(11) %.stop_ptr144, align 8, !dbg !1136, !tbaa !125, !alias.scope !128, !noalias !131 %.unbox145 = load i64, ptr addrspace(11) %188, align 8, !dbg !1136, !tbaa !125, !alias.scope !128, !noalias !131 %189 = sub i64 %.stop_ptr144.unbox, %.unbox145, !dbg !1136 %190 = add i64 1, %189, !dbg !1138 %191 = icmp ult i64 1, %190, !dbg !1139 %192 = xor i1 %191, true, !dbg !1128 br i1 %192, label %L240, label %L239, !dbg !1128 L239: ; preds = %L227 br label %L242, !dbg !1128 L240: ; preds = %L227 %193 = getelementptr inbounds i8, ptr %8, i32 0, !dbg !1128 store ptr addrspace(10) %16, ptr %193, align 8, !dbg !1128 %194 = addrspacecast ptr %"new::Tuple143" to ptr addrspace(11), !dbg !1128 call void @julia_throw_boundserror_52557(ptr addrspace(11) nocapture readonly %"v::SubArray", ptr nocapture readonly %8, ptr addrspace(11) nocapture readonly %194) #133, !dbg !1128 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !1128 unreachable, !dbg !1128 L242: ; preds = %L239 br label %L243, !dbg !1128 L243: ; preds = %L242, %L225 %195 = getelementptr inbounds i8, ptr addrspace(11) %"v::SubArray", i32 24, !dbg !1141 %.unbox146 = load i64, ptr addrspace(11) %195, align 8, !dbg !1144, !tbaa !125, !alias.scope !128, !noalias !131 %196 = add i64 %.unbox146, 2, !dbg !1144 br i1 false, label %L260, label %L248, !dbg !1145 L248: ; preds = %L243 %197 = sub i64 %196, 1, !dbg !1146 %198 = addrspacecast ptr addrspace(10) %16 to ptr addrspace(11), !dbg !1148 %.size_ptr147 = getelementptr inbounds i8, ptr addrspace(11) %198, i32 16, !dbg !1148 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %.size148, ptr addrspace(11) align 8 %.size_ptr147, i64 8, i1 false), !dbg !1148, !tbaa !140, !alias.scope !303, !noalias !304 %bitcast149 = load i64, ptr %.size148, align 8, !dbg !1146, !tbaa !305, !alias.scope !307, !noalias !308 %199 = icmp ult i64 %197, %bitcast149, !dbg !1146 %200 = xor i1 %199, true, !dbg !1147 br i1 %200, label %L256, label %L255, !dbg !1147 L255: ; preds = %L248 br label %L259, !dbg !1147 L256: ; preds = %L248 %201 = getelementptr inbounds i8, ptr %"new::Tuple494", i32 0, !dbg !1147 store i64 %196, ptr %201, align 8, !dbg !1147, !tbaa !305, !alias.scope !307, !noalias !308 %202 = addrspacecast ptr %"new::Tuple494" to ptr addrspace(11), !dbg !1147 call void @julia_throw_boundserror_52431(ptr addrspace(10) %16, ptr addrspace(11) nocapture readonly %202) #133, !dbg !1147 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !1147 unreachable, !dbg !1147 L259: ; preds = %L255 br label %L260, !dbg !1147 L260: ; preds = %L259, %L243 %203 = addrspacecast ptr addrspace(10) %16 to ptr addrspace(11), !dbg !1150 %204 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %203, i32 0, i32 0, !dbg !1150 %memoryref_data151 = load ptr, ptr addrspace(11) %204, align 8, !dbg !1150, !tbaa !310, !alias.scope !313, !noalias !314 %205 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %203, i32 0, i32 1, !dbg !1150 %memoryref_mem171 = load ptr addrspace(10), ptr addrspace(11) %205, align 8, !dbg !1150, !tbaa !310, !alias.scope !313, !noalias !314, !dereferenceable_or_null !139, !align !137 %206 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data151, 0, !dbg !1150 %.ref150 = insertvalue { ptr, ptr addrspace(10) } %206, ptr addrspace(10) %memoryref_mem171, 1, !dbg !1150 %memoryref_offset153 = sub i64 %196, 1, !dbg !1150 %207 = addrspacecast ptr addrspace(10) %memoryref_mem171 to ptr addrspace(11), !dbg !1150 %208 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %207, i32 0, i32 0, !dbg !1150 %memory_len154 = load i64, ptr addrspace(11) %208, align 8, !dbg !1150, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %209 = add nuw i64 %memory_len154, %memory_len154, !dbg !1150 %210 = add i64 %memoryref_offset153, %memory_len154, !dbg !1150 %memoryref_ovflw155 = icmp uge i64 %210, %209, !dbg !1150 %memoryref_byteoffset156 = mul i64 %memoryref_offset153, 8, !dbg !1150 %memoryref_data_byteoffset157 = getelementptr i8, ptr %memoryref_data151, i64 %memoryref_byteoffset156, !dbg !1150 %211 = addrspacecast ptr addrspace(10) %memoryref_mem171 to ptr addrspace(11), !dbg !1150 %212 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %211, i32 0, i32 0, !dbg !1150 %memory_len158 = load i64, ptr addrspace(11) %212, align 8, !dbg !1150, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %213 = addrspacecast ptr addrspace(10) %memoryref_mem171 to ptr addrspace(11), !dbg !1150 %memory_data_ptr159 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %213, i32 0, i32 1, !dbg !1150 %memory_data160 = load ptr, ptr addrspace(11) %memory_data_ptr159, align 8, !dbg !1150, !tbaa !318, !alias.scope !313, !noalias !314, !nonnull !0 %214 = ptrtoint ptr %memory_data160 to i64, !dbg !1150 %215 = ptrtoint ptr %memoryref_data_byteoffset157 to i64, !dbg !1150 %216 = sub i64 %215, %214, !dbg !1150 %memoryref_bytelen161 = mul nuw nsw i64 %memory_len158, 8, !dbg !1150 %memoryref_isinbounds162 = icmp ult i64 %216, %memoryref_bytelen161, !dbg !1150 %217 = xor i1 %memoryref_ovflw155, true, !dbg !1150 %"memoryref_isinbounds¬ovflw163" = and i1 %217, %memoryref_isinbounds162, !dbg !1150 br i1 %"memoryref_isinbounds¬ovflw163", label %idxend169, label %oob164, !dbg !1150 L264: ; preds = %load174 br label %L265, !dbg !1150 L265: ; preds = %L264 %218 = fmul double %590, %590, !dbg !1151 %219 = fadd double %547, %218, !dbg !1154 %220 = icmp sle i64 3, %22, !dbg !1156 %221 = xor i1 %220, true, !dbg !1160 br i1 %221, label %L270, label %L269, !dbg !1160 L269: ; preds = %L265 br label %L271, !dbg !1160 L270: ; preds = %L265 br label %L271, !dbg !1167 L271: ; preds = %L270, %L269 %value_phi = phi i64 [ %22, %L269 ], [ 2, %L270 ] br label %L273, !dbg !1162 L273: ; preds = %L271 br label %L274, !dbg !1162 L274: ; preds = %L273 %222 = icmp slt i64 %value_phi, 3, !dbg !1170 %223 = xor i1 %222, true, !dbg !1174 br i1 %223, label %L277, label %L276, !dbg !1174 L276: ; preds = %L274 br label %L278, !dbg !1174 L277: ; preds = %L274 br label %L278, !dbg !1174 L278: ; preds = %L277, %L276 %value_phi176 = phi i8 [ 1, %L276 ], [ 0, %L277 ] %value_phi177 = phi i64 [ 3, %L277 ], [ undef, %L276 ] %value_phi178 = phi i64 [ 3, %L277 ], [ undef, %L276 ] %224 = trunc i8 %value_phi176 to i1, !dbg !1166 %225 = xor i1 %224, true, !dbg !1166 %226 = xor i1 %225, true, !dbg !1166 br i1 %226, label %L278.L549_crit_edge, label %L278.L283_crit_edge, !dbg !1166 L278.L549_crit_edge: ; preds = %L278 br label %L549, !dbg !1176 L278.L283_crit_edge: ; preds = %L278 br label %L283, !dbg !1174 L283: ; preds = %L278.L283_crit_edge, %L548 %value_phi179 = phi i64 [ %value_phi177, %L278.L283_crit_edge ], [ %value_phi380, %L548 ] %value_phi180 = phi i64 [ %value_phi178, %L278.L283_crit_edge ], [ %value_phi381, %L548 ] %value_phi181 = phi double [ %219, %L278.L283_crit_edge ], [ %428, %L548 ] %227 = sub i64 %value_phi179, 1, !dbg !1178 br i1 false, label %L305, label %L289, !dbg !1168 L289: ; preds = %L283 %228 = getelementptr inbounds i8, ptr %"new::Tuple182", i32 0, !dbg !1168 store i64 %227, ptr %228, align 8, !dbg !1168, !tbaa !305, !alias.scope !307, !noalias !308 %229 = getelementptr inbounds i8, ptr addrspace(11) %"v::SubArray", i32 8, !dbg !1179 %.stop_ptr183 = getelementptr inbounds i8, ptr addrspace(11) %229, i32 8, !dbg !1183 %.stop_ptr183.unbox = load i64, ptr addrspace(11) %.stop_ptr183, align 8, !dbg !1190, !tbaa !125, !alias.scope !128, !noalias !131 %.unbox184 = load i64, ptr addrspace(11) %229, align 8, !dbg !1190, !tbaa !125, !alias.scope !128, !noalias !131 %230 = sub i64 %.stop_ptr183.unbox, %.unbox184, !dbg !1190 %231 = add i64 1, %230, !dbg !1192 %232 = sub i64 %227, 1, !dbg !1193 %233 = icmp ult i64 %232, %231, !dbg !1195 %234 = xor i1 %233, true, !dbg !1167 br i1 %234, label %L302, label %L301, !dbg !1167 L301: ; preds = %L289 br label %L304, !dbg !1167 L302: ; preds = %L289 %235 = getelementptr inbounds i8, ptr %7, i32 0, !dbg !1167 store ptr addrspace(10) %16, ptr %235, align 8, !dbg !1167 %236 = addrspacecast ptr %"new::Tuple182" to ptr addrspace(11), !dbg !1167 call void @julia_throw_boundserror_52557(ptr addrspace(11) nocapture readonly %"v::SubArray", ptr nocapture readonly %7, ptr addrspace(11) nocapture readonly %236) #133, !dbg !1167 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !1167 unreachable, !dbg !1167 L304: ; preds = %L301 br label %L305, !dbg !1167 L305: ; preds = %L304, %L283 %237 = getelementptr inbounds i8, ptr addrspace(11) %"v::SubArray", i32 24, !dbg !1196 %.unbox185 = load i64, ptr addrspace(11) %237, align 8, !dbg !1199, !tbaa !125, !alias.scope !128, !noalias !131 %238 = add i64 %.unbox185, %227, !dbg !1199 br i1 false, label %L322, label %L310, !dbg !1200 L310: ; preds = %L305 %239 = sub i64 %238, 1, !dbg !1201 %240 = addrspacecast ptr addrspace(10) %16 to ptr addrspace(11), !dbg !1203 %.size_ptr186 = getelementptr inbounds i8, ptr addrspace(11) %240, i32 16, !dbg !1203 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %.size187, ptr addrspace(11) align 8 %.size_ptr186, i64 8, i1 false), !dbg !1203, !tbaa !140, !alias.scope !303, !noalias !304 %bitcast188 = load i64, ptr %.size187, align 8, !dbg !1201, !tbaa !305, !alias.scope !307, !noalias !308 %241 = icmp ult i64 %239, %bitcast188, !dbg !1201 %242 = xor i1 %241, true, !dbg !1202 br i1 %242, label %L318, label %L317, !dbg !1202 L317: ; preds = %L310 br label %L321, !dbg !1202 L318: ; preds = %L310 %243 = getelementptr inbounds i8, ptr %"new::Tuple489", i32 0, !dbg !1202 store i64 %238, ptr %243, align 8, !dbg !1202, !tbaa !305, !alias.scope !307, !noalias !308 %244 = addrspacecast ptr %"new::Tuple489" to ptr addrspace(11), !dbg !1202 call void @julia_throw_boundserror_52431(ptr addrspace(10) %16, ptr addrspace(11) nocapture readonly %244) #133, !dbg !1202 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !1202 unreachable, !dbg !1202 L321: ; preds = %L317 br label %L322, !dbg !1202 L322: ; preds = %L321, %L305 %245 = addrspacecast ptr addrspace(10) %16 to ptr addrspace(11), !dbg !1205 %246 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %245, i32 0, i32 0, !dbg !1205 %memoryref_data190 = load ptr, ptr addrspace(11) %246, align 8, !dbg !1205, !tbaa !310, !alias.scope !313, !noalias !314 %247 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %245, i32 0, i32 1, !dbg !1205 %memoryref_mem210 = load ptr addrspace(10), ptr addrspace(11) %247, align 8, !dbg !1205, !tbaa !310, !alias.scope !313, !noalias !314, !dereferenceable_or_null !139, !align !137 %248 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data190, 0, !dbg !1205 %.ref189 = insertvalue { ptr, ptr addrspace(10) } %248, ptr addrspace(10) %memoryref_mem210, 1, !dbg !1205 %memoryref_offset192 = sub i64 %238, 1, !dbg !1205 %249 = addrspacecast ptr addrspace(10) %memoryref_mem210 to ptr addrspace(11), !dbg !1205 %250 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %249, i32 0, i32 0, !dbg !1205 %memory_len193 = load i64, ptr addrspace(11) %250, align 8, !dbg !1205, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %251 = add nuw i64 %memory_len193, %memory_len193, !dbg !1205 %252 = add i64 %memoryref_offset192, %memory_len193, !dbg !1205 %memoryref_ovflw194 = icmp uge i64 %252, %251, !dbg !1205 %memoryref_byteoffset195 = mul i64 %memoryref_offset192, 8, !dbg !1205 %memoryref_data_byteoffset196 = getelementptr i8, ptr %memoryref_data190, i64 %memoryref_byteoffset195, !dbg !1205 %253 = addrspacecast ptr addrspace(10) %memoryref_mem210 to ptr addrspace(11), !dbg !1205 %254 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %253, i32 0, i32 0, !dbg !1205 %memory_len197 = load i64, ptr addrspace(11) %254, align 8, !dbg !1205, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %255 = addrspacecast ptr addrspace(10) %memoryref_mem210 to ptr addrspace(11), !dbg !1205 %memory_data_ptr198 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %255, i32 0, i32 1, !dbg !1205 %memory_data199 = load ptr, ptr addrspace(11) %memory_data_ptr198, align 8, !dbg !1205, !tbaa !318, !alias.scope !313, !noalias !314, !nonnull !0 %256 = ptrtoint ptr %memory_data199 to i64, !dbg !1205 %257 = ptrtoint ptr %memoryref_data_byteoffset196 to i64, !dbg !1205 %258 = sub i64 %257, %256, !dbg !1205 %memoryref_bytelen200 = mul nuw nsw i64 %memory_len197, 8, !dbg !1205 %memoryref_isinbounds201 = icmp ult i64 %258, %memoryref_bytelen200, !dbg !1205 %259 = xor i1 %memoryref_ovflw194, true, !dbg !1205 %"memoryref_isinbounds¬ovflw202" = and i1 %259, %memoryref_isinbounds201, !dbg !1205 br i1 %"memoryref_isinbounds¬ovflw202", label %idxend208, label %oob203, !dbg !1205 L326: ; preds = %load213 br label %L327, !dbg !1205 L327: ; preds = %L326 %260 = fmul double %"\CE\BB::Float64", %601, !dbg !1206 %261 = sub i64 %value_phi179, 2, !dbg !1178 br i1 false, label %L348, label %L332, !dbg !1168 L332: ; preds = %L327 %262 = getelementptr inbounds i8, ptr %"new::Tuple215", i32 0, !dbg !1168 store i64 %261, ptr %262, align 8, !dbg !1168, !tbaa !305, !alias.scope !307, !noalias !308 %263 = getelementptr inbounds i8, ptr addrspace(11) %"H::HollowSymTridiagonal", i32 8, !dbg !1179 %.stop_ptr216 = getelementptr inbounds i8, ptr addrspace(11) %263, i32 8, !dbg !1183 %.stop_ptr216.unbox = load i64, ptr addrspace(11) %.stop_ptr216, align 8, !dbg !1190, !tbaa !125, !alias.scope !128, !noalias !131 %.unbox217 = load i64, ptr addrspace(11) %263, align 8, !dbg !1190, !tbaa !125, !alias.scope !128, !noalias !131 %264 = sub i64 %.stop_ptr216.unbox, %.unbox217, !dbg !1190 %265 = add i64 1, %264, !dbg !1192 %266 = sub i64 %261, 1, !dbg !1193 %267 = icmp ult i64 %266, %265, !dbg !1195 %268 = xor i1 %267, true, !dbg !1167 br i1 %268, label %L345, label %L344, !dbg !1167 L344: ; preds = %L332 br label %L347, !dbg !1167 L345: ; preds = %L332 %269 = getelementptr inbounds i8, ptr %6, i32 0, !dbg !1167 store ptr addrspace(10) %18, ptr %269, align 8, !dbg !1167 %270 = addrspacecast ptr %"new::Tuple215" to ptr addrspace(11), !dbg !1167 call void @julia_throw_boundserror_52557(ptr addrspace(11) nocapture readonly %"H::HollowSymTridiagonal", ptr nocapture readonly %6, ptr addrspace(11) nocapture readonly %270) #133, !dbg !1167 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !1167 unreachable, !dbg !1167 L347: ; preds = %L344 br label %L348, !dbg !1167 L348: ; preds = %L347, %L327 %271 = getelementptr inbounds i8, ptr addrspace(11) %"H::HollowSymTridiagonal", i32 24, !dbg !1196 %.unbox218 = load i64, ptr addrspace(11) %271, align 8, !dbg !1199, !tbaa !125, !alias.scope !128, !noalias !131 %272 = add i64 %.unbox218, %261, !dbg !1199 br i1 false, label %L365, label %L353, !dbg !1200 L353: ; preds = %L348 %273 = sub i64 %272, 1, !dbg !1201 %274 = addrspacecast ptr addrspace(10) %18 to ptr addrspace(11), !dbg !1203 %.size_ptr219 = getelementptr inbounds i8, ptr addrspace(11) %274, i32 16, !dbg !1203 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %.size220, ptr addrspace(11) align 8 %.size_ptr219, i64 8, i1 false), !dbg !1203, !tbaa !140, !alias.scope !303, !noalias !304 %bitcast221 = load i64, ptr %.size220, align 8, !dbg !1201, !tbaa !305, !alias.scope !307, !noalias !308 %275 = icmp ult i64 %273, %bitcast221, !dbg !1201 %276 = xor i1 %275, true, !dbg !1202 br i1 %276, label %L361, label %L360, !dbg !1202 L360: ; preds = %L353 br label %L364, !dbg !1202 L361: ; preds = %L353 %277 = getelementptr inbounds i8, ptr %"new::Tuple484", i32 0, !dbg !1202 store i64 %272, ptr %277, align 8, !dbg !1202, !tbaa !305, !alias.scope !307, !noalias !308 %278 = addrspacecast ptr %"new::Tuple484" to ptr addrspace(11), !dbg !1202 call void @julia_throw_boundserror_52431(ptr addrspace(10) %18, ptr addrspace(11) nocapture readonly %278) #133, !dbg !1202 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !1202 unreachable, !dbg !1202 L364: ; preds = %L360 br label %L365, !dbg !1202 L365: ; preds = %L364, %L348 %279 = addrspacecast ptr addrspace(10) %18 to ptr addrspace(11), !dbg !1205 %280 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %279, i32 0, i32 0, !dbg !1205 %memoryref_data223 = load ptr, ptr addrspace(11) %280, align 8, !dbg !1205, !tbaa !310, !alias.scope !313, !noalias !314 %281 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %279, i32 0, i32 1, !dbg !1205 %memoryref_mem243 = load ptr addrspace(10), ptr addrspace(11) %281, align 8, !dbg !1205, !tbaa !310, !alias.scope !313, !noalias !314, !dereferenceable_or_null !139, !align !137 %282 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data223, 0, !dbg !1205 %.ref222 = insertvalue { ptr, ptr addrspace(10) } %282, ptr addrspace(10) %memoryref_mem243, 1, !dbg !1205 %memoryref_offset225 = sub i64 %272, 1, !dbg !1205 %283 = addrspacecast ptr addrspace(10) %memoryref_mem243 to ptr addrspace(11), !dbg !1205 %284 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %283, i32 0, i32 0, !dbg !1205 %memory_len226 = load i64, ptr addrspace(11) %284, align 8, !dbg !1205, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %285 = add nuw i64 %memory_len226, %memory_len226, !dbg !1205 %286 = add i64 %memoryref_offset225, %memory_len226, !dbg !1205 %memoryref_ovflw227 = icmp uge i64 %286, %285, !dbg !1205 %memoryref_byteoffset228 = mul i64 %memoryref_offset225, 8, !dbg !1205 %memoryref_data_byteoffset229 = getelementptr i8, ptr %memoryref_data223, i64 %memoryref_byteoffset228, !dbg !1205 %287 = addrspacecast ptr addrspace(10) %memoryref_mem243 to ptr addrspace(11), !dbg !1205 %288 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %287, i32 0, i32 0, !dbg !1205 %memory_len230 = load i64, ptr addrspace(11) %288, align 8, !dbg !1205, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %289 = addrspacecast ptr addrspace(10) %memoryref_mem243 to ptr addrspace(11), !dbg !1205 %memory_data_ptr231 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %289, i32 0, i32 1, !dbg !1205 %memory_data232 = load ptr, ptr addrspace(11) %memory_data_ptr231, align 8, !dbg !1205, !tbaa !318, !alias.scope !313, !noalias !314, !nonnull !0 %290 = ptrtoint ptr %memory_data232 to i64, !dbg !1205 %291 = ptrtoint ptr %memoryref_data_byteoffset229 to i64, !dbg !1205 %292 = sub i64 %291, %290, !dbg !1205 %memoryref_bytelen233 = mul nuw nsw i64 %memory_len230, 8, !dbg !1205 %memoryref_isinbounds234 = icmp ult i64 %292, %memoryref_bytelen233, !dbg !1205 %293 = xor i1 %memoryref_ovflw227, true, !dbg !1205 %"memoryref_isinbounds¬ovflw235" = and i1 %293, %memoryref_isinbounds234, !dbg !1205 br i1 %"memoryref_isinbounds¬ovflw235", label %idxend241, label %oob236, !dbg !1205 L369: ; preds = %load246 br label %L370, !dbg !1205 L370: ; preds = %L369 %294 = sub i64 %value_phi179, 2, !dbg !1178 br i1 false, label %L389, label %L373, !dbg !1168 L373: ; preds = %L370 %295 = getelementptr inbounds i8, ptr %"new::Tuple248", i32 0, !dbg !1168 store i64 %294, ptr %295, align 8, !dbg !1168, !tbaa !305, !alias.scope !307, !noalias !308 %296 = getelementptr inbounds i8, ptr addrspace(11) %"v::SubArray", i32 8, !dbg !1179 %.stop_ptr249 = getelementptr inbounds i8, ptr addrspace(11) %296, i32 8, !dbg !1183 %.stop_ptr249.unbox = load i64, ptr addrspace(11) %.stop_ptr249, align 8, !dbg !1190, !tbaa !125, !alias.scope !128, !noalias !131 %.unbox250 = load i64, ptr addrspace(11) %296, align 8, !dbg !1190, !tbaa !125, !alias.scope !128, !noalias !131 %297 = sub i64 %.stop_ptr249.unbox, %.unbox250, !dbg !1190 %298 = add i64 1, %297, !dbg !1192 %299 = sub i64 %294, 1, !dbg !1193 %300 = icmp ult i64 %299, %298, !dbg !1195 %301 = xor i1 %300, true, !dbg !1167 br i1 %301, label %L386, label %L385, !dbg !1167 L385: ; preds = %L373 br label %L388, !dbg !1167 L386: ; preds = %L373 %302 = getelementptr inbounds i8, ptr %5, i32 0, !dbg !1167 store ptr addrspace(10) %16, ptr %302, align 8, !dbg !1167 %303 = addrspacecast ptr %"new::Tuple248" to ptr addrspace(11), !dbg !1167 call void @julia_throw_boundserror_52557(ptr addrspace(11) nocapture readonly %"v::SubArray", ptr nocapture readonly %5, ptr addrspace(11) nocapture readonly %303) #133, !dbg !1167 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !1167 unreachable, !dbg !1167 L388: ; preds = %L385 br label %L389, !dbg !1167 L389: ; preds = %L388, %L370 %304 = getelementptr inbounds i8, ptr addrspace(11) %"v::SubArray", i32 24, !dbg !1196 %.unbox251 = load i64, ptr addrspace(11) %304, align 8, !dbg !1199, !tbaa !125, !alias.scope !128, !noalias !131 %305 = add i64 %.unbox251, %294, !dbg !1199 br i1 false, label %L406, label %L394, !dbg !1200 L394: ; preds = %L389 %306 = sub i64 %305, 1, !dbg !1201 %307 = addrspacecast ptr addrspace(10) %16 to ptr addrspace(11), !dbg !1203 %.size_ptr252 = getelementptr inbounds i8, ptr addrspace(11) %307, i32 16, !dbg !1203 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %.size253, ptr addrspace(11) align 8 %.size_ptr252, i64 8, i1 false), !dbg !1203, !tbaa !140, !alias.scope !303, !noalias !304 %bitcast254 = load i64, ptr %.size253, align 8, !dbg !1201, !tbaa !305, !alias.scope !307, !noalias !308 %308 = icmp ult i64 %306, %bitcast254, !dbg !1201 %309 = xor i1 %308, true, !dbg !1202 br i1 %309, label %L402, label %L401, !dbg !1202 L401: ; preds = %L394 br label %L405, !dbg !1202 L402: ; preds = %L394 %310 = getelementptr inbounds i8, ptr %"new::Tuple479", i32 0, !dbg !1202 store i64 %305, ptr %310, align 8, !dbg !1202, !tbaa !305, !alias.scope !307, !noalias !308 %311 = addrspacecast ptr %"new::Tuple479" to ptr addrspace(11), !dbg !1202 call void @julia_throw_boundserror_52431(ptr addrspace(10) %16, ptr addrspace(11) nocapture readonly %311) #133, !dbg !1202 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !1202 unreachable, !dbg !1202 L405: ; preds = %L401 br label %L406, !dbg !1202 L406: ; preds = %L405, %L389 %312 = addrspacecast ptr addrspace(10) %16 to ptr addrspace(11), !dbg !1205 %313 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %312, i32 0, i32 0, !dbg !1205 %memoryref_data256 = load ptr, ptr addrspace(11) %313, align 8, !dbg !1205, !tbaa !310, !alias.scope !313, !noalias !314 %314 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %312, i32 0, i32 1, !dbg !1205 %memoryref_mem276 = load ptr addrspace(10), ptr addrspace(11) %314, align 8, !dbg !1205, !tbaa !310, !alias.scope !313, !noalias !314, !dereferenceable_or_null !139, !align !137 %315 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data256, 0, !dbg !1205 %.ref255 = insertvalue { ptr, ptr addrspace(10) } %315, ptr addrspace(10) %memoryref_mem276, 1, !dbg !1205 %memoryref_offset258 = sub i64 %305, 1, !dbg !1205 %316 = addrspacecast ptr addrspace(10) %memoryref_mem276 to ptr addrspace(11), !dbg !1205 %317 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %316, i32 0, i32 0, !dbg !1205 %memory_len259 = load i64, ptr addrspace(11) %317, align 8, !dbg !1205, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %318 = add nuw i64 %memory_len259, %memory_len259, !dbg !1205 %319 = add i64 %memoryref_offset258, %memory_len259, !dbg !1205 %memoryref_ovflw260 = icmp uge i64 %319, %318, !dbg !1205 %memoryref_byteoffset261 = mul i64 %memoryref_offset258, 8, !dbg !1205 %memoryref_data_byteoffset262 = getelementptr i8, ptr %memoryref_data256, i64 %memoryref_byteoffset261, !dbg !1205 %320 = addrspacecast ptr addrspace(10) %memoryref_mem276 to ptr addrspace(11), !dbg !1205 %321 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %320, i32 0, i32 0, !dbg !1205 %memory_len263 = load i64, ptr addrspace(11) %321, align 8, !dbg !1205, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %322 = addrspacecast ptr addrspace(10) %memoryref_mem276 to ptr addrspace(11), !dbg !1205 %memory_data_ptr264 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %322, i32 0, i32 1, !dbg !1205 %memory_data265 = load ptr, ptr addrspace(11) %memory_data_ptr264, align 8, !dbg !1205, !tbaa !318, !alias.scope !313, !noalias !314, !nonnull !0 %323 = ptrtoint ptr %memory_data265 to i64, !dbg !1205 %324 = ptrtoint ptr %memoryref_data_byteoffset262 to i64, !dbg !1205 %325 = sub i64 %324, %323, !dbg !1205 %memoryref_bytelen266 = mul nuw nsw i64 %memory_len263, 8, !dbg !1205 %memoryref_isinbounds267 = icmp ult i64 %325, %memoryref_bytelen266, !dbg !1205 %326 = xor i1 %memoryref_ovflw260, true, !dbg !1205 %"memoryref_isinbounds¬ovflw268" = and i1 %326, %memoryref_isinbounds267, !dbg !1205 br i1 %"memoryref_isinbounds¬ovflw268", label %idxend274, label %oob269, !dbg !1205 L410: ; preds = %load279 br label %L411, !dbg !1205 L411: ; preds = %L410 %327 = fmul double %612, %623, !dbg !1206 %328 = fsub double %260, %327, !dbg !1207 %329 = sub i64 %value_phi179, 1, !dbg !1178 br i1 false, label %L433, label %L417, !dbg !1168 L417: ; preds = %L411 %330 = getelementptr inbounds i8, ptr %"new::Tuple281", i32 0, !dbg !1168 store i64 %329, ptr %330, align 8, !dbg !1168, !tbaa !305, !alias.scope !307, !noalias !308 %331 = getelementptr inbounds i8, ptr addrspace(11) %"H::HollowSymTridiagonal", i32 8, !dbg !1179 %.stop_ptr282 = getelementptr inbounds i8, ptr addrspace(11) %331, i32 8, !dbg !1183 %.stop_ptr282.unbox = load i64, ptr addrspace(11) %.stop_ptr282, align 8, !dbg !1190, !tbaa !125, !alias.scope !128, !noalias !131 %.unbox283 = load i64, ptr addrspace(11) %331, align 8, !dbg !1190, !tbaa !125, !alias.scope !128, !noalias !131 %332 = sub i64 %.stop_ptr282.unbox, %.unbox283, !dbg !1190 %333 = add i64 1, %332, !dbg !1192 %334 = sub i64 %329, 1, !dbg !1193 %335 = icmp ult i64 %334, %333, !dbg !1195 %336 = xor i1 %335, true, !dbg !1167 br i1 %336, label %L430, label %L429, !dbg !1167 L429: ; preds = %L417 br label %L432, !dbg !1167 L430: ; preds = %L417 %337 = getelementptr inbounds i8, ptr %4, i32 0, !dbg !1167 store ptr addrspace(10) %18, ptr %337, align 8, !dbg !1167 %338 = addrspacecast ptr %"new::Tuple281" to ptr addrspace(11), !dbg !1167 call void @julia_throw_boundserror_52557(ptr addrspace(11) nocapture readonly %"H::HollowSymTridiagonal", ptr nocapture readonly %4, ptr addrspace(11) nocapture readonly %338) #133, !dbg !1167 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !1167 unreachable, !dbg !1167 L432: ; preds = %L429 br label %L433, !dbg !1167 L433: ; preds = %L432, %L411 %339 = getelementptr inbounds i8, ptr addrspace(11) %"H::HollowSymTridiagonal", i32 24, !dbg !1196 %.unbox284 = load i64, ptr addrspace(11) %339, align 8, !dbg !1199, !tbaa !125, !alias.scope !128, !noalias !131 %340 = add i64 %.unbox284, %329, !dbg !1199 br i1 false, label %L450, label %L438, !dbg !1200 L438: ; preds = %L433 %341 = sub i64 %340, 1, !dbg !1201 %342 = addrspacecast ptr addrspace(10) %18 to ptr addrspace(11), !dbg !1203 %.size_ptr285 = getelementptr inbounds i8, ptr addrspace(11) %342, i32 16, !dbg !1203 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %.size286, ptr addrspace(11) align 8 %.size_ptr285, i64 8, i1 false), !dbg !1203, !tbaa !140, !alias.scope !303, !noalias !304 %bitcast287 = load i64, ptr %.size286, align 8, !dbg !1201, !tbaa !305, !alias.scope !307, !noalias !308 %343 = icmp ult i64 %341, %bitcast287, !dbg !1201 %344 = xor i1 %343, true, !dbg !1202 br i1 %344, label %L446, label %L445, !dbg !1202 L445: ; preds = %L438 br label %L449, !dbg !1202 L446: ; preds = %L438 %345 = getelementptr inbounds i8, ptr %"new::Tuple474", i32 0, !dbg !1202 store i64 %340, ptr %345, align 8, !dbg !1202, !tbaa !305, !alias.scope !307, !noalias !308 %346 = addrspacecast ptr %"new::Tuple474" to ptr addrspace(11), !dbg !1202 call void @julia_throw_boundserror_52431(ptr addrspace(10) %18, ptr addrspace(11) nocapture readonly %346) #133, !dbg !1202 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !1202 unreachable, !dbg !1202 L449: ; preds = %L445 br label %L450, !dbg !1202 L450: ; preds = %L449, %L433 %347 = addrspacecast ptr addrspace(10) %18 to ptr addrspace(11), !dbg !1205 %348 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %347, i32 0, i32 0, !dbg !1205 %memoryref_data289 = load ptr, ptr addrspace(11) %348, align 8, !dbg !1205, !tbaa !310, !alias.scope !313, !noalias !314 %349 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %347, i32 0, i32 1, !dbg !1205 %memoryref_mem309 = load ptr addrspace(10), ptr addrspace(11) %349, align 8, !dbg !1205, !tbaa !310, !alias.scope !313, !noalias !314, !dereferenceable_or_null !139, !align !137 %350 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data289, 0, !dbg !1205 %.ref288 = insertvalue { ptr, ptr addrspace(10) } %350, ptr addrspace(10) %memoryref_mem309, 1, !dbg !1205 %memoryref_offset291 = sub i64 %340, 1, !dbg !1205 %351 = addrspacecast ptr addrspace(10) %memoryref_mem309 to ptr addrspace(11), !dbg !1205 %352 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %351, i32 0, i32 0, !dbg !1205 %memory_len292 = load i64, ptr addrspace(11) %352, align 8, !dbg !1205, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %353 = add nuw i64 %memory_len292, %memory_len292, !dbg !1205 %354 = add i64 %memoryref_offset291, %memory_len292, !dbg !1205 %memoryref_ovflw293 = icmp uge i64 %354, %353, !dbg !1205 %memoryref_byteoffset294 = mul i64 %memoryref_offset291, 8, !dbg !1205 %memoryref_data_byteoffset295 = getelementptr i8, ptr %memoryref_data289, i64 %memoryref_byteoffset294, !dbg !1205 %355 = addrspacecast ptr addrspace(10) %memoryref_mem309 to ptr addrspace(11), !dbg !1205 %356 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %355, i32 0, i32 0, !dbg !1205 %memory_len296 = load i64, ptr addrspace(11) %356, align 8, !dbg !1205, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %357 = addrspacecast ptr addrspace(10) %memoryref_mem309 to ptr addrspace(11), !dbg !1205 %memory_data_ptr297 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %357, i32 0, i32 1, !dbg !1205 %memory_data298 = load ptr, ptr addrspace(11) %memory_data_ptr297, align 8, !dbg !1205, !tbaa !318, !alias.scope !313, !noalias !314, !nonnull !0 %358 = ptrtoint ptr %memory_data298 to i64, !dbg !1205 %359 = ptrtoint ptr %memoryref_data_byteoffset295 to i64, !dbg !1205 %360 = sub i64 %359, %358, !dbg !1205 %memoryref_bytelen299 = mul nuw nsw i64 %memory_len296, 8, !dbg !1205 %memoryref_isinbounds300 = icmp ult i64 %360, %memoryref_bytelen299, !dbg !1205 %361 = xor i1 %memoryref_ovflw293, true, !dbg !1205 %"memoryref_isinbounds¬ovflw301" = and i1 %361, %memoryref_isinbounds300, !dbg !1205 br i1 %"memoryref_isinbounds¬ovflw301", label %idxend307, label %oob302, !dbg !1205 L454: ; preds = %load312 br label %L455, !dbg !1205 L455: ; preds = %L454 %362 = fdiv double %328, %634, !dbg !1209 br i1 false, label %L474, label %L458, !dbg !1210 L458: ; preds = %L455 %363 = getelementptr inbounds i8, ptr %"new::Tuple314", i32 0, !dbg !1210 store i64 %value_phi179, ptr %363, align 8, !dbg !1210, !tbaa !305, !alias.scope !307, !noalias !308 %364 = getelementptr inbounds i8, ptr addrspace(11) %"v::SubArray", i32 8, !dbg !1211 %.stop_ptr315 = getelementptr inbounds i8, ptr addrspace(11) %364, i32 8, !dbg !1216 %.stop_ptr315.unbox = load i64, ptr addrspace(11) %.stop_ptr315, align 8, !dbg !1223, !tbaa !125, !alias.scope !128, !noalias !131 %.unbox316 = load i64, ptr addrspace(11) %364, align 8, !dbg !1223, !tbaa !125, !alias.scope !128, !noalias !131 %365 = sub i64 %.stop_ptr315.unbox, %.unbox316, !dbg !1223 %366 = add i64 1, %365, !dbg !1225 %367 = sub i64 %value_phi179, 1, !dbg !1226 %368 = icmp ult i64 %367, %366, !dbg !1228 %369 = xor i1 %368, true, !dbg !1215 br i1 %369, label %L471, label %L470, !dbg !1215 L470: ; preds = %L458 br label %L473, !dbg !1215 L471: ; preds = %L458 %370 = getelementptr inbounds i8, ptr %3, i32 0, !dbg !1215 store ptr addrspace(10) %16, ptr %370, align 8, !dbg !1215 %371 = addrspacecast ptr %"new::Tuple314" to ptr addrspace(11), !dbg !1215 call void @julia_throw_boundserror_52557(ptr addrspace(11) nocapture readonly %"v::SubArray", ptr nocapture readonly %3, ptr addrspace(11) nocapture readonly %371) #133, !dbg !1215 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !1215 unreachable, !dbg !1215 L473: ; preds = %L470 br label %L474, !dbg !1215 L474: ; preds = %L473, %L455 %372 = getelementptr inbounds i8, ptr addrspace(11) %"v::SubArray", i32 24, !dbg !1229 %.unbox317 = load i64, ptr addrspace(11) %372, align 8, !dbg !1232, !tbaa !125, !alias.scope !128, !noalias !131 %373 = add i64 %.unbox317, %value_phi179, !dbg !1232 br i1 false, label %L490, label %L479, !dbg !1233 L479: ; preds = %L474 %374 = sub i64 %373, 1, !dbg !1235 %375 = addrspacecast ptr addrspace(10) %16 to ptr addrspace(11), !dbg !1236 %.size_ptr318 = getelementptr inbounds i8, ptr addrspace(11) %375, i32 16, !dbg !1236 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %.size319, ptr addrspace(11) align 8 %.size_ptr318, i64 8, i1 false), !dbg !1236, !tbaa !140, !alias.scope !303, !noalias !304 %bitcast320 = load i64, ptr %.size319, align 8, !dbg !1235, !tbaa !305, !alias.scope !307, !noalias !308 %376 = icmp ult i64 %374, %bitcast320, !dbg !1235 %377 = xor i1 %376, true, !dbg !1233 br i1 %377, label %L487, label %L486, !dbg !1233 L486: ; preds = %L479 br label %L490, !dbg !1233 L487: ; preds = %L479 %378 = getelementptr inbounds i8, ptr %"new::Tuple469", i32 0, !dbg !1233 store i64 %373, ptr %378, align 8, !dbg !1233, !tbaa !305, !alias.scope !307, !noalias !308 %379 = addrspacecast ptr %"new::Tuple469" to ptr addrspace(11), !dbg !1233 call void @julia_throw_boundserror_52431(ptr addrspace(10) %16, ptr addrspace(11) nocapture readonly %379) #133, !dbg !1233 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !1233 unreachable, !dbg !1233 L490: ; preds = %L486, %L474 %380 = addrspacecast ptr addrspace(10) %16 to ptr addrspace(11), !dbg !1238 %381 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %380, i32 0, i32 0, !dbg !1238 %memoryref_data322 = load ptr, ptr addrspace(11) %381, align 8, !dbg !1238, !tbaa !310, !alias.scope !313, !noalias !314 %382 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %380, i32 0, i32 1, !dbg !1238 %memoryref_mem342 = load ptr addrspace(10), ptr addrspace(11) %382, align 8, !dbg !1238, !tbaa !310, !alias.scope !313, !noalias !314, !dereferenceable_or_null !139, !align !137 %383 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data322, 0, !dbg !1238 %.ref321 = insertvalue { ptr, ptr addrspace(10) } %383, ptr addrspace(10) %memoryref_mem342, 1, !dbg !1238 %memoryref_offset324 = sub i64 %373, 1, !dbg !1239 %384 = addrspacecast ptr addrspace(10) %memoryref_mem342 to ptr addrspace(11), !dbg !1239 %385 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %384, i32 0, i32 0, !dbg !1239 %memory_len325 = load i64, ptr addrspace(11) %385, align 8, !dbg !1239, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %386 = add nuw i64 %memory_len325, %memory_len325, !dbg !1239 %387 = add i64 %memoryref_offset324, %memory_len325, !dbg !1239 %memoryref_ovflw326 = icmp uge i64 %387, %386, !dbg !1239 %memoryref_byteoffset327 = mul i64 %memoryref_offset324, 8, !dbg !1239 %memoryref_data_byteoffset328 = getelementptr i8, ptr %memoryref_data322, i64 %memoryref_byteoffset327, !dbg !1239 %388 = addrspacecast ptr addrspace(10) %memoryref_mem342 to ptr addrspace(11), !dbg !1239 %389 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %388, i32 0, i32 0, !dbg !1239 %memory_len329 = load i64, ptr addrspace(11) %389, align 8, !dbg !1239, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %390 = addrspacecast ptr addrspace(10) %memoryref_mem342 to ptr addrspace(11), !dbg !1239 %memory_data_ptr330 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %390, i32 0, i32 1, !dbg !1239 %memory_data331 = load ptr, ptr addrspace(11) %memory_data_ptr330, align 8, !dbg !1239, !tbaa !318, !alias.scope !313, !noalias !314, !nonnull !0 %391 = ptrtoint ptr %memory_data331 to i64, !dbg !1239 %392 = ptrtoint ptr %memoryref_data_byteoffset328 to i64, !dbg !1239 %393 = sub i64 %392, %391, !dbg !1239 %memoryref_bytelen332 = mul nuw nsw i64 %memory_len329, 8, !dbg !1239 %memoryref_isinbounds333 = icmp ult i64 %393, %memoryref_bytelen332, !dbg !1239 %394 = xor i1 %memoryref_ovflw326, true, !dbg !1239 %"memoryref_isinbounds¬ovflw334" = and i1 %394, %memoryref_isinbounds333, !dbg !1239 br i1 %"memoryref_isinbounds¬ovflw334", label %idxend340, label %oob335, !dbg !1239 L494: ; preds = %load345 br label %L495, !dbg !1234 L495: ; preds = %L494 br label %L496, !dbg !1234 L496: ; preds = %L495 br i1 false, label %L514, label %L498, !dbg !1240 L498: ; preds = %L496 %395 = getelementptr inbounds i8, ptr %"new::Tuple347", i32 0, !dbg !1240 store i64 %value_phi179, ptr %395, align 8, !dbg !1240, !tbaa !305, !alias.scope !307, !noalias !308 %396 = getelementptr inbounds i8, ptr addrspace(11) %"v::SubArray", i32 8, !dbg !1242 %.stop_ptr348 = getelementptr inbounds i8, ptr addrspace(11) %396, i32 8, !dbg !1247 %.stop_ptr348.unbox = load i64, ptr addrspace(11) %.stop_ptr348, align 8, !dbg !1254, !tbaa !125, !alias.scope !128, !noalias !131 %.unbox349 = load i64, ptr addrspace(11) %396, align 8, !dbg !1254, !tbaa !125, !alias.scope !128, !noalias !131 %397 = sub i64 %.stop_ptr348.unbox, %.unbox349, !dbg !1254 %398 = add i64 1, %397, !dbg !1256 %399 = sub i64 %value_phi179, 1, !dbg !1257 %400 = icmp ult i64 %399, %398, !dbg !1259 %401 = xor i1 %400, true, !dbg !1246 br i1 %401, label %L511, label %L510, !dbg !1246 L510: ; preds = %L498 br label %L513, !dbg !1246 L511: ; preds = %L498 %402 = getelementptr inbounds i8, ptr %2, i32 0, !dbg !1246 store ptr addrspace(10) %16, ptr %402, align 8, !dbg !1246 %403 = addrspacecast ptr %"new::Tuple347" to ptr addrspace(11), !dbg !1246 call void @julia_throw_boundserror_52557(ptr addrspace(11) nocapture readonly %"v::SubArray", ptr nocapture readonly %2, ptr addrspace(11) nocapture readonly %403) #133, !dbg !1246 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !1246 unreachable, !dbg !1246 L513: ; preds = %L510 br label %L514, !dbg !1246 L514: ; preds = %L513, %L496 %404 = getelementptr inbounds i8, ptr addrspace(11) %"v::SubArray", i32 24, !dbg !1260 %.unbox350 = load i64, ptr addrspace(11) %404, align 8, !dbg !1263, !tbaa !125, !alias.scope !128, !noalias !131 %405 = add i64 %.unbox350, %value_phi179, !dbg !1263 br i1 false, label %L531, label %L519, !dbg !1264 L519: ; preds = %L514 %406 = sub i64 %405, 1, !dbg !1265 %407 = addrspacecast ptr addrspace(10) %16 to ptr addrspace(11), !dbg !1267 %.size_ptr351 = getelementptr inbounds i8, ptr addrspace(11) %407, i32 16, !dbg !1267 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %.size352, ptr addrspace(11) align 8 %.size_ptr351, i64 8, i1 false), !dbg !1267, !tbaa !140, !alias.scope !303, !noalias !304 %bitcast353 = load i64, ptr %.size352, align 8, !dbg !1265, !tbaa !305, !alias.scope !307, !noalias !308 %408 = icmp ult i64 %406, %bitcast353, !dbg !1265 %409 = xor i1 %408, true, !dbg !1266 br i1 %409, label %L527, label %L526, !dbg !1266 L526: ; preds = %L519 br label %L530, !dbg !1266 L527: ; preds = %L519 %410 = getelementptr inbounds i8, ptr %"new::Tuple464", i32 0, !dbg !1266 store i64 %405, ptr %410, align 8, !dbg !1266, !tbaa !305, !alias.scope !307, !noalias !308 %411 = addrspacecast ptr %"new::Tuple464" to ptr addrspace(11), !dbg !1266 call void @julia_throw_boundserror_52431(ptr addrspace(10) %16, ptr addrspace(11) nocapture readonly %411) #133, !dbg !1266 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !1266 unreachable, !dbg !1266 L530: ; preds = %L526 br label %L531, !dbg !1266 L531: ; preds = %L530, %L514 %412 = addrspacecast ptr addrspace(10) %16 to ptr addrspace(11), !dbg !1269 %413 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %412, i32 0, i32 0, !dbg !1269 %memoryref_data355 = load ptr, ptr addrspace(11) %413, align 8, !dbg !1269, !tbaa !310, !alias.scope !313, !noalias !314 %414 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %412, i32 0, i32 1, !dbg !1269 %memoryref_mem375 = load ptr addrspace(10), ptr addrspace(11) %414, align 8, !dbg !1269, !tbaa !310, !alias.scope !313, !noalias !314, !dereferenceable_or_null !139, !align !137 %415 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data355, 0, !dbg !1269 %.ref354 = insertvalue { ptr, ptr addrspace(10) } %415, ptr addrspace(10) %memoryref_mem375, 1, !dbg !1269 %memoryref_offset357 = sub i64 %405, 1, !dbg !1269 %416 = addrspacecast ptr addrspace(10) %memoryref_mem375 to ptr addrspace(11), !dbg !1269 %417 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %416, i32 0, i32 0, !dbg !1269 %memory_len358 = load i64, ptr addrspace(11) %417, align 8, !dbg !1269, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %418 = add nuw i64 %memory_len358, %memory_len358, !dbg !1269 %419 = add i64 %memoryref_offset357, %memory_len358, !dbg !1269 %memoryref_ovflw359 = icmp uge i64 %419, %418, !dbg !1269 %memoryref_byteoffset360 = mul i64 %memoryref_offset357, 8, !dbg !1269 %memoryref_data_byteoffset361 = getelementptr i8, ptr %memoryref_data355, i64 %memoryref_byteoffset360, !dbg !1269 %420 = addrspacecast ptr addrspace(10) %memoryref_mem375 to ptr addrspace(11), !dbg !1269 %421 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %420, i32 0, i32 0, !dbg !1269 %memory_len362 = load i64, ptr addrspace(11) %421, align 8, !dbg !1269, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %422 = addrspacecast ptr addrspace(10) %memoryref_mem375 to ptr addrspace(11), !dbg !1269 %memory_data_ptr363 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %422, i32 0, i32 1, !dbg !1269 %memory_data364 = load ptr, ptr addrspace(11) %memory_data_ptr363, align 8, !dbg !1269, !tbaa !318, !alias.scope !313, !noalias !314, !nonnull !0 %423 = ptrtoint ptr %memory_data364 to i64, !dbg !1269 %424 = ptrtoint ptr %memoryref_data_byteoffset361 to i64, !dbg !1269 %425 = sub i64 %424, %423, !dbg !1269 %memoryref_bytelen365 = mul nuw nsw i64 %memory_len362, 8, !dbg !1269 %memoryref_isinbounds366 = icmp ult i64 %425, %memoryref_bytelen365, !dbg !1269 %426 = xor i1 %memoryref_ovflw359, true, !dbg !1269 %"memoryref_isinbounds¬ovflw367" = and i1 %426, %memoryref_isinbounds366, !dbg !1269 br i1 %"memoryref_isinbounds¬ovflw367", label %idxend373, label %oob368, !dbg !1269 L535: ; preds = %load378 br label %L536, !dbg !1269 L536: ; preds = %L535 %427 = fmul double %655, %655, !dbg !1270 %428 = fadd double %value_phi181, %427, !dbg !1272 %429 = icmp eq i64 %value_phi180, %value_phi, !dbg !1273 %430 = xor i1 %429, true, !dbg !1176 br i1 %430, label %L541, label %L540, !dbg !1176 L540: ; preds = %L536 br label %L543, !dbg !1176 L541: ; preds = %L536 %431 = add i64 %value_phi180, 1, !dbg !1274 br label %L543, !dbg !1176 L543: ; preds = %L541, %L540 %value_phi380 = phi i64 [ %431, %L541 ], [ undef, %L540 ] %value_phi381 = phi i64 [ %431, %L541 ], [ undef, %L540 ] %value_phi382 = phi i8 [ 1, %L540 ], [ 0, %L541 ] %432 = trunc i8 %value_phi382 to i1, !dbg !1177 %433 = xor i1 %432, true, !dbg !1177 %434 = xor i1 %433, true, !dbg !1177 br i1 %434, label %L543.L549_crit_edge, label %L548, !dbg !1177 L543.L549_crit_edge: ; preds = %L543 br label %L549, !dbg !1176 L548: ; preds = %L543 br label %L283, !dbg !1174 L549: ; preds = %L278.L549_crit_edge, %L543.L549_crit_edge %value_phi383 = phi double [ %428, %L543.L549_crit_edge ], [ %219, %L278.L549_crit_edge ] %435 = call double @julia_sqrt_52573(double %value_phi383), !dbg !1276 %436 = fdiv double 1.000000e+00, %435, !dbg !1277 %437 = fcmp oeq double %436, 1.000000e+00, !dbg !1280 %438 = xor i1 %437, true, !dbg !1284 br i1 %438, label %L555, label %L554, !dbg !1284 L554: ; preds = %L549 br label %L666, !dbg !1284 L555: ; preds = %L549 %439 = getelementptr inbounds i8, ptr addrspace(11) %"v::SubArray", i32 8, !dbg !1287 %.stop_ptr384 = getelementptr inbounds i8, ptr addrspace(11) %439, i32 8, !dbg !1294 %.stop_ptr384.unbox = load i64, ptr addrspace(11) %.stop_ptr384, align 8, !dbg !1301, !tbaa !125, !alias.scope !128, !noalias !131 %.unbox385 = load i64, ptr addrspace(11) %439, align 8, !dbg !1301, !tbaa !125, !alias.scope !128, !noalias !131 %440 = sub i64 %.stop_ptr384.unbox, %.unbox385, !dbg !1301 %441 = add i64 1, %440, !dbg !1303 %442 = getelementptr inbounds i8, ptr %"new::OneTo", i32 0, !dbg !1304 store i64 %441, ptr %442, align 8, !dbg !1304, !tbaa !305, !alias.scope !307, !noalias !308 %443 = icmp slt i64 0, %441, !dbg !1308 %444 = xor i1 %443, true, !dbg !1309 br i1 %444, label %L665, label %L564, !dbg !1309 L564: ; preds = %L555 br label %L565, !dbg !1176 L565: ; preds = %L662, %L564 %value_phi386 = phi i64 [ 0, %L564 ], [ %519, %L662 ] %445 = icmp slt i64 %value_phi386, %441, !dbg !1310 %446 = xor i1 %445, true, !dbg !1311 br i1 %446, label %L665, label %L568, !dbg !1311 L568: ; preds = %L565 %447 = add i64 %value_phi386, 1, !dbg !1312 br i1 false, label %L578, label %L571, !dbg !1316 L571: ; preds = %L568 %448 = getelementptr inbounds i8, ptr %"new::Tuple387", i32 0, !dbg !1316 store i64 %447, ptr %448, align 8, !dbg !1316, !tbaa !305, !alias.scope !307, !noalias !308 %449 = sub i64 %447, 1, !dbg !1320 %450 = icmp ult i64 %449, %441, !dbg !1324 %451 = xor i1 %450, true, !dbg !1323 br i1 %451, label %L579, label %L577, !dbg !1323 L577: ; preds = %L571 br label %L578, !dbg !1323 L578: ; preds = %L577, %L568 br label %L581, !dbg !1323 L579: ; preds = %L571 %452 = addrspacecast ptr %"new::OneTo" to ptr addrspace(11), !dbg !1323 %453 = addrspacecast ptr %"new::Tuple387" to ptr addrspace(11), !dbg !1323 call void @julia_throw_boundserror_52570(ptr addrspace(11) nocapture readonly %452, ptr addrspace(11) nocapture readonly %453) #133, !dbg !1323 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !1323 unreachable, !dbg !1323 L581: ; preds = %L578 br i1 false, label %L599, label %L583, !dbg !1325 L583: ; preds = %L581 %454 = getelementptr inbounds i8, ptr %"new::Tuple388", i32 0, !dbg !1325 store i64 %447, ptr %454, align 8, !dbg !1325, !tbaa !305, !alias.scope !307, !noalias !308 %455 = getelementptr inbounds i8, ptr addrspace(11) %"v::SubArray", i32 8, !dbg !1329 %.stop_ptr389 = getelementptr inbounds i8, ptr addrspace(11) %455, i32 8, !dbg !1334 %.stop_ptr389.unbox = load i64, ptr addrspace(11) %.stop_ptr389, align 8, !dbg !1341, !tbaa !125, !alias.scope !128, !noalias !131 %.unbox390 = load i64, ptr addrspace(11) %455, align 8, !dbg !1341, !tbaa !125, !alias.scope !128, !noalias !131 %456 = sub i64 %.stop_ptr389.unbox, %.unbox390, !dbg !1341 %457 = add i64 1, %456, !dbg !1343 %458 = sub i64 %447, 1, !dbg !1344 %459 = icmp ult i64 %458, %457, !dbg !1346 %460 = xor i1 %459, true, !dbg !1333 br i1 %460, label %L596, label %L595, !dbg !1333 L595: ; preds = %L583 br label %L598, !dbg !1333 L596: ; preds = %L583 %461 = getelementptr inbounds i8, ptr %1, i32 0, !dbg !1333 store ptr addrspace(10) %16, ptr %461, align 8, !dbg !1333 %462 = addrspacecast ptr %"new::Tuple388" to ptr addrspace(11), !dbg !1333 call void @julia_throw_boundserror_52557(ptr addrspace(11) nocapture readonly %"v::SubArray", ptr nocapture readonly %1, ptr addrspace(11) nocapture readonly %462) #133, !dbg !1333 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !1333 unreachable, !dbg !1333 L598: ; preds = %L595 br label %L599, !dbg !1333 L599: ; preds = %L598, %L581 %463 = getelementptr inbounds i8, ptr addrspace(11) %"v::SubArray", i32 24, !dbg !1347 %.unbox391 = load i64, ptr addrspace(11) %463, align 8, !dbg !1350, !tbaa !125, !alias.scope !128, !noalias !131 %464 = add i64 %.unbox391, %447, !dbg !1350 br i1 false, label %L616, label %L604, !dbg !1351 L604: ; preds = %L599 %465 = sub i64 %464, 1, !dbg !1352 %466 = addrspacecast ptr addrspace(10) %16 to ptr addrspace(11), !dbg !1354 %.size_ptr392 = getelementptr inbounds i8, ptr addrspace(11) %466, i32 16, !dbg !1354 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %.size393, ptr addrspace(11) align 8 %.size_ptr392, i64 8, i1 false), !dbg !1354, !tbaa !140, !alias.scope !303, !noalias !304 %bitcast394 = load i64, ptr %.size393, align 8, !dbg !1352, !tbaa !305, !alias.scope !307, !noalias !308 %467 = icmp ult i64 %465, %bitcast394, !dbg !1352 %468 = xor i1 %467, true, !dbg !1353 br i1 %468, label %L612, label %L611, !dbg !1353 L611: ; preds = %L604 br label %L615, !dbg !1353 L612: ; preds = %L604 %469 = getelementptr inbounds i8, ptr %"new::Tuple457", i32 0, !dbg !1353 store i64 %464, ptr %469, align 8, !dbg !1353, !tbaa !305, !alias.scope !307, !noalias !308 %470 = addrspacecast ptr %"new::Tuple457" to ptr addrspace(11), !dbg !1353 call void @julia_throw_boundserror_52431(ptr addrspace(10) %16, ptr addrspace(11) nocapture readonly %470) #133, !dbg !1353 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !1353 unreachable, !dbg !1353 L615: ; preds = %L611 br label %L616, !dbg !1353 L616: ; preds = %L615, %L599 %471 = addrspacecast ptr addrspace(10) %16 to ptr addrspace(11), !dbg !1356 %472 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %471, i32 0, i32 0, !dbg !1356 %memoryref_data396 = load ptr, ptr addrspace(11) %472, align 8, !dbg !1356, !tbaa !310, !alias.scope !313, !noalias !314 %473 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %471, i32 0, i32 1, !dbg !1356 %memoryref_mem416 = load ptr addrspace(10), ptr addrspace(11) %473, align 8, !dbg !1356, !tbaa !310, !alias.scope !313, !noalias !314, !dereferenceable_or_null !139, !align !137 %474 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data396, 0, !dbg !1356 %.ref395 = insertvalue { ptr, ptr addrspace(10) } %474, ptr addrspace(10) %memoryref_mem416, 1, !dbg !1356 %memoryref_offset398 = sub i64 %464, 1, !dbg !1356 %475 = addrspacecast ptr addrspace(10) %memoryref_mem416 to ptr addrspace(11), !dbg !1356 %476 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %475, i32 0, i32 0, !dbg !1356 %memory_len399 = load i64, ptr addrspace(11) %476, align 8, !dbg !1356, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %477 = add nuw i64 %memory_len399, %memory_len399, !dbg !1356 %478 = add i64 %memoryref_offset398, %memory_len399, !dbg !1356 %memoryref_ovflw400 = icmp uge i64 %478, %477, !dbg !1356 %memoryref_byteoffset401 = mul i64 %memoryref_offset398, 8, !dbg !1356 %memoryref_data_byteoffset402 = getelementptr i8, ptr %memoryref_data396, i64 %memoryref_byteoffset401, !dbg !1356 %479 = addrspacecast ptr addrspace(10) %memoryref_mem416 to ptr addrspace(11), !dbg !1356 %480 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %479, i32 0, i32 0, !dbg !1356 %memory_len403 = load i64, ptr addrspace(11) %480, align 8, !dbg !1356, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %481 = addrspacecast ptr addrspace(10) %memoryref_mem416 to ptr addrspace(11), !dbg !1356 %memory_data_ptr404 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %481, i32 0, i32 1, !dbg !1356 %memory_data405 = load ptr, ptr addrspace(11) %memory_data_ptr404, align 8, !dbg !1356, !tbaa !318, !alias.scope !313, !noalias !314, !nonnull !0 %482 = ptrtoint ptr %memory_data405 to i64, !dbg !1356 %483 = ptrtoint ptr %memoryref_data_byteoffset402 to i64, !dbg !1356 %484 = sub i64 %483, %482, !dbg !1356 %memoryref_bytelen406 = mul nuw nsw i64 %memory_len403, 8, !dbg !1356 %memoryref_isinbounds407 = icmp ult i64 %484, %memoryref_bytelen406, !dbg !1356 %485 = xor i1 %memoryref_ovflw400, true, !dbg !1356 %"memoryref_isinbounds¬ovflw408" = and i1 %485, %memoryref_isinbounds407, !dbg !1356 br i1 %"memoryref_isinbounds¬ovflw408", label %idxend414, label %oob409, !dbg !1356 L620: ; preds = %load419 br label %L621, !dbg !1356 L621: ; preds = %L620 %486 = fmul double %666, %436, !dbg !1357 br i1 false, label %L640, label %L624, !dbg !1358 L624: ; preds = %L621 %487 = getelementptr inbounds i8, ptr %"new::Tuple421", i32 0, !dbg !1358 store i64 %447, ptr %487, align 8, !dbg !1358, !tbaa !305, !alias.scope !307, !noalias !308 %488 = getelementptr inbounds i8, ptr addrspace(11) %"v::SubArray", i32 8, !dbg !1359 %.stop_ptr422 = getelementptr inbounds i8, ptr addrspace(11) %488, i32 8, !dbg !1364 %.stop_ptr422.unbox = load i64, ptr addrspace(11) %.stop_ptr422, align 8, !dbg !1371, !tbaa !125, !alias.scope !128, !noalias !131 %.unbox423 = load i64, ptr addrspace(11) %488, align 8, !dbg !1371, !tbaa !125, !alias.scope !128, !noalias !131 %489 = sub i64 %.stop_ptr422.unbox, %.unbox423, !dbg !1371 %490 = add i64 1, %489, !dbg !1373 %491 = sub i64 %447, 1, !dbg !1374 %492 = icmp ult i64 %491, %490, !dbg !1376 %493 = xor i1 %492, true, !dbg !1363 br i1 %493, label %L637, label %L636, !dbg !1363 L636: ; preds = %L624 br label %L639, !dbg !1363 L637: ; preds = %L624 %494 = getelementptr inbounds i8, ptr %0, i32 0, !dbg !1363 store ptr addrspace(10) %16, ptr %494, align 8, !dbg !1363 %495 = addrspacecast ptr %"new::Tuple421" to ptr addrspace(11), !dbg !1363 call void @julia_throw_boundserror_52557(ptr addrspace(11) nocapture readonly %"v::SubArray", ptr nocapture readonly %0, ptr addrspace(11) nocapture readonly %495) #133, !dbg !1363 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !1363 unreachable, !dbg !1363 L639: ; preds = %L636 br label %L640, !dbg !1363 L640: ; preds = %L639, %L621 %496 = getelementptr inbounds i8, ptr addrspace(11) %"v::SubArray", i32 24, !dbg !1377 %.unbox424 = load i64, ptr addrspace(11) %496, align 8, !dbg !1380, !tbaa !125, !alias.scope !128, !noalias !131 %497 = add i64 %.unbox424, %447, !dbg !1380 br i1 false, label %L656, label %L645, !dbg !1381 L645: ; preds = %L640 %498 = sub i64 %497, 1, !dbg !1383 %499 = addrspacecast ptr addrspace(10) %16 to ptr addrspace(11), !dbg !1384 %.size_ptr425 = getelementptr inbounds i8, ptr addrspace(11) %499, i32 16, !dbg !1384 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %.size426, ptr addrspace(11) align 8 %.size_ptr425, i64 8, i1 false), !dbg !1384, !tbaa !140, !alias.scope !303, !noalias !304 %bitcast427 = load i64, ptr %.size426, align 8, !dbg !1383, !tbaa !305, !alias.scope !307, !noalias !308 %500 = icmp ult i64 %498, %bitcast427, !dbg !1383 %501 = xor i1 %500, true, !dbg !1381 br i1 %501, label %L653, label %L652, !dbg !1381 L652: ; preds = %L645 br label %L656, !dbg !1381 L653: ; preds = %L645 %502 = getelementptr inbounds i8, ptr %"new::Tuple454", i32 0, !dbg !1381 store i64 %497, ptr %502, align 8, !dbg !1381, !tbaa !305, !alias.scope !307, !noalias !308 %503 = addrspacecast ptr %"new::Tuple454" to ptr addrspace(11), !dbg !1381 call void @julia_throw_boundserror_52431(ptr addrspace(10) %16, ptr addrspace(11) nocapture readonly %503) #133, !dbg !1381 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !1381 unreachable, !dbg !1381 L656: ; preds = %L652, %L640 %504 = addrspacecast ptr addrspace(10) %16 to ptr addrspace(11), !dbg !1386 %505 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %504, i32 0, i32 0, !dbg !1386 %memoryref_data429 = load ptr, ptr addrspace(11) %505, align 8, !dbg !1386, !tbaa !310, !alias.scope !313, !noalias !314 %506 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %504, i32 0, i32 1, !dbg !1386 %memoryref_mem449 = load ptr addrspace(10), ptr addrspace(11) %506, align 8, !dbg !1386, !tbaa !310, !alias.scope !313, !noalias !314, !dereferenceable_or_null !139, !align !137 %507 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data429, 0, !dbg !1386 %.ref428 = insertvalue { ptr, ptr addrspace(10) } %507, ptr addrspace(10) %memoryref_mem449, 1, !dbg !1386 %memoryref_offset431 = sub i64 %497, 1, !dbg !1387 %508 = addrspacecast ptr addrspace(10) %memoryref_mem449 to ptr addrspace(11), !dbg !1387 %509 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %508, i32 0, i32 0, !dbg !1387 %memory_len432 = load i64, ptr addrspace(11) %509, align 8, !dbg !1387, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %510 = add nuw i64 %memory_len432, %memory_len432, !dbg !1387 %511 = add i64 %memoryref_offset431, %memory_len432, !dbg !1387 %memoryref_ovflw433 = icmp uge i64 %511, %510, !dbg !1387 %memoryref_byteoffset434 = mul i64 %memoryref_offset431, 8, !dbg !1387 %memoryref_data_byteoffset435 = getelementptr i8, ptr %memoryref_data429, i64 %memoryref_byteoffset434, !dbg !1387 %512 = addrspacecast ptr addrspace(10) %memoryref_mem449 to ptr addrspace(11), !dbg !1387 %513 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %512, i32 0, i32 0, !dbg !1387 %memory_len436 = load i64, ptr addrspace(11) %513, align 8, !dbg !1387, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %514 = addrspacecast ptr addrspace(10) %memoryref_mem449 to ptr addrspace(11), !dbg !1387 %memory_data_ptr437 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %514, i32 0, i32 1, !dbg !1387 %memory_data438 = load ptr, ptr addrspace(11) %memory_data_ptr437, align 8, !dbg !1387, !tbaa !318, !alias.scope !313, !noalias !314, !nonnull !0 %515 = ptrtoint ptr %memory_data438 to i64, !dbg !1387 %516 = ptrtoint ptr %memoryref_data_byteoffset435 to i64, !dbg !1387 %517 = sub i64 %516, %515, !dbg !1387 %memoryref_bytelen439 = mul nuw nsw i64 %memory_len436, 8, !dbg !1387 %memoryref_isinbounds440 = icmp ult i64 %517, %memoryref_bytelen439, !dbg !1387 %518 = xor i1 %memoryref_ovflw433, true, !dbg !1387 %"memoryref_isinbounds¬ovflw441" = and i1 %518, %memoryref_isinbounds440, !dbg !1387 br i1 %"memoryref_isinbounds¬ovflw441", label %idxend447, label %oob442, !dbg !1387 L660: ; preds = %load452 br label %L661, !dbg !1382 L661: ; preds = %L660 br label %L662, !dbg !1382 L662: ; preds = %L661 %519 = add i64 %value_phi386, 1, !dbg !1388 br label %L565, !dbg !1176, !llvm.loop !1390 L665: ; preds = %L565, %L555 br label %L666, !dbg !1323 L666: ; preds = %L665, %L554 br label %L667, !dbg !1284 L667: ; preds = %L666, %L60 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %sret_return, ptr addrspace(11) align 8 %"v::SubArray", i64 40, i1 false), !dbg !1391, !tbaa !140, !alias.scope !1392, !noalias !1393 %520 = getelementptr inbounds i8, ptr %return_roots, i32 0, !dbg !1391 store ptr addrspace(10) %16, ptr %520, align 8, !dbg !1391, !tbaa !121, !alias.scope !368, !noalias !369 ret void, !dbg !1391 L668: ; preds = %L10 %"jl_global#52501" = load ptr, ptr @jl_global_52501, align 8, !dbg !1394, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0 %521 = addrspacecast ptr %"jl_global#52501" to ptr addrspace(10), !dbg !1394 %522 = call [1 x ptr addrspace(10)] @julia_DimensionMismatch_52568(ptr addrspace(10) %521), !dbg !1394 %"+Main.Base.DimensionMismatch#52567" = load ptr, ptr @_Main_Base_DimensionMismatch_52567, align 8, !dbg !970, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0, !dereferenceable !138, !align !139 %DimensionMismatch = ptrtoint ptr %"+Main.Base.DimensionMismatch#52567" to i64, !dbg !970 %523 = inttoptr i64 %DimensionMismatch to ptr, !dbg !970 %current_task524 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !970 %524 = addrspacecast ptr %523 to ptr addrspace(10), !dbg !970 %"box::DimensionMismatch" = call noalias nonnull align 8 dereferenceable(8) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task524, i64 8, ptr addrspace(10) %524) #134, !dbg !970 %525 = addrspacecast ptr addrspace(10) %"box::DimensionMismatch" to ptr addrspace(11), !dbg !970 store [1 x ptr addrspace(10)] %522, ptr addrspace(11) %525, align 8, !dbg !970, !tbaa !146, !alias.scope !150, !noalias !151 %526 = addrspacecast ptr addrspace(10) %"box::DimensionMismatch" to ptr addrspace(12), !dbg !970 call void @ijl_throw(ptr addrspace(12) %526), !dbg !970 unreachable, !dbg !970 oob: ; preds = %L54 %"+Core.GenericMemoryRef#52401" = load ptr, ptr @_Core_GenericMemoryRef_52401, align 8, !dbg !1024, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0, !dereferenceable !138, !align !139 %GenericMemoryRef = ptrtoint ptr %"+Core.GenericMemoryRef#52401" to i64, !dbg !1024 %527 = inttoptr i64 %GenericMemoryRef to ptr, !dbg !1024 %current_task7 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !1024 %528 = addrspacecast ptr %527 to ptr addrspace(10), !dbg !1024 %"box::GenericMemoryRef" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task7, i64 16, ptr addrspace(10) %528) #134, !dbg !1024 %529 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef" to ptr addrspace(11), !dbg !1024 store { ptr, ptr addrspace(10) } %.ref, ptr addrspace(11) %529, align 8, !dbg !1024, !tbaa !146, !alias.scope !150, !noalias !151 %530 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef" to ptr addrspace(12), !dbg !1024 call void @ijl_bounds_error_int(ptr addrspace(12) %530, i64 %37), !dbg !1024 unreachable, !dbg !1024 idxend: ; preds = %L54 %531 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data_byteoffset, 0, !dbg !1024 %memory_ref = insertvalue { ptr, ptr addrspace(10) } %531, ptr addrspace(10) %memoryref_mem, 1, !dbg !1024 %532 = addrspacecast ptr addrspace(10) %memoryref_mem to ptr addrspace(11), !dbg !1024 %533 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %532, i32 0, i32 0, !dbg !1024 %memory_len8 = load i64, ptr addrspace(11) %533, align 8, !dbg !1024, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %534 = icmp eq i64 %memory_len8, 0, !dbg !1024 br i1 %534, label %oob9, label %load, !dbg !1024 oob9: ; preds = %idxend %535 = addrspacecast ptr addrspace(10) %memoryref_mem to ptr addrspace(12), !dbg !1024 call void @ijl_bounds_error_int(ptr addrspace(12) %535, i64 1), !dbg !1024 unreachable, !dbg !1024 load: ; preds = %idxend %536 = call ptr addrspace(13) @julia.gc_loaded(ptr addrspace(10) %memoryref_mem, ptr %memoryref_data), !dbg !1024 %memoryref_data10 = getelementptr inbounds i8, ptr addrspace(13) %536, i64 %memoryref_byteoffset, !dbg !1024 store double 1.000000e+00, ptr addrspace(13) %memoryref_data10, align 8, !dbg !1024, !tbaa !890, !alias.scope !150, !noalias !151 br label %L58, !dbg !1396 oob32: ; preds = %L97 %"+Core.GenericMemoryRef#5240133" = load ptr, ptr @_Core_GenericMemoryRef_52401, align 8, !dbg !1059, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0, !dereferenceable !138, !align !139 %GenericMemoryRef34 = ptrtoint ptr %"+Core.GenericMemoryRef#5240133" to i64, !dbg !1059 %537 = inttoptr i64 %GenericMemoryRef34 to ptr, !dbg !1059 %current_task35 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !1059 %538 = addrspacecast ptr %537 to ptr addrspace(10), !dbg !1059 %"box::GenericMemoryRef36" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task35, i64 16, ptr addrspace(10) %538) #134, !dbg !1059 %539 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef36" to ptr addrspace(11), !dbg !1059 store { ptr, ptr addrspace(10) } %.ref18, ptr addrspace(11) %539, align 8, !dbg !1059, !tbaa !146, !alias.scope !150, !noalias !151 %540 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef36" to ptr addrspace(12), !dbg !1059 call void @ijl_bounds_error_int(ptr addrspace(12) %540, i64 %70), !dbg !1059 unreachable, !dbg !1059 idxend37: ; preds = %L97 %541 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data_byteoffset25, 0, !dbg !1059 %memory_ref38 = insertvalue { ptr, ptr addrspace(10) } %541, ptr addrspace(10) %memoryref_mem39, 1, !dbg !1059 %542 = addrspacecast ptr addrspace(10) %memoryref_mem39 to ptr addrspace(11), !dbg !1059 %543 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %542, i32 0, i32 0, !dbg !1059 %memory_len40 = load i64, ptr addrspace(11) %543, align 8, !dbg !1059, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %544 = icmp eq i64 %memory_len40, 0, !dbg !1059 br i1 %544, label %oob41, label %load42, !dbg !1059 oob41: ; preds = %idxend37 %545 = addrspacecast ptr addrspace(10) %memoryref_mem39 to ptr addrspace(12), !dbg !1059 call void @ijl_bounds_error_int(ptr addrspace(12) %545, i64 1), !dbg !1059 unreachable, !dbg !1059 load42: ; preds = %idxend37 %546 = call ptr addrspace(13) @julia.gc_loaded(ptr addrspace(10) %memoryref_mem39, ptr %memoryref_data19), !dbg !1059 %memoryref_data43 = getelementptr inbounds i8, ptr addrspace(13) %546, i64 %memoryref_byteoffset24, !dbg !1059 %547 = load double, ptr addrspace(13) %memoryref_data43, align 8, !dbg !1059, !tbaa !890, !alias.scope !150, !noalias !151 br label %L101, !dbg !1059 oob65: ; preds = %L137 %"+Core.GenericMemoryRef#5240166" = load ptr, ptr @_Core_GenericMemoryRef_52401, align 8, !dbg !1088, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0, !dereferenceable !138, !align !139 %GenericMemoryRef67 = ptrtoint ptr %"+Core.GenericMemoryRef#5240166" to i64, !dbg !1088 %548 = inttoptr i64 %GenericMemoryRef67 to ptr, !dbg !1088 %current_task68 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !1088 %549 = addrspacecast ptr %548 to ptr addrspace(10), !dbg !1088 %"box::GenericMemoryRef69" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task68, i64 16, ptr addrspace(10) %549) #134, !dbg !1088 %550 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef69" to ptr addrspace(11), !dbg !1088 store { ptr, ptr addrspace(10) } %.ref51, ptr addrspace(11) %550, align 8, !dbg !1088, !tbaa !146, !alias.scope !150, !noalias !151 %551 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef69" to ptr addrspace(12), !dbg !1088 call void @ijl_bounds_error_int(ptr addrspace(12) %551, i64 %101), !dbg !1088 unreachable, !dbg !1088 idxend70: ; preds = %L137 %552 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data_byteoffset58, 0, !dbg !1088 %memory_ref71 = insertvalue { ptr, ptr addrspace(10) } %552, ptr addrspace(10) %memoryref_mem72, 1, !dbg !1088 %553 = addrspacecast ptr addrspace(10) %memoryref_mem72 to ptr addrspace(11), !dbg !1088 %554 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %553, i32 0, i32 0, !dbg !1088 %memory_len73 = load i64, ptr addrspace(11) %554, align 8, !dbg !1088, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %555 = icmp eq i64 %memory_len73, 0, !dbg !1088 br i1 %555, label %oob74, label %load75, !dbg !1088 oob74: ; preds = %idxend70 %556 = addrspacecast ptr addrspace(10) %memoryref_mem72 to ptr addrspace(12), !dbg !1088 call void @ijl_bounds_error_int(ptr addrspace(12) %556, i64 1), !dbg !1088 unreachable, !dbg !1088 load75: ; preds = %idxend70 %557 = call ptr addrspace(13) @julia.gc_loaded(ptr addrspace(10) %memoryref_mem72, ptr %memoryref_data52), !dbg !1088 %memoryref_data76 = getelementptr inbounds i8, ptr addrspace(13) %557, i64 %memoryref_byteoffset57, !dbg !1088 %558 = load double, ptr addrspace(13) %memoryref_data76, align 8, !dbg !1088, !tbaa !890, !alias.scope !150, !noalias !151 br label %L141, !dbg !1088 oob98: ; preds = %L179 %"+Core.GenericMemoryRef#5240199" = load ptr, ptr @_Core_GenericMemoryRef_52401, align 8, !dbg !1088, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0, !dereferenceable !138, !align !139 %GenericMemoryRef100 = ptrtoint ptr %"+Core.GenericMemoryRef#5240199" to i64, !dbg !1088 %559 = inttoptr i64 %GenericMemoryRef100 to ptr, !dbg !1088 %current_task101 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !1088 %560 = addrspacecast ptr %559 to ptr addrspace(10), !dbg !1088 %"box::GenericMemoryRef102" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task101, i64 16, ptr addrspace(10) %560) #134, !dbg !1088 %561 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef102" to ptr addrspace(11), !dbg !1088 store { ptr, ptr addrspace(10) } %.ref84, ptr addrspace(11) %561, align 8, !dbg !1088, !tbaa !146, !alias.scope !150, !noalias !151 %562 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef102" to ptr addrspace(12), !dbg !1088 call void @ijl_bounds_error_int(ptr addrspace(12) %562, i64 %133), !dbg !1088 unreachable, !dbg !1088 idxend103: ; preds = %L179 %563 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data_byteoffset91, 0, !dbg !1088 %memory_ref104 = insertvalue { ptr, ptr addrspace(10) } %563, ptr addrspace(10) %memoryref_mem105, 1, !dbg !1088 %564 = addrspacecast ptr addrspace(10) %memoryref_mem105 to ptr addrspace(11), !dbg !1088 %565 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %564, i32 0, i32 0, !dbg !1088 %memory_len106 = load i64, ptr addrspace(11) %565, align 8, !dbg !1088, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %566 = icmp eq i64 %memory_len106, 0, !dbg !1088 br i1 %566, label %oob107, label %load108, !dbg !1088 oob107: ; preds = %idxend103 %567 = addrspacecast ptr addrspace(10) %memoryref_mem105 to ptr addrspace(12), !dbg !1088 call void @ijl_bounds_error_int(ptr addrspace(12) %567, i64 1), !dbg !1088 unreachable, !dbg !1088 load108: ; preds = %idxend103 %568 = call ptr addrspace(13) @julia.gc_loaded(ptr addrspace(10) %memoryref_mem105, ptr %memoryref_data85), !dbg !1088 %memoryref_data109 = getelementptr inbounds i8, ptr addrspace(13) %568, i64 %memoryref_byteoffset90, !dbg !1088 %569 = load double, ptr addrspace(13) %memoryref_data109, align 8, !dbg !1088, !tbaa !890, !alias.scope !150, !noalias !151 br label %L183, !dbg !1088 oob131: ; preds = %L219 %"+Core.GenericMemoryRef#52401132" = load ptr, ptr @_Core_GenericMemoryRef_52401, align 8, !dbg !1121, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0, !dereferenceable !138, !align !139 %GenericMemoryRef133 = ptrtoint ptr %"+Core.GenericMemoryRef#52401132" to i64, !dbg !1121 %570 = inttoptr i64 %GenericMemoryRef133 to ptr, !dbg !1121 %current_task134 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !1121 %571 = addrspacecast ptr %570 to ptr addrspace(10), !dbg !1121 %"box::GenericMemoryRef135" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task134, i64 16, ptr addrspace(10) %571) #134, !dbg !1121 %572 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef135" to ptr addrspace(11), !dbg !1121 store { ptr, ptr addrspace(10) } %.ref117, ptr addrspace(11) %572, align 8, !dbg !1121, !tbaa !146, !alias.scope !150, !noalias !151 %573 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef135" to ptr addrspace(12), !dbg !1121 call void @ijl_bounds_error_int(ptr addrspace(12) %573, i64 %165), !dbg !1121 unreachable, !dbg !1121 idxend136: ; preds = %L219 %574 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data_byteoffset124, 0, !dbg !1121 %memory_ref137 = insertvalue { ptr, ptr addrspace(10) } %574, ptr addrspace(10) %memoryref_mem138, 1, !dbg !1121 %575 = addrspacecast ptr addrspace(10) %memoryref_mem138 to ptr addrspace(11), !dbg !1121 %576 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %575, i32 0, i32 0, !dbg !1121 %memory_len139 = load i64, ptr addrspace(11) %576, align 8, !dbg !1121, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %577 = icmp eq i64 %memory_len139, 0, !dbg !1121 br i1 %577, label %oob140, label %load141, !dbg !1121 oob140: ; preds = %idxend136 %578 = addrspacecast ptr addrspace(10) %memoryref_mem138 to ptr addrspace(12), !dbg !1121 call void @ijl_bounds_error_int(ptr addrspace(12) %578, i64 1), !dbg !1121 unreachable, !dbg !1121 load141: ; preds = %idxend136 %579 = call ptr addrspace(13) @julia.gc_loaded(ptr addrspace(10) %memoryref_mem138, ptr %memoryref_data118), !dbg !1121 %memoryref_data142 = getelementptr inbounds i8, ptr addrspace(13) %579, i64 %memoryref_byteoffset123, !dbg !1121 store double %155, ptr addrspace(13) %memoryref_data142, align 8, !dbg !1121, !tbaa !890, !alias.scope !150, !noalias !151 br label %L223, !dbg !1397 oob164: ; preds = %L260 %"+Core.GenericMemoryRef#52401165" = load ptr, ptr @_Core_GenericMemoryRef_52401, align 8, !dbg !1150, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0, !dereferenceable !138, !align !139 %GenericMemoryRef166 = ptrtoint ptr %"+Core.GenericMemoryRef#52401165" to i64, !dbg !1150 %580 = inttoptr i64 %GenericMemoryRef166 to ptr, !dbg !1150 %current_task167 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !1150 %581 = addrspacecast ptr %580 to ptr addrspace(10), !dbg !1150 %"box::GenericMemoryRef168" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task167, i64 16, ptr addrspace(10) %581) #134, !dbg !1150 %582 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef168" to ptr addrspace(11), !dbg !1150 store { ptr, ptr addrspace(10) } %.ref150, ptr addrspace(11) %582, align 8, !dbg !1150, !tbaa !146, !alias.scope !150, !noalias !151 %583 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef168" to ptr addrspace(12), !dbg !1150 call void @ijl_bounds_error_int(ptr addrspace(12) %583, i64 %196), !dbg !1150 unreachable, !dbg !1150 idxend169: ; preds = %L260 %584 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data_byteoffset157, 0, !dbg !1150 %memory_ref170 = insertvalue { ptr, ptr addrspace(10) } %584, ptr addrspace(10) %memoryref_mem171, 1, !dbg !1150 %585 = addrspacecast ptr addrspace(10) %memoryref_mem171 to ptr addrspace(11), !dbg !1150 %586 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %585, i32 0, i32 0, !dbg !1150 %memory_len172 = load i64, ptr addrspace(11) %586, align 8, !dbg !1150, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %587 = icmp eq i64 %memory_len172, 0, !dbg !1150 br i1 %587, label %oob173, label %load174, !dbg !1150 oob173: ; preds = %idxend169 %588 = addrspacecast ptr addrspace(10) %memoryref_mem171 to ptr addrspace(12), !dbg !1150 call void @ijl_bounds_error_int(ptr addrspace(12) %588, i64 1), !dbg !1150 unreachable, !dbg !1150 load174: ; preds = %idxend169 %589 = call ptr addrspace(13) @julia.gc_loaded(ptr addrspace(10) %memoryref_mem171, ptr %memoryref_data151), !dbg !1150 %memoryref_data175 = getelementptr inbounds i8, ptr addrspace(13) %589, i64 %memoryref_byteoffset156, !dbg !1150 %590 = load double, ptr addrspace(13) %memoryref_data175, align 8, !dbg !1150, !tbaa !890, !alias.scope !150, !noalias !151 br label %L264, !dbg !1150 oob203: ; preds = %L322 %"+Core.GenericMemoryRef#52401204" = load ptr, ptr @_Core_GenericMemoryRef_52401, align 8, !dbg !1205, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0, !dereferenceable !138, !align !139 %GenericMemoryRef205 = ptrtoint ptr %"+Core.GenericMemoryRef#52401204" to i64, !dbg !1205 %591 = inttoptr i64 %GenericMemoryRef205 to ptr, !dbg !1205 %current_task206 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !1205 %592 = addrspacecast ptr %591 to ptr addrspace(10), !dbg !1205 %"box::GenericMemoryRef207" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task206, i64 16, ptr addrspace(10) %592) #134, !dbg !1205 %593 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef207" to ptr addrspace(11), !dbg !1205 store { ptr, ptr addrspace(10) } %.ref189, ptr addrspace(11) %593, align 8, !dbg !1205, !tbaa !146, !alias.scope !150, !noalias !151 %594 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef207" to ptr addrspace(12), !dbg !1205 call void @ijl_bounds_error_int(ptr addrspace(12) %594, i64 %238), !dbg !1205 unreachable, !dbg !1205 idxend208: ; preds = %L322 %595 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data_byteoffset196, 0, !dbg !1205 %memory_ref209 = insertvalue { ptr, ptr addrspace(10) } %595, ptr addrspace(10) %memoryref_mem210, 1, !dbg !1205 %596 = addrspacecast ptr addrspace(10) %memoryref_mem210 to ptr addrspace(11), !dbg !1205 %597 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %596, i32 0, i32 0, !dbg !1205 %memory_len211 = load i64, ptr addrspace(11) %597, align 8, !dbg !1205, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %598 = icmp eq i64 %memory_len211, 0, !dbg !1205 br i1 %598, label %oob212, label %load213, !dbg !1205 oob212: ; preds = %idxend208 %599 = addrspacecast ptr addrspace(10) %memoryref_mem210 to ptr addrspace(12), !dbg !1205 call void @ijl_bounds_error_int(ptr addrspace(12) %599, i64 1), !dbg !1205 unreachable, !dbg !1205 load213: ; preds = %idxend208 %600 = call ptr addrspace(13) @julia.gc_loaded(ptr addrspace(10) %memoryref_mem210, ptr %memoryref_data190), !dbg !1205 %memoryref_data214 = getelementptr inbounds i8, ptr addrspace(13) %600, i64 %memoryref_byteoffset195, !dbg !1205 %601 = load double, ptr addrspace(13) %memoryref_data214, align 8, !dbg !1205, !tbaa !890, !alias.scope !150, !noalias !151 br label %L326, !dbg !1205 oob236: ; preds = %L365 %"+Core.GenericMemoryRef#52401237" = load ptr, ptr @_Core_GenericMemoryRef_52401, align 8, !dbg !1205, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0, !dereferenceable !138, !align !139 %GenericMemoryRef238 = ptrtoint ptr %"+Core.GenericMemoryRef#52401237" to i64, !dbg !1205 %602 = inttoptr i64 %GenericMemoryRef238 to ptr, !dbg !1205 %current_task239 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !1205 %603 = addrspacecast ptr %602 to ptr addrspace(10), !dbg !1205 %"box::GenericMemoryRef240" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task239, i64 16, ptr addrspace(10) %603) #134, !dbg !1205 %604 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef240" to ptr addrspace(11), !dbg !1205 store { ptr, ptr addrspace(10) } %.ref222, ptr addrspace(11) %604, align 8, !dbg !1205, !tbaa !146, !alias.scope !150, !noalias !151 %605 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef240" to ptr addrspace(12), !dbg !1205 call void @ijl_bounds_error_int(ptr addrspace(12) %605, i64 %272), !dbg !1205 unreachable, !dbg !1205 idxend241: ; preds = %L365 %606 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data_byteoffset229, 0, !dbg !1205 %memory_ref242 = insertvalue { ptr, ptr addrspace(10) } %606, ptr addrspace(10) %memoryref_mem243, 1, !dbg !1205 %607 = addrspacecast ptr addrspace(10) %memoryref_mem243 to ptr addrspace(11), !dbg !1205 %608 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %607, i32 0, i32 0, !dbg !1205 %memory_len244 = load i64, ptr addrspace(11) %608, align 8, !dbg !1205, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %609 = icmp eq i64 %memory_len244, 0, !dbg !1205 br i1 %609, label %oob245, label %load246, !dbg !1205 oob245: ; preds = %idxend241 %610 = addrspacecast ptr addrspace(10) %memoryref_mem243 to ptr addrspace(12), !dbg !1205 call void @ijl_bounds_error_int(ptr addrspace(12) %610, i64 1), !dbg !1205 unreachable, !dbg !1205 load246: ; preds = %idxend241 %611 = call ptr addrspace(13) @julia.gc_loaded(ptr addrspace(10) %memoryref_mem243, ptr %memoryref_data223), !dbg !1205 %memoryref_data247 = getelementptr inbounds i8, ptr addrspace(13) %611, i64 %memoryref_byteoffset228, !dbg !1205 %612 = load double, ptr addrspace(13) %memoryref_data247, align 8, !dbg !1205, !tbaa !890, !alias.scope !150, !noalias !151 br label %L369, !dbg !1205 oob269: ; preds = %L406 %"+Core.GenericMemoryRef#52401270" = load ptr, ptr @_Core_GenericMemoryRef_52401, align 8, !dbg !1205, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0, !dereferenceable !138, !align !139 %GenericMemoryRef271 = ptrtoint ptr %"+Core.GenericMemoryRef#52401270" to i64, !dbg !1205 %613 = inttoptr i64 %GenericMemoryRef271 to ptr, !dbg !1205 %current_task272 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !1205 %614 = addrspacecast ptr %613 to ptr addrspace(10), !dbg !1205 %"box::GenericMemoryRef273" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task272, i64 16, ptr addrspace(10) %614) #134, !dbg !1205 %615 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef273" to ptr addrspace(11), !dbg !1205 store { ptr, ptr addrspace(10) } %.ref255, ptr addrspace(11) %615, align 8, !dbg !1205, !tbaa !146, !alias.scope !150, !noalias !151 %616 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef273" to ptr addrspace(12), !dbg !1205 call void @ijl_bounds_error_int(ptr addrspace(12) %616, i64 %305), !dbg !1205 unreachable, !dbg !1205 idxend274: ; preds = %L406 %617 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data_byteoffset262, 0, !dbg !1205 %memory_ref275 = insertvalue { ptr, ptr addrspace(10) } %617, ptr addrspace(10) %memoryref_mem276, 1, !dbg !1205 %618 = addrspacecast ptr addrspace(10) %memoryref_mem276 to ptr addrspace(11), !dbg !1205 %619 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %618, i32 0, i32 0, !dbg !1205 %memory_len277 = load i64, ptr addrspace(11) %619, align 8, !dbg !1205, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %620 = icmp eq i64 %memory_len277, 0, !dbg !1205 br i1 %620, label %oob278, label %load279, !dbg !1205 oob278: ; preds = %idxend274 %621 = addrspacecast ptr addrspace(10) %memoryref_mem276 to ptr addrspace(12), !dbg !1205 call void @ijl_bounds_error_int(ptr addrspace(12) %621, i64 1), !dbg !1205 unreachable, !dbg !1205 load279: ; preds = %idxend274 %622 = call ptr addrspace(13) @julia.gc_loaded(ptr addrspace(10) %memoryref_mem276, ptr %memoryref_data256), !dbg !1205 %memoryref_data280 = getelementptr inbounds i8, ptr addrspace(13) %622, i64 %memoryref_byteoffset261, !dbg !1205 %623 = load double, ptr addrspace(13) %memoryref_data280, align 8, !dbg !1205, !tbaa !890, !alias.scope !150, !noalias !151 br label %L410, !dbg !1205 oob302: ; preds = %L450 %"+Core.GenericMemoryRef#52401303" = load ptr, ptr @_Core_GenericMemoryRef_52401, align 8, !dbg !1205, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0, !dereferenceable !138, !align !139 %GenericMemoryRef304 = ptrtoint ptr %"+Core.GenericMemoryRef#52401303" to i64, !dbg !1205 %624 = inttoptr i64 %GenericMemoryRef304 to ptr, !dbg !1205 %current_task305 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !1205 %625 = addrspacecast ptr %624 to ptr addrspace(10), !dbg !1205 %"box::GenericMemoryRef306" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task305, i64 16, ptr addrspace(10) %625) #134, !dbg !1205 %626 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef306" to ptr addrspace(11), !dbg !1205 store { ptr, ptr addrspace(10) } %.ref288, ptr addrspace(11) %626, align 8, !dbg !1205, !tbaa !146, !alias.scope !150, !noalias !151 %627 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef306" to ptr addrspace(12), !dbg !1205 call void @ijl_bounds_error_int(ptr addrspace(12) %627, i64 %340), !dbg !1205 unreachable, !dbg !1205 idxend307: ; preds = %L450 %628 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data_byteoffset295, 0, !dbg !1205 %memory_ref308 = insertvalue { ptr, ptr addrspace(10) } %628, ptr addrspace(10) %memoryref_mem309, 1, !dbg !1205 %629 = addrspacecast ptr addrspace(10) %memoryref_mem309 to ptr addrspace(11), !dbg !1205 %630 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %629, i32 0, i32 0, !dbg !1205 %memory_len310 = load i64, ptr addrspace(11) %630, align 8, !dbg !1205, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %631 = icmp eq i64 %memory_len310, 0, !dbg !1205 br i1 %631, label %oob311, label %load312, !dbg !1205 oob311: ; preds = %idxend307 %632 = addrspacecast ptr addrspace(10) %memoryref_mem309 to ptr addrspace(12), !dbg !1205 call void @ijl_bounds_error_int(ptr addrspace(12) %632, i64 1), !dbg !1205 unreachable, !dbg !1205 load312: ; preds = %idxend307 %633 = call ptr addrspace(13) @julia.gc_loaded(ptr addrspace(10) %memoryref_mem309, ptr %memoryref_data289), !dbg !1205 %memoryref_data313 = getelementptr inbounds i8, ptr addrspace(13) %633, i64 %memoryref_byteoffset294, !dbg !1205 %634 = load double, ptr addrspace(13) %memoryref_data313, align 8, !dbg !1205, !tbaa !890, !alias.scope !150, !noalias !151 br label %L454, !dbg !1205 oob335: ; preds = %L490 %"+Core.GenericMemoryRef#52401336" = load ptr, ptr @_Core_GenericMemoryRef_52401, align 8, !dbg !1239, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0, !dereferenceable !138, !align !139 %GenericMemoryRef337 = ptrtoint ptr %"+Core.GenericMemoryRef#52401336" to i64, !dbg !1239 %635 = inttoptr i64 %GenericMemoryRef337 to ptr, !dbg !1239 %current_task338 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !1239 %636 = addrspacecast ptr %635 to ptr addrspace(10), !dbg !1239 %"box::GenericMemoryRef339" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task338, i64 16, ptr addrspace(10) %636) #134, !dbg !1239 %637 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef339" to ptr addrspace(11), !dbg !1239 store { ptr, ptr addrspace(10) } %.ref321, ptr addrspace(11) %637, align 8, !dbg !1239, !tbaa !146, !alias.scope !150, !noalias !151 %638 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef339" to ptr addrspace(12), !dbg !1239 call void @ijl_bounds_error_int(ptr addrspace(12) %638, i64 %373), !dbg !1239 unreachable, !dbg !1239 idxend340: ; preds = %L490 %639 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data_byteoffset328, 0, !dbg !1239 %memory_ref341 = insertvalue { ptr, ptr addrspace(10) } %639, ptr addrspace(10) %memoryref_mem342, 1, !dbg !1239 %640 = addrspacecast ptr addrspace(10) %memoryref_mem342 to ptr addrspace(11), !dbg !1239 %641 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %640, i32 0, i32 0, !dbg !1239 %memory_len343 = load i64, ptr addrspace(11) %641, align 8, !dbg !1239, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %642 = icmp eq i64 %memory_len343, 0, !dbg !1239 br i1 %642, label %oob344, label %load345, !dbg !1239 oob344: ; preds = %idxend340 %643 = addrspacecast ptr addrspace(10) %memoryref_mem342 to ptr addrspace(12), !dbg !1239 call void @ijl_bounds_error_int(ptr addrspace(12) %643, i64 1), !dbg !1239 unreachable, !dbg !1239 load345: ; preds = %idxend340 %644 = call ptr addrspace(13) @julia.gc_loaded(ptr addrspace(10) %memoryref_mem342, ptr %memoryref_data322), !dbg !1239 %memoryref_data346 = getelementptr inbounds i8, ptr addrspace(13) %644, i64 %memoryref_byteoffset327, !dbg !1239 store double %362, ptr addrspace(13) %memoryref_data346, align 8, !dbg !1239, !tbaa !890, !alias.scope !150, !noalias !151 br label %L494, !dbg !1398 oob368: ; preds = %L531 %"+Core.GenericMemoryRef#52401369" = load ptr, ptr @_Core_GenericMemoryRef_52401, align 8, !dbg !1269, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0, !dereferenceable !138, !align !139 %GenericMemoryRef370 = ptrtoint ptr %"+Core.GenericMemoryRef#52401369" to i64, !dbg !1269 %645 = inttoptr i64 %GenericMemoryRef370 to ptr, !dbg !1269 %current_task371 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !1269 %646 = addrspacecast ptr %645 to ptr addrspace(10), !dbg !1269 %"box::GenericMemoryRef372" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task371, i64 16, ptr addrspace(10) %646) #134, !dbg !1269 %647 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef372" to ptr addrspace(11), !dbg !1269 store { ptr, ptr addrspace(10) } %.ref354, ptr addrspace(11) %647, align 8, !dbg !1269, !tbaa !146, !alias.scope !150, !noalias !151 %648 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef372" to ptr addrspace(12), !dbg !1269 call void @ijl_bounds_error_int(ptr addrspace(12) %648, i64 %405), !dbg !1269 unreachable, !dbg !1269 idxend373: ; preds = %L531 %649 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data_byteoffset361, 0, !dbg !1269 %memory_ref374 = insertvalue { ptr, ptr addrspace(10) } %649, ptr addrspace(10) %memoryref_mem375, 1, !dbg !1269 %650 = addrspacecast ptr addrspace(10) %memoryref_mem375 to ptr addrspace(11), !dbg !1269 %651 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %650, i32 0, i32 0, !dbg !1269 %memory_len376 = load i64, ptr addrspace(11) %651, align 8, !dbg !1269, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %652 = icmp eq i64 %memory_len376, 0, !dbg !1269 br i1 %652, label %oob377, label %load378, !dbg !1269 oob377: ; preds = %idxend373 %653 = addrspacecast ptr addrspace(10) %memoryref_mem375 to ptr addrspace(12), !dbg !1269 call void @ijl_bounds_error_int(ptr addrspace(12) %653, i64 1), !dbg !1269 unreachable, !dbg !1269 load378: ; preds = %idxend373 %654 = call ptr addrspace(13) @julia.gc_loaded(ptr addrspace(10) %memoryref_mem375, ptr %memoryref_data355), !dbg !1269 %memoryref_data379 = getelementptr inbounds i8, ptr addrspace(13) %654, i64 %memoryref_byteoffset360, !dbg !1269 %655 = load double, ptr addrspace(13) %memoryref_data379, align 8, !dbg !1269, !tbaa !890, !alias.scope !150, !noalias !151 br label %L535, !dbg !1269 oob409: ; preds = %L616 %"+Core.GenericMemoryRef#52401410" = load ptr, ptr @_Core_GenericMemoryRef_52401, align 8, !dbg !1356, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0, !dereferenceable !138, !align !139 %GenericMemoryRef411 = ptrtoint ptr %"+Core.GenericMemoryRef#52401410" to i64, !dbg !1356 %656 = inttoptr i64 %GenericMemoryRef411 to ptr, !dbg !1356 %current_task412 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !1356 %657 = addrspacecast ptr %656 to ptr addrspace(10), !dbg !1356 %"box::GenericMemoryRef413" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task412, i64 16, ptr addrspace(10) %657) #134, !dbg !1356 %658 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef413" to ptr addrspace(11), !dbg !1356 store { ptr, ptr addrspace(10) } %.ref395, ptr addrspace(11) %658, align 8, !dbg !1356, !tbaa !146, !alias.scope !150, !noalias !151 %659 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef413" to ptr addrspace(12), !dbg !1356 call void @ijl_bounds_error_int(ptr addrspace(12) %659, i64 %464), !dbg !1356 unreachable, !dbg !1356 idxend414: ; preds = %L616 %660 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data_byteoffset402, 0, !dbg !1356 %memory_ref415 = insertvalue { ptr, ptr addrspace(10) } %660, ptr addrspace(10) %memoryref_mem416, 1, !dbg !1356 %661 = addrspacecast ptr addrspace(10) %memoryref_mem416 to ptr addrspace(11), !dbg !1356 %662 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %661, i32 0, i32 0, !dbg !1356 %memory_len417 = load i64, ptr addrspace(11) %662, align 8, !dbg !1356, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %663 = icmp eq i64 %memory_len417, 0, !dbg !1356 br i1 %663, label %oob418, label %load419, !dbg !1356 oob418: ; preds = %idxend414 %664 = addrspacecast ptr addrspace(10) %memoryref_mem416 to ptr addrspace(12), !dbg !1356 call void @ijl_bounds_error_int(ptr addrspace(12) %664, i64 1), !dbg !1356 unreachable, !dbg !1356 load419: ; preds = %idxend414 %665 = call ptr addrspace(13) @julia.gc_loaded(ptr addrspace(10) %memoryref_mem416, ptr %memoryref_data396), !dbg !1356 %memoryref_data420 = getelementptr inbounds i8, ptr addrspace(13) %665, i64 %memoryref_byteoffset401, !dbg !1356 %666 = load double, ptr addrspace(13) %memoryref_data420, align 8, !dbg !1356, !tbaa !890, !alias.scope !150, !noalias !151 br label %L620, !dbg !1356 oob442: ; preds = %L656 %"+Core.GenericMemoryRef#52401443" = load ptr, ptr @_Core_GenericMemoryRef_52401, align 8, !dbg !1387, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0, !dereferenceable !138, !align !139 %GenericMemoryRef444 = ptrtoint ptr %"+Core.GenericMemoryRef#52401443" to i64, !dbg !1387 %667 = inttoptr i64 %GenericMemoryRef444 to ptr, !dbg !1387 %current_task445 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !1387 %668 = addrspacecast ptr %667 to ptr addrspace(10), !dbg !1387 %"box::GenericMemoryRef446" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task445, i64 16, ptr addrspace(10) %668) #134, !dbg !1387 %669 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef446" to ptr addrspace(11), !dbg !1387 store { ptr, ptr addrspace(10) } %.ref428, ptr addrspace(11) %669, align 8, !dbg !1387, !tbaa !146, !alias.scope !150, !noalias !151 %670 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef446" to ptr addrspace(12), !dbg !1387 call void @ijl_bounds_error_int(ptr addrspace(12) %670, i64 %497), !dbg !1387 unreachable, !dbg !1387 idxend447: ; preds = %L656 %671 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data_byteoffset435, 0, !dbg !1387 %memory_ref448 = insertvalue { ptr, ptr addrspace(10) } %671, ptr addrspace(10) %memoryref_mem449, 1, !dbg !1387 %672 = addrspacecast ptr addrspace(10) %memoryref_mem449 to ptr addrspace(11), !dbg !1387 %673 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %672, i32 0, i32 0, !dbg !1387 %memory_len450 = load i64, ptr addrspace(11) %673, align 8, !dbg !1387, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %674 = icmp eq i64 %memory_len450, 0, !dbg !1387 br i1 %674, label %oob451, label %load452, !dbg !1387 oob451: ; preds = %idxend447 %675 = addrspacecast ptr addrspace(10) %memoryref_mem449 to ptr addrspace(12), !dbg !1387 call void @ijl_bounds_error_int(ptr addrspace(12) %675, i64 1), !dbg !1387 unreachable, !dbg !1387 load452: ; preds = %idxend447 %676 = call ptr addrspace(13) @julia.gc_loaded(ptr addrspace(10) %memoryref_mem449, ptr %memoryref_data429), !dbg !1387 %memoryref_data453 = getelementptr inbounds i8, ptr addrspace(13) %676, i64 %memoryref_byteoffset434, !dbg !1387 store double %486, ptr addrspace(13) %memoryref_data453, align 8, !dbg !1387, !tbaa !890, !alias.scope !150, !noalias !151 br label %L660, !dbg !1399 after_error: ; No predecessors! call void @llvm.trap(), !dbg !1381 unreachable, !dbg !1381 after_noret: ; No predecessors! call void @llvm.trap(), !dbg !1381 unreachable, !dbg !1381 after_error455: ; No predecessors! call void @llvm.trap(), !dbg !1363 unreachable, !dbg !1363 after_noret456: ; No predecessors! call void @llvm.trap(), !dbg !1363 unreachable, !dbg !1363 after_error458: ; No predecessors! call void @llvm.trap(), !dbg !1353 unreachable, !dbg !1353 after_noret459: ; No predecessors! call void @llvm.trap(), !dbg !1353 unreachable, !dbg !1353 after_error460: ; No predecessors! call void @llvm.trap(), !dbg !1333 unreachable, !dbg !1333 after_noret461: ; No predecessors! call void @llvm.trap(), !dbg !1333 unreachable, !dbg !1333 after_error462: ; No predecessors! call void @llvm.trap(), !dbg !1323 unreachable, !dbg !1323 after_noret463: ; No predecessors! call void @llvm.trap(), !dbg !1323 unreachable, !dbg !1323 after_error465: ; No predecessors! call void @llvm.trap(), !dbg !1266 unreachable, !dbg !1266 after_noret466: ; No predecessors! call void @llvm.trap(), !dbg !1266 unreachable, !dbg !1266 after_error467: ; No predecessors! call void @llvm.trap(), !dbg !1246 unreachable, !dbg !1246 after_noret468: ; No predecessors! call void @llvm.trap(), !dbg !1246 unreachable, !dbg !1246 after_error470: ; No predecessors! call void @llvm.trap(), !dbg !1233 unreachable, !dbg !1233 after_noret471: ; No predecessors! call void @llvm.trap(), !dbg !1233 unreachable, !dbg !1233 after_error472: ; No predecessors! call void @llvm.trap(), !dbg !1215 unreachable, !dbg !1215 after_noret473: ; No predecessors! call void @llvm.trap(), !dbg !1215 unreachable, !dbg !1215 after_error475: ; No predecessors! call void @llvm.trap(), !dbg !1202 unreachable, !dbg !1202 after_noret476: ; No predecessors! call void @llvm.trap(), !dbg !1202 unreachable, !dbg !1202 after_error477: ; No predecessors! call void @llvm.trap(), !dbg !1167 unreachable, !dbg !1167 after_noret478: ; No predecessors! call void @llvm.trap(), !dbg !1167 unreachable, !dbg !1167 after_error480: ; No predecessors! call void @llvm.trap(), !dbg !1202 unreachable, !dbg !1202 after_noret481: ; No predecessors! call void @llvm.trap(), !dbg !1202 unreachable, !dbg !1202 after_error482: ; No predecessors! call void @llvm.trap(), !dbg !1167 unreachable, !dbg !1167 after_noret483: ; No predecessors! call void @llvm.trap(), !dbg !1167 unreachable, !dbg !1167 after_error485: ; No predecessors! call void @llvm.trap(), !dbg !1202 unreachable, !dbg !1202 after_noret486: ; No predecessors! call void @llvm.trap(), !dbg !1202 unreachable, !dbg !1202 after_error487: ; No predecessors! call void @llvm.trap(), !dbg !1167 unreachable, !dbg !1167 after_noret488: ; No predecessors! call void @llvm.trap(), !dbg !1167 unreachable, !dbg !1167 after_error490: ; No predecessors! call void @llvm.trap(), !dbg !1202 unreachable, !dbg !1202 after_noret491: ; No predecessors! call void @llvm.trap(), !dbg !1202 unreachable, !dbg !1202 after_error492: ; No predecessors! call void @llvm.trap(), !dbg !1167 unreachable, !dbg !1167 after_noret493: ; No predecessors! call void @llvm.trap(), !dbg !1167 unreachable, !dbg !1167 after_error495: ; No predecessors! call void @llvm.trap(), !dbg !1147 unreachable, !dbg !1147 after_noret496: ; No predecessors! call void @llvm.trap(), !dbg !1147 unreachable, !dbg !1147 after_error497: ; No predecessors! call void @llvm.trap(), !dbg !1128 unreachable, !dbg !1128 after_noret498: ; No predecessors! call void @llvm.trap(), !dbg !1128 unreachable, !dbg !1128 after_error500: ; No predecessors! call void @llvm.trap(), !dbg !1115 unreachable, !dbg !1115 after_noret501: ; No predecessors! call void @llvm.trap(), !dbg !1115 unreachable, !dbg !1115 after_error502: ; No predecessors! call void @llvm.trap(), !dbg !1098 unreachable, !dbg !1098 after_noret503: ; No predecessors! call void @llvm.trap(), !dbg !1098 unreachable, !dbg !1098 after_error505: ; No predecessors! call void @llvm.trap(), !dbg !1085 unreachable, !dbg !1085 after_noret506: ; No predecessors! call void @llvm.trap(), !dbg !1085 unreachable, !dbg !1085 after_error507: ; No predecessors! call void @llvm.trap(), !dbg !1066 unreachable, !dbg !1066 after_noret508: ; No predecessors! call void @llvm.trap(), !dbg !1066 unreachable, !dbg !1066 after_error510: ; No predecessors! call void @llvm.trap(), !dbg !1085 unreachable, !dbg !1085 after_noret511: ; No predecessors! call void @llvm.trap(), !dbg !1085 unreachable, !dbg !1085 after_error512: ; No predecessors! call void @llvm.trap(), !dbg !1066 unreachable, !dbg !1066 after_noret513: ; No predecessors! call void @llvm.trap(), !dbg !1066 unreachable, !dbg !1066 after_error515: ; No predecessors! call void @llvm.trap(), !dbg !1056 unreachable, !dbg !1056 after_noret516: ; No predecessors! call void @llvm.trap(), !dbg !1056 unreachable, !dbg !1056 after_error517: ; No predecessors! call void @llvm.trap(), !dbg !1036 unreachable, !dbg !1036 after_noret518: ; No predecessors! call void @llvm.trap(), !dbg !1036 unreachable, !dbg !1036 after_error520: ; No predecessors! call void @llvm.trap(), !dbg !1014 unreachable, !dbg !1014 after_noret521: ; No predecessors! call void @llvm.trap(), !dbg !1014 unreachable, !dbg !1014 after_error522: ; No predecessors! call void @llvm.trap(), !dbg !992 unreachable, !dbg !992 after_noret523: ; No predecessors! call void @llvm.trap(), !dbg !992 unreachable, !dbg !992 after_throw: ; No predecessors! call void @llvm.trap(), !dbg !970 unreachable, !dbg !970 after_noret525: ; No predecessors! call void @llvm.trap(), !dbg !970 unreachable, !dbg !970 } expectLen=5 swiftself=false sret=Ptr{SubArray{Float64, 1, Vector{Float64}, Tuple{UnitRange{Int64}}, true}} returnRoots=Ptr{@NamedTuple{var"1"}} mi.specTypes.parameters=svec(typeof(QuadGK.eigvec1!), SubArray{Float64, 1, Vector{Float64}, Tuple{UnitRange{Int64}}, true}, QuadGK.HollowSymTridiagonal{Float64, SubArray{Float64, 1, Vector{Float64}, Tuple{UnitRange{Int64}}, true}}, Float64) retRemoved=false parmsRemoved=UInt64[] Stacktrace: [1] julia_activity_rule(f::LLVM.Function) @ Enzyme.Compiler ~/.julia/packages/Enzyme/EPXUy/src/rules/activityrules.jl:48 [2] handle_compiled(state::Enzyme.Compiler.HandlerState, edges::Vector{Any}, run_enzyme::Bool, mode::Enzyme.API.CDerivativeMode, world::UInt64, method_table::Compiler.OverlayMethodTable, custom::Dict{String, LLVM.API.LLVMLinkage}, mod::LLVM.Module, mi::Core.MethodInstance, k_name::String, rettype::Type) @ Enzyme.Compiler ~/.julia/packages/Enzyme/EPXUy/src/compiler.jl:628 [3] set_module_types!(interp::Enzyme.Compiler.Interpreter.EnzymeInterpreter{Nothing}, mod::LLVM.Module, primalf::LLVM.Function, job::GPUCompiler.CompilerJob{Enzyme.Compiler.EnzymeTarget{GPUCompiler.NativeCompilerTarget}, Enzyme.Compiler.EnzymeCompilerParams{Enzyme.Compiler.PrimalCompilerParams}}, edges::Vector{Any}, run_enzyme::Bool, mode::Enzyme.API.CDerivativeMode) @ Enzyme.Compiler ~/.julia/packages/Enzyme/EPXUy/src/compiler.jl:1220 [4] compile_unhooked(output::Symbol, job::GPUCompiler.CompilerJob{Enzyme.Compiler.EnzymeTarget{GPUCompiler.NativeCompilerTarget}, Enzyme.Compiler.EnzymeCompilerParams{Enzyme.Compiler.PrimalCompilerParams}}) @ Enzyme.Compiler ~/.julia/packages/Enzyme/EPXUy/src/compiler.jl:4627 [5] compile(target::Symbol, job::GPUCompiler.CompilerJob; kwargs::@Kwargs{}) @ GPUCompiler ~/.julia/packages/GPUCompiler/Gp8bZ/src/driver.jl:67 [6] compile @ ~/.julia/packages/GPUCompiler/Gp8bZ/src/driver.jl:55 [inlined] [7] _thunk(job::GPUCompiler.CompilerJob{Enzyme.Compiler.EnzymeTarget{GPUCompiler.NativeCompilerTarget}, Enzyme.Compiler.EnzymeCompilerParams{Enzyme.Compiler.PrimalCompilerParams}}, postopt::Bool) @ Enzyme.Compiler ~/.julia/packages/Enzyme/EPXUy/src/compiler.jl:5960 [8] _thunk @ ~/.julia/packages/Enzyme/EPXUy/src/compiler.jl:5958 [inlined] [9] cached_compilation @ ~/.julia/packages/Enzyme/EPXUy/src/compiler.jl:6015 [inlined] [10] thunkbase(mi::Core.MethodInstance, World::UInt64, FA::Type{<:Annotation}, A::Type{<:Annotation}, TT::Type, Mode::Enzyme.API.CDerivativeMode, width::Int64, ModifiedBetween::NTuple{N, Bool} where N, ReturnPrimal::Bool, ShadowInit::Bool, ABI::Type, ErrIfFuncWritten::Bool, RuntimeActivity::Bool, StrongZero::Bool, edges::Vector{Any}) @ Enzyme.Compiler ~/.julia/packages/Enzyme/EPXUy/src/compiler.jl:6131 [11] thunk_generator(world::UInt64, source::Union{LineNumberNode, Method}, FA::Type, A::Type, TT::Type, Mode::Enzyme.API.CDerivativeMode, Width::Int64, ModifiedBetween::NTuple{N, Bool} where N, ReturnPrimal::Bool, ShadowInit::Bool, ABI::Type, ErrIfFuncWritten::Bool, RuntimeActivity::Bool, StrongZero::Bool, self::Any, fakeworld::Any, fa::Type, a::Type, tt::Type, mode::Type, width::Type, modifiedbetween::Type, returnprimal::Type, shadowinit::Type, abi::Type, erriffuncwritten::Type, runtimeactivity::Type, strongzero::Type) @ Enzyme.Compiler ~/.julia/packages/Enzyme/EPXUy/src/compiler.jl:6275 [12] autodiff @ ~/.julia/packages/Enzyme/EPXUy/src/Enzyme.jl:502 [inlined] [13] autodiff @ ~/.julia/packages/Enzyme/EPXUy/src/Enzyme.jl:562 [inlined] [14] autodiff(mode::ReverseMode{false, false, false, FFIABI, false, false}, f::typeof(f1_count), args::Active{Float64}) @ Enzyme ~/.julia/packages/Enzyme/EPXUy/src/Enzyme.jl:534 [15] top-level scope @ ~/.julia/packages/QuadGK/7rND3/test/runtests.jl:469 [16] macro expansion @ /opt/julia/share/julia/stdlib/v1.14/Test/src/Test.jl:1961 [inlined] [17] macro expansion @ ~/.julia/packages/QuadGK/7rND3/test/runtests.jl:473 [inlined] [18] macro expansion @ /opt/julia/share/julia/stdlib/v1.14/Test/src/Test.jl:750 [inlined] Enzyme: Error During Test at /home/pkgeval/.julia/packages/QuadGK/7rND3/test/runtests.jl:474 Test threw exception Expression: -(cos(0.3)) ≈ ((Enzyme.autodiff(Reverse, f2_count, Active(0.3)))[1])[1] AssertionError: Enzyme Internal Error (expectLen != length(parameters(f))) define internal void @julia_eigvec1__54838(ptr noalias nocapture noundef nonnull sret({ ptr addrspace(10), [1 x [2 x i64]], i64, i64 }) align 8 dereferenceable(40) %sret_return, ptr noalias nocapture noundef nonnull align 8 dereferenceable(8) "enzymejl_returnRoots" %return_roots, ptr addrspace(11) nocapture noundef nonnull readonly align 8 dereferenceable(40) %"v::SubArray", ptr nocapture noundef nonnull readonly align 8 dereferenceable(8) %.roots.v, ptr addrspace(11) nocapture noundef nonnull readonly align 8 dereferenceable(40) %"H::HollowSymTridiagonal", ptr nocapture noundef nonnull readonly align 8 dereferenceable(8) %.roots.H, double %"\CE\BB::Float64") #18 !dbg !933 { top: %"new::Tuple" = alloca [1 x i64], align 8 %.size = alloca i64, align 8 %"new::Tuple11" = alloca [1 x i64], align 8 %.size16 = alloca i64, align 8 %"new::Tuple44" = alloca [1 x i64], align 8 %.size49 = alloca i64, align 8 %"new::Tuple77" = alloca [1 x i64], align 8 %.size82 = alloca i64, align 8 %"new::Tuple110" = alloca [1 x i64], align 8 %.size115 = alloca i64, align 8 %"new::Tuple143" = alloca [1 x i64], align 8 %.size148 = alloca i64, align 8 %"new::Tuple182" = alloca [1 x i64], align 8 %.size187 = alloca i64, align 8 %"new::Tuple215" = alloca [1 x i64], align 8 %.size220 = alloca i64, align 8 %"new::Tuple248" = alloca [1 x i64], align 8 %.size253 = alloca i64, align 8 %"new::Tuple281" = alloca [1 x i64], align 8 %.size286 = alloca i64, align 8 %"new::Tuple314" = alloca [1 x i64], align 8 %.size319 = alloca i64, align 8 %"new::Tuple347" = alloca [1 x i64], align 8 %.size352 = alloca i64, align 8 %"new::OneTo" = alloca [1 x i64], align 8 %"new::Tuple387" = alloca [1 x i64], align 8 %"new::Tuple388" = alloca [1 x i64], align 8 %.size393 = alloca i64, align 8 %"new::Tuple421" = alloca [1 x i64], align 8 %.size426 = alloca i64, align 8 %"new::Tuple454" = alloca [1 x i64], align 8 %0 = alloca ptr addrspace(10), align 8 %"new::Tuple457" = alloca [1 x i64], align 8 %1 = alloca ptr addrspace(10), align 8 %"new::Tuple464" = alloca [1 x i64], align 8 %2 = alloca ptr addrspace(10), align 8 %"new::Tuple469" = alloca [1 x i64], align 8 %3 = alloca ptr addrspace(10), align 8 %"new::Tuple474" = alloca [1 x i64], align 8 %4 = alloca ptr addrspace(10), align 8 %"new::Tuple479" = alloca [1 x i64], align 8 %5 = alloca ptr addrspace(10), align 8 %"new::Tuple484" = alloca [1 x i64], align 8 %6 = alloca ptr addrspace(10), align 8 %"new::Tuple489" = alloca [1 x i64], align 8 %7 = alloca ptr addrspace(10), align 8 %"new::Tuple494" = alloca [1 x i64], align 8 %8 = alloca ptr addrspace(10), align 8 %"new::Tuple499" = alloca [1 x i64], align 8 %9 = alloca ptr addrspace(10), align 8 %"new::Tuple504" = alloca [1 x i64], align 8 %10 = alloca ptr addrspace(10), align 8 %"new::Tuple509" = alloca [1 x i64], align 8 %11 = alloca ptr addrspace(10), align 8 %"new::Tuple514" = alloca [1 x i64], align 8 %12 = alloca ptr addrspace(10), align 8 %"new::Tuple519" = alloca [1 x i64], align 8 %13 = alloca ptr addrspace(10), align 8 %pgcstack = call ptr @julia.get_pgcstack() call void @llvm.memset.p0.i64(ptr align 8 %13, i8 0, i64 8, i1 false), !tbaa !121, !alias.scope !368, !noalias !369 call void @llvm.memset.p0.i64(ptr align 8 %12, i8 0, i64 8, i1 false), !tbaa !121, !alias.scope !368, !noalias !369 call void @llvm.memset.p0.i64(ptr align 8 %11, i8 0, i64 8, i1 false), !tbaa !121, !alias.scope !368, !noalias !369 call void @llvm.memset.p0.i64(ptr align 8 %10, i8 0, i64 8, i1 false), !tbaa !121, !alias.scope !368, !noalias !369 call void @llvm.memset.p0.i64(ptr align 8 %9, i8 0, i64 8, i1 false), !tbaa !121, !alias.scope !368, !noalias !369 call void @llvm.memset.p0.i64(ptr align 8 %8, i8 0, i64 8, i1 false), !tbaa !121, !alias.scope !368, !noalias !369 call void @llvm.memset.p0.i64(ptr align 8 %7, i8 0, i64 8, i1 false), !tbaa !121, !alias.scope !368, !noalias !369 call void @llvm.memset.p0.i64(ptr align 8 %6, i8 0, i64 8, i1 false), !tbaa !121, !alias.scope !368, !noalias !369 call void @llvm.memset.p0.i64(ptr align 8 %5, i8 0, i64 8, i1 false), !tbaa !121, !alias.scope !368, !noalias !369 call void @llvm.memset.p0.i64(ptr align 8 %4, i8 0, i64 8, i1 false), !tbaa !121, !alias.scope !368, !noalias !369 call void @llvm.memset.p0.i64(ptr align 8 %3, i8 0, i64 8, i1 false), !tbaa !121, !alias.scope !368, !noalias !369 call void @llvm.memset.p0.i64(ptr align 8 %2, i8 0, i64 8, i1 false), !tbaa !121, !alias.scope !368, !noalias !369 call void @llvm.memset.p0.i64(ptr align 8 %1, i8 0, i64 8, i1 false), !tbaa !121, !alias.scope !368, !noalias !369 call void @llvm.memset.p0.i64(ptr align 8 %0, i8 0, i64 8, i1 false), !tbaa !121, !alias.scope !368, !noalias !369 %current_task = getelementptr inbounds i8, ptr %pgcstack, i32 -152 %ptls_field = getelementptr inbounds i8, ptr %current_task, i32 168 %ptls_load = load ptr, ptr %ptls_field, align 8, !tbaa !121 %14 = getelementptr inbounds i8, ptr %ptls_load, i32 16 %safepoint = load atomic ptr, ptr %14 monotonic, align 8, !tbaa !125 fence syncscope("singlethread") seq_cst call void @julia.safepoint(ptr %safepoint) fence syncscope("singlethread") seq_cst %15 = getelementptr inbounds i8, ptr %.roots.v, i32 0 %16 = load ptr addrspace(10), ptr %15, align 8, !tbaa !125, !alias.scope !128, !noalias !131 %17 = getelementptr inbounds i8, ptr %.roots.H, i32 0 %18 = load ptr addrspace(10), ptr %17, align 8, !tbaa !125, !alias.scope !128, !noalias !131 %19 = getelementptr inbounds i8, ptr addrspace(11) %"H::HollowSymTridiagonal", i32 8, !dbg !935 %.stop_ptr = getelementptr inbounds i8, ptr addrspace(11) %19, i32 8, !dbg !949 %.stop_ptr.unbox = load i64, ptr addrspace(11) %.stop_ptr, align 8, !dbg !960, !tbaa !125, !alias.scope !128, !noalias !131 %.unbox = load i64, ptr addrspace(11) %19, align 8, !dbg !960, !tbaa !125, !alias.scope !128, !noalias !131 %20 = sub i64 %.stop_ptr.unbox, %.unbox, !dbg !960 %21 = add i64 1, %20, !dbg !963 %22 = add i64 %21, 1, !dbg !965 br label %L10, !dbg !965 L10: ; preds = %top %23 = getelementptr inbounds i8, ptr addrspace(11) %"v::SubArray", i32 8, !dbg !966 %.stop_ptr1 = getelementptr inbounds i8, ptr addrspace(11) %23, i32 8, !dbg !971 %.stop_ptr1.unbox = load i64, ptr addrspace(11) %.stop_ptr1, align 8, !dbg !977, !tbaa !125, !alias.scope !128, !noalias !131 %.unbox2 = load i64, ptr addrspace(11) %23, align 8, !dbg !977, !tbaa !125, !alias.scope !128, !noalias !131 %24 = sub i64 %.stop_ptr1.unbox, %.unbox2, !dbg !977 %25 = add i64 1, %24, !dbg !979 %26 = icmp eq i64 %22, %25, !dbg !980 %27 = xor i1 %26, true, !dbg !970 br i1 %27, label %L668, label %L18, !dbg !970 L18: ; preds = %L10 br i1 false, label %L37, label %L21, !dbg !982 L21: ; preds = %L18 %28 = getelementptr inbounds i8, ptr %"new::Tuple", i32 0, !dbg !982 call void @llvm.memcpy.p0.p0.i64(ptr align 8 %28, ptr align 8 @_j_const_5_4, i64 8, i1 false), !dbg !982, !tbaa !140, !alias.scope !586, !noalias !587 %29 = getelementptr inbounds i8, ptr addrspace(11) %"v::SubArray", i32 8, !dbg !985 %.stop_ptr3 = getelementptr inbounds i8, ptr addrspace(11) %29, i32 8, !dbg !993 %.stop_ptr3.unbox = load i64, ptr addrspace(11) %.stop_ptr3, align 8, !dbg !1002, !tbaa !125, !alias.scope !128, !noalias !131 %.unbox4 = load i64, ptr addrspace(11) %29, align 8, !dbg !1002, !tbaa !125, !alias.scope !128, !noalias !131 %30 = sub i64 %.stop_ptr3.unbox, %.unbox4, !dbg !1002 %31 = add i64 1, %30, !dbg !1004 %32 = icmp ult i64 0, %31, !dbg !1005 %33 = xor i1 %32, true, !dbg !992 br i1 %33, label %L34, label %L33, !dbg !992 L33: ; preds = %L21 br label %L36, !dbg !992 L34: ; preds = %L21 %34 = getelementptr inbounds i8, ptr %13, i32 0, !dbg !992 store ptr addrspace(10) %16, ptr %34, align 8, !dbg !992 %35 = addrspacecast ptr %"new::Tuple" to ptr addrspace(11), !dbg !992 call void @julia_throw_boundserror_54835(ptr addrspace(11) nocapture readonly %"v::SubArray", ptr nocapture readonly %13, ptr addrspace(11) nocapture readonly %35) #133, !dbg !992 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !992 unreachable, !dbg !992 L36: ; preds = %L33 br label %L37, !dbg !992 L37: ; preds = %L36, %L18 %36 = getelementptr inbounds i8, ptr addrspace(11) %"v::SubArray", i32 24, !dbg !1009 %.unbox5 = load i64, ptr addrspace(11) %36, align 8, !dbg !1013, !tbaa !125, !alias.scope !128, !noalias !131 %37 = add i64 %.unbox5, 1, !dbg !1013 br i1 false, label %L54, label %L43, !dbg !1014 L43: ; preds = %L37 %38 = sub i64 %37, 1, !dbg !1018 %39 = addrspacecast ptr addrspace(10) %16 to ptr addrspace(11), !dbg !1020 %.size_ptr = getelementptr inbounds i8, ptr addrspace(11) %39, i32 16, !dbg !1020 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %.size, ptr addrspace(11) align 8 %.size_ptr, i64 8, i1 false), !dbg !1020, !tbaa !140, !alias.scope !303, !noalias !304 %bitcast = load i64, ptr %.size, align 8, !dbg !1018, !tbaa !305, !alias.scope !307, !noalias !308 %40 = icmp ult i64 %38, %bitcast, !dbg !1018 %41 = xor i1 %40, true, !dbg !1014 br i1 %41, label %L51, label %L50, !dbg !1014 L50: ; preds = %L43 br label %L54, !dbg !1014 L51: ; preds = %L43 %42 = getelementptr inbounds i8, ptr %"new::Tuple519", i32 0, !dbg !1014 store i64 %37, ptr %42, align 8, !dbg !1014, !tbaa !305, !alias.scope !307, !noalias !308 %43 = addrspacecast ptr %"new::Tuple519" to ptr addrspace(11), !dbg !1014 call void @julia_throw_boundserror_54709(ptr addrspace(10) %16, ptr addrspace(11) nocapture readonly %43) #133, !dbg !1014 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !1014 unreachable, !dbg !1014 L54: ; preds = %L50, %L37 %44 = addrspacecast ptr addrspace(10) %16 to ptr addrspace(11), !dbg !1023 %45 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %44, i32 0, i32 0, !dbg !1023 %memoryref_data = load ptr, ptr addrspace(11) %45, align 8, !dbg !1023, !tbaa !310, !alias.scope !313, !noalias !314 %46 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %44, i32 0, i32 1, !dbg !1023 %memoryref_mem = load ptr addrspace(10), ptr addrspace(11) %46, align 8, !dbg !1023, !tbaa !310, !alias.scope !313, !noalias !314, !dereferenceable_or_null !139, !align !137 %47 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data, 0, !dbg !1023 %.ref = insertvalue { ptr, ptr addrspace(10) } %47, ptr addrspace(10) %memoryref_mem, 1, !dbg !1023 %memoryref_offset = sub i64 %37, 1, !dbg !1024 %48 = addrspacecast ptr addrspace(10) %memoryref_mem to ptr addrspace(11), !dbg !1024 %49 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %48, i32 0, i32 0, !dbg !1024 %memory_len = load i64, ptr addrspace(11) %49, align 8, !dbg !1024, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %50 = add nuw i64 %memory_len, %memory_len, !dbg !1024 %51 = add i64 %memoryref_offset, %memory_len, !dbg !1024 %memoryref_ovflw = icmp uge i64 %51, %50, !dbg !1024 %memoryref_byteoffset = mul i64 %memoryref_offset, 8, !dbg !1024 %memoryref_data_byteoffset = getelementptr i8, ptr %memoryref_data, i64 %memoryref_byteoffset, !dbg !1024 %52 = addrspacecast ptr addrspace(10) %memoryref_mem to ptr addrspace(11), !dbg !1024 %53 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %52, i32 0, i32 0, !dbg !1024 %memory_len6 = load i64, ptr addrspace(11) %53, align 8, !dbg !1024, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %54 = addrspacecast ptr addrspace(10) %memoryref_mem to ptr addrspace(11), !dbg !1024 %memory_data_ptr = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %54, i32 0, i32 1, !dbg !1024 %memory_data = load ptr, ptr addrspace(11) %memory_data_ptr, align 8, !dbg !1024, !tbaa !318, !alias.scope !313, !noalias !314, !nonnull !0 %55 = ptrtoint ptr %memory_data to i64, !dbg !1024 %56 = ptrtoint ptr %memoryref_data_byteoffset to i64, !dbg !1024 %57 = sub i64 %56, %55, !dbg !1024 %memoryref_bytelen = mul nuw nsw i64 %memory_len6, 8, !dbg !1024 %memoryref_isinbounds = icmp ult i64 %57, %memoryref_bytelen, !dbg !1024 %58 = xor i1 %memoryref_ovflw, true, !dbg !1024 %"memoryref_isinbounds¬ovflw" = and i1 %58, %memoryref_isinbounds, !dbg !1024 br i1 %"memoryref_isinbounds¬ovflw", label %idxend, label %oob, !dbg !1024 L58: ; preds = %load br label %L59, !dbg !1016 L59: ; preds = %L58 br label %L60, !dbg !1016 L60: ; preds = %L59 %59 = icmp slt i64 1, %22, !dbg !1025 %60 = xor i1 %59, true, !dbg !1028 br i1 %60, label %L667, label %L62, !dbg !1028 L62: ; preds = %L60 br i1 false, label %L80, label %L64, !dbg !1029 L64: ; preds = %L62 %61 = getelementptr inbounds i8, ptr %"new::Tuple11", i32 0, !dbg !1029 call void @llvm.memcpy.p0.p0.i64(ptr align 8 %61, ptr align 8 @_j_const_5_4, i64 8, i1 false), !dbg !1029, !tbaa !140, !alias.scope !586, !noalias !587 %62 = getelementptr inbounds i8, ptr addrspace(11) %"v::SubArray", i32 8, !dbg !1032 %.stop_ptr12 = getelementptr inbounds i8, ptr addrspace(11) %62, i32 8, !dbg !1037 %.stop_ptr12.unbox = load i64, ptr addrspace(11) %.stop_ptr12, align 8, !dbg !1044, !tbaa !125, !alias.scope !128, !noalias !131 %.unbox13 = load i64, ptr addrspace(11) %62, align 8, !dbg !1044, !tbaa !125, !alias.scope !128, !noalias !131 %63 = sub i64 %.stop_ptr12.unbox, %.unbox13, !dbg !1044 %64 = add i64 1, %63, !dbg !1046 %65 = icmp ult i64 0, %64, !dbg !1047 %66 = xor i1 %65, true, !dbg !1036 br i1 %66, label %L77, label %L76, !dbg !1036 L76: ; preds = %L64 br label %L79, !dbg !1036 L77: ; preds = %L64 %67 = getelementptr inbounds i8, ptr %12, i32 0, !dbg !1036 store ptr addrspace(10) %16, ptr %67, align 8, !dbg !1036 %68 = addrspacecast ptr %"new::Tuple11" to ptr addrspace(11), !dbg !1036 call void @julia_throw_boundserror_54835(ptr addrspace(11) nocapture readonly %"v::SubArray", ptr nocapture readonly %12, ptr addrspace(11) nocapture readonly %68) #133, !dbg !1036 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !1036 unreachable, !dbg !1036 L79: ; preds = %L76 br label %L80, !dbg !1036 L80: ; preds = %L79, %L62 %69 = getelementptr inbounds i8, ptr addrspace(11) %"v::SubArray", i32 24, !dbg !1049 %.unbox14 = load i64, ptr addrspace(11) %69, align 8, !dbg !1052, !tbaa !125, !alias.scope !128, !noalias !131 %70 = add i64 %.unbox14, 1, !dbg !1052 br i1 false, label %L97, label %L85, !dbg !1053 L85: ; preds = %L80 %71 = sub i64 %70, 1, !dbg !1055 %72 = addrspacecast ptr addrspace(10) %16 to ptr addrspace(11), !dbg !1057 %.size_ptr15 = getelementptr inbounds i8, ptr addrspace(11) %72, i32 16, !dbg !1057 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %.size16, ptr addrspace(11) align 8 %.size_ptr15, i64 8, i1 false), !dbg !1057, !tbaa !140, !alias.scope !303, !noalias !304 %bitcast17 = load i64, ptr %.size16, align 8, !dbg !1055, !tbaa !305, !alias.scope !307, !noalias !308 %73 = icmp ult i64 %71, %bitcast17, !dbg !1055 %74 = xor i1 %73, true, !dbg !1056 br i1 %74, label %L93, label %L92, !dbg !1056 L92: ; preds = %L85 br label %L96, !dbg !1056 L93: ; preds = %L85 %75 = getelementptr inbounds i8, ptr %"new::Tuple514", i32 0, !dbg !1056 store i64 %70, ptr %75, align 8, !dbg !1056, !tbaa !305, !alias.scope !307, !noalias !308 %76 = addrspacecast ptr %"new::Tuple514" to ptr addrspace(11), !dbg !1056 call void @julia_throw_boundserror_54709(ptr addrspace(10) %16, ptr addrspace(11) nocapture readonly %76) #133, !dbg !1056 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !1056 unreachable, !dbg !1056 L96: ; preds = %L92 br label %L97, !dbg !1056 L97: ; preds = %L96, %L80 %77 = addrspacecast ptr addrspace(10) %16 to ptr addrspace(11), !dbg !1059 %78 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %77, i32 0, i32 0, !dbg !1059 %memoryref_data19 = load ptr, ptr addrspace(11) %78, align 8, !dbg !1059, !tbaa !310, !alias.scope !313, !noalias !314 %79 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %77, i32 0, i32 1, !dbg !1059 %memoryref_mem39 = load ptr addrspace(10), ptr addrspace(11) %79, align 8, !dbg !1059, !tbaa !310, !alias.scope !313, !noalias !314, !dereferenceable_or_null !139, !align !137 %80 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data19, 0, !dbg !1059 %.ref18 = insertvalue { ptr, ptr addrspace(10) } %80, ptr addrspace(10) %memoryref_mem39, 1, !dbg !1059 %memoryref_offset21 = sub i64 %70, 1, !dbg !1059 %81 = addrspacecast ptr addrspace(10) %memoryref_mem39 to ptr addrspace(11), !dbg !1059 %82 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %81, i32 0, i32 0, !dbg !1059 %memory_len22 = load i64, ptr addrspace(11) %82, align 8, !dbg !1059, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %83 = add nuw i64 %memory_len22, %memory_len22, !dbg !1059 %84 = add i64 %memoryref_offset21, %memory_len22, !dbg !1059 %memoryref_ovflw23 = icmp uge i64 %84, %83, !dbg !1059 %memoryref_byteoffset24 = mul i64 %memoryref_offset21, 8, !dbg !1059 %memoryref_data_byteoffset25 = getelementptr i8, ptr %memoryref_data19, i64 %memoryref_byteoffset24, !dbg !1059 %85 = addrspacecast ptr addrspace(10) %memoryref_mem39 to ptr addrspace(11), !dbg !1059 %86 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %85, i32 0, i32 0, !dbg !1059 %memory_len26 = load i64, ptr addrspace(11) %86, align 8, !dbg !1059, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %87 = addrspacecast ptr addrspace(10) %memoryref_mem39 to ptr addrspace(11), !dbg !1059 %memory_data_ptr27 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %87, i32 0, i32 1, !dbg !1059 %memory_data28 = load ptr, ptr addrspace(11) %memory_data_ptr27, align 8, !dbg !1059, !tbaa !318, !alias.scope !313, !noalias !314, !nonnull !0 %88 = ptrtoint ptr %memory_data28 to i64, !dbg !1059 %89 = ptrtoint ptr %memoryref_data_byteoffset25 to i64, !dbg !1059 %90 = sub i64 %89, %88, !dbg !1059 %memoryref_bytelen29 = mul nuw nsw i64 %memory_len26, 8, !dbg !1059 %memoryref_isinbounds30 = icmp ult i64 %90, %memoryref_bytelen29, !dbg !1059 %91 = xor i1 %memoryref_ovflw23, true, !dbg !1059 %"memoryref_isinbounds¬ovflw31" = and i1 %91, %memoryref_isinbounds30, !dbg !1059 br i1 %"memoryref_isinbounds¬ovflw31", label %idxend37, label %oob32, !dbg !1059 L101: ; preds = %load42 br label %L102, !dbg !1059 L102: ; preds = %L101 br i1 false, label %L120, label %L104, !dbg !1060 L104: ; preds = %L102 %92 = getelementptr inbounds i8, ptr %"new::Tuple44", i32 0, !dbg !1060 call void @llvm.memcpy.p0.p0.i64(ptr align 8 %92, ptr align 8 @_j_const_5_4, i64 8, i1 false), !dbg !1060, !tbaa !140, !alias.scope !586, !noalias !587 %93 = getelementptr inbounds i8, ptr addrspace(11) %"v::SubArray", i32 8, !dbg !1062 %.stop_ptr45 = getelementptr inbounds i8, ptr addrspace(11) %93, i32 8, !dbg !1067 %.stop_ptr45.unbox = load i64, ptr addrspace(11) %.stop_ptr45, align 8, !dbg !1074, !tbaa !125, !alias.scope !128, !noalias !131 %.unbox46 = load i64, ptr addrspace(11) %93, align 8, !dbg !1074, !tbaa !125, !alias.scope !128, !noalias !131 %94 = sub i64 %.stop_ptr45.unbox, %.unbox46, !dbg !1074 %95 = add i64 1, %94, !dbg !1076 %96 = icmp ult i64 0, %95, !dbg !1077 %97 = xor i1 %96, true, !dbg !1066 br i1 %97, label %L117, label %L116, !dbg !1066 L116: ; preds = %L104 br label %L119, !dbg !1066 L117: ; preds = %L104 %98 = getelementptr inbounds i8, ptr %11, i32 0, !dbg !1066 store ptr addrspace(10) %16, ptr %98, align 8, !dbg !1066 %99 = addrspacecast ptr %"new::Tuple44" to ptr addrspace(11), !dbg !1066 call void @julia_throw_boundserror_54835(ptr addrspace(11) nocapture readonly %"v::SubArray", ptr nocapture readonly %11, ptr addrspace(11) nocapture readonly %99) #133, !dbg !1066 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !1066 unreachable, !dbg !1066 L119: ; preds = %L116 br label %L120, !dbg !1066 L120: ; preds = %L119, %L102 %100 = getelementptr inbounds i8, ptr addrspace(11) %"v::SubArray", i32 24, !dbg !1079 %.unbox47 = load i64, ptr addrspace(11) %100, align 8, !dbg !1082, !tbaa !125, !alias.scope !128, !noalias !131 %101 = add i64 %.unbox47, 1, !dbg !1082 br i1 false, label %L137, label %L125, !dbg !1083 L125: ; preds = %L120 %102 = sub i64 %101, 1, !dbg !1084 %103 = addrspacecast ptr addrspace(10) %16 to ptr addrspace(11), !dbg !1086 %.size_ptr48 = getelementptr inbounds i8, ptr addrspace(11) %103, i32 16, !dbg !1086 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %.size49, ptr addrspace(11) align 8 %.size_ptr48, i64 8, i1 false), !dbg !1086, !tbaa !140, !alias.scope !303, !noalias !304 %bitcast50 = load i64, ptr %.size49, align 8, !dbg !1084, !tbaa !305, !alias.scope !307, !noalias !308 %104 = icmp ult i64 %102, %bitcast50, !dbg !1084 %105 = xor i1 %104, true, !dbg !1085 br i1 %105, label %L133, label %L132, !dbg !1085 L132: ; preds = %L125 br label %L136, !dbg !1085 L133: ; preds = %L125 %106 = getelementptr inbounds i8, ptr %"new::Tuple509", i32 0, !dbg !1085 store i64 %101, ptr %106, align 8, !dbg !1085, !tbaa !305, !alias.scope !307, !noalias !308 %107 = addrspacecast ptr %"new::Tuple509" to ptr addrspace(11), !dbg !1085 call void @julia_throw_boundserror_54709(ptr addrspace(10) %16, ptr addrspace(11) nocapture readonly %107) #133, !dbg !1085 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !1085 unreachable, !dbg !1085 L136: ; preds = %L132 br label %L137, !dbg !1085 L137: ; preds = %L136, %L120 %108 = addrspacecast ptr addrspace(10) %16 to ptr addrspace(11), !dbg !1088 %109 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %108, i32 0, i32 0, !dbg !1088 %memoryref_data52 = load ptr, ptr addrspace(11) %109, align 8, !dbg !1088, !tbaa !310, !alias.scope !313, !noalias !314 %110 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %108, i32 0, i32 1, !dbg !1088 %memoryref_mem72 = load ptr addrspace(10), ptr addrspace(11) %110, align 8, !dbg !1088, !tbaa !310, !alias.scope !313, !noalias !314, !dereferenceable_or_null !139, !align !137 %111 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data52, 0, !dbg !1088 %.ref51 = insertvalue { ptr, ptr addrspace(10) } %111, ptr addrspace(10) %memoryref_mem72, 1, !dbg !1088 %memoryref_offset54 = sub i64 %101, 1, !dbg !1088 %112 = addrspacecast ptr addrspace(10) %memoryref_mem72 to ptr addrspace(11), !dbg !1088 %113 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %112, i32 0, i32 0, !dbg !1088 %memory_len55 = load i64, ptr addrspace(11) %113, align 8, !dbg !1088, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %114 = add nuw i64 %memory_len55, %memory_len55, !dbg !1088 %115 = add i64 %memoryref_offset54, %memory_len55, !dbg !1088 %memoryref_ovflw56 = icmp uge i64 %115, %114, !dbg !1088 %memoryref_byteoffset57 = mul i64 %memoryref_offset54, 8, !dbg !1088 %memoryref_data_byteoffset58 = getelementptr i8, ptr %memoryref_data52, i64 %memoryref_byteoffset57, !dbg !1088 %116 = addrspacecast ptr addrspace(10) %memoryref_mem72 to ptr addrspace(11), !dbg !1088 %117 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %116, i32 0, i32 0, !dbg !1088 %memory_len59 = load i64, ptr addrspace(11) %117, align 8, !dbg !1088, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %118 = addrspacecast ptr addrspace(10) %memoryref_mem72 to ptr addrspace(11), !dbg !1088 %memory_data_ptr60 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %118, i32 0, i32 1, !dbg !1088 %memory_data61 = load ptr, ptr addrspace(11) %memory_data_ptr60, align 8, !dbg !1088, !tbaa !318, !alias.scope !313, !noalias !314, !nonnull !0 %119 = ptrtoint ptr %memory_data61 to i64, !dbg !1088 %120 = ptrtoint ptr %memoryref_data_byteoffset58 to i64, !dbg !1088 %121 = sub i64 %120, %119, !dbg !1088 %memoryref_bytelen62 = mul nuw nsw i64 %memory_len59, 8, !dbg !1088 %memoryref_isinbounds63 = icmp ult i64 %121, %memoryref_bytelen62, !dbg !1088 %122 = xor i1 %memoryref_ovflw56, true, !dbg !1088 %"memoryref_isinbounds¬ovflw64" = and i1 %122, %memoryref_isinbounds63, !dbg !1088 br i1 %"memoryref_isinbounds¬ovflw64", label %idxend70, label %oob65, !dbg !1088 L141: ; preds = %load75 br label %L142, !dbg !1088 L142: ; preds = %L141 %123 = fmul double %"\CE\BB::Float64", %558, !dbg !1089 br i1 false, label %L162, label %L146, !dbg !1060 L146: ; preds = %L142 %124 = getelementptr inbounds i8, ptr %"new::Tuple77", i32 0, !dbg !1060 call void @llvm.memcpy.p0.p0.i64(ptr align 8 %124, ptr align 8 @_j_const_5_4, i64 8, i1 false), !dbg !1060, !tbaa !140, !alias.scope !586, !noalias !587 %125 = getelementptr inbounds i8, ptr addrspace(11) %"H::HollowSymTridiagonal", i32 8, !dbg !1062 %.stop_ptr78 = getelementptr inbounds i8, ptr addrspace(11) %125, i32 8, !dbg !1067 %.stop_ptr78.unbox = load i64, ptr addrspace(11) %.stop_ptr78, align 8, !dbg !1074, !tbaa !125, !alias.scope !128, !noalias !131 %.unbox79 = load i64, ptr addrspace(11) %125, align 8, !dbg !1074, !tbaa !125, !alias.scope !128, !noalias !131 %126 = sub i64 %.stop_ptr78.unbox, %.unbox79, !dbg !1074 %127 = add i64 1, %126, !dbg !1076 %128 = icmp ult i64 0, %127, !dbg !1077 %129 = xor i1 %128, true, !dbg !1066 br i1 %129, label %L159, label %L158, !dbg !1066 L158: ; preds = %L146 br label %L161, !dbg !1066 L159: ; preds = %L146 %130 = getelementptr inbounds i8, ptr %10, i32 0, !dbg !1066 store ptr addrspace(10) %18, ptr %130, align 8, !dbg !1066 %131 = addrspacecast ptr %"new::Tuple77" to ptr addrspace(11), !dbg !1066 call void @julia_throw_boundserror_54835(ptr addrspace(11) nocapture readonly %"H::HollowSymTridiagonal", ptr nocapture readonly %10, ptr addrspace(11) nocapture readonly %131) #133, !dbg !1066 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !1066 unreachable, !dbg !1066 L161: ; preds = %L158 br label %L162, !dbg !1066 L162: ; preds = %L161, %L142 %132 = getelementptr inbounds i8, ptr addrspace(11) %"H::HollowSymTridiagonal", i32 24, !dbg !1079 %.unbox80 = load i64, ptr addrspace(11) %132, align 8, !dbg !1082, !tbaa !125, !alias.scope !128, !noalias !131 %133 = add i64 %.unbox80, 1, !dbg !1082 br i1 false, label %L179, label %L167, !dbg !1083 L167: ; preds = %L162 %134 = sub i64 %133, 1, !dbg !1084 %135 = addrspacecast ptr addrspace(10) %18 to ptr addrspace(11), !dbg !1086 %.size_ptr81 = getelementptr inbounds i8, ptr addrspace(11) %135, i32 16, !dbg !1086 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %.size82, ptr addrspace(11) align 8 %.size_ptr81, i64 8, i1 false), !dbg !1086, !tbaa !140, !alias.scope !303, !noalias !304 %bitcast83 = load i64, ptr %.size82, align 8, !dbg !1084, !tbaa !305, !alias.scope !307, !noalias !308 %136 = icmp ult i64 %134, %bitcast83, !dbg !1084 %137 = xor i1 %136, true, !dbg !1085 br i1 %137, label %L175, label %L174, !dbg !1085 L174: ; preds = %L167 br label %L178, !dbg !1085 L175: ; preds = %L167 %138 = getelementptr inbounds i8, ptr %"new::Tuple504", i32 0, !dbg !1085 store i64 %133, ptr %138, align 8, !dbg !1085, !tbaa !305, !alias.scope !307, !noalias !308 %139 = addrspacecast ptr %"new::Tuple504" to ptr addrspace(11), !dbg !1085 call void @julia_throw_boundserror_54709(ptr addrspace(10) %18, ptr addrspace(11) nocapture readonly %139) #133, !dbg !1085 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !1085 unreachable, !dbg !1085 L178: ; preds = %L174 br label %L179, !dbg !1085 L179: ; preds = %L178, %L162 %140 = addrspacecast ptr addrspace(10) %18 to ptr addrspace(11), !dbg !1088 %141 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %140, i32 0, i32 0, !dbg !1088 %memoryref_data85 = load ptr, ptr addrspace(11) %141, align 8, !dbg !1088, !tbaa !310, !alias.scope !313, !noalias !314 %142 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %140, i32 0, i32 1, !dbg !1088 %memoryref_mem105 = load ptr addrspace(10), ptr addrspace(11) %142, align 8, !dbg !1088, !tbaa !310, !alias.scope !313, !noalias !314, !dereferenceable_or_null !139, !align !137 %143 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data85, 0, !dbg !1088 %.ref84 = insertvalue { ptr, ptr addrspace(10) } %143, ptr addrspace(10) %memoryref_mem105, 1, !dbg !1088 %memoryref_offset87 = sub i64 %133, 1, !dbg !1088 %144 = addrspacecast ptr addrspace(10) %memoryref_mem105 to ptr addrspace(11), !dbg !1088 %145 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %144, i32 0, i32 0, !dbg !1088 %memory_len88 = load i64, ptr addrspace(11) %145, align 8, !dbg !1088, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %146 = add nuw i64 %memory_len88, %memory_len88, !dbg !1088 %147 = add i64 %memoryref_offset87, %memory_len88, !dbg !1088 %memoryref_ovflw89 = icmp uge i64 %147, %146, !dbg !1088 %memoryref_byteoffset90 = mul i64 %memoryref_offset87, 8, !dbg !1088 %memoryref_data_byteoffset91 = getelementptr i8, ptr %memoryref_data85, i64 %memoryref_byteoffset90, !dbg !1088 %148 = addrspacecast ptr addrspace(10) %memoryref_mem105 to ptr addrspace(11), !dbg !1088 %149 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %148, i32 0, i32 0, !dbg !1088 %memory_len92 = load i64, ptr addrspace(11) %149, align 8, !dbg !1088, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %150 = addrspacecast ptr addrspace(10) %memoryref_mem105 to ptr addrspace(11), !dbg !1088 %memory_data_ptr93 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %150, i32 0, i32 1, !dbg !1088 %memory_data94 = load ptr, ptr addrspace(11) %memory_data_ptr93, align 8, !dbg !1088, !tbaa !318, !alias.scope !313, !noalias !314, !nonnull !0 %151 = ptrtoint ptr %memory_data94 to i64, !dbg !1088 %152 = ptrtoint ptr %memoryref_data_byteoffset91 to i64, !dbg !1088 %153 = sub i64 %152, %151, !dbg !1088 %memoryref_bytelen95 = mul nuw nsw i64 %memory_len92, 8, !dbg !1088 %memoryref_isinbounds96 = icmp ult i64 %153, %memoryref_bytelen95, !dbg !1088 %154 = xor i1 %memoryref_ovflw89, true, !dbg !1088 %"memoryref_isinbounds¬ovflw97" = and i1 %154, %memoryref_isinbounds96, !dbg !1088 br i1 %"memoryref_isinbounds¬ovflw97", label %idxend103, label %oob98, !dbg !1088 L183: ; preds = %load108 br label %L184, !dbg !1088 L184: ; preds = %L183 %155 = fdiv double %123, %569, !dbg !1091 br i1 false, label %L203, label %L187, !dbg !1093 L187: ; preds = %L184 %156 = getelementptr inbounds i8, ptr %"new::Tuple110", i32 0, !dbg !1093 call void @llvm.memcpy.p0.p0.i64(ptr align 8 %156, ptr align 8 @_j_const_13, i64 8, i1 false), !dbg !1093, !tbaa !140, !alias.scope !586, !noalias !587 %157 = getelementptr inbounds i8, ptr addrspace(11) %"v::SubArray", i32 8, !dbg !1094 %.stop_ptr111 = getelementptr inbounds i8, ptr addrspace(11) %157, i32 8, !dbg !1099 %.stop_ptr111.unbox = load i64, ptr addrspace(11) %.stop_ptr111, align 8, !dbg !1106, !tbaa !125, !alias.scope !128, !noalias !131 %.unbox112 = load i64, ptr addrspace(11) %157, align 8, !dbg !1106, !tbaa !125, !alias.scope !128, !noalias !131 %158 = sub i64 %.stop_ptr111.unbox, %.unbox112, !dbg !1106 %159 = add i64 1, %158, !dbg !1108 %160 = icmp ult i64 1, %159, !dbg !1109 %161 = xor i1 %160, true, !dbg !1098 br i1 %161, label %L200, label %L199, !dbg !1098 L199: ; preds = %L187 br label %L202, !dbg !1098 L200: ; preds = %L187 %162 = getelementptr inbounds i8, ptr %9, i32 0, !dbg !1098 store ptr addrspace(10) %16, ptr %162, align 8, !dbg !1098 %163 = addrspacecast ptr %"new::Tuple110" to ptr addrspace(11), !dbg !1098 call void @julia_throw_boundserror_54835(ptr addrspace(11) nocapture readonly %"v::SubArray", ptr nocapture readonly %9, ptr addrspace(11) nocapture readonly %163) #133, !dbg !1098 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !1098 unreachable, !dbg !1098 L202: ; preds = %L199 br label %L203, !dbg !1098 L203: ; preds = %L202, %L184 %164 = getelementptr inbounds i8, ptr addrspace(11) %"v::SubArray", i32 24, !dbg !1111 %.unbox113 = load i64, ptr addrspace(11) %164, align 8, !dbg !1114, !tbaa !125, !alias.scope !128, !noalias !131 %165 = add i64 %.unbox113, 2, !dbg !1114 br i1 false, label %L219, label %L208, !dbg !1115 L208: ; preds = %L203 %166 = sub i64 %165, 1, !dbg !1117 %167 = addrspacecast ptr addrspace(10) %16 to ptr addrspace(11), !dbg !1118 %.size_ptr114 = getelementptr inbounds i8, ptr addrspace(11) %167, i32 16, !dbg !1118 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %.size115, ptr addrspace(11) align 8 %.size_ptr114, i64 8, i1 false), !dbg !1118, !tbaa !140, !alias.scope !303, !noalias !304 %bitcast116 = load i64, ptr %.size115, align 8, !dbg !1117, !tbaa !305, !alias.scope !307, !noalias !308 %168 = icmp ult i64 %166, %bitcast116, !dbg !1117 %169 = xor i1 %168, true, !dbg !1115 br i1 %169, label %L216, label %L215, !dbg !1115 L215: ; preds = %L208 br label %L219, !dbg !1115 L216: ; preds = %L208 %170 = getelementptr inbounds i8, ptr %"new::Tuple499", i32 0, !dbg !1115 store i64 %165, ptr %170, align 8, !dbg !1115, !tbaa !305, !alias.scope !307, !noalias !308 %171 = addrspacecast ptr %"new::Tuple499" to ptr addrspace(11), !dbg !1115 call void @julia_throw_boundserror_54709(ptr addrspace(10) %16, ptr addrspace(11) nocapture readonly %171) #133, !dbg !1115 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !1115 unreachable, !dbg !1115 L219: ; preds = %L215, %L203 %172 = addrspacecast ptr addrspace(10) %16 to ptr addrspace(11), !dbg !1120 %173 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %172, i32 0, i32 0, !dbg !1120 %memoryref_data118 = load ptr, ptr addrspace(11) %173, align 8, !dbg !1120, !tbaa !310, !alias.scope !313, !noalias !314 %174 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %172, i32 0, i32 1, !dbg !1120 %memoryref_mem138 = load ptr addrspace(10), ptr addrspace(11) %174, align 8, !dbg !1120, !tbaa !310, !alias.scope !313, !noalias !314, !dereferenceable_or_null !139, !align !137 %175 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data118, 0, !dbg !1120 %.ref117 = insertvalue { ptr, ptr addrspace(10) } %175, ptr addrspace(10) %memoryref_mem138, 1, !dbg !1120 %memoryref_offset120 = sub i64 %165, 1, !dbg !1121 %176 = addrspacecast ptr addrspace(10) %memoryref_mem138 to ptr addrspace(11), !dbg !1121 %177 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %176, i32 0, i32 0, !dbg !1121 %memory_len121 = load i64, ptr addrspace(11) %177, align 8, !dbg !1121, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %178 = add nuw i64 %memory_len121, %memory_len121, !dbg !1121 %179 = add i64 %memoryref_offset120, %memory_len121, !dbg !1121 %memoryref_ovflw122 = icmp uge i64 %179, %178, !dbg !1121 %memoryref_byteoffset123 = mul i64 %memoryref_offset120, 8, !dbg !1121 %memoryref_data_byteoffset124 = getelementptr i8, ptr %memoryref_data118, i64 %memoryref_byteoffset123, !dbg !1121 %180 = addrspacecast ptr addrspace(10) %memoryref_mem138 to ptr addrspace(11), !dbg !1121 %181 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %180, i32 0, i32 0, !dbg !1121 %memory_len125 = load i64, ptr addrspace(11) %181, align 8, !dbg !1121, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %182 = addrspacecast ptr addrspace(10) %memoryref_mem138 to ptr addrspace(11), !dbg !1121 %memory_data_ptr126 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %182, i32 0, i32 1, !dbg !1121 %memory_data127 = load ptr, ptr addrspace(11) %memory_data_ptr126, align 8, !dbg !1121, !tbaa !318, !alias.scope !313, !noalias !314, !nonnull !0 %183 = ptrtoint ptr %memory_data127 to i64, !dbg !1121 %184 = ptrtoint ptr %memoryref_data_byteoffset124 to i64, !dbg !1121 %185 = sub i64 %184, %183, !dbg !1121 %memoryref_bytelen128 = mul nuw nsw i64 %memory_len125, 8, !dbg !1121 %memoryref_isinbounds129 = icmp ult i64 %185, %memoryref_bytelen128, !dbg !1121 %186 = xor i1 %memoryref_ovflw122, true, !dbg !1121 %"memoryref_isinbounds¬ovflw130" = and i1 %186, %memoryref_isinbounds129, !dbg !1121 br i1 %"memoryref_isinbounds¬ovflw130", label %idxend136, label %oob131, !dbg !1121 L223: ; preds = %load141 br label %L224, !dbg !1116 L224: ; preds = %L223 br label %L225, !dbg !1116 L225: ; preds = %L224 br i1 false, label %L243, label %L227, !dbg !1122 L227: ; preds = %L225 %187 = getelementptr inbounds i8, ptr %"new::Tuple143", i32 0, !dbg !1122 call void @llvm.memcpy.p0.p0.i64(ptr align 8 %187, ptr align 8 @_j_const_13, i64 8, i1 false), !dbg !1122, !tbaa !140, !alias.scope !586, !noalias !587 %188 = getelementptr inbounds i8, ptr addrspace(11) %"v::SubArray", i32 8, !dbg !1124 %.stop_ptr144 = getelementptr inbounds i8, ptr addrspace(11) %188, i32 8, !dbg !1129 %.stop_ptr144.unbox = load i64, ptr addrspace(11) %.stop_ptr144, align 8, !dbg !1136, !tbaa !125, !alias.scope !128, !noalias !131 %.unbox145 = load i64, ptr addrspace(11) %188, align 8, !dbg !1136, !tbaa !125, !alias.scope !128, !noalias !131 %189 = sub i64 %.stop_ptr144.unbox, %.unbox145, !dbg !1136 %190 = add i64 1, %189, !dbg !1138 %191 = icmp ult i64 1, %190, !dbg !1139 %192 = xor i1 %191, true, !dbg !1128 br i1 %192, label %L240, label %L239, !dbg !1128 L239: ; preds = %L227 br label %L242, !dbg !1128 L240: ; preds = %L227 %193 = getelementptr inbounds i8, ptr %8, i32 0, !dbg !1128 store ptr addrspace(10) %16, ptr %193, align 8, !dbg !1128 %194 = addrspacecast ptr %"new::Tuple143" to ptr addrspace(11), !dbg !1128 call void @julia_throw_boundserror_54835(ptr addrspace(11) nocapture readonly %"v::SubArray", ptr nocapture readonly %8, ptr addrspace(11) nocapture readonly %194) #133, !dbg !1128 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !1128 unreachable, !dbg !1128 L242: ; preds = %L239 br label %L243, !dbg !1128 L243: ; preds = %L242, %L225 %195 = getelementptr inbounds i8, ptr addrspace(11) %"v::SubArray", i32 24, !dbg !1141 %.unbox146 = load i64, ptr addrspace(11) %195, align 8, !dbg !1144, !tbaa !125, !alias.scope !128, !noalias !131 %196 = add i64 %.unbox146, 2, !dbg !1144 br i1 false, label %L260, label %L248, !dbg !1145 L248: ; preds = %L243 %197 = sub i64 %196, 1, !dbg !1146 %198 = addrspacecast ptr addrspace(10) %16 to ptr addrspace(11), !dbg !1148 %.size_ptr147 = getelementptr inbounds i8, ptr addrspace(11) %198, i32 16, !dbg !1148 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %.size148, ptr addrspace(11) align 8 %.size_ptr147, i64 8, i1 false), !dbg !1148, !tbaa !140, !alias.scope !303, !noalias !304 %bitcast149 = load i64, ptr %.size148, align 8, !dbg !1146, !tbaa !305, !alias.scope !307, !noalias !308 %199 = icmp ult i64 %197, %bitcast149, !dbg !1146 %200 = xor i1 %199, true, !dbg !1147 br i1 %200, label %L256, label %L255, !dbg !1147 L255: ; preds = %L248 br label %L259, !dbg !1147 L256: ; preds = %L248 %201 = getelementptr inbounds i8, ptr %"new::Tuple494", i32 0, !dbg !1147 store i64 %196, ptr %201, align 8, !dbg !1147, !tbaa !305, !alias.scope !307, !noalias !308 %202 = addrspacecast ptr %"new::Tuple494" to ptr addrspace(11), !dbg !1147 call void @julia_throw_boundserror_54709(ptr addrspace(10) %16, ptr addrspace(11) nocapture readonly %202) #133, !dbg !1147 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !1147 unreachable, !dbg !1147 L259: ; preds = %L255 br label %L260, !dbg !1147 L260: ; preds = %L259, %L243 %203 = addrspacecast ptr addrspace(10) %16 to ptr addrspace(11), !dbg !1150 %204 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %203, i32 0, i32 0, !dbg !1150 %memoryref_data151 = load ptr, ptr addrspace(11) %204, align 8, !dbg !1150, !tbaa !310, !alias.scope !313, !noalias !314 %205 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %203, i32 0, i32 1, !dbg !1150 %memoryref_mem171 = load ptr addrspace(10), ptr addrspace(11) %205, align 8, !dbg !1150, !tbaa !310, !alias.scope !313, !noalias !314, !dereferenceable_or_null !139, !align !137 %206 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data151, 0, !dbg !1150 %.ref150 = insertvalue { ptr, ptr addrspace(10) } %206, ptr addrspace(10) %memoryref_mem171, 1, !dbg !1150 %memoryref_offset153 = sub i64 %196, 1, !dbg !1150 %207 = addrspacecast ptr addrspace(10) %memoryref_mem171 to ptr addrspace(11), !dbg !1150 %208 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %207, i32 0, i32 0, !dbg !1150 %memory_len154 = load i64, ptr addrspace(11) %208, align 8, !dbg !1150, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %209 = add nuw i64 %memory_len154, %memory_len154, !dbg !1150 %210 = add i64 %memoryref_offset153, %memory_len154, !dbg !1150 %memoryref_ovflw155 = icmp uge i64 %210, %209, !dbg !1150 %memoryref_byteoffset156 = mul i64 %memoryref_offset153, 8, !dbg !1150 %memoryref_data_byteoffset157 = getelementptr i8, ptr %memoryref_data151, i64 %memoryref_byteoffset156, !dbg !1150 %211 = addrspacecast ptr addrspace(10) %memoryref_mem171 to ptr addrspace(11), !dbg !1150 %212 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %211, i32 0, i32 0, !dbg !1150 %memory_len158 = load i64, ptr addrspace(11) %212, align 8, !dbg !1150, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %213 = addrspacecast ptr addrspace(10) %memoryref_mem171 to ptr addrspace(11), !dbg !1150 %memory_data_ptr159 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %213, i32 0, i32 1, !dbg !1150 %memory_data160 = load ptr, ptr addrspace(11) %memory_data_ptr159, align 8, !dbg !1150, !tbaa !318, !alias.scope !313, !noalias !314, !nonnull !0 %214 = ptrtoint ptr %memory_data160 to i64, !dbg !1150 %215 = ptrtoint ptr %memoryref_data_byteoffset157 to i64, !dbg !1150 %216 = sub i64 %215, %214, !dbg !1150 %memoryref_bytelen161 = mul nuw nsw i64 %memory_len158, 8, !dbg !1150 %memoryref_isinbounds162 = icmp ult i64 %216, %memoryref_bytelen161, !dbg !1150 %217 = xor i1 %memoryref_ovflw155, true, !dbg !1150 %"memoryref_isinbounds¬ovflw163" = and i1 %217, %memoryref_isinbounds162, !dbg !1150 br i1 %"memoryref_isinbounds¬ovflw163", label %idxend169, label %oob164, !dbg !1150 L264: ; preds = %load174 br label %L265, !dbg !1150 L265: ; preds = %L264 %218 = fmul double %590, %590, !dbg !1151 %219 = fadd double %547, %218, !dbg !1154 %220 = icmp sle i64 3, %22, !dbg !1156 %221 = xor i1 %220, true, !dbg !1160 br i1 %221, label %L270, label %L269, !dbg !1160 L269: ; preds = %L265 br label %L271, !dbg !1160 L270: ; preds = %L265 br label %L271, !dbg !1167 L271: ; preds = %L270, %L269 %value_phi = phi i64 [ %22, %L269 ], [ 2, %L270 ] br label %L273, !dbg !1162 L273: ; preds = %L271 br label %L274, !dbg !1162 L274: ; preds = %L273 %222 = icmp slt i64 %value_phi, 3, !dbg !1170 %223 = xor i1 %222, true, !dbg !1174 br i1 %223, label %L277, label %L276, !dbg !1174 L276: ; preds = %L274 br label %L278, !dbg !1174 L277: ; preds = %L274 br label %L278, !dbg !1174 L278: ; preds = %L277, %L276 %value_phi176 = phi i8 [ 1, %L276 ], [ 0, %L277 ] %value_phi177 = phi i64 [ 3, %L277 ], [ undef, %L276 ] %value_phi178 = phi i64 [ 3, %L277 ], [ undef, %L276 ] %224 = trunc i8 %value_phi176 to i1, !dbg !1166 %225 = xor i1 %224, true, !dbg !1166 %226 = xor i1 %225, true, !dbg !1166 br i1 %226, label %L278.L549_crit_edge, label %L278.L283_crit_edge, !dbg !1166 L278.L549_crit_edge: ; preds = %L278 br label %L549, !dbg !1176 L278.L283_crit_edge: ; preds = %L278 br label %L283, !dbg !1174 L283: ; preds = %L278.L283_crit_edge, %L548 %value_phi179 = phi i64 [ %value_phi177, %L278.L283_crit_edge ], [ %value_phi380, %L548 ] %value_phi180 = phi i64 [ %value_phi178, %L278.L283_crit_edge ], [ %value_phi381, %L548 ] %value_phi181 = phi double [ %219, %L278.L283_crit_edge ], [ %428, %L548 ] %227 = sub i64 %value_phi179, 1, !dbg !1178 br i1 false, label %L305, label %L289, !dbg !1168 L289: ; preds = %L283 %228 = getelementptr inbounds i8, ptr %"new::Tuple182", i32 0, !dbg !1168 store i64 %227, ptr %228, align 8, !dbg !1168, !tbaa !305, !alias.scope !307, !noalias !308 %229 = getelementptr inbounds i8, ptr addrspace(11) %"v::SubArray", i32 8, !dbg !1179 %.stop_ptr183 = getelementptr inbounds i8, ptr addrspace(11) %229, i32 8, !dbg !1183 %.stop_ptr183.unbox = load i64, ptr addrspace(11) %.stop_ptr183, align 8, !dbg !1190, !tbaa !125, !alias.scope !128, !noalias !131 %.unbox184 = load i64, ptr addrspace(11) %229, align 8, !dbg !1190, !tbaa !125, !alias.scope !128, !noalias !131 %230 = sub i64 %.stop_ptr183.unbox, %.unbox184, !dbg !1190 %231 = add i64 1, %230, !dbg !1192 %232 = sub i64 %227, 1, !dbg !1193 %233 = icmp ult i64 %232, %231, !dbg !1195 %234 = xor i1 %233, true, !dbg !1167 br i1 %234, label %L302, label %L301, !dbg !1167 L301: ; preds = %L289 br label %L304, !dbg !1167 L302: ; preds = %L289 %235 = getelementptr inbounds i8, ptr %7, i32 0, !dbg !1167 store ptr addrspace(10) %16, ptr %235, align 8, !dbg !1167 %236 = addrspacecast ptr %"new::Tuple182" to ptr addrspace(11), !dbg !1167 call void @julia_throw_boundserror_54835(ptr addrspace(11) nocapture readonly %"v::SubArray", ptr nocapture readonly %7, ptr addrspace(11) nocapture readonly %236) #133, !dbg !1167 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !1167 unreachable, !dbg !1167 L304: ; preds = %L301 br label %L305, !dbg !1167 L305: ; preds = %L304, %L283 %237 = getelementptr inbounds i8, ptr addrspace(11) %"v::SubArray", i32 24, !dbg !1196 %.unbox185 = load i64, ptr addrspace(11) %237, align 8, !dbg !1199, !tbaa !125, !alias.scope !128, !noalias !131 %238 = add i64 %.unbox185, %227, !dbg !1199 br i1 false, label %L322, label %L310, !dbg !1200 L310: ; preds = %L305 %239 = sub i64 %238, 1, !dbg !1201 %240 = addrspacecast ptr addrspace(10) %16 to ptr addrspace(11), !dbg !1203 %.size_ptr186 = getelementptr inbounds i8, ptr addrspace(11) %240, i32 16, !dbg !1203 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %.size187, ptr addrspace(11) align 8 %.size_ptr186, i64 8, i1 false), !dbg !1203, !tbaa !140, !alias.scope !303, !noalias !304 %bitcast188 = load i64, ptr %.size187, align 8, !dbg !1201, !tbaa !305, !alias.scope !307, !noalias !308 %241 = icmp ult i64 %239, %bitcast188, !dbg !1201 %242 = xor i1 %241, true, !dbg !1202 br i1 %242, label %L318, label %L317, !dbg !1202 L317: ; preds = %L310 br label %L321, !dbg !1202 L318: ; preds = %L310 %243 = getelementptr inbounds i8, ptr %"new::Tuple489", i32 0, !dbg !1202 store i64 %238, ptr %243, align 8, !dbg !1202, !tbaa !305, !alias.scope !307, !noalias !308 %244 = addrspacecast ptr %"new::Tuple489" to ptr addrspace(11), !dbg !1202 call void @julia_throw_boundserror_54709(ptr addrspace(10) %16, ptr addrspace(11) nocapture readonly %244) #133, !dbg !1202 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !1202 unreachable, !dbg !1202 L321: ; preds = %L317 br label %L322, !dbg !1202 L322: ; preds = %L321, %L305 %245 = addrspacecast ptr addrspace(10) %16 to ptr addrspace(11), !dbg !1205 %246 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %245, i32 0, i32 0, !dbg !1205 %memoryref_data190 = load ptr, ptr addrspace(11) %246, align 8, !dbg !1205, !tbaa !310, !alias.scope !313, !noalias !314 %247 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %245, i32 0, i32 1, !dbg !1205 %memoryref_mem210 = load ptr addrspace(10), ptr addrspace(11) %247, align 8, !dbg !1205, !tbaa !310, !alias.scope !313, !noalias !314, !dereferenceable_or_null !139, !align !137 %248 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data190, 0, !dbg !1205 %.ref189 = insertvalue { ptr, ptr addrspace(10) } %248, ptr addrspace(10) %memoryref_mem210, 1, !dbg !1205 %memoryref_offset192 = sub i64 %238, 1, !dbg !1205 %249 = addrspacecast ptr addrspace(10) %memoryref_mem210 to ptr addrspace(11), !dbg !1205 %250 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %249, i32 0, i32 0, !dbg !1205 %memory_len193 = load i64, ptr addrspace(11) %250, align 8, !dbg !1205, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %251 = add nuw i64 %memory_len193, %memory_len193, !dbg !1205 %252 = add i64 %memoryref_offset192, %memory_len193, !dbg !1205 %memoryref_ovflw194 = icmp uge i64 %252, %251, !dbg !1205 %memoryref_byteoffset195 = mul i64 %memoryref_offset192, 8, !dbg !1205 %memoryref_data_byteoffset196 = getelementptr i8, ptr %memoryref_data190, i64 %memoryref_byteoffset195, !dbg !1205 %253 = addrspacecast ptr addrspace(10) %memoryref_mem210 to ptr addrspace(11), !dbg !1205 %254 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %253, i32 0, i32 0, !dbg !1205 %memory_len197 = load i64, ptr addrspace(11) %254, align 8, !dbg !1205, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %255 = addrspacecast ptr addrspace(10) %memoryref_mem210 to ptr addrspace(11), !dbg !1205 %memory_data_ptr198 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %255, i32 0, i32 1, !dbg !1205 %memory_data199 = load ptr, ptr addrspace(11) %memory_data_ptr198, align 8, !dbg !1205, !tbaa !318, !alias.scope !313, !noalias !314, !nonnull !0 %256 = ptrtoint ptr %memory_data199 to i64, !dbg !1205 %257 = ptrtoint ptr %memoryref_data_byteoffset196 to i64, !dbg !1205 %258 = sub i64 %257, %256, !dbg !1205 %memoryref_bytelen200 = mul nuw nsw i64 %memory_len197, 8, !dbg !1205 %memoryref_isinbounds201 = icmp ult i64 %258, %memoryref_bytelen200, !dbg !1205 %259 = xor i1 %memoryref_ovflw194, true, !dbg !1205 %"memoryref_isinbounds¬ovflw202" = and i1 %259, %memoryref_isinbounds201, !dbg !1205 br i1 %"memoryref_isinbounds¬ovflw202", label %idxend208, label %oob203, !dbg !1205 L326: ; preds = %load213 br label %L327, !dbg !1205 L327: ; preds = %L326 %260 = fmul double %"\CE\BB::Float64", %601, !dbg !1206 %261 = sub i64 %value_phi179, 2, !dbg !1178 br i1 false, label %L348, label %L332, !dbg !1168 L332: ; preds = %L327 %262 = getelementptr inbounds i8, ptr %"new::Tuple215", i32 0, !dbg !1168 store i64 %261, ptr %262, align 8, !dbg !1168, !tbaa !305, !alias.scope !307, !noalias !308 %263 = getelementptr inbounds i8, ptr addrspace(11) %"H::HollowSymTridiagonal", i32 8, !dbg !1179 %.stop_ptr216 = getelementptr inbounds i8, ptr addrspace(11) %263, i32 8, !dbg !1183 %.stop_ptr216.unbox = load i64, ptr addrspace(11) %.stop_ptr216, align 8, !dbg !1190, !tbaa !125, !alias.scope !128, !noalias !131 %.unbox217 = load i64, ptr addrspace(11) %263, align 8, !dbg !1190, !tbaa !125, !alias.scope !128, !noalias !131 %264 = sub i64 %.stop_ptr216.unbox, %.unbox217, !dbg !1190 %265 = add i64 1, %264, !dbg !1192 %266 = sub i64 %261, 1, !dbg !1193 %267 = icmp ult i64 %266, %265, !dbg !1195 %268 = xor i1 %267, true, !dbg !1167 br i1 %268, label %L345, label %L344, !dbg !1167 L344: ; preds = %L332 br label %L347, !dbg !1167 L345: ; preds = %L332 %269 = getelementptr inbounds i8, ptr %6, i32 0, !dbg !1167 store ptr addrspace(10) %18, ptr %269, align 8, !dbg !1167 %270 = addrspacecast ptr %"new::Tuple215" to ptr addrspace(11), !dbg !1167 call void @julia_throw_boundserror_54835(ptr addrspace(11) nocapture readonly %"H::HollowSymTridiagonal", ptr nocapture readonly %6, ptr addrspace(11) nocapture readonly %270) #133, !dbg !1167 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !1167 unreachable, !dbg !1167 L347: ; preds = %L344 br label %L348, !dbg !1167 L348: ; preds = %L347, %L327 %271 = getelementptr inbounds i8, ptr addrspace(11) %"H::HollowSymTridiagonal", i32 24, !dbg !1196 %.unbox218 = load i64, ptr addrspace(11) %271, align 8, !dbg !1199, !tbaa !125, !alias.scope !128, !noalias !131 %272 = add i64 %.unbox218, %261, !dbg !1199 br i1 false, label %L365, label %L353, !dbg !1200 L353: ; preds = %L348 %273 = sub i64 %272, 1, !dbg !1201 %274 = addrspacecast ptr addrspace(10) %18 to ptr addrspace(11), !dbg !1203 %.size_ptr219 = getelementptr inbounds i8, ptr addrspace(11) %274, i32 16, !dbg !1203 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %.size220, ptr addrspace(11) align 8 %.size_ptr219, i64 8, i1 false), !dbg !1203, !tbaa !140, !alias.scope !303, !noalias !304 %bitcast221 = load i64, ptr %.size220, align 8, !dbg !1201, !tbaa !305, !alias.scope !307, !noalias !308 %275 = icmp ult i64 %273, %bitcast221, !dbg !1201 %276 = xor i1 %275, true, !dbg !1202 br i1 %276, label %L361, label %L360, !dbg !1202 L360: ; preds = %L353 br label %L364, !dbg !1202 L361: ; preds = %L353 %277 = getelementptr inbounds i8, ptr %"new::Tuple484", i32 0, !dbg !1202 store i64 %272, ptr %277, align 8, !dbg !1202, !tbaa !305, !alias.scope !307, !noalias !308 %278 = addrspacecast ptr %"new::Tuple484" to ptr addrspace(11), !dbg !1202 call void @julia_throw_boundserror_54709(ptr addrspace(10) %18, ptr addrspace(11) nocapture readonly %278) #133, !dbg !1202 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !1202 unreachable, !dbg !1202 L364: ; preds = %L360 br label %L365, !dbg !1202 L365: ; preds = %L364, %L348 %279 = addrspacecast ptr addrspace(10) %18 to ptr addrspace(11), !dbg !1205 %280 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %279, i32 0, i32 0, !dbg !1205 %memoryref_data223 = load ptr, ptr addrspace(11) %280, align 8, !dbg !1205, !tbaa !310, !alias.scope !313, !noalias !314 %281 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %279, i32 0, i32 1, !dbg !1205 %memoryref_mem243 = load ptr addrspace(10), ptr addrspace(11) %281, align 8, !dbg !1205, !tbaa !310, !alias.scope !313, !noalias !314, !dereferenceable_or_null !139, !align !137 %282 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data223, 0, !dbg !1205 %.ref222 = insertvalue { ptr, ptr addrspace(10) } %282, ptr addrspace(10) %memoryref_mem243, 1, !dbg !1205 %memoryref_offset225 = sub i64 %272, 1, !dbg !1205 %283 = addrspacecast ptr addrspace(10) %memoryref_mem243 to ptr addrspace(11), !dbg !1205 %284 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %283, i32 0, i32 0, !dbg !1205 %memory_len226 = load i64, ptr addrspace(11) %284, align 8, !dbg !1205, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %285 = add nuw i64 %memory_len226, %memory_len226, !dbg !1205 %286 = add i64 %memoryref_offset225, %memory_len226, !dbg !1205 %memoryref_ovflw227 = icmp uge i64 %286, %285, !dbg !1205 %memoryref_byteoffset228 = mul i64 %memoryref_offset225, 8, !dbg !1205 %memoryref_data_byteoffset229 = getelementptr i8, ptr %memoryref_data223, i64 %memoryref_byteoffset228, !dbg !1205 %287 = addrspacecast ptr addrspace(10) %memoryref_mem243 to ptr addrspace(11), !dbg !1205 %288 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %287, i32 0, i32 0, !dbg !1205 %memory_len230 = load i64, ptr addrspace(11) %288, align 8, !dbg !1205, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %289 = addrspacecast ptr addrspace(10) %memoryref_mem243 to ptr addrspace(11), !dbg !1205 %memory_data_ptr231 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %289, i32 0, i32 1, !dbg !1205 %memory_data232 = load ptr, ptr addrspace(11) %memory_data_ptr231, align 8, !dbg !1205, !tbaa !318, !alias.scope !313, !noalias !314, !nonnull !0 %290 = ptrtoint ptr %memory_data232 to i64, !dbg !1205 %291 = ptrtoint ptr %memoryref_data_byteoffset229 to i64, !dbg !1205 %292 = sub i64 %291, %290, !dbg !1205 %memoryref_bytelen233 = mul nuw nsw i64 %memory_len230, 8, !dbg !1205 %memoryref_isinbounds234 = icmp ult i64 %292, %memoryref_bytelen233, !dbg !1205 %293 = xor i1 %memoryref_ovflw227, true, !dbg !1205 %"memoryref_isinbounds¬ovflw235" = and i1 %293, %memoryref_isinbounds234, !dbg !1205 br i1 %"memoryref_isinbounds¬ovflw235", label %idxend241, label %oob236, !dbg !1205 L369: ; preds = %load246 br label %L370, !dbg !1205 L370: ; preds = %L369 %294 = sub i64 %value_phi179, 2, !dbg !1178 br i1 false, label %L389, label %L373, !dbg !1168 L373: ; preds = %L370 %295 = getelementptr inbounds i8, ptr %"new::Tuple248", i32 0, !dbg !1168 store i64 %294, ptr %295, align 8, !dbg !1168, !tbaa !305, !alias.scope !307, !noalias !308 %296 = getelementptr inbounds i8, ptr addrspace(11) %"v::SubArray", i32 8, !dbg !1179 %.stop_ptr249 = getelementptr inbounds i8, ptr addrspace(11) %296, i32 8, !dbg !1183 %.stop_ptr249.unbox = load i64, ptr addrspace(11) %.stop_ptr249, align 8, !dbg !1190, !tbaa !125, !alias.scope !128, !noalias !131 %.unbox250 = load i64, ptr addrspace(11) %296, align 8, !dbg !1190, !tbaa !125, !alias.scope !128, !noalias !131 %297 = sub i64 %.stop_ptr249.unbox, %.unbox250, !dbg !1190 %298 = add i64 1, %297, !dbg !1192 %299 = sub i64 %294, 1, !dbg !1193 %300 = icmp ult i64 %299, %298, !dbg !1195 %301 = xor i1 %300, true, !dbg !1167 br i1 %301, label %L386, label %L385, !dbg !1167 L385: ; preds = %L373 br label %L388, !dbg !1167 L386: ; preds = %L373 %302 = getelementptr inbounds i8, ptr %5, i32 0, !dbg !1167 store ptr addrspace(10) %16, ptr %302, align 8, !dbg !1167 %303 = addrspacecast ptr %"new::Tuple248" to ptr addrspace(11), !dbg !1167 call void @julia_throw_boundserror_54835(ptr addrspace(11) nocapture readonly %"v::SubArray", ptr nocapture readonly %5, ptr addrspace(11) nocapture readonly %303) #133, !dbg !1167 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !1167 unreachable, !dbg !1167 L388: ; preds = %L385 br label %L389, !dbg !1167 L389: ; preds = %L388, %L370 %304 = getelementptr inbounds i8, ptr addrspace(11) %"v::SubArray", i32 24, !dbg !1196 %.unbox251 = load i64, ptr addrspace(11) %304, align 8, !dbg !1199, !tbaa !125, !alias.scope !128, !noalias !131 %305 = add i64 %.unbox251, %294, !dbg !1199 br i1 false, label %L406, label %L394, !dbg !1200 L394: ; preds = %L389 %306 = sub i64 %305, 1, !dbg !1201 %307 = addrspacecast ptr addrspace(10) %16 to ptr addrspace(11), !dbg !1203 %.size_ptr252 = getelementptr inbounds i8, ptr addrspace(11) %307, i32 16, !dbg !1203 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %.size253, ptr addrspace(11) align 8 %.size_ptr252, i64 8, i1 false), !dbg !1203, !tbaa !140, !alias.scope !303, !noalias !304 %bitcast254 = load i64, ptr %.size253, align 8, !dbg !1201, !tbaa !305, !alias.scope !307, !noalias !308 %308 = icmp ult i64 %306, %bitcast254, !dbg !1201 %309 = xor i1 %308, true, !dbg !1202 br i1 %309, label %L402, label %L401, !dbg !1202 L401: ; preds = %L394 br label %L405, !dbg !1202 L402: ; preds = %L394 %310 = getelementptr inbounds i8, ptr %"new::Tuple479", i32 0, !dbg !1202 store i64 %305, ptr %310, align 8, !dbg !1202, !tbaa !305, !alias.scope !307, !noalias !308 %311 = addrspacecast ptr %"new::Tuple479" to ptr addrspace(11), !dbg !1202 call void @julia_throw_boundserror_54709(ptr addrspace(10) %16, ptr addrspace(11) nocapture readonly %311) #133, !dbg !1202 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !1202 unreachable, !dbg !1202 L405: ; preds = %L401 br label %L406, !dbg !1202 L406: ; preds = %L405, %L389 %312 = addrspacecast ptr addrspace(10) %16 to ptr addrspace(11), !dbg !1205 %313 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %312, i32 0, i32 0, !dbg !1205 %memoryref_data256 = load ptr, ptr addrspace(11) %313, align 8, !dbg !1205, !tbaa !310, !alias.scope !313, !noalias !314 %314 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %312, i32 0, i32 1, !dbg !1205 %memoryref_mem276 = load ptr addrspace(10), ptr addrspace(11) %314, align 8, !dbg !1205, !tbaa !310, !alias.scope !313, !noalias !314, !dereferenceable_or_null !139, !align !137 %315 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data256, 0, !dbg !1205 %.ref255 = insertvalue { ptr, ptr addrspace(10) } %315, ptr addrspace(10) %memoryref_mem276, 1, !dbg !1205 %memoryref_offset258 = sub i64 %305, 1, !dbg !1205 %316 = addrspacecast ptr addrspace(10) %memoryref_mem276 to ptr addrspace(11), !dbg !1205 %317 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %316, i32 0, i32 0, !dbg !1205 %memory_len259 = load i64, ptr addrspace(11) %317, align 8, !dbg !1205, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %318 = add nuw i64 %memory_len259, %memory_len259, !dbg !1205 %319 = add i64 %memoryref_offset258, %memory_len259, !dbg !1205 %memoryref_ovflw260 = icmp uge i64 %319, %318, !dbg !1205 %memoryref_byteoffset261 = mul i64 %memoryref_offset258, 8, !dbg !1205 %memoryref_data_byteoffset262 = getelementptr i8, ptr %memoryref_data256, i64 %memoryref_byteoffset261, !dbg !1205 %320 = addrspacecast ptr addrspace(10) %memoryref_mem276 to ptr addrspace(11), !dbg !1205 %321 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %320, i32 0, i32 0, !dbg !1205 %memory_len263 = load i64, ptr addrspace(11) %321, align 8, !dbg !1205, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %322 = addrspacecast ptr addrspace(10) %memoryref_mem276 to ptr addrspace(11), !dbg !1205 %memory_data_ptr264 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %322, i32 0, i32 1, !dbg !1205 %memory_data265 = load ptr, ptr addrspace(11) %memory_data_ptr264, align 8, !dbg !1205, !tbaa !318, !alias.scope !313, !noalias !314, !nonnull !0 %323 = ptrtoint ptr %memory_data265 to i64, !dbg !1205 %324 = ptrtoint ptr %memoryref_data_byteoffset262 to i64, !dbg !1205 %325 = sub i64 %324, %323, !dbg !1205 %memoryref_bytelen266 = mul nuw nsw i64 %memory_len263, 8, !dbg !1205 %memoryref_isinbounds267 = icmp ult i64 %325, %memoryref_bytelen266, !dbg !1205 %326 = xor i1 %memoryref_ovflw260, true, !dbg !1205 %"memoryref_isinbounds¬ovflw268" = and i1 %326, %memoryref_isinbounds267, !dbg !1205 br i1 %"memoryref_isinbounds¬ovflw268", label %idxend274, label %oob269, !dbg !1205 L410: ; preds = %load279 br label %L411, !dbg !1205 L411: ; preds = %L410 %327 = fmul double %612, %623, !dbg !1206 %328 = fsub double %260, %327, !dbg !1207 %329 = sub i64 %value_phi179, 1, !dbg !1178 br i1 false, label %L433, label %L417, !dbg !1168 L417: ; preds = %L411 %330 = getelementptr inbounds i8, ptr %"new::Tuple281", i32 0, !dbg !1168 store i64 %329, ptr %330, align 8, !dbg !1168, !tbaa !305, !alias.scope !307, !noalias !308 %331 = getelementptr inbounds i8, ptr addrspace(11) %"H::HollowSymTridiagonal", i32 8, !dbg !1179 %.stop_ptr282 = getelementptr inbounds i8, ptr addrspace(11) %331, i32 8, !dbg !1183 %.stop_ptr282.unbox = load i64, ptr addrspace(11) %.stop_ptr282, align 8, !dbg !1190, !tbaa !125, !alias.scope !128, !noalias !131 %.unbox283 = load i64, ptr addrspace(11) %331, align 8, !dbg !1190, !tbaa !125, !alias.scope !128, !noalias !131 %332 = sub i64 %.stop_ptr282.unbox, %.unbox283, !dbg !1190 %333 = add i64 1, %332, !dbg !1192 %334 = sub i64 %329, 1, !dbg !1193 %335 = icmp ult i64 %334, %333, !dbg !1195 %336 = xor i1 %335, true, !dbg !1167 br i1 %336, label %L430, label %L429, !dbg !1167 L429: ; preds = %L417 br label %L432, !dbg !1167 L430: ; preds = %L417 %337 = getelementptr inbounds i8, ptr %4, i32 0, !dbg !1167 store ptr addrspace(10) %18, ptr %337, align 8, !dbg !1167 %338 = addrspacecast ptr %"new::Tuple281" to ptr addrspace(11), !dbg !1167 call void @julia_throw_boundserror_54835(ptr addrspace(11) nocapture readonly %"H::HollowSymTridiagonal", ptr nocapture readonly %4, ptr addrspace(11) nocapture readonly %338) #133, !dbg !1167 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !1167 unreachable, !dbg !1167 L432: ; preds = %L429 br label %L433, !dbg !1167 L433: ; preds = %L432, %L411 %339 = getelementptr inbounds i8, ptr addrspace(11) %"H::HollowSymTridiagonal", i32 24, !dbg !1196 %.unbox284 = load i64, ptr addrspace(11) %339, align 8, !dbg !1199, !tbaa !125, !alias.scope !128, !noalias !131 %340 = add i64 %.unbox284, %329, !dbg !1199 br i1 false, label %L450, label %L438, !dbg !1200 L438: ; preds = %L433 %341 = sub i64 %340, 1, !dbg !1201 %342 = addrspacecast ptr addrspace(10) %18 to ptr addrspace(11), !dbg !1203 %.size_ptr285 = getelementptr inbounds i8, ptr addrspace(11) %342, i32 16, !dbg !1203 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %.size286, ptr addrspace(11) align 8 %.size_ptr285, i64 8, i1 false), !dbg !1203, !tbaa !140, !alias.scope !303, !noalias !304 %bitcast287 = load i64, ptr %.size286, align 8, !dbg !1201, !tbaa !305, !alias.scope !307, !noalias !308 %343 = icmp ult i64 %341, %bitcast287, !dbg !1201 %344 = xor i1 %343, true, !dbg !1202 br i1 %344, label %L446, label %L445, !dbg !1202 L445: ; preds = %L438 br label %L449, !dbg !1202 L446: ; preds = %L438 %345 = getelementptr inbounds i8, ptr %"new::Tuple474", i32 0, !dbg !1202 store i64 %340, ptr %345, align 8, !dbg !1202, !tbaa !305, !alias.scope !307, !noalias !308 %346 = addrspacecast ptr %"new::Tuple474" to ptr addrspace(11), !dbg !1202 call void @julia_throw_boundserror_54709(ptr addrspace(10) %18, ptr addrspace(11) nocapture readonly %346) #133, !dbg !1202 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !1202 unreachable, !dbg !1202 L449: ; preds = %L445 br label %L450, !dbg !1202 L450: ; preds = %L449, %L433 %347 = addrspacecast ptr addrspace(10) %18 to ptr addrspace(11), !dbg !1205 %348 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %347, i32 0, i32 0, !dbg !1205 %memoryref_data289 = load ptr, ptr addrspace(11) %348, align 8, !dbg !1205, !tbaa !310, !alias.scope !313, !noalias !314 %349 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %347, i32 0, i32 1, !dbg !1205 %memoryref_mem309 = load ptr addrspace(10), ptr addrspace(11) %349, align 8, !dbg !1205, !tbaa !310, !alias.scope !313, !noalias !314, !dereferenceable_or_null !139, !align !137 %350 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data289, 0, !dbg !1205 %.ref288 = insertvalue { ptr, ptr addrspace(10) } %350, ptr addrspace(10) %memoryref_mem309, 1, !dbg !1205 %memoryref_offset291 = sub i64 %340, 1, !dbg !1205 %351 = addrspacecast ptr addrspace(10) %memoryref_mem309 to ptr addrspace(11), !dbg !1205 %352 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %351, i32 0, i32 0, !dbg !1205 %memory_len292 = load i64, ptr addrspace(11) %352, align 8, !dbg !1205, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %353 = add nuw i64 %memory_len292, %memory_len292, !dbg !1205 %354 = add i64 %memoryref_offset291, %memory_len292, !dbg !1205 %memoryref_ovflw293 = icmp uge i64 %354, %353, !dbg !1205 %memoryref_byteoffset294 = mul i64 %memoryref_offset291, 8, !dbg !1205 %memoryref_data_byteoffset295 = getelementptr i8, ptr %memoryref_data289, i64 %memoryref_byteoffset294, !dbg !1205 %355 = addrspacecast ptr addrspace(10) %memoryref_mem309 to ptr addrspace(11), !dbg !1205 %356 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %355, i32 0, i32 0, !dbg !1205 %memory_len296 = load i64, ptr addrspace(11) %356, align 8, !dbg !1205, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %357 = addrspacecast ptr addrspace(10) %memoryref_mem309 to ptr addrspace(11), !dbg !1205 %memory_data_ptr297 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %357, i32 0, i32 1, !dbg !1205 %memory_data298 = load ptr, ptr addrspace(11) %memory_data_ptr297, align 8, !dbg !1205, !tbaa !318, !alias.scope !313, !noalias !314, !nonnull !0 %358 = ptrtoint ptr %memory_data298 to i64, !dbg !1205 %359 = ptrtoint ptr %memoryref_data_byteoffset295 to i64, !dbg !1205 %360 = sub i64 %359, %358, !dbg !1205 %memoryref_bytelen299 = mul nuw nsw i64 %memory_len296, 8, !dbg !1205 %memoryref_isinbounds300 = icmp ult i64 %360, %memoryref_bytelen299, !dbg !1205 %361 = xor i1 %memoryref_ovflw293, true, !dbg !1205 %"memoryref_isinbounds¬ovflw301" = and i1 %361, %memoryref_isinbounds300, !dbg !1205 br i1 %"memoryref_isinbounds¬ovflw301", label %idxend307, label %oob302, !dbg !1205 L454: ; preds = %load312 br label %L455, !dbg !1205 L455: ; preds = %L454 %362 = fdiv double %328, %634, !dbg !1209 br i1 false, label %L474, label %L458, !dbg !1210 L458: ; preds = %L455 %363 = getelementptr inbounds i8, ptr %"new::Tuple314", i32 0, !dbg !1210 store i64 %value_phi179, ptr %363, align 8, !dbg !1210, !tbaa !305, !alias.scope !307, !noalias !308 %364 = getelementptr inbounds i8, ptr addrspace(11) %"v::SubArray", i32 8, !dbg !1211 %.stop_ptr315 = getelementptr inbounds i8, ptr addrspace(11) %364, i32 8, !dbg !1216 %.stop_ptr315.unbox = load i64, ptr addrspace(11) %.stop_ptr315, align 8, !dbg !1223, !tbaa !125, !alias.scope !128, !noalias !131 %.unbox316 = load i64, ptr addrspace(11) %364, align 8, !dbg !1223, !tbaa !125, !alias.scope !128, !noalias !131 %365 = sub i64 %.stop_ptr315.unbox, %.unbox316, !dbg !1223 %366 = add i64 1, %365, !dbg !1225 %367 = sub i64 %value_phi179, 1, !dbg !1226 %368 = icmp ult i64 %367, %366, !dbg !1228 %369 = xor i1 %368, true, !dbg !1215 br i1 %369, label %L471, label %L470, !dbg !1215 L470: ; preds = %L458 br label %L473, !dbg !1215 L471: ; preds = %L458 %370 = getelementptr inbounds i8, ptr %3, i32 0, !dbg !1215 store ptr addrspace(10) %16, ptr %370, align 8, !dbg !1215 %371 = addrspacecast ptr %"new::Tuple314" to ptr addrspace(11), !dbg !1215 call void @julia_throw_boundserror_54835(ptr addrspace(11) nocapture readonly %"v::SubArray", ptr nocapture readonly %3, ptr addrspace(11) nocapture readonly %371) #133, !dbg !1215 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !1215 unreachable, !dbg !1215 L473: ; preds = %L470 br label %L474, !dbg !1215 L474: ; preds = %L473, %L455 %372 = getelementptr inbounds i8, ptr addrspace(11) %"v::SubArray", i32 24, !dbg !1229 %.unbox317 = load i64, ptr addrspace(11) %372, align 8, !dbg !1232, !tbaa !125, !alias.scope !128, !noalias !131 %373 = add i64 %.unbox317, %value_phi179, !dbg !1232 br i1 false, label %L490, label %L479, !dbg !1233 L479: ; preds = %L474 %374 = sub i64 %373, 1, !dbg !1235 %375 = addrspacecast ptr addrspace(10) %16 to ptr addrspace(11), !dbg !1236 %.size_ptr318 = getelementptr inbounds i8, ptr addrspace(11) %375, i32 16, !dbg !1236 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %.size319, ptr addrspace(11) align 8 %.size_ptr318, i64 8, i1 false), !dbg !1236, !tbaa !140, !alias.scope !303, !noalias !304 %bitcast320 = load i64, ptr %.size319, align 8, !dbg !1235, !tbaa !305, !alias.scope !307, !noalias !308 %376 = icmp ult i64 %374, %bitcast320, !dbg !1235 %377 = xor i1 %376, true, !dbg !1233 br i1 %377, label %L487, label %L486, !dbg !1233 L486: ; preds = %L479 br label %L490, !dbg !1233 L487: ; preds = %L479 %378 = getelementptr inbounds i8, ptr %"new::Tuple469", i32 0, !dbg !1233 store i64 %373, ptr %378, align 8, !dbg !1233, !tbaa !305, !alias.scope !307, !noalias !308 %379 = addrspacecast ptr %"new::Tuple469" to ptr addrspace(11), !dbg !1233 call void @julia_throw_boundserror_54709(ptr addrspace(10) %16, ptr addrspace(11) nocapture readonly %379) #133, !dbg !1233 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !1233 unreachable, !dbg !1233 L490: ; preds = %L486, %L474 %380 = addrspacecast ptr addrspace(10) %16 to ptr addrspace(11), !dbg !1238 %381 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %380, i32 0, i32 0, !dbg !1238 %memoryref_data322 = load ptr, ptr addrspace(11) %381, align 8, !dbg !1238, !tbaa !310, !alias.scope !313, !noalias !314 %382 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %380, i32 0, i32 1, !dbg !1238 %memoryref_mem342 = load ptr addrspace(10), ptr addrspace(11) %382, align 8, !dbg !1238, !tbaa !310, !alias.scope !313, !noalias !314, !dereferenceable_or_null !139, !align !137 %383 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data322, 0, !dbg !1238 %.ref321 = insertvalue { ptr, ptr addrspace(10) } %383, ptr addrspace(10) %memoryref_mem342, 1, !dbg !1238 %memoryref_offset324 = sub i64 %373, 1, !dbg !1239 %384 = addrspacecast ptr addrspace(10) %memoryref_mem342 to ptr addrspace(11), !dbg !1239 %385 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %384, i32 0, i32 0, !dbg !1239 %memory_len325 = load i64, ptr addrspace(11) %385, align 8, !dbg !1239, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %386 = add nuw i64 %memory_len325, %memory_len325, !dbg !1239 %387 = add i64 %memoryref_offset324, %memory_len325, !dbg !1239 %memoryref_ovflw326 = icmp uge i64 %387, %386, !dbg !1239 %memoryref_byteoffset327 = mul i64 %memoryref_offset324, 8, !dbg !1239 %memoryref_data_byteoffset328 = getelementptr i8, ptr %memoryref_data322, i64 %memoryref_byteoffset327, !dbg !1239 %388 = addrspacecast ptr addrspace(10) %memoryref_mem342 to ptr addrspace(11), !dbg !1239 %389 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %388, i32 0, i32 0, !dbg !1239 %memory_len329 = load i64, ptr addrspace(11) %389, align 8, !dbg !1239, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %390 = addrspacecast ptr addrspace(10) %memoryref_mem342 to ptr addrspace(11), !dbg !1239 %memory_data_ptr330 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %390, i32 0, i32 1, !dbg !1239 %memory_data331 = load ptr, ptr addrspace(11) %memory_data_ptr330, align 8, !dbg !1239, !tbaa !318, !alias.scope !313, !noalias !314, !nonnull !0 %391 = ptrtoint ptr %memory_data331 to i64, !dbg !1239 %392 = ptrtoint ptr %memoryref_data_byteoffset328 to i64, !dbg !1239 %393 = sub i64 %392, %391, !dbg !1239 %memoryref_bytelen332 = mul nuw nsw i64 %memory_len329, 8, !dbg !1239 %memoryref_isinbounds333 = icmp ult i64 %393, %memoryref_bytelen332, !dbg !1239 %394 = xor i1 %memoryref_ovflw326, true, !dbg !1239 %"memoryref_isinbounds¬ovflw334" = and i1 %394, %memoryref_isinbounds333, !dbg !1239 br i1 %"memoryref_isinbounds¬ovflw334", label %idxend340, label %oob335, !dbg !1239 L494: ; preds = %load345 br label %L495, !dbg !1234 L495: ; preds = %L494 br label %L496, !dbg !1234 L496: ; preds = %L495 br i1 false, label %L514, label %L498, !dbg !1240 L498: ; preds = %L496 %395 = getelementptr inbounds i8, ptr %"new::Tuple347", i32 0, !dbg !1240 store i64 %value_phi179, ptr %395, align 8, !dbg !1240, !tbaa !305, !alias.scope !307, !noalias !308 %396 = getelementptr inbounds i8, ptr addrspace(11) %"v::SubArray", i32 8, !dbg !1242 %.stop_ptr348 = getelementptr inbounds i8, ptr addrspace(11) %396, i32 8, !dbg !1247 %.stop_ptr348.unbox = load i64, ptr addrspace(11) %.stop_ptr348, align 8, !dbg !1254, !tbaa !125, !alias.scope !128, !noalias !131 %.unbox349 = load i64, ptr addrspace(11) %396, align 8, !dbg !1254, !tbaa !125, !alias.scope !128, !noalias !131 %397 = sub i64 %.stop_ptr348.unbox, %.unbox349, !dbg !1254 %398 = add i64 1, %397, !dbg !1256 %399 = sub i64 %value_phi179, 1, !dbg !1257 %400 = icmp ult i64 %399, %398, !dbg !1259 %401 = xor i1 %400, true, !dbg !1246 br i1 %401, label %L511, label %L510, !dbg !1246 L510: ; preds = %L498 br label %L513, !dbg !1246 L511: ; preds = %L498 %402 = getelementptr inbounds i8, ptr %2, i32 0, !dbg !1246 store ptr addrspace(10) %16, ptr %402, align 8, !dbg !1246 %403 = addrspacecast ptr %"new::Tuple347" to ptr addrspace(11), !dbg !1246 call void @julia_throw_boundserror_54835(ptr addrspace(11) nocapture readonly %"v::SubArray", ptr nocapture readonly %2, ptr addrspace(11) nocapture readonly %403) #133, !dbg !1246 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !1246 unreachable, !dbg !1246 L513: ; preds = %L510 br label %L514, !dbg !1246 L514: ; preds = %L513, %L496 %404 = getelementptr inbounds i8, ptr addrspace(11) %"v::SubArray", i32 24, !dbg !1260 %.unbox350 = load i64, ptr addrspace(11) %404, align 8, !dbg !1263, !tbaa !125, !alias.scope !128, !noalias !131 %405 = add i64 %.unbox350, %value_phi179, !dbg !1263 br i1 false, label %L531, label %L519, !dbg !1264 L519: ; preds = %L514 %406 = sub i64 %405, 1, !dbg !1265 %407 = addrspacecast ptr addrspace(10) %16 to ptr addrspace(11), !dbg !1267 %.size_ptr351 = getelementptr inbounds i8, ptr addrspace(11) %407, i32 16, !dbg !1267 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %.size352, ptr addrspace(11) align 8 %.size_ptr351, i64 8, i1 false), !dbg !1267, !tbaa !140, !alias.scope !303, !noalias !304 %bitcast353 = load i64, ptr %.size352, align 8, !dbg !1265, !tbaa !305, !alias.scope !307, !noalias !308 %408 = icmp ult i64 %406, %bitcast353, !dbg !1265 %409 = xor i1 %408, true, !dbg !1266 br i1 %409, label %L527, label %L526, !dbg !1266 L526: ; preds = %L519 br label %L530, !dbg !1266 L527: ; preds = %L519 %410 = getelementptr inbounds i8, ptr %"new::Tuple464", i32 0, !dbg !1266 store i64 %405, ptr %410, align 8, !dbg !1266, !tbaa !305, !alias.scope !307, !noalias !308 %411 = addrspacecast ptr %"new::Tuple464" to ptr addrspace(11), !dbg !1266 call void @julia_throw_boundserror_54709(ptr addrspace(10) %16, ptr addrspace(11) nocapture readonly %411) #133, !dbg !1266 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !1266 unreachable, !dbg !1266 L530: ; preds = %L526 br label %L531, !dbg !1266 L531: ; preds = %L530, %L514 %412 = addrspacecast ptr addrspace(10) %16 to ptr addrspace(11), !dbg !1269 %413 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %412, i32 0, i32 0, !dbg !1269 %memoryref_data355 = load ptr, ptr addrspace(11) %413, align 8, !dbg !1269, !tbaa !310, !alias.scope !313, !noalias !314 %414 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %412, i32 0, i32 1, !dbg !1269 %memoryref_mem375 = load ptr addrspace(10), ptr addrspace(11) %414, align 8, !dbg !1269, !tbaa !310, !alias.scope !313, !noalias !314, !dereferenceable_or_null !139, !align !137 %415 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data355, 0, !dbg !1269 %.ref354 = insertvalue { ptr, ptr addrspace(10) } %415, ptr addrspace(10) %memoryref_mem375, 1, !dbg !1269 %memoryref_offset357 = sub i64 %405, 1, !dbg !1269 %416 = addrspacecast ptr addrspace(10) %memoryref_mem375 to ptr addrspace(11), !dbg !1269 %417 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %416, i32 0, i32 0, !dbg !1269 %memory_len358 = load i64, ptr addrspace(11) %417, align 8, !dbg !1269, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %418 = add nuw i64 %memory_len358, %memory_len358, !dbg !1269 %419 = add i64 %memoryref_offset357, %memory_len358, !dbg !1269 %memoryref_ovflw359 = icmp uge i64 %419, %418, !dbg !1269 %memoryref_byteoffset360 = mul i64 %memoryref_offset357, 8, !dbg !1269 %memoryref_data_byteoffset361 = getelementptr i8, ptr %memoryref_data355, i64 %memoryref_byteoffset360, !dbg !1269 %420 = addrspacecast ptr addrspace(10) %memoryref_mem375 to ptr addrspace(11), !dbg !1269 %421 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %420, i32 0, i32 0, !dbg !1269 %memory_len362 = load i64, ptr addrspace(11) %421, align 8, !dbg !1269, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %422 = addrspacecast ptr addrspace(10) %memoryref_mem375 to ptr addrspace(11), !dbg !1269 %memory_data_ptr363 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %422, i32 0, i32 1, !dbg !1269 %memory_data364 = load ptr, ptr addrspace(11) %memory_data_ptr363, align 8, !dbg !1269, !tbaa !318, !alias.scope !313, !noalias !314, !nonnull !0 %423 = ptrtoint ptr %memory_data364 to i64, !dbg !1269 %424 = ptrtoint ptr %memoryref_data_byteoffset361 to i64, !dbg !1269 %425 = sub i64 %424, %423, !dbg !1269 %memoryref_bytelen365 = mul nuw nsw i64 %memory_len362, 8, !dbg !1269 %memoryref_isinbounds366 = icmp ult i64 %425, %memoryref_bytelen365, !dbg !1269 %426 = xor i1 %memoryref_ovflw359, true, !dbg !1269 %"memoryref_isinbounds¬ovflw367" = and i1 %426, %memoryref_isinbounds366, !dbg !1269 br i1 %"memoryref_isinbounds¬ovflw367", label %idxend373, label %oob368, !dbg !1269 L535: ; preds = %load378 br label %L536, !dbg !1269 L536: ; preds = %L535 %427 = fmul double %655, %655, !dbg !1270 %428 = fadd double %value_phi181, %427, !dbg !1272 %429 = icmp eq i64 %value_phi180, %value_phi, !dbg !1273 %430 = xor i1 %429, true, !dbg !1176 br i1 %430, label %L541, label %L540, !dbg !1176 L540: ; preds = %L536 br label %L543, !dbg !1176 L541: ; preds = %L536 %431 = add i64 %value_phi180, 1, !dbg !1274 br label %L543, !dbg !1176 L543: ; preds = %L541, %L540 %value_phi380 = phi i64 [ %431, %L541 ], [ undef, %L540 ] %value_phi381 = phi i64 [ %431, %L541 ], [ undef, %L540 ] %value_phi382 = phi i8 [ 1, %L540 ], [ 0, %L541 ] %432 = trunc i8 %value_phi382 to i1, !dbg !1177 %433 = xor i1 %432, true, !dbg !1177 %434 = xor i1 %433, true, !dbg !1177 br i1 %434, label %L543.L549_crit_edge, label %L548, !dbg !1177 L543.L549_crit_edge: ; preds = %L543 br label %L549, !dbg !1176 L548: ; preds = %L543 br label %L283, !dbg !1174 L549: ; preds = %L278.L549_crit_edge, %L543.L549_crit_edge %value_phi383 = phi double [ %428, %L543.L549_crit_edge ], [ %219, %L278.L549_crit_edge ] %435 = call double @julia_sqrt_54851(double %value_phi383), !dbg !1276 %436 = fdiv double 1.000000e+00, %435, !dbg !1277 %437 = fcmp oeq double %436, 1.000000e+00, !dbg !1280 %438 = xor i1 %437, true, !dbg !1284 br i1 %438, label %L555, label %L554, !dbg !1284 L554: ; preds = %L549 br label %L666, !dbg !1284 L555: ; preds = %L549 %439 = getelementptr inbounds i8, ptr addrspace(11) %"v::SubArray", i32 8, !dbg !1287 %.stop_ptr384 = getelementptr inbounds i8, ptr addrspace(11) %439, i32 8, !dbg !1294 %.stop_ptr384.unbox = load i64, ptr addrspace(11) %.stop_ptr384, align 8, !dbg !1301, !tbaa !125, !alias.scope !128, !noalias !131 %.unbox385 = load i64, ptr addrspace(11) %439, align 8, !dbg !1301, !tbaa !125, !alias.scope !128, !noalias !131 %440 = sub i64 %.stop_ptr384.unbox, %.unbox385, !dbg !1301 %441 = add i64 1, %440, !dbg !1303 %442 = getelementptr inbounds i8, ptr %"new::OneTo", i32 0, !dbg !1304 store i64 %441, ptr %442, align 8, !dbg !1304, !tbaa !305, !alias.scope !307, !noalias !308 %443 = icmp slt i64 0, %441, !dbg !1308 %444 = xor i1 %443, true, !dbg !1309 br i1 %444, label %L665, label %L564, !dbg !1309 L564: ; preds = %L555 br label %L565, !dbg !1176 L565: ; preds = %L662, %L564 %value_phi386 = phi i64 [ 0, %L564 ], [ %519, %L662 ] %445 = icmp slt i64 %value_phi386, %441, !dbg !1310 %446 = xor i1 %445, true, !dbg !1311 br i1 %446, label %L665, label %L568, !dbg !1311 L568: ; preds = %L565 %447 = add i64 %value_phi386, 1, !dbg !1312 br i1 false, label %L578, label %L571, !dbg !1316 L571: ; preds = %L568 %448 = getelementptr inbounds i8, ptr %"new::Tuple387", i32 0, !dbg !1316 store i64 %447, ptr %448, align 8, !dbg !1316, !tbaa !305, !alias.scope !307, !noalias !308 %449 = sub i64 %447, 1, !dbg !1320 %450 = icmp ult i64 %449, %441, !dbg !1324 %451 = xor i1 %450, true, !dbg !1323 br i1 %451, label %L579, label %L577, !dbg !1323 L577: ; preds = %L571 br label %L578, !dbg !1323 L578: ; preds = %L577, %L568 br label %L581, !dbg !1323 L579: ; preds = %L571 %452 = addrspacecast ptr %"new::OneTo" to ptr addrspace(11), !dbg !1323 %453 = addrspacecast ptr %"new::Tuple387" to ptr addrspace(11), !dbg !1323 call void @julia_throw_boundserror_54848(ptr addrspace(11) nocapture readonly %452, ptr addrspace(11) nocapture readonly %453) #133, !dbg !1323 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !1323 unreachable, !dbg !1323 L581: ; preds = %L578 br i1 false, label %L599, label %L583, !dbg !1325 L583: ; preds = %L581 %454 = getelementptr inbounds i8, ptr %"new::Tuple388", i32 0, !dbg !1325 store i64 %447, ptr %454, align 8, !dbg !1325, !tbaa !305, !alias.scope !307, !noalias !308 %455 = getelementptr inbounds i8, ptr addrspace(11) %"v::SubArray", i32 8, !dbg !1329 %.stop_ptr389 = getelementptr inbounds i8, ptr addrspace(11) %455, i32 8, !dbg !1334 %.stop_ptr389.unbox = load i64, ptr addrspace(11) %.stop_ptr389, align 8, !dbg !1341, !tbaa !125, !alias.scope !128, !noalias !131 %.unbox390 = load i64, ptr addrspace(11) %455, align 8, !dbg !1341, !tbaa !125, !alias.scope !128, !noalias !131 %456 = sub i64 %.stop_ptr389.unbox, %.unbox390, !dbg !1341 %457 = add i64 1, %456, !dbg !1343 %458 = sub i64 %447, 1, !dbg !1344 %459 = icmp ult i64 %458, %457, !dbg !1346 %460 = xor i1 %459, true, !dbg !1333 br i1 %460, label %L596, label %L595, !dbg !1333 L595: ; preds = %L583 br label %L598, !dbg !1333 L596: ; preds = %L583 %461 = getelementptr inbounds i8, ptr %1, i32 0, !dbg !1333 store ptr addrspace(10) %16, ptr %461, align 8, !dbg !1333 %462 = addrspacecast ptr %"new::Tuple388" to ptr addrspace(11), !dbg !1333 call void @julia_throw_boundserror_54835(ptr addrspace(11) nocapture readonly %"v::SubArray", ptr nocapture readonly %1, ptr addrspace(11) nocapture readonly %462) #133, !dbg !1333 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !1333 unreachable, !dbg !1333 L598: ; preds = %L595 br label %L599, !dbg !1333 L599: ; preds = %L598, %L581 %463 = getelementptr inbounds i8, ptr addrspace(11) %"v::SubArray", i32 24, !dbg !1347 %.unbox391 = load i64, ptr addrspace(11) %463, align 8, !dbg !1350, !tbaa !125, !alias.scope !128, !noalias !131 %464 = add i64 %.unbox391, %447, !dbg !1350 br i1 false, label %L616, label %L604, !dbg !1351 L604: ; preds = %L599 %465 = sub i64 %464, 1, !dbg !1352 %466 = addrspacecast ptr addrspace(10) %16 to ptr addrspace(11), !dbg !1354 %.size_ptr392 = getelementptr inbounds i8, ptr addrspace(11) %466, i32 16, !dbg !1354 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %.size393, ptr addrspace(11) align 8 %.size_ptr392, i64 8, i1 false), !dbg !1354, !tbaa !140, !alias.scope !303, !noalias !304 %bitcast394 = load i64, ptr %.size393, align 8, !dbg !1352, !tbaa !305, !alias.scope !307, !noalias !308 %467 = icmp ult i64 %465, %bitcast394, !dbg !1352 %468 = xor i1 %467, true, !dbg !1353 br i1 %468, label %L612, label %L611, !dbg !1353 L611: ; preds = %L604 br label %L615, !dbg !1353 L612: ; preds = %L604 %469 = getelementptr inbounds i8, ptr %"new::Tuple457", i32 0, !dbg !1353 store i64 %464, ptr %469, align 8, !dbg !1353, !tbaa !305, !alias.scope !307, !noalias !308 %470 = addrspacecast ptr %"new::Tuple457" to ptr addrspace(11), !dbg !1353 call void @julia_throw_boundserror_54709(ptr addrspace(10) %16, ptr addrspace(11) nocapture readonly %470) #133, !dbg !1353 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !1353 unreachable, !dbg !1353 L615: ; preds = %L611 br label %L616, !dbg !1353 L616: ; preds = %L615, %L599 %471 = addrspacecast ptr addrspace(10) %16 to ptr addrspace(11), !dbg !1356 %472 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %471, i32 0, i32 0, !dbg !1356 %memoryref_data396 = load ptr, ptr addrspace(11) %472, align 8, !dbg !1356, !tbaa !310, !alias.scope !313, !noalias !314 %473 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %471, i32 0, i32 1, !dbg !1356 %memoryref_mem416 = load ptr addrspace(10), ptr addrspace(11) %473, align 8, !dbg !1356, !tbaa !310, !alias.scope !313, !noalias !314, !dereferenceable_or_null !139, !align !137 %474 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data396, 0, !dbg !1356 %.ref395 = insertvalue { ptr, ptr addrspace(10) } %474, ptr addrspace(10) %memoryref_mem416, 1, !dbg !1356 %memoryref_offset398 = sub i64 %464, 1, !dbg !1356 %475 = addrspacecast ptr addrspace(10) %memoryref_mem416 to ptr addrspace(11), !dbg !1356 %476 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %475, i32 0, i32 0, !dbg !1356 %memory_len399 = load i64, ptr addrspace(11) %476, align 8, !dbg !1356, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %477 = add nuw i64 %memory_len399, %memory_len399, !dbg !1356 %478 = add i64 %memoryref_offset398, %memory_len399, !dbg !1356 %memoryref_ovflw400 = icmp uge i64 %478, %477, !dbg !1356 %memoryref_byteoffset401 = mul i64 %memoryref_offset398, 8, !dbg !1356 %memoryref_data_byteoffset402 = getelementptr i8, ptr %memoryref_data396, i64 %memoryref_byteoffset401, !dbg !1356 %479 = addrspacecast ptr addrspace(10) %memoryref_mem416 to ptr addrspace(11), !dbg !1356 %480 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %479, i32 0, i32 0, !dbg !1356 %memory_len403 = load i64, ptr addrspace(11) %480, align 8, !dbg !1356, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %481 = addrspacecast ptr addrspace(10) %memoryref_mem416 to ptr addrspace(11), !dbg !1356 %memory_data_ptr404 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %481, i32 0, i32 1, !dbg !1356 %memory_data405 = load ptr, ptr addrspace(11) %memory_data_ptr404, align 8, !dbg !1356, !tbaa !318, !alias.scope !313, !noalias !314, !nonnull !0 %482 = ptrtoint ptr %memory_data405 to i64, !dbg !1356 %483 = ptrtoint ptr %memoryref_data_byteoffset402 to i64, !dbg !1356 %484 = sub i64 %483, %482, !dbg !1356 %memoryref_bytelen406 = mul nuw nsw i64 %memory_len403, 8, !dbg !1356 %memoryref_isinbounds407 = icmp ult i64 %484, %memoryref_bytelen406, !dbg !1356 %485 = xor i1 %memoryref_ovflw400, true, !dbg !1356 %"memoryref_isinbounds¬ovflw408" = and i1 %485, %memoryref_isinbounds407, !dbg !1356 br i1 %"memoryref_isinbounds¬ovflw408", label %idxend414, label %oob409, !dbg !1356 L620: ; preds = %load419 br label %L621, !dbg !1356 L621: ; preds = %L620 %486 = fmul double %666, %436, !dbg !1357 br i1 false, label %L640, label %L624, !dbg !1358 L624: ; preds = %L621 %487 = getelementptr inbounds i8, ptr %"new::Tuple421", i32 0, !dbg !1358 store i64 %447, ptr %487, align 8, !dbg !1358, !tbaa !305, !alias.scope !307, !noalias !308 %488 = getelementptr inbounds i8, ptr addrspace(11) %"v::SubArray", i32 8, !dbg !1359 %.stop_ptr422 = getelementptr inbounds i8, ptr addrspace(11) %488, i32 8, !dbg !1364 %.stop_ptr422.unbox = load i64, ptr addrspace(11) %.stop_ptr422, align 8, !dbg !1371, !tbaa !125, !alias.scope !128, !noalias !131 %.unbox423 = load i64, ptr addrspace(11) %488, align 8, !dbg !1371, !tbaa !125, !alias.scope !128, !noalias !131 %489 = sub i64 %.stop_ptr422.unbox, %.unbox423, !dbg !1371 %490 = add i64 1, %489, !dbg !1373 %491 = sub i64 %447, 1, !dbg !1374 %492 = icmp ult i64 %491, %490, !dbg !1376 %493 = xor i1 %492, true, !dbg !1363 br i1 %493, label %L637, label %L636, !dbg !1363 L636: ; preds = %L624 br label %L639, !dbg !1363 L637: ; preds = %L624 %494 = getelementptr inbounds i8, ptr %0, i32 0, !dbg !1363 store ptr addrspace(10) %16, ptr %494, align 8, !dbg !1363 %495 = addrspacecast ptr %"new::Tuple421" to ptr addrspace(11), !dbg !1363 call void @julia_throw_boundserror_54835(ptr addrspace(11) nocapture readonly %"v::SubArray", ptr nocapture readonly %0, ptr addrspace(11) nocapture readonly %495) #133, !dbg !1363 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !1363 unreachable, !dbg !1363 L639: ; preds = %L636 br label %L640, !dbg !1363 L640: ; preds = %L639, %L621 %496 = getelementptr inbounds i8, ptr addrspace(11) %"v::SubArray", i32 24, !dbg !1377 %.unbox424 = load i64, ptr addrspace(11) %496, align 8, !dbg !1380, !tbaa !125, !alias.scope !128, !noalias !131 %497 = add i64 %.unbox424, %447, !dbg !1380 br i1 false, label %L656, label %L645, !dbg !1381 L645: ; preds = %L640 %498 = sub i64 %497, 1, !dbg !1383 %499 = addrspacecast ptr addrspace(10) %16 to ptr addrspace(11), !dbg !1384 %.size_ptr425 = getelementptr inbounds i8, ptr addrspace(11) %499, i32 16, !dbg !1384 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %.size426, ptr addrspace(11) align 8 %.size_ptr425, i64 8, i1 false), !dbg !1384, !tbaa !140, !alias.scope !303, !noalias !304 %bitcast427 = load i64, ptr %.size426, align 8, !dbg !1383, !tbaa !305, !alias.scope !307, !noalias !308 %500 = icmp ult i64 %498, %bitcast427, !dbg !1383 %501 = xor i1 %500, true, !dbg !1381 br i1 %501, label %L653, label %L652, !dbg !1381 L652: ; preds = %L645 br label %L656, !dbg !1381 L653: ; preds = %L645 %502 = getelementptr inbounds i8, ptr %"new::Tuple454", i32 0, !dbg !1381 store i64 %497, ptr %502, align 8, !dbg !1381, !tbaa !305, !alias.scope !307, !noalias !308 %503 = addrspacecast ptr %"new::Tuple454" to ptr addrspace(11), !dbg !1381 call void @julia_throw_boundserror_54709(ptr addrspace(10) %16, ptr addrspace(11) nocapture readonly %503) #133, !dbg !1381 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4_5), !dbg !1381 unreachable, !dbg !1381 L656: ; preds = %L652, %L640 %504 = addrspacecast ptr addrspace(10) %16 to ptr addrspace(11), !dbg !1386 %505 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %504, i32 0, i32 0, !dbg !1386 %memoryref_data429 = load ptr, ptr addrspace(11) %505, align 8, !dbg !1386, !tbaa !310, !alias.scope !313, !noalias !314 %506 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %504, i32 0, i32 1, !dbg !1386 %memoryref_mem449 = load ptr addrspace(10), ptr addrspace(11) %506, align 8, !dbg !1386, !tbaa !310, !alias.scope !313, !noalias !314, !dereferenceable_or_null !139, !align !137 %507 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data429, 0, !dbg !1386 %.ref428 = insertvalue { ptr, ptr addrspace(10) } %507, ptr addrspace(10) %memoryref_mem449, 1, !dbg !1386 %memoryref_offset431 = sub i64 %497, 1, !dbg !1387 %508 = addrspacecast ptr addrspace(10) %memoryref_mem449 to ptr addrspace(11), !dbg !1387 %509 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %508, i32 0, i32 0, !dbg !1387 %memory_len432 = load i64, ptr addrspace(11) %509, align 8, !dbg !1387, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %510 = add nuw i64 %memory_len432, %memory_len432, !dbg !1387 %511 = add i64 %memoryref_offset431, %memory_len432, !dbg !1387 %memoryref_ovflw433 = icmp uge i64 %511, %510, !dbg !1387 %memoryref_byteoffset434 = mul i64 %memoryref_offset431, 8, !dbg !1387 %memoryref_data_byteoffset435 = getelementptr i8, ptr %memoryref_data429, i64 %memoryref_byteoffset434, !dbg !1387 %512 = addrspacecast ptr addrspace(10) %memoryref_mem449 to ptr addrspace(11), !dbg !1387 %513 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %512, i32 0, i32 0, !dbg !1387 %memory_len436 = load i64, ptr addrspace(11) %513, align 8, !dbg !1387, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %514 = addrspacecast ptr addrspace(10) %memoryref_mem449 to ptr addrspace(11), !dbg !1387 %memory_data_ptr437 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %514, i32 0, i32 1, !dbg !1387 %memory_data438 = load ptr, ptr addrspace(11) %memory_data_ptr437, align 8, !dbg !1387, !tbaa !318, !alias.scope !313, !noalias !314, !nonnull !0 %515 = ptrtoint ptr %memory_data438 to i64, !dbg !1387 %516 = ptrtoint ptr %memoryref_data_byteoffset435 to i64, !dbg !1387 %517 = sub i64 %516, %515, !dbg !1387 %memoryref_bytelen439 = mul nuw nsw i64 %memory_len436, 8, !dbg !1387 %memoryref_isinbounds440 = icmp ult i64 %517, %memoryref_bytelen439, !dbg !1387 %518 = xor i1 %memoryref_ovflw433, true, !dbg !1387 %"memoryref_isinbounds¬ovflw441" = and i1 %518, %memoryref_isinbounds440, !dbg !1387 br i1 %"memoryref_isinbounds¬ovflw441", label %idxend447, label %oob442, !dbg !1387 L660: ; preds = %load452 br label %L661, !dbg !1382 L661: ; preds = %L660 br label %L662, !dbg !1382 L662: ; preds = %L661 %519 = add i64 %value_phi386, 1, !dbg !1388 br label %L565, !dbg !1176, !llvm.loop !1390 L665: ; preds = %L565, %L555 br label %L666, !dbg !1323 L666: ; preds = %L665, %L554 br label %L667, !dbg !1284 L667: ; preds = %L666, %L60 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %sret_return, ptr addrspace(11) align 8 %"v::SubArray", i64 40, i1 false), !dbg !1391, !tbaa !140, !alias.scope !1392, !noalias !1393 %520 = getelementptr inbounds i8, ptr %return_roots, i32 0, !dbg !1391 store ptr addrspace(10) %16, ptr %520, align 8, !dbg !1391, !tbaa !121, !alias.scope !368, !noalias !369 ret void, !dbg !1391 L668: ; preds = %L10 %"jl_global#54779" = load ptr, ptr @jl_global_54779, align 8, !dbg !1394, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0 %521 = addrspacecast ptr %"jl_global#54779" to ptr addrspace(10), !dbg !1394 %522 = call [1 x ptr addrspace(10)] @julia_DimensionMismatch_54846(ptr addrspace(10) %521), !dbg !1394 %"+Main.Base.DimensionMismatch#54845" = load ptr, ptr @_Main_Base_DimensionMismatch_54845, align 8, !dbg !970, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0, !dereferenceable !138, !align !139 %DimensionMismatch = ptrtoint ptr %"+Main.Base.DimensionMismatch#54845" to i64, !dbg !970 %523 = inttoptr i64 %DimensionMismatch to ptr, !dbg !970 %current_task524 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !970 %524 = addrspacecast ptr %523 to ptr addrspace(10), !dbg !970 %"box::DimensionMismatch" = call noalias nonnull align 8 dereferenceable(8) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task524, i64 8, ptr addrspace(10) %524) #134, !dbg !970 %525 = addrspacecast ptr addrspace(10) %"box::DimensionMismatch" to ptr addrspace(11), !dbg !970 store [1 x ptr addrspace(10)] %522, ptr addrspace(11) %525, align 8, !dbg !970, !tbaa !146, !alias.scope !150, !noalias !151 %526 = addrspacecast ptr addrspace(10) %"box::DimensionMismatch" to ptr addrspace(12), !dbg !970 call void @ijl_throw(ptr addrspace(12) %526), !dbg !970 unreachable, !dbg !970 oob: ; preds = %L54 %"+Core.GenericMemoryRef#54679" = load ptr, ptr @_Core_GenericMemoryRef_54679, align 8, !dbg !1024, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0, !dereferenceable !138, !align !139 %GenericMemoryRef = ptrtoint ptr %"+Core.GenericMemoryRef#54679" to i64, !dbg !1024 %527 = inttoptr i64 %GenericMemoryRef to ptr, !dbg !1024 %current_task7 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !1024 %528 = addrspacecast ptr %527 to ptr addrspace(10), !dbg !1024 %"box::GenericMemoryRef" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task7, i64 16, ptr addrspace(10) %528) #134, !dbg !1024 %529 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef" to ptr addrspace(11), !dbg !1024 store { ptr, ptr addrspace(10) } %.ref, ptr addrspace(11) %529, align 8, !dbg !1024, !tbaa !146, !alias.scope !150, !noalias !151 %530 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef" to ptr addrspace(12), !dbg !1024 call void @ijl_bounds_error_int(ptr addrspace(12) %530, i64 %37), !dbg !1024 unreachable, !dbg !1024 idxend: ; preds = %L54 %531 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data_byteoffset, 0, !dbg !1024 %memory_ref = insertvalue { ptr, ptr addrspace(10) } %531, ptr addrspace(10) %memoryref_mem, 1, !dbg !1024 %532 = addrspacecast ptr addrspace(10) %memoryref_mem to ptr addrspace(11), !dbg !1024 %533 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %532, i32 0, i32 0, !dbg !1024 %memory_len8 = load i64, ptr addrspace(11) %533, align 8, !dbg !1024, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %534 = icmp eq i64 %memory_len8, 0, !dbg !1024 br i1 %534, label %oob9, label %load, !dbg !1024 oob9: ; preds = %idxend %535 = addrspacecast ptr addrspace(10) %memoryref_mem to ptr addrspace(12), !dbg !1024 call void @ijl_bounds_error_int(ptr addrspace(12) %535, i64 1), !dbg !1024 unreachable, !dbg !1024 load: ; preds = %idxend %536 = call ptr addrspace(13) @julia.gc_loaded(ptr addrspace(10) %memoryref_mem, ptr %memoryref_data), !dbg !1024 %memoryref_data10 = getelementptr inbounds i8, ptr addrspace(13) %536, i64 %memoryref_byteoffset, !dbg !1024 store double 1.000000e+00, ptr addrspace(13) %memoryref_data10, align 8, !dbg !1024, !tbaa !890, !alias.scope !150, !noalias !151 br label %L58, !dbg !1396 oob32: ; preds = %L97 %"+Core.GenericMemoryRef#5467933" = load ptr, ptr @_Core_GenericMemoryRef_54679, align 8, !dbg !1059, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0, !dereferenceable !138, !align !139 %GenericMemoryRef34 = ptrtoint ptr %"+Core.GenericMemoryRef#5467933" to i64, !dbg !1059 %537 = inttoptr i64 %GenericMemoryRef34 to ptr, !dbg !1059 %current_task35 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !1059 %538 = addrspacecast ptr %537 to ptr addrspace(10), !dbg !1059 %"box::GenericMemoryRef36" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task35, i64 16, ptr addrspace(10) %538) #134, !dbg !1059 %539 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef36" to ptr addrspace(11), !dbg !1059 store { ptr, ptr addrspace(10) } %.ref18, ptr addrspace(11) %539, align 8, !dbg !1059, !tbaa !146, !alias.scope !150, !noalias !151 %540 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef36" to ptr addrspace(12), !dbg !1059 call void @ijl_bounds_error_int(ptr addrspace(12) %540, i64 %70), !dbg !1059 unreachable, !dbg !1059 idxend37: ; preds = %L97 %541 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data_byteoffset25, 0, !dbg !1059 %memory_ref38 = insertvalue { ptr, ptr addrspace(10) } %541, ptr addrspace(10) %memoryref_mem39, 1, !dbg !1059 %542 = addrspacecast ptr addrspace(10) %memoryref_mem39 to ptr addrspace(11), !dbg !1059 %543 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %542, i32 0, i32 0, !dbg !1059 %memory_len40 = load i64, ptr addrspace(11) %543, align 8, !dbg !1059, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %544 = icmp eq i64 %memory_len40, 0, !dbg !1059 br i1 %544, label %oob41, label %load42, !dbg !1059 oob41: ; preds = %idxend37 %545 = addrspacecast ptr addrspace(10) %memoryref_mem39 to ptr addrspace(12), !dbg !1059 call void @ijl_bounds_error_int(ptr addrspace(12) %545, i64 1), !dbg !1059 unreachable, !dbg !1059 load42: ; preds = %idxend37 %546 = call ptr addrspace(13) @julia.gc_loaded(ptr addrspace(10) %memoryref_mem39, ptr %memoryref_data19), !dbg !1059 %memoryref_data43 = getelementptr inbounds i8, ptr addrspace(13) %546, i64 %memoryref_byteoffset24, !dbg !1059 %547 = load double, ptr addrspace(13) %memoryref_data43, align 8, !dbg !1059, !tbaa !890, !alias.scope !150, !noalias !151 br label %L101, !dbg !1059 oob65: ; preds = %L137 %"+Core.GenericMemoryRef#5467966" = load ptr, ptr @_Core_GenericMemoryRef_54679, align 8, !dbg !1088, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0, !dereferenceable !138, !align !139 %GenericMemoryRef67 = ptrtoint ptr %"+Core.GenericMemoryRef#5467966" to i64, !dbg !1088 %548 = inttoptr i64 %GenericMemoryRef67 to ptr, !dbg !1088 %current_task68 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !1088 %549 = addrspacecast ptr %548 to ptr addrspace(10), !dbg !1088 %"box::GenericMemoryRef69" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task68, i64 16, ptr addrspace(10) %549) #134, !dbg !1088 %550 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef69" to ptr addrspace(11), !dbg !1088 store { ptr, ptr addrspace(10) } %.ref51, ptr addrspace(11) %550, align 8, !dbg !1088, !tbaa !146, !alias.scope !150, !noalias !151 %551 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef69" to ptr addrspace(12), !dbg !1088 call void @ijl_bounds_error_int(ptr addrspace(12) %551, i64 %101), !dbg !1088 unreachable, !dbg !1088 idxend70: ; preds = %L137 %552 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data_byteoffset58, 0, !dbg !1088 %memory_ref71 = insertvalue { ptr, ptr addrspace(10) } %552, ptr addrspace(10) %memoryref_mem72, 1, !dbg !1088 %553 = addrspacecast ptr addrspace(10) %memoryref_mem72 to ptr addrspace(11), !dbg !1088 %554 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %553, i32 0, i32 0, !dbg !1088 %memory_len73 = load i64, ptr addrspace(11) %554, align 8, !dbg !1088, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %555 = icmp eq i64 %memory_len73, 0, !dbg !1088 br i1 %555, label %oob74, label %load75, !dbg !1088 oob74: ; preds = %idxend70 %556 = addrspacecast ptr addrspace(10) %memoryref_mem72 to ptr addrspace(12), !dbg !1088 call void @ijl_bounds_error_int(ptr addrspace(12) %556, i64 1), !dbg !1088 unreachable, !dbg !1088 load75: ; preds = %idxend70 %557 = call ptr addrspace(13) @julia.gc_loaded(ptr addrspace(10) %memoryref_mem72, ptr %memoryref_data52), !dbg !1088 %memoryref_data76 = getelementptr inbounds i8, ptr addrspace(13) %557, i64 %memoryref_byteoffset57, !dbg !1088 %558 = load double, ptr addrspace(13) %memoryref_data76, align 8, !dbg !1088, !tbaa !890, !alias.scope !150, !noalias !151 br label %L141, !dbg !1088 oob98: ; preds = %L179 %"+Core.GenericMemoryRef#5467999" = load ptr, ptr @_Core_GenericMemoryRef_54679, align 8, !dbg !1088, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0, !dereferenceable !138, !align !139 %GenericMemoryRef100 = ptrtoint ptr %"+Core.GenericMemoryRef#5467999" to i64, !dbg !1088 %559 = inttoptr i64 %GenericMemoryRef100 to ptr, !dbg !1088 %current_task101 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !1088 %560 = addrspacecast ptr %559 to ptr addrspace(10), !dbg !1088 %"box::GenericMemoryRef102" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task101, i64 16, ptr addrspace(10) %560) #134, !dbg !1088 %561 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef102" to ptr addrspace(11), !dbg !1088 store { ptr, ptr addrspace(10) } %.ref84, ptr addrspace(11) %561, align 8, !dbg !1088, !tbaa !146, !alias.scope !150, !noalias !151 %562 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef102" to ptr addrspace(12), !dbg !1088 call void @ijl_bounds_error_int(ptr addrspace(12) %562, i64 %133), !dbg !1088 unreachable, !dbg !1088 idxend103: ; preds = %L179 %563 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data_byteoffset91, 0, !dbg !1088 %memory_ref104 = insertvalue { ptr, ptr addrspace(10) } %563, ptr addrspace(10) %memoryref_mem105, 1, !dbg !1088 %564 = addrspacecast ptr addrspace(10) %memoryref_mem105 to ptr addrspace(11), !dbg !1088 %565 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %564, i32 0, i32 0, !dbg !1088 %memory_len106 = load i64, ptr addrspace(11) %565, align 8, !dbg !1088, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %566 = icmp eq i64 %memory_len106, 0, !dbg !1088 br i1 %566, label %oob107, label %load108, !dbg !1088 oob107: ; preds = %idxend103 %567 = addrspacecast ptr addrspace(10) %memoryref_mem105 to ptr addrspace(12), !dbg !1088 call void @ijl_bounds_error_int(ptr addrspace(12) %567, i64 1), !dbg !1088 unreachable, !dbg !1088 load108: ; preds = %idxend103 %568 = call ptr addrspace(13) @julia.gc_loaded(ptr addrspace(10) %memoryref_mem105, ptr %memoryref_data85), !dbg !1088 %memoryref_data109 = getelementptr inbounds i8, ptr addrspace(13) %568, i64 %memoryref_byteoffset90, !dbg !1088 %569 = load double, ptr addrspace(13) %memoryref_data109, align 8, !dbg !1088, !tbaa !890, !alias.scope !150, !noalias !151 br label %L183, !dbg !1088 oob131: ; preds = %L219 %"+Core.GenericMemoryRef#54679132" = load ptr, ptr @_Core_GenericMemoryRef_54679, align 8, !dbg !1121, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0, !dereferenceable !138, !align !139 %GenericMemoryRef133 = ptrtoint ptr %"+Core.GenericMemoryRef#54679132" to i64, !dbg !1121 %570 = inttoptr i64 %GenericMemoryRef133 to ptr, !dbg !1121 %current_task134 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !1121 %571 = addrspacecast ptr %570 to ptr addrspace(10), !dbg !1121 %"box::GenericMemoryRef135" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task134, i64 16, ptr addrspace(10) %571) #134, !dbg !1121 %572 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef135" to ptr addrspace(11), !dbg !1121 store { ptr, ptr addrspace(10) } %.ref117, ptr addrspace(11) %572, align 8, !dbg !1121, !tbaa !146, !alias.scope !150, !noalias !151 %573 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef135" to ptr addrspace(12), !dbg !1121 call void @ijl_bounds_error_int(ptr addrspace(12) %573, i64 %165), !dbg !1121 unreachable, !dbg !1121 idxend136: ; preds = %L219 %574 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data_byteoffset124, 0, !dbg !1121 %memory_ref137 = insertvalue { ptr, ptr addrspace(10) } %574, ptr addrspace(10) %memoryref_mem138, 1, !dbg !1121 %575 = addrspacecast ptr addrspace(10) %memoryref_mem138 to ptr addrspace(11), !dbg !1121 %576 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %575, i32 0, i32 0, !dbg !1121 %memory_len139 = load i64, ptr addrspace(11) %576, align 8, !dbg !1121, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %577 = icmp eq i64 %memory_len139, 0, !dbg !1121 br i1 %577, label %oob140, label %load141, !dbg !1121 oob140: ; preds = %idxend136 %578 = addrspacecast ptr addrspace(10) %memoryref_mem138 to ptr addrspace(12), !dbg !1121 call void @ijl_bounds_error_int(ptr addrspace(12) %578, i64 1), !dbg !1121 unreachable, !dbg !1121 load141: ; preds = %idxend136 %579 = call ptr addrspace(13) @julia.gc_loaded(ptr addrspace(10) %memoryref_mem138, ptr %memoryref_data118), !dbg !1121 %memoryref_data142 = getelementptr inbounds i8, ptr addrspace(13) %579, i64 %memoryref_byteoffset123, !dbg !1121 store double %155, ptr addrspace(13) %memoryref_data142, align 8, !dbg !1121, !tbaa !890, !alias.scope !150, !noalias !151 br label %L223, !dbg !1397 oob164: ; preds = %L260 %"+Core.GenericMemoryRef#54679165" = load ptr, ptr @_Core_GenericMemoryRef_54679, align 8, !dbg !1150, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0, !dereferenceable !138, !align !139 %GenericMemoryRef166 = ptrtoint ptr %"+Core.GenericMemoryRef#54679165" to i64, !dbg !1150 %580 = inttoptr i64 %GenericMemoryRef166 to ptr, !dbg !1150 %current_task167 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !1150 %581 = addrspacecast ptr %580 to ptr addrspace(10), !dbg !1150 %"box::GenericMemoryRef168" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task167, i64 16, ptr addrspace(10) %581) #134, !dbg !1150 %582 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef168" to ptr addrspace(11), !dbg !1150 store { ptr, ptr addrspace(10) } %.ref150, ptr addrspace(11) %582, align 8, !dbg !1150, !tbaa !146, !alias.scope !150, !noalias !151 %583 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef168" to ptr addrspace(12), !dbg !1150 call void @ijl_bounds_error_int(ptr addrspace(12) %583, i64 %196), !dbg !1150 unreachable, !dbg !1150 idxend169: ; preds = %L260 %584 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data_byteoffset157, 0, !dbg !1150 %memory_ref170 = insertvalue { ptr, ptr addrspace(10) } %584, ptr addrspace(10) %memoryref_mem171, 1, !dbg !1150 %585 = addrspacecast ptr addrspace(10) %memoryref_mem171 to ptr addrspace(11), !dbg !1150 %586 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %585, i32 0, i32 0, !dbg !1150 %memory_len172 = load i64, ptr addrspace(11) %586, align 8, !dbg !1150, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %587 = icmp eq i64 %memory_len172, 0, !dbg !1150 br i1 %587, label %oob173, label %load174, !dbg !1150 oob173: ; preds = %idxend169 %588 = addrspacecast ptr addrspace(10) %memoryref_mem171 to ptr addrspace(12), !dbg !1150 call void @ijl_bounds_error_int(ptr addrspace(12) %588, i64 1), !dbg !1150 unreachable, !dbg !1150 load174: ; preds = %idxend169 %589 = call ptr addrspace(13) @julia.gc_loaded(ptr addrspace(10) %memoryref_mem171, ptr %memoryref_data151), !dbg !1150 %memoryref_data175 = getelementptr inbounds i8, ptr addrspace(13) %589, i64 %memoryref_byteoffset156, !dbg !1150 %590 = load double, ptr addrspace(13) %memoryref_data175, align 8, !dbg !1150, !tbaa !890, !alias.scope !150, !noalias !151 br label %L264, !dbg !1150 oob203: ; preds = %L322 %"+Core.GenericMemoryRef#54679204" = load ptr, ptr @_Core_GenericMemoryRef_54679, align 8, !dbg !1205, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0, !dereferenceable !138, !align !139 %GenericMemoryRef205 = ptrtoint ptr %"+Core.GenericMemoryRef#54679204" to i64, !dbg !1205 %591 = inttoptr i64 %GenericMemoryRef205 to ptr, !dbg !1205 %current_task206 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !1205 %592 = addrspacecast ptr %591 to ptr addrspace(10), !dbg !1205 %"box::GenericMemoryRef207" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task206, i64 16, ptr addrspace(10) %592) #134, !dbg !1205 %593 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef207" to ptr addrspace(11), !dbg !1205 store { ptr, ptr addrspace(10) } %.ref189, ptr addrspace(11) %593, align 8, !dbg !1205, !tbaa !146, !alias.scope !150, !noalias !151 %594 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef207" to ptr addrspace(12), !dbg !1205 call void @ijl_bounds_error_int(ptr addrspace(12) %594, i64 %238), !dbg !1205 unreachable, !dbg !1205 idxend208: ; preds = %L322 %595 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data_byteoffset196, 0, !dbg !1205 %memory_ref209 = insertvalue { ptr, ptr addrspace(10) } %595, ptr addrspace(10) %memoryref_mem210, 1, !dbg !1205 %596 = addrspacecast ptr addrspace(10) %memoryref_mem210 to ptr addrspace(11), !dbg !1205 %597 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %596, i32 0, i32 0, !dbg !1205 %memory_len211 = load i64, ptr addrspace(11) %597, align 8, !dbg !1205, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %598 = icmp eq i64 %memory_len211, 0, !dbg !1205 br i1 %598, label %oob212, label %load213, !dbg !1205 oob212: ; preds = %idxend208 %599 = addrspacecast ptr addrspace(10) %memoryref_mem210 to ptr addrspace(12), !dbg !1205 call void @ijl_bounds_error_int(ptr addrspace(12) %599, i64 1), !dbg !1205 unreachable, !dbg !1205 load213: ; preds = %idxend208 %600 = call ptr addrspace(13) @julia.gc_loaded(ptr addrspace(10) %memoryref_mem210, ptr %memoryref_data190), !dbg !1205 %memoryref_data214 = getelementptr inbounds i8, ptr addrspace(13) %600, i64 %memoryref_byteoffset195, !dbg !1205 %601 = load double, ptr addrspace(13) %memoryref_data214, align 8, !dbg !1205, !tbaa !890, !alias.scope !150, !noalias !151 br label %L326, !dbg !1205 oob236: ; preds = %L365 %"+Core.GenericMemoryRef#54679237" = load ptr, ptr @_Core_GenericMemoryRef_54679, align 8, !dbg !1205, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0, !dereferenceable !138, !align !139 %GenericMemoryRef238 = ptrtoint ptr %"+Core.GenericMemoryRef#54679237" to i64, !dbg !1205 %602 = inttoptr i64 %GenericMemoryRef238 to ptr, !dbg !1205 %current_task239 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !1205 %603 = addrspacecast ptr %602 to ptr addrspace(10), !dbg !1205 %"box::GenericMemoryRef240" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task239, i64 16, ptr addrspace(10) %603) #134, !dbg !1205 %604 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef240" to ptr addrspace(11), !dbg !1205 store { ptr, ptr addrspace(10) } %.ref222, ptr addrspace(11) %604, align 8, !dbg !1205, !tbaa !146, !alias.scope !150, !noalias !151 %605 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef240" to ptr addrspace(12), !dbg !1205 call void @ijl_bounds_error_int(ptr addrspace(12) %605, i64 %272), !dbg !1205 unreachable, !dbg !1205 idxend241: ; preds = %L365 %606 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data_byteoffset229, 0, !dbg !1205 %memory_ref242 = insertvalue { ptr, ptr addrspace(10) } %606, ptr addrspace(10) %memoryref_mem243, 1, !dbg !1205 %607 = addrspacecast ptr addrspace(10) %memoryref_mem243 to ptr addrspace(11), !dbg !1205 %608 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %607, i32 0, i32 0, !dbg !1205 %memory_len244 = load i64, ptr addrspace(11) %608, align 8, !dbg !1205, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %609 = icmp eq i64 %memory_len244, 0, !dbg !1205 br i1 %609, label %oob245, label %load246, !dbg !1205 oob245: ; preds = %idxend241 %610 = addrspacecast ptr addrspace(10) %memoryref_mem243 to ptr addrspace(12), !dbg !1205 call void @ijl_bounds_error_int(ptr addrspace(12) %610, i64 1), !dbg !1205 unreachable, !dbg !1205 load246: ; preds = %idxend241 %611 = call ptr addrspace(13) @julia.gc_loaded(ptr addrspace(10) %memoryref_mem243, ptr %memoryref_data223), !dbg !1205 %memoryref_data247 = getelementptr inbounds i8, ptr addrspace(13) %611, i64 %memoryref_byteoffset228, !dbg !1205 %612 = load double, ptr addrspace(13) %memoryref_data247, align 8, !dbg !1205, !tbaa !890, !alias.scope !150, !noalias !151 br label %L369, !dbg !1205 oob269: ; preds = %L406 %"+Core.GenericMemoryRef#54679270" = load ptr, ptr @_Core_GenericMemoryRef_54679, align 8, !dbg !1205, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0, !dereferenceable !138, !align !139 %GenericMemoryRef271 = ptrtoint ptr %"+Core.GenericMemoryRef#54679270" to i64, !dbg !1205 %613 = inttoptr i64 %GenericMemoryRef271 to ptr, !dbg !1205 %current_task272 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !1205 %614 = addrspacecast ptr %613 to ptr addrspace(10), !dbg !1205 %"box::GenericMemoryRef273" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task272, i64 16, ptr addrspace(10) %614) #134, !dbg !1205 %615 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef273" to ptr addrspace(11), !dbg !1205 store { ptr, ptr addrspace(10) } %.ref255, ptr addrspace(11) %615, align 8, !dbg !1205, !tbaa !146, !alias.scope !150, !noalias !151 %616 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef273" to ptr addrspace(12), !dbg !1205 call void @ijl_bounds_error_int(ptr addrspace(12) %616, i64 %305), !dbg !1205 unreachable, !dbg !1205 idxend274: ; preds = %L406 %617 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data_byteoffset262, 0, !dbg !1205 %memory_ref275 = insertvalue { ptr, ptr addrspace(10) } %617, ptr addrspace(10) %memoryref_mem276, 1, !dbg !1205 %618 = addrspacecast ptr addrspace(10) %memoryref_mem276 to ptr addrspace(11), !dbg !1205 %619 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %618, i32 0, i32 0, !dbg !1205 %memory_len277 = load i64, ptr addrspace(11) %619, align 8, !dbg !1205, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %620 = icmp eq i64 %memory_len277, 0, !dbg !1205 br i1 %620, label %oob278, label %load279, !dbg !1205 oob278: ; preds = %idxend274 %621 = addrspacecast ptr addrspace(10) %memoryref_mem276 to ptr addrspace(12), !dbg !1205 call void @ijl_bounds_error_int(ptr addrspace(12) %621, i64 1), !dbg !1205 unreachable, !dbg !1205 load279: ; preds = %idxend274 %622 = call ptr addrspace(13) @julia.gc_loaded(ptr addrspace(10) %memoryref_mem276, ptr %memoryref_data256), !dbg !1205 %memoryref_data280 = getelementptr inbounds i8, ptr addrspace(13) %622, i64 %memoryref_byteoffset261, !dbg !1205 %623 = load double, ptr addrspace(13) %memoryref_data280, align 8, !dbg !1205, !tbaa !890, !alias.scope !150, !noalias !151 br label %L410, !dbg !1205 oob302: ; preds = %L450 %"+Core.GenericMemoryRef#54679303" = load ptr, ptr @_Core_GenericMemoryRef_54679, align 8, !dbg !1205, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0, !dereferenceable !138, !align !139 %GenericMemoryRef304 = ptrtoint ptr %"+Core.GenericMemoryRef#54679303" to i64, !dbg !1205 %624 = inttoptr i64 %GenericMemoryRef304 to ptr, !dbg !1205 %current_task305 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !1205 %625 = addrspacecast ptr %624 to ptr addrspace(10), !dbg !1205 %"box::GenericMemoryRef306" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task305, i64 16, ptr addrspace(10) %625) #134, !dbg !1205 %626 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef306" to ptr addrspace(11), !dbg !1205 store { ptr, ptr addrspace(10) } %.ref288, ptr addrspace(11) %626, align 8, !dbg !1205, !tbaa !146, !alias.scope !150, !noalias !151 %627 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef306" to ptr addrspace(12), !dbg !1205 call void @ijl_bounds_error_int(ptr addrspace(12) %627, i64 %340), !dbg !1205 unreachable, !dbg !1205 idxend307: ; preds = %L450 %628 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data_byteoffset295, 0, !dbg !1205 %memory_ref308 = insertvalue { ptr, ptr addrspace(10) } %628, ptr addrspace(10) %memoryref_mem309, 1, !dbg !1205 %629 = addrspacecast ptr addrspace(10) %memoryref_mem309 to ptr addrspace(11), !dbg !1205 %630 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %629, i32 0, i32 0, !dbg !1205 %memory_len310 = load i64, ptr addrspace(11) %630, align 8, !dbg !1205, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %631 = icmp eq i64 %memory_len310, 0, !dbg !1205 br i1 %631, label %oob311, label %load312, !dbg !1205 oob311: ; preds = %idxend307 %632 = addrspacecast ptr addrspace(10) %memoryref_mem309 to ptr addrspace(12), !dbg !1205 call void @ijl_bounds_error_int(ptr addrspace(12) %632, i64 1), !dbg !1205 unreachable, !dbg !1205 load312: ; preds = %idxend307 %633 = call ptr addrspace(13) @julia.gc_loaded(ptr addrspace(10) %memoryref_mem309, ptr %memoryref_data289), !dbg !1205 %memoryref_data313 = getelementptr inbounds i8, ptr addrspace(13) %633, i64 %memoryref_byteoffset294, !dbg !1205 %634 = load double, ptr addrspace(13) %memoryref_data313, align 8, !dbg !1205, !tbaa !890, !alias.scope !150, !noalias !151 br label %L454, !dbg !1205 oob335: ; preds = %L490 %"+Core.GenericMemoryRef#54679336" = load ptr, ptr @_Core_GenericMemoryRef_54679, align 8, !dbg !1239, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0, !dereferenceable !138, !align !139 %GenericMemoryRef337 = ptrtoint ptr %"+Core.GenericMemoryRef#54679336" to i64, !dbg !1239 %635 = inttoptr i64 %GenericMemoryRef337 to ptr, !dbg !1239 %current_task338 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !1239 %636 = addrspacecast ptr %635 to ptr addrspace(10), !dbg !1239 %"box::GenericMemoryRef339" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task338, i64 16, ptr addrspace(10) %636) #134, !dbg !1239 %637 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef339" to ptr addrspace(11), !dbg !1239 store { ptr, ptr addrspace(10) } %.ref321, ptr addrspace(11) %637, align 8, !dbg !1239, !tbaa !146, !alias.scope !150, !noalias !151 %638 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef339" to ptr addrspace(12), !dbg !1239 call void @ijl_bounds_error_int(ptr addrspace(12) %638, i64 %373), !dbg !1239 unreachable, !dbg !1239 idxend340: ; preds = %L490 %639 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data_byteoffset328, 0, !dbg !1239 %memory_ref341 = insertvalue { ptr, ptr addrspace(10) } %639, ptr addrspace(10) %memoryref_mem342, 1, !dbg !1239 %640 = addrspacecast ptr addrspace(10) %memoryref_mem342 to ptr addrspace(11), !dbg !1239 %641 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %640, i32 0, i32 0, !dbg !1239 %memory_len343 = load i64, ptr addrspace(11) %641, align 8, !dbg !1239, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %642 = icmp eq i64 %memory_len343, 0, !dbg !1239 br i1 %642, label %oob344, label %load345, !dbg !1239 oob344: ; preds = %idxend340 %643 = addrspacecast ptr addrspace(10) %memoryref_mem342 to ptr addrspace(12), !dbg !1239 call void @ijl_bounds_error_int(ptr addrspace(12) %643, i64 1), !dbg !1239 unreachable, !dbg !1239 load345: ; preds = %idxend340 %644 = call ptr addrspace(13) @julia.gc_loaded(ptr addrspace(10) %memoryref_mem342, ptr %memoryref_data322), !dbg !1239 %memoryref_data346 = getelementptr inbounds i8, ptr addrspace(13) %644, i64 %memoryref_byteoffset327, !dbg !1239 store double %362, ptr addrspace(13) %memoryref_data346, align 8, !dbg !1239, !tbaa !890, !alias.scope !150, !noalias !151 br label %L494, !dbg !1398 oob368: ; preds = %L531 %"+Core.GenericMemoryRef#54679369" = load ptr, ptr @_Core_GenericMemoryRef_54679, align 8, !dbg !1269, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0, !dereferenceable !138, !align !139 %GenericMemoryRef370 = ptrtoint ptr %"+Core.GenericMemoryRef#54679369" to i64, !dbg !1269 %645 = inttoptr i64 %GenericMemoryRef370 to ptr, !dbg !1269 %current_task371 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !1269 %646 = addrspacecast ptr %645 to ptr addrspace(10), !dbg !1269 %"box::GenericMemoryRef372" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task371, i64 16, ptr addrspace(10) %646) #134, !dbg !1269 %647 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef372" to ptr addrspace(11), !dbg !1269 store { ptr, ptr addrspace(10) } %.ref354, ptr addrspace(11) %647, align 8, !dbg !1269, !tbaa !146, !alias.scope !150, !noalias !151 %648 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef372" to ptr addrspace(12), !dbg !1269 call void @ijl_bounds_error_int(ptr addrspace(12) %648, i64 %405), !dbg !1269 unreachable, !dbg !1269 idxend373: ; preds = %L531 %649 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data_byteoffset361, 0, !dbg !1269 %memory_ref374 = insertvalue { ptr, ptr addrspace(10) } %649, ptr addrspace(10) %memoryref_mem375, 1, !dbg !1269 %650 = addrspacecast ptr addrspace(10) %memoryref_mem375 to ptr addrspace(11), !dbg !1269 %651 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %650, i32 0, i32 0, !dbg !1269 %memory_len376 = load i64, ptr addrspace(11) %651, align 8, !dbg !1269, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %652 = icmp eq i64 %memory_len376, 0, !dbg !1269 br i1 %652, label %oob377, label %load378, !dbg !1269 oob377: ; preds = %idxend373 %653 = addrspacecast ptr addrspace(10) %memoryref_mem375 to ptr addrspace(12), !dbg !1269 call void @ijl_bounds_error_int(ptr addrspace(12) %653, i64 1), !dbg !1269 unreachable, !dbg !1269 load378: ; preds = %idxend373 %654 = call ptr addrspace(13) @julia.gc_loaded(ptr addrspace(10) %memoryref_mem375, ptr %memoryref_data355), !dbg !1269 %memoryref_data379 = getelementptr inbounds i8, ptr addrspace(13) %654, i64 %memoryref_byteoffset360, !dbg !1269 %655 = load double, ptr addrspace(13) %memoryref_data379, align 8, !dbg !1269, !tbaa !890, !alias.scope !150, !noalias !151 br label %L535, !dbg !1269 oob409: ; preds = %L616 %"+Core.GenericMemoryRef#54679410" = load ptr, ptr @_Core_GenericMemoryRef_54679, align 8, !dbg !1356, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0, !dereferenceable !138, !align !139 %GenericMemoryRef411 = ptrtoint ptr %"+Core.GenericMemoryRef#54679410" to i64, !dbg !1356 %656 = inttoptr i64 %GenericMemoryRef411 to ptr, !dbg !1356 %current_task412 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !1356 %657 = addrspacecast ptr %656 to ptr addrspace(10), !dbg !1356 %"box::GenericMemoryRef413" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task412, i64 16, ptr addrspace(10) %657) #134, !dbg !1356 %658 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef413" to ptr addrspace(11), !dbg !1356 store { ptr, ptr addrspace(10) } %.ref395, ptr addrspace(11) %658, align 8, !dbg !1356, !tbaa !146, !alias.scope !150, !noalias !151 %659 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef413" to ptr addrspace(12), !dbg !1356 call void @ijl_bounds_error_int(ptr addrspace(12) %659, i64 %464), !dbg !1356 unreachable, !dbg !1356 idxend414: ; preds = %L616 %660 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data_byteoffset402, 0, !dbg !1356 %memory_ref415 = insertvalue { ptr, ptr addrspace(10) } %660, ptr addrspace(10) %memoryref_mem416, 1, !dbg !1356 %661 = addrspacecast ptr addrspace(10) %memoryref_mem416 to ptr addrspace(11), !dbg !1356 %662 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %661, i32 0, i32 0, !dbg !1356 %memory_len417 = load i64, ptr addrspace(11) %662, align 8, !dbg !1356, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %663 = icmp eq i64 %memory_len417, 0, !dbg !1356 br i1 %663, label %oob418, label %load419, !dbg !1356 oob418: ; preds = %idxend414 %664 = addrspacecast ptr addrspace(10) %memoryref_mem416 to ptr addrspace(12), !dbg !1356 call void @ijl_bounds_error_int(ptr addrspace(12) %664, i64 1), !dbg !1356 unreachable, !dbg !1356 load419: ; preds = %idxend414 %665 = call ptr addrspace(13) @julia.gc_loaded(ptr addrspace(10) %memoryref_mem416, ptr %memoryref_data396), !dbg !1356 %memoryref_data420 = getelementptr inbounds i8, ptr addrspace(13) %665, i64 %memoryref_byteoffset401, !dbg !1356 %666 = load double, ptr addrspace(13) %memoryref_data420, align 8, !dbg !1356, !tbaa !890, !alias.scope !150, !noalias !151 br label %L620, !dbg !1356 oob442: ; preds = %L656 %"+Core.GenericMemoryRef#54679443" = load ptr, ptr @_Core_GenericMemoryRef_54679, align 8, !dbg !1387, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0, !dereferenceable !138, !align !139 %GenericMemoryRef444 = ptrtoint ptr %"+Core.GenericMemoryRef#54679443" to i64, !dbg !1387 %667 = inttoptr i64 %GenericMemoryRef444 to ptr, !dbg !1387 %current_task445 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !1387 %668 = addrspacecast ptr %667 to ptr addrspace(10), !dbg !1387 %"box::GenericMemoryRef446" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task445, i64 16, ptr addrspace(10) %668) #134, !dbg !1387 %669 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef446" to ptr addrspace(11), !dbg !1387 store { ptr, ptr addrspace(10) } %.ref428, ptr addrspace(11) %669, align 8, !dbg !1387, !tbaa !146, !alias.scope !150, !noalias !151 %670 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef446" to ptr addrspace(12), !dbg !1387 call void @ijl_bounds_error_int(ptr addrspace(12) %670, i64 %497), !dbg !1387 unreachable, !dbg !1387 idxend447: ; preds = %L656 %671 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data_byteoffset435, 0, !dbg !1387 %memory_ref448 = insertvalue { ptr, ptr addrspace(10) } %671, ptr addrspace(10) %memoryref_mem449, 1, !dbg !1387 %672 = addrspacecast ptr addrspace(10) %memoryref_mem449 to ptr addrspace(11), !dbg !1387 %673 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %672, i32 0, i32 0, !dbg !1387 %memory_len450 = load i64, ptr addrspace(11) %673, align 8, !dbg !1387, !tbaa !315, !range !317, !alias.scope !313, !noalias !314 %674 = icmp eq i64 %memory_len450, 0, !dbg !1387 br i1 %674, label %oob451, label %load452, !dbg !1387 oob451: ; preds = %idxend447 %675 = addrspacecast ptr addrspace(10) %memoryref_mem449 to ptr addrspace(12), !dbg !1387 call void @ijl_bounds_error_int(ptr addrspace(12) %675, i64 1), !dbg !1387 unreachable, !dbg !1387 load452: ; preds = %idxend447 %676 = call ptr addrspace(13) @julia.gc_loaded(ptr addrspace(10) %memoryref_mem449, ptr %memoryref_data429), !dbg !1387 %memoryref_data453 = getelementptr inbounds i8, ptr addrspace(13) %676, i64 %memoryref_byteoffset434, !dbg !1387 store double %486, ptr addrspace(13) %memoryref_data453, align 8, !dbg !1387, !tbaa !890, !alias.scope !150, !noalias !151 br label %L660, !dbg !1399 after_error: ; No predecessors! call void @llvm.trap(), !dbg !1381 unreachable, !dbg !1381 after_noret: ; No predecessors! call void @llvm.trap(), !dbg !1381 unreachable, !dbg !1381 after_error455: ; No predecessors! call void @llvm.trap(), !dbg !1363 unreachable, !dbg !1363 after_noret456: ; No predecessors! call void @llvm.trap(), !dbg !1363 unreachable, !dbg !1363 after_error458: ; No predecessors! call void @llvm.trap(), !dbg !1353 unreachable, !dbg !1353 after_noret459: ; No predecessors! call void @llvm.trap(), !dbg !1353 unreachable, !dbg !1353 after_error460: ; No predecessors! call void @llvm.trap(), !dbg !1333 unreachable, !dbg !1333 after_noret461: ; No predecessors! call void @llvm.trap(), !dbg !1333 unreachable, !dbg !1333 after_error462: ; No predecessors! call void @llvm.trap(), !dbg !1323 unreachable, !dbg !1323 after_noret463: ; No predecessors! call void @llvm.trap(), !dbg !1323 unreachable, !dbg !1323 after_error465: ; No predecessors! call void @llvm.trap(), !dbg !1266 unreachable, !dbg !1266 after_noret466: ; No predecessors! call void @llvm.trap(), !dbg !1266 unreachable, !dbg !1266 after_error467: ; No predecessors! call void @llvm.trap(), !dbg !1246 unreachable, !dbg !1246 after_noret468: ; No predecessors! call void @llvm.trap(), !dbg !1246 unreachable, !dbg !1246 after_error470: ; No predecessors! call void @llvm.trap(), !dbg !1233 unreachable, !dbg !1233 after_noret471: ; No predecessors! call void @llvm.trap(), !dbg !1233 unreachable, !dbg !1233 after_error472: ; No predecessors! call void @llvm.trap(), !dbg !1215 unreachable, !dbg !1215 after_noret473: ; No predecessors! call void @llvm.trap(), !dbg !1215 unreachable, !dbg !1215 after_error475: ; No predecessors! call void @llvm.trap(), !dbg !1202 unreachable, !dbg !1202 after_noret476: ; No predecessors! call void @llvm.trap(), !dbg !1202 unreachable, !dbg !1202 after_error477: ; No predecessors! call void @llvm.trap(), !dbg !1167 unreachable, !dbg !1167 after_noret478: ; No predecessors! call void @llvm.trap(), !dbg !1167 unreachable, !dbg !1167 after_error480: ; No predecessors! call void @llvm.trap(), !dbg !1202 unreachable, !dbg !1202 after_noret481: ; No predecessors! call void @llvm.trap(), !dbg !1202 unreachable, !dbg !1202 after_error482: ; No predecessors! call void @llvm.trap(), !dbg !1167 unreachable, !dbg !1167 after_noret483: ; No predecessors! call void @llvm.trap(), !dbg !1167 unreachable, !dbg !1167 after_error485: ; No predecessors! call void @llvm.trap(), !dbg !1202 unreachable, !dbg !1202 after_noret486: ; No predecessors! call void @llvm.trap(), !dbg !1202 unreachable, !dbg !1202 after_error487: ; No predecessors! call void @llvm.trap(), !dbg !1167 unreachable, !dbg !1167 after_noret488: ; No predecessors! call void @llvm.trap(), !dbg !1167 unreachable, !dbg !1167 after_error490: ; No predecessors! call void @llvm.trap(), !dbg !1202 unreachable, !dbg !1202 after_noret491: ; No predecessors! call void @llvm.trap(), !dbg !1202 unreachable, !dbg !1202 after_error492: ; No predecessors! call void @llvm.trap(), !dbg !1167 unreachable, !dbg !1167 after_noret493: ; No predecessors! call void @llvm.trap(), !dbg !1167 unreachable, !dbg !1167 after_error495: ; No predecessors! call void @llvm.trap(), !dbg !1147 unreachable, !dbg !1147 after_noret496: ; No predecessors! call void @llvm.trap(), !dbg !1147 unreachable, !dbg !1147 after_error497: ; No predecessors! call void @llvm.trap(), !dbg !1128 unreachable, !dbg !1128 after_noret498: ; No predecessors! call void @llvm.trap(), !dbg !1128 unreachable, !dbg !1128 after_error500: ; No predecessors! call void @llvm.trap(), !dbg !1115 unreachable, !dbg !1115 after_noret501: ; No predecessors! call void @llvm.trap(), !dbg !1115 unreachable, !dbg !1115 after_error502: ; No predecessors! call void @llvm.trap(), !dbg !1098 unreachable, !dbg !1098 after_noret503: ; No predecessors! call void @llvm.trap(), !dbg !1098 unreachable, !dbg !1098 after_error505: ; No predecessors! call void @llvm.trap(), !dbg !1085 unreachable, !dbg !1085 after_noret506: ; No predecessors! call void @llvm.trap(), !dbg !1085 unreachable, !dbg !1085 after_error507: ; No predecessors! call void @llvm.trap(), !dbg !1066 unreachable, !dbg !1066 after_noret508: ; No predecessors! call void @llvm.trap(), !dbg !1066 unreachable, !dbg !1066 after_error510: ; No predecessors! call void @llvm.trap(), !dbg !1085 unreachable, !dbg !1085 after_noret511: ; No predecessors! call void @llvm.trap(), !dbg !1085 unreachable, !dbg !1085 after_error512: ; No predecessors! call void @llvm.trap(), !dbg !1066 unreachable, !dbg !1066 after_noret513: ; No predecessors! call void @llvm.trap(), !dbg !1066 unreachable, !dbg !1066 after_error515: ; No predecessors! call void @llvm.trap(), !dbg !1056 unreachable, !dbg !1056 after_noret516: ; No predecessors! call void @llvm.trap(), !dbg !1056 unreachable, !dbg !1056 after_error517: ; No predecessors! call void @llvm.trap(), !dbg !1036 unreachable, !dbg !1036 after_noret518: ; No predecessors! call void @llvm.trap(), !dbg !1036 unreachable, !dbg !1036 after_error520: ; No predecessors! call void @llvm.trap(), !dbg !1014 unreachable, !dbg !1014 after_noret521: ; No predecessors! call void @llvm.trap(), !dbg !1014 unreachable, !dbg !1014 after_error522: ; No predecessors! call void @llvm.trap(), !dbg !992 unreachable, !dbg !992 after_noret523: ; No predecessors! call void @llvm.trap(), !dbg !992 unreachable, !dbg !992 after_throw: ; No predecessors! call void @llvm.trap(), !dbg !970 unreachable, !dbg !970 after_noret525: ; No predecessors! call void @llvm.trap(), !dbg !970 unreachable, !dbg !970 } expectLen=5 swiftself=false sret=Ptr{SubArray{Float64, 1, Vector{Float64}, Tuple{UnitRange{Int64}}, true}} returnRoots=Ptr{@NamedTuple{var"1"}} mi.specTypes.parameters=svec(typeof(QuadGK.eigvec1!), SubArray{Float64, 1, Vector{Float64}, Tuple{UnitRange{Int64}}, true}, QuadGK.HollowSymTridiagonal{Float64, SubArray{Float64, 1, Vector{Float64}, Tuple{UnitRange{Int64}}, true}}, Float64) retRemoved=false parmsRemoved=UInt64[] Stacktrace: [1] julia_activity_rule(f::LLVM.Function) @ Enzyme.Compiler ~/.julia/packages/Enzyme/EPXUy/src/rules/activityrules.jl:48 [2] handle_compiled(state::Enzyme.Compiler.HandlerState, edges::Vector{Any}, run_enzyme::Bool, mode::Enzyme.API.CDerivativeMode, world::UInt64, method_table::Compiler.OverlayMethodTable, custom::Dict{String, LLVM.API.LLVMLinkage}, mod::LLVM.Module, mi::Core.MethodInstance, k_name::String, rettype::Type) @ Enzyme.Compiler ~/.julia/packages/Enzyme/EPXUy/src/compiler.jl:628 [3] set_module_types!(interp::Enzyme.Compiler.Interpreter.EnzymeInterpreter{Nothing}, mod::LLVM.Module, primalf::LLVM.Function, job::GPUCompiler.CompilerJob{Enzyme.Compiler.EnzymeTarget{GPUCompiler.NativeCompilerTarget}, Enzyme.Compiler.EnzymeCompilerParams{Enzyme.Compiler.PrimalCompilerParams}}, edges::Vector{Any}, run_enzyme::Bool, mode::Enzyme.API.CDerivativeMode) @ Enzyme.Compiler ~/.julia/packages/Enzyme/EPXUy/src/compiler.jl:1220 [4] compile_unhooked(output::Symbol, job::GPUCompiler.CompilerJob{Enzyme.Compiler.EnzymeTarget{GPUCompiler.NativeCompilerTarget}, Enzyme.Compiler.EnzymeCompilerParams{Enzyme.Compiler.PrimalCompilerParams}}) @ Enzyme.Compiler ~/.julia/packages/Enzyme/EPXUy/src/compiler.jl:4627 [5] compile(target::Symbol, job::GPUCompiler.CompilerJob; kwargs::@Kwargs{}) @ GPUCompiler ~/.julia/packages/GPUCompiler/Gp8bZ/src/driver.jl:67 [6] compile @ ~/.julia/packages/GPUCompiler/Gp8bZ/src/driver.jl:55 [inlined] [7] _thunk(job::GPUCompiler.CompilerJob{Enzyme.Compiler.EnzymeTarget{GPUCompiler.NativeCompilerTarget}, Enzyme.Compiler.EnzymeCompilerParams{Enzyme.Compiler.PrimalCompilerParams}}, postopt::Bool) @ Enzyme.Compiler ~/.julia/packages/Enzyme/EPXUy/src/compiler.jl:5960 [8] _thunk @ ~/.julia/packages/Enzyme/EPXUy/src/compiler.jl:5958 [inlined] [9] cached_compilation @ ~/.julia/packages/Enzyme/EPXUy/src/compiler.jl:6015 [inlined] [10] thunkbase(mi::Core.MethodInstance, World::UInt64, FA::Type{<:Annotation}, A::Type{<:Annotation}, TT::Type, Mode::Enzyme.API.CDerivativeMode, width::Int64, ModifiedBetween::NTuple{N, Bool} where N, ReturnPrimal::Bool, ShadowInit::Bool, ABI::Type, ErrIfFuncWritten::Bool, RuntimeActivity::Bool, StrongZero::Bool, edges::Vector{Any}) @ Enzyme.Compiler ~/.julia/packages/Enzyme/EPXUy/src/compiler.jl:6131 [11] thunk_generator(world::UInt64, source::Union{LineNumberNode, Method}, FA::Type, A::Type, TT::Type, Mode::Enzyme.API.CDerivativeMode, Width::Int64, ModifiedBetween::NTuple{N, Bool} where N, ReturnPrimal::Bool, ShadowInit::Bool, ABI::Type, ErrIfFuncWritten::Bool, RuntimeActivity::Bool, StrongZero::Bool, self::Any, fakeworld::Any, fa::Type, a::Type, tt::Type, mode::Type, width::Type, modifiedbetween::Type, returnprimal::Type, shadowinit::Type, abi::Type, erriffuncwritten::Type, runtimeactivity::Type, strongzero::Type) @ Enzyme.Compiler ~/.julia/packages/Enzyme/EPXUy/src/compiler.jl:6275 [12] autodiff @ ~/.julia/packages/Enzyme/EPXUy/src/Enzyme.jl:502 [inlined] [13] autodiff @ ~/.julia/packages/Enzyme/EPXUy/src/Enzyme.jl:562 [inlined] [14] autodiff(mode::ReverseMode{false, false, false, FFIABI, false, false}, f::typeof(f2_count), args::Active{Float64}) @ Enzyme ~/.julia/packages/Enzyme/EPXUy/src/Enzyme.jl:534 [15] top-level scope @ ~/.julia/packages/QuadGK/7rND3/test/runtests.jl:469 [16] macro expansion @ /opt/julia/share/julia/stdlib/v1.14/Test/src/Test.jl:1961 [inlined] [17] macro expansion @ ~/.julia/packages/QuadGK/7rND3/test/runtests.jl:474 [inlined] [18] macro expansion @ /opt/julia/share/julia/stdlib/v1.14/Test/src/Test.jl:750 [inlined] Enzyme: Error During Test at /home/pkgeval/.julia/packages/QuadGK/7rND3/test/runtests.jl:475 Test threw exception Expression: (0.3 * cos(0.3) - sin(0.3)) / (0.3 * 0.3) ≈ ((Enzyme.autodiff(Reverse, f3_count, Active(0.3)))[1])[1] AssertionError: Enzyme Internal Error (expectLen != length(parameters(f))) define internal { ptr addrspace(10), i8 } @julia_refine_57627(ptr noalias nocapture noundef nonnull align 8 dereferenceable(24) %union_bytes_return, ptr addrspace(11) nocapture noundef nonnull readonly align 8 dereferenceable(32) %"f::#handle_infinities##6#handle_infinities##7", ptr nocapture noundef nonnull readonly align 8 dereferenceable(8) %.roots.f, ptr addrspace(10) noundef nonnull align 8 dereferenceable(24) %"segs::Array", double %"I::Float64", double %"E::Float64", i64 signext %"numevals::Int64", ptr addrspace(10) noundef nonnull align 8 dereferenceable(24) %"x::Array", ptr addrspace(10) noundef nonnull align 8 dereferenceable(24) %"w::Array", ptr addrspace(10) noundef nonnull align 8 dereferenceable(24) %"wg::Array", i64 signext %"n::Int64", double %"atol::Float64", double %"rtol::Float64", i64 signext %"maxevals::Int64") #9 !dbg !152 { top: %sret_box = alloca [4 x i64], align 8 %"x::Array.size" = alloca i64, align 8 %"x::Array.size10" = alloca i64, align 8 %"segs::Array.size" = alloca i64, align 8 %"new::Tuple" = alloca [1 x i64], align 8 %"segs::Array.size42" = alloca i64, align 8 %"segs::Array.size68" = alloca i64, align 8 %"segs::Array.size70" = alloca i64, align 8 %0 = alloca [4 x i64], align 8 %"segs::Array.size101" = alloca i64, align 8 %"segs::Array.size105" = alloca i64, align 8 %1 = alloca [4 x i64], align 8 %"segs::Array.size139" = alloca i64, align 8 %2 = alloca [4 x i64], align 8 %"segs::Array.size168" = alloca i64, align 8 %"new::Tuple196" = alloca [1 x i64], align 8 %"new::Tuple197" = alloca [1 x i64], align 8 %"segs::Array.size201" = alloca i64, align 8 %"new::Tuple229" = alloca [1 x i64], align 8 %"new::Tuple237" = alloca [1 x i64], align 8 %"new::Tuple240" = alloca [1 x i64], align 8 %"new::Tuple243" = alloca [1 x i64], align 8 %"x::Array.size248" = alloca i64, align 8 %"x::Array.size275" = alloca i64, align 8 %sret_box303 = alloca [4 x i64], align 8 %3 = alloca ptr addrspace(10), align 8 %sret_box306 = alloca [4 x i64], align 8 %4 = alloca ptr addrspace(10), align 8 %"segs::Array.size309" = alloca i64, align 8 %"new::Tuple316" = alloca [1 x i64], align 8 %"segs::Array.size319" = alloca i64, align 8 %"segs::Array.size347" = alloca i64, align 8 %"segs::Array.size349" = alloca i64, align 8 %5 = alloca [4 x i64], align 8 %"segs::Array.size380" = alloca i64, align 8 %"segs::Array.size388" = alloca i64, align 8 %6 = alloca [4 x i64], align 8 %"segs::Array.size423" = alloca i64, align 8 %7 = alloca [4 x i64], align 8 %"segs::Array.size452" = alloca i64, align 8 %"new::Tuple480" = alloca [1 x i64], align 8 %"new::Tuple483" = alloca [1 x i64], align 8 %"segs::Array.size487" = alloca i64, align 8 %"segs::Array.size517" = alloca i64, align 8 %"new::Tuple524" = alloca [1 x i64], align 8 %"segs::Array.size527" = alloca i64, align 8 %"segs::Array.size555" = alloca i64, align 8 %"segs::Array.size557" = alloca i64, align 8 %8 = alloca [4 x i64], align 8 %"segs::Array.size588" = alloca i64, align 8 %"segs::Array.size596" = alloca i64, align 8 %9 = alloca [4 x i64], align 8 %"segs::Array.size631" = alloca i64, align 8 %10 = alloca [4 x i64], align 8 %"segs::Array.size660" = alloca i64, align 8 %"new::Tuple688" = alloca [1 x i64], align 8 %"new::Tuple691" = alloca [1 x i64], align 8 %"segs::Array.size695" = alloca i64, align 8 %"new::Tuple723" = alloca { double, double, i64 }, align 8 %"new::Tuple724" = alloca [1 x i64], align 8 %"new::Tuple734" = alloca [1 x i64], align 8 %"new::Tuple737" = alloca [1 x i64], align 8 %"new::Tuple740" = alloca [1 x i64], align 8 %"new::Tuple743" = alloca [1 x i64], align 8 %"new::Tuple753" = alloca [1 x i64], align 8 %"new::Tuple756" = alloca [1 x i64], align 8 %"new::Tuple759" = alloca [1 x i64], align 8 %"new::Tuple762" = alloca [1 x i64], align 8 %"new::Tuple765" = alloca [1 x i64], align 8 %"new::Tuple768" = alloca [1 x i64], align 8 %"new::Tuple771" = alloca [1 x i64], align 8 %pgcstack = call ptr @julia.get_pgcstack() call void @llvm.memset.p0.i64(ptr align 8 %4, i8 0, i64 8, i1 false), !tbaa !121, !alias.scope !154, !noalias !155 call void @llvm.memset.p0.i64(ptr align 8 %3, i8 0, i64 8, i1 false), !tbaa !121, !alias.scope !154, !noalias !155 %current_task = getelementptr inbounds i8, ptr %pgcstack, i32 -152 %ptls_field = getelementptr inbounds i8, ptr %current_task, i32 168 %ptls_load = load ptr, ptr %ptls_field, align 8, !tbaa !121 %11 = getelementptr inbounds i8, ptr %ptls_load, i32 16 %safepoint = load atomic ptr, ptr %11 monotonic, align 8, !tbaa !125 fence syncscope("singlethread") seq_cst call void @julia.safepoint(ptr %safepoint) fence syncscope("singlethread") seq_cst %12 = getelementptr inbounds i8, ptr %.roots.f, i32 0 %13 = load ptr addrspace(10), ptr %12, align 8, !tbaa !125, !alias.scope !128, !noalias !131 call void @julia_heappop__57005(ptr noalias nocapture noundef sret([4 x double]) %sret_box, ptr addrspace(10) %"segs::Array"), !dbg !156 %sret_box.b_ptr = getelementptr inbounds i8, ptr %sret_box, i32 8, !dbg !157 %sret_box.unbox = load double, ptr %sret_box, align 8, !dbg !161, !tbaa !121, !alias.scope !154, !noalias !155 %sret_box.b_ptr.unbox = load double, ptr %sret_box.b_ptr, align 8, !dbg !161, !tbaa !121, !alias.scope !154, !noalias !155 %14 = fadd double %sret_box.unbox, %sret_box.b_ptr.unbox, !dbg !161 %15 = fdiv double %14, 2.000000e+00, !dbg !164 %sret_box.unbox1 = load double, ptr %sret_box, align 8, !dbg !169, !tbaa !121, !alias.scope !154, !noalias !155 %16 = fsub double %15, %sret_box.unbox1, !dbg !169 %17 = fmul double 5.000000e-01, %16, !dbg !174 br i1 false, label %L23, label %L11, !dbg !176 L11: ; preds = %top %18 = addrspacecast ptr addrspace(10) %"x::Array" to ptr addrspace(11), !dbg !179 %"x::Array.size_ptr" = getelementptr inbounds i8, ptr addrspace(11) %18, i32 16, !dbg !179 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %"x::Array.size", ptr addrspace(11) align 8 %"x::Array.size_ptr", i64 8, i1 false), !dbg !179, !tbaa !140, !alias.scope !186, !noalias !187 %bitcast = load i64, ptr %"x::Array.size", align 8, !dbg !183, !tbaa !188, !alias.scope !190, !noalias !191 %19 = icmp ult i64 0, %bitcast, !dbg !183 %20 = xor i1 %19, true, !dbg !185 br i1 %20, label %L19, label %L18, !dbg !185 L18: ; preds = %L11 br label %L22, !dbg !185 L19: ; preds = %L11 %21 = getelementptr inbounds i8, ptr %"new::Tuple771", i32 0, !dbg !185 call void @llvm.memcpy.p0.p0.i64(ptr align 8 %21, ptr align 8 @_j_const_5, i64 8, i1 false), !dbg !185, !tbaa !140, !alias.scope !192, !noalias !193 %22 = addrspacecast ptr %"new::Tuple771" to ptr addrspace(11), !dbg !185 call void @julia_throw_boundserror_56996(ptr addrspace(10) %"x::Array", ptr addrspace(11) nocapture readonly %22) #133, !dbg !185 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4), !dbg !185 unreachable, !dbg !185 L22: ; preds = %L18 br label %L23, !dbg !185 L23: ; preds = %L22, %top %23 = addrspacecast ptr addrspace(10) %"x::Array" to ptr addrspace(11), !dbg !194 %24 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %23, i32 0, i32 0, !dbg !194 %memoryref_data = load ptr, ptr addrspace(11) %24, align 8, !dbg !194, !tbaa !195, !alias.scope !198, !noalias !199 %25 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %23, i32 0, i32 1, !dbg !194 %memoryref_mem = load ptr addrspace(10), ptr addrspace(11) %25, align 8, !dbg !194, !tbaa !195, !alias.scope !198, !noalias !199, !dereferenceable_or_null !139, !align !137 %26 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data, 0, !dbg !194 %"x::Array.ref" = insertvalue { ptr, ptr addrspace(10) } %26, ptr addrspace(10) %memoryref_mem, 1, !dbg !194 %27 = addrspacecast ptr addrspace(10) %memoryref_mem to ptr addrspace(11), !dbg !194 %28 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %27, i32 0, i32 0, !dbg !194 %memory_len = load i64, ptr addrspace(11) %28, align 8, !dbg !194, !tbaa !200, !range !202, !alias.scope !198, !noalias !199 %29 = add nuw i64 %memory_len, %memory_len, !dbg !194 %30 = add i64 0, %memory_len, !dbg !194 %memoryref_ovflw = icmp uge i64 %30, %29, !dbg !194 %memoryref_data_byteoffset = getelementptr i8, ptr %memoryref_data, i64 0, !dbg !194 %31 = addrspacecast ptr addrspace(10) %memoryref_mem to ptr addrspace(11), !dbg !194 %32 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %31, i32 0, i32 0, !dbg !194 %memory_len2 = load i64, ptr addrspace(11) %32, align 8, !dbg !194, !tbaa !200, !range !202, !alias.scope !198, !noalias !199 %33 = addrspacecast ptr addrspace(10) %memoryref_mem to ptr addrspace(11), !dbg !194 %memory_data_ptr = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %33, i32 0, i32 1, !dbg !194 %memory_data = load ptr, ptr addrspace(11) %memory_data_ptr, align 8, !dbg !194, !tbaa !203, !alias.scope !198, !noalias !199, !nonnull !0 %34 = ptrtoint ptr %memory_data to i64, !dbg !194 %35 = ptrtoint ptr %memoryref_data_byteoffset to i64, !dbg !194 %36 = sub i64 %35, %34, !dbg !194 %memoryref_bytelen = mul nuw nsw i64 %memory_len2, 8, !dbg !194 %memoryref_isinbounds = icmp ult i64 %36, %memoryref_bytelen, !dbg !194 %37 = xor i1 %memoryref_ovflw, true, !dbg !194 %"memoryref_isinbounds¬ovflw" = and i1 %37, %memoryref_isinbounds, !dbg !194 br i1 %"memoryref_isinbounds¬ovflw", label %idxend, label %oob, !dbg !194 L27: ; preds = %load %38 = fadd double 1.000000e+00, %666, !dbg !205 %39 = fmul double %38, %17, !dbg !208 %sret_box.unbox7 = load double, ptr %sret_box, align 8, !dbg !209, !tbaa !121, !alias.scope !154, !noalias !155 %40 = fadd double %sret_box.unbox7, %39, !dbg !209 %sret_box.unbox8 = load double, ptr %sret_box, align 8, !dbg !210, !tbaa !121, !alias.scope !154, !noalias !155 %41 = fcmp oeq double %sret_box.unbox8, %40, !dbg !210 br i1 false, label %L45, label %L33, !dbg !212 L33: ; preds = %L27 %42 = addrspacecast ptr addrspace(10) %"x::Array" to ptr addrspace(11), !dbg !214 %"x::Array.size_ptr9" = getelementptr inbounds i8, ptr addrspace(11) %42, i32 16, !dbg !214 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %"x::Array.size10", ptr addrspace(11) align 8 %"x::Array.size_ptr9", i64 8, i1 false), !dbg !214, !tbaa !140, !alias.scope !186, !noalias !187 %bitcast11 = load i64, ptr %"x::Array.size10", align 8, !dbg !216, !tbaa !188, !alias.scope !190, !noalias !191 %43 = icmp ult i64 0, %bitcast11, !dbg !216 %44 = xor i1 %43, true, !dbg !217 br i1 %44, label %L41, label %L40, !dbg !217 L40: ; preds = %L33 br label %L44, !dbg !217 L41: ; preds = %L33 %45 = getelementptr inbounds i8, ptr %"new::Tuple768", i32 0, !dbg !217 call void @llvm.memcpy.p0.p0.i64(ptr align 8 %45, ptr align 8 @_j_const_5, i64 8, i1 false), !dbg !217, !tbaa !140, !alias.scope !192, !noalias !193 %46 = addrspacecast ptr %"new::Tuple768" to ptr addrspace(11), !dbg !217 call void @julia_throw_boundserror_56996(ptr addrspace(10) %"x::Array", ptr addrspace(11) nocapture readonly %46) #133, !dbg !217 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4), !dbg !217 unreachable, !dbg !217 L44: ; preds = %L40 br label %L45, !dbg !217 L45: ; preds = %L44, %L27 %47 = addrspacecast ptr addrspace(10) %"x::Array" to ptr addrspace(11), !dbg !218 %48 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %47, i32 0, i32 0, !dbg !218 %memoryref_data13 = load ptr, ptr addrspace(11) %48, align 8, !dbg !218, !tbaa !195, !alias.scope !198, !noalias !199 %49 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %47, i32 0, i32 1, !dbg !218 %memoryref_mem31 = load ptr addrspace(10), ptr addrspace(11) %49, align 8, !dbg !218, !tbaa !195, !alias.scope !198, !noalias !199, !dereferenceable_or_null !139, !align !137 %50 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data13, 0, !dbg !218 %"x::Array.ref12" = insertvalue { ptr, ptr addrspace(10) } %50, ptr addrspace(10) %memoryref_mem31, 1, !dbg !218 %51 = addrspacecast ptr addrspace(10) %memoryref_mem31 to ptr addrspace(11), !dbg !218 %52 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %51, i32 0, i32 0, !dbg !218 %memory_len15 = load i64, ptr addrspace(11) %52, align 8, !dbg !218, !tbaa !200, !range !202, !alias.scope !198, !noalias !199 %53 = add nuw i64 %memory_len15, %memory_len15, !dbg !218 %54 = add i64 0, %memory_len15, !dbg !218 %memoryref_ovflw16 = icmp uge i64 %54, %53, !dbg !218 %memoryref_data_byteoffset17 = getelementptr i8, ptr %memoryref_data13, i64 0, !dbg !218 %55 = addrspacecast ptr addrspace(10) %memoryref_mem31 to ptr addrspace(11), !dbg !218 %56 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %55, i32 0, i32 0, !dbg !218 %memory_len18 = load i64, ptr addrspace(11) %56, align 8, !dbg !218, !tbaa !200, !range !202, !alias.scope !198, !noalias !199 %57 = addrspacecast ptr addrspace(10) %memoryref_mem31 to ptr addrspace(11), !dbg !218 %memory_data_ptr19 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %57, i32 0, i32 1, !dbg !218 %memory_data20 = load ptr, ptr addrspace(11) %memory_data_ptr19, align 8, !dbg !218, !tbaa !203, !alias.scope !198, !noalias !199, !nonnull !0 %58 = ptrtoint ptr %memory_data20 to i64, !dbg !218 %59 = ptrtoint ptr %memoryref_data_byteoffset17 to i64, !dbg !218 %60 = sub i64 %59, %58, !dbg !218 %memoryref_bytelen21 = mul nuw nsw i64 %memory_len18, 8, !dbg !218 %memoryref_isinbounds22 = icmp ult i64 %60, %memoryref_bytelen21, !dbg !218 %61 = xor i1 %memoryref_ovflw16, true, !dbg !218 %"memoryref_isinbounds¬ovflw23" = and i1 %61, %memoryref_isinbounds22, !dbg !218 br i1 %"memoryref_isinbounds¬ovflw23", label %idxend29, label %oob24, !dbg !218 L49: ; preds = %load34 %62 = fsub double 1.000000e+00, %676, !dbg !219 %63 = fmul double %62, %17, !dbg !222 %sret_box.unbox36 = load double, ptr %sret_box, align 8, !dbg !223, !tbaa !121, !alias.scope !154, !noalias !155 %64 = fadd double %sret_box.unbox36, %63, !dbg !223 %65 = fcmp oeq double %15, %64, !dbg !224 %66 = xor i1 %41, true, !dbg !225 br i1 %66, label %L55, label %L54, !dbg !225 L54: ; preds = %L49 %67 = zext i1 %41 to i8 br label %L56, !dbg !225 L55: ; preds = %L49 %68 = zext i1 %65 to i8 br label %L56, !dbg !225 L56: ; preds = %L55, %L54 %value_phi = phi i8 [ %67, %L54 ], [ %68, %L55 ] %69 = trunc i8 %value_phi to i1, !dbg !173 %70 = xor i1 %69, true, !dbg !173 br i1 %70, label %L59, label %L58, !dbg !173 L58: ; preds = %L56 br label %L467, !dbg !173 L59: ; preds = %L56 %sret_box.b_ptr246 = getelementptr inbounds i8, ptr %sret_box, i32 8, !dbg !226 %sret_box.b_ptr246.unbox = load double, ptr %sret_box.b_ptr246, align 8, !dbg !169, !tbaa !121, !alias.scope !154, !noalias !155 %71 = fsub double %sret_box.b_ptr246.unbox, %15, !dbg !169 %72 = fmul double 5.000000e-01, %71, !dbg !174 br i1 false, label %L76, label %L64, !dbg !176 L64: ; preds = %L59 %73 = addrspacecast ptr addrspace(10) %"x::Array" to ptr addrspace(11), !dbg !179 %"x::Array.size_ptr247" = getelementptr inbounds i8, ptr addrspace(11) %73, i32 16, !dbg !179 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %"x::Array.size248", ptr addrspace(11) align 8 %"x::Array.size_ptr247", i64 8, i1 false), !dbg !179, !tbaa !140, !alias.scope !186, !noalias !187 %bitcast249 = load i64, ptr %"x::Array.size248", align 8, !dbg !183, !tbaa !188, !alias.scope !190, !noalias !191 %74 = icmp ult i64 0, %bitcast249, !dbg !183 %75 = xor i1 %74, true, !dbg !185 br i1 %75, label %L72, label %L71, !dbg !185 L71: ; preds = %L64 br label %L75, !dbg !185 L72: ; preds = %L64 %76 = getelementptr inbounds i8, ptr %"new::Tuple765", i32 0, !dbg !185 call void @llvm.memcpy.p0.p0.i64(ptr align 8 %76, ptr align 8 @_j_const_5, i64 8, i1 false), !dbg !185, !tbaa !140, !alias.scope !192, !noalias !193 %77 = addrspacecast ptr %"new::Tuple765" to ptr addrspace(11), !dbg !185 call void @julia_throw_boundserror_56996(ptr addrspace(10) %"x::Array", ptr addrspace(11) nocapture readonly %77) #133, !dbg !185 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4), !dbg !185 unreachable, !dbg !185 L75: ; preds = %L71 br label %L76, !dbg !185 L76: ; preds = %L75, %L59 %78 = addrspacecast ptr addrspace(10) %"x::Array" to ptr addrspace(11), !dbg !194 %79 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %78, i32 0, i32 0, !dbg !194 %memoryref_data251 = load ptr, ptr addrspace(11) %79, align 8, !dbg !194, !tbaa !195, !alias.scope !198, !noalias !199 %80 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %78, i32 0, i32 1, !dbg !194 %memoryref_mem269 = load ptr addrspace(10), ptr addrspace(11) %80, align 8, !dbg !194, !tbaa !195, !alias.scope !198, !noalias !199, !dereferenceable_or_null !139, !align !137 %81 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data251, 0, !dbg !194 %"x::Array.ref250" = insertvalue { ptr, ptr addrspace(10) } %81, ptr addrspace(10) %memoryref_mem269, 1, !dbg !194 %82 = addrspacecast ptr addrspace(10) %memoryref_mem269 to ptr addrspace(11), !dbg !194 %83 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %82, i32 0, i32 0, !dbg !194 %memory_len253 = load i64, ptr addrspace(11) %83, align 8, !dbg !194, !tbaa !200, !range !202, !alias.scope !198, !noalias !199 %84 = add nuw i64 %memory_len253, %memory_len253, !dbg !194 %85 = add i64 0, %memory_len253, !dbg !194 %memoryref_ovflw254 = icmp uge i64 %85, %84, !dbg !194 %memoryref_data_byteoffset255 = getelementptr i8, ptr %memoryref_data251, i64 0, !dbg !194 %86 = addrspacecast ptr addrspace(10) %memoryref_mem269 to ptr addrspace(11), !dbg !194 %87 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %86, i32 0, i32 0, !dbg !194 %memory_len256 = load i64, ptr addrspace(11) %87, align 8, !dbg !194, !tbaa !200, !range !202, !alias.scope !198, !noalias !199 %88 = addrspacecast ptr addrspace(10) %memoryref_mem269 to ptr addrspace(11), !dbg !194 %memory_data_ptr257 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %88, i32 0, i32 1, !dbg !194 %memory_data258 = load ptr, ptr addrspace(11) %memory_data_ptr257, align 8, !dbg !194, !tbaa !203, !alias.scope !198, !noalias !199, !nonnull !0 %89 = ptrtoint ptr %memory_data258 to i64, !dbg !194 %90 = ptrtoint ptr %memoryref_data_byteoffset255 to i64, !dbg !194 %91 = sub i64 %90, %89, !dbg !194 %memoryref_bytelen259 = mul nuw nsw i64 %memory_len256, 8, !dbg !194 %memoryref_isinbounds260 = icmp ult i64 %91, %memoryref_bytelen259, !dbg !194 %92 = xor i1 %memoryref_ovflw254, true, !dbg !194 %"memoryref_isinbounds¬ovflw261" = and i1 %92, %memoryref_isinbounds260, !dbg !194 br i1 %"memoryref_isinbounds¬ovflw261", label %idxend267, label %oob262, !dbg !194 L80: ; preds = %load272 %93 = fadd double 1.000000e+00, %750, !dbg !205 %94 = fmul double %93, %72, !dbg !208 %95 = fadd double %15, %94, !dbg !209 %96 = fcmp oeq double %15, %95, !dbg !210 br i1 false, label %L98, label %L86, !dbg !212 L86: ; preds = %L80 %97 = addrspacecast ptr addrspace(10) %"x::Array" to ptr addrspace(11), !dbg !214 %"x::Array.size_ptr274" = getelementptr inbounds i8, ptr addrspace(11) %97, i32 16, !dbg !214 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %"x::Array.size275", ptr addrspace(11) align 8 %"x::Array.size_ptr274", i64 8, i1 false), !dbg !214, !tbaa !140, !alias.scope !186, !noalias !187 %bitcast276 = load i64, ptr %"x::Array.size275", align 8, !dbg !216, !tbaa !188, !alias.scope !190, !noalias !191 %98 = icmp ult i64 0, %bitcast276, !dbg !216 %99 = xor i1 %98, true, !dbg !217 br i1 %99, label %L94, label %L93, !dbg !217 L93: ; preds = %L86 br label %L97, !dbg !217 L94: ; preds = %L86 %100 = getelementptr inbounds i8, ptr %"new::Tuple762", i32 0, !dbg !217 call void @llvm.memcpy.p0.p0.i64(ptr align 8 %100, ptr align 8 @_j_const_5, i64 8, i1 false), !dbg !217, !tbaa !140, !alias.scope !192, !noalias !193 %101 = addrspacecast ptr %"new::Tuple762" to ptr addrspace(11), !dbg !217 call void @julia_throw_boundserror_56996(ptr addrspace(10) %"x::Array", ptr addrspace(11) nocapture readonly %101) #133, !dbg !217 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4), !dbg !217 unreachable, !dbg !217 L97: ; preds = %L93 br label %L98, !dbg !217 L98: ; preds = %L97, %L80 %102 = addrspacecast ptr addrspace(10) %"x::Array" to ptr addrspace(11), !dbg !218 %103 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %102, i32 0, i32 0, !dbg !218 %memoryref_data278 = load ptr, ptr addrspace(11) %103, align 8, !dbg !218, !tbaa !195, !alias.scope !198, !noalias !199 %104 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %102, i32 0, i32 1, !dbg !218 %memoryref_mem296 = load ptr addrspace(10), ptr addrspace(11) %104, align 8, !dbg !218, !tbaa !195, !alias.scope !198, !noalias !199, !dereferenceable_or_null !139, !align !137 %105 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data278, 0, !dbg !218 %"x::Array.ref277" = insertvalue { ptr, ptr addrspace(10) } %105, ptr addrspace(10) %memoryref_mem296, 1, !dbg !218 %106 = addrspacecast ptr addrspace(10) %memoryref_mem296 to ptr addrspace(11), !dbg !218 %107 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %106, i32 0, i32 0, !dbg !218 %memory_len280 = load i64, ptr addrspace(11) %107, align 8, !dbg !218, !tbaa !200, !range !202, !alias.scope !198, !noalias !199 %108 = add nuw i64 %memory_len280, %memory_len280, !dbg !218 %109 = add i64 0, %memory_len280, !dbg !218 %memoryref_ovflw281 = icmp uge i64 %109, %108, !dbg !218 %memoryref_data_byteoffset282 = getelementptr i8, ptr %memoryref_data278, i64 0, !dbg !218 %110 = addrspacecast ptr addrspace(10) %memoryref_mem296 to ptr addrspace(11), !dbg !218 %111 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %110, i32 0, i32 0, !dbg !218 %memory_len283 = load i64, ptr addrspace(11) %111, align 8, !dbg !218, !tbaa !200, !range !202, !alias.scope !198, !noalias !199 %112 = addrspacecast ptr addrspace(10) %memoryref_mem296 to ptr addrspace(11), !dbg !218 %memory_data_ptr284 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %112, i32 0, i32 1, !dbg !218 %memory_data285 = load ptr, ptr addrspace(11) %memory_data_ptr284, align 8, !dbg !218, !tbaa !203, !alias.scope !198, !noalias !199, !nonnull !0 %113 = ptrtoint ptr %memory_data285 to i64, !dbg !218 %114 = ptrtoint ptr %memoryref_data_byteoffset282 to i64, !dbg !218 %115 = sub i64 %114, %113, !dbg !218 %memoryref_bytelen286 = mul nuw nsw i64 %memory_len283, 8, !dbg !218 %memoryref_isinbounds287 = icmp ult i64 %115, %memoryref_bytelen286, !dbg !218 %116 = xor i1 %memoryref_ovflw281, true, !dbg !218 %"memoryref_isinbounds¬ovflw288" = and i1 %116, %memoryref_isinbounds287, !dbg !218 br i1 %"memoryref_isinbounds¬ovflw288", label %idxend294, label %oob289, !dbg !218 L102: ; preds = %load299 %117 = fsub double 1.000000e+00, %760, !dbg !219 %118 = fmul double %117, %72, !dbg !222 %119 = fadd double %15, %118, !dbg !223 %sret_box.b_ptr246.unbox301 = load double, ptr %sret_box.b_ptr246, align 8, !dbg !224, !tbaa !121, !alias.scope !154, !noalias !155 %120 = fcmp oeq double %sret_box.b_ptr246.unbox301, %119, !dbg !224 %121 = xor i1 %96, true, !dbg !225 br i1 %121, label %L108, label %L107, !dbg !225 L107: ; preds = %L102 %122 = zext i1 %96 to i8 br label %L109, !dbg !225 L108: ; preds = %L102 %123 = zext i1 %120 to i8 br label %L109, !dbg !225 L109: ; preds = %L108, %L107 %value_phi302 = phi i8 [ %122, %L107 ], [ %123, %L108 ] %124 = trunc i8 %value_phi302 to i1, !dbg !173 %125 = xor i1 %124, true, !dbg !173 br i1 %125, label %L112, label %L111, !dbg !173 L111: ; preds = %L109 br label %L467, !dbg !173 L112: ; preds = %L109 %126 = getelementptr inbounds i8, ptr %3, i32 0, !dbg !227 store ptr addrspace(10) %13, ptr %126, align 8, !dbg !227 %sret_box.unbox304 = load double, ptr %sret_box, align 8, !dbg !227, !tbaa !121, !alias.scope !154, !noalias !155 call void @julia_evalrule_57634(ptr noalias nocapture noundef sret([4 x double]) %sret_box303, ptr addrspace(11) nocapture readonly %"f::#handle_infinities##6#handle_infinities##7", ptr nocapture readonly %3, double %sret_box.unbox304, double %15, ptr addrspace(10) %"x::Array", ptr addrspace(10) %"w::Array", ptr addrspace(10) %"wg::Array"), !dbg !227 %sret_box.b_ptr305 = getelementptr inbounds i8, ptr %sret_box, i32 8, !dbg !228 %127 = getelementptr inbounds i8, ptr %4, i32 0, !dbg !229 store ptr addrspace(10) %13, ptr %127, align 8, !dbg !229 %sret_box.b_ptr305.unbox = load double, ptr %sret_box.b_ptr305, align 8, !dbg !229, !tbaa !121, !alias.scope !154, !noalias !155 call void @julia_evalrule_57634(ptr noalias nocapture noundef sret([4 x double]) %sret_box306, ptr addrspace(11) nocapture readonly %"f::#handle_infinities##6#handle_infinities##7", ptr nocapture readonly %4, double %15, double %sret_box.b_ptr305.unbox, ptr addrspace(10) %"x::Array", ptr addrspace(10) %"w::Array", ptr addrspace(10) %"wg::Array"), !dbg !229 %sret_box.I_ptr = getelementptr inbounds i8, ptr %sret_box, i32 16, !dbg !230 %sret_box.I_ptr.unbox = load double, ptr %sret_box.I_ptr, align 8, !dbg !232, !tbaa !121, !alias.scope !154, !noalias !155 %128 = fsub double %"I::Float64", %sret_box.I_ptr.unbox, !dbg !232 %sret_box303.I_ptr = getelementptr inbounds i8, ptr %sret_box303, i32 16, !dbg !230 %sret_box306.I_ptr = getelementptr inbounds i8, ptr %sret_box306, i32 16, !dbg !230 %sret_box303.I_ptr.unbox = load double, ptr %sret_box303.I_ptr, align 8, !dbg !233, !tbaa !121, !alias.scope !154, !noalias !155 %129 = fadd double %128, %sret_box303.I_ptr.unbox, !dbg !233 %sret_box306.I_ptr.unbox = load double, ptr %sret_box306.I_ptr, align 8, !dbg !233, !tbaa !121, !alias.scope !154, !noalias !155 %130 = fadd double %129, %sret_box306.I_ptr.unbox, !dbg !233 %sret_box.E_ptr = getelementptr inbounds i8, ptr %sret_box, i32 24, !dbg !237 %sret_box.E_ptr.unbox = load double, ptr %sret_box.E_ptr, align 8, !dbg !239, !tbaa !121, !alias.scope !154, !noalias !155 %131 = fsub double %"E::Float64", %sret_box.E_ptr.unbox, !dbg !239 %sret_box303.E_ptr = getelementptr inbounds i8, ptr %sret_box303, i32 24, !dbg !237 %sret_box306.E_ptr = getelementptr inbounds i8, ptr %sret_box306, i32 24, !dbg !237 %sret_box303.E_ptr.unbox = load double, ptr %sret_box303.E_ptr, align 8, !dbg !240, !tbaa !121, !alias.scope !154, !noalias !155 %132 = fadd double %131, %sret_box303.E_ptr.unbox, !dbg !240 %sret_box306.E_ptr.unbox = load double, ptr %sret_box306.E_ptr, align 8, !dbg !240, !tbaa !121, !alias.scope !154, !noalias !155 %133 = fadd double %132, %sret_box306.E_ptr.unbox, !dbg !240 %134 = mul i64 4, %"n::Int64", !dbg !242 %135 = add i64 %134, 2, !dbg !246 %136 = add i64 %"numevals::Int64", %135, !dbg !246 %137 = addrspacecast ptr addrspace(10) %"segs::Array" to ptr addrspace(11), !dbg !248 %138 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %137, i32 0, i32 0, !dbg !248 %139 = load ptr, ptr addrspace(11) %138, align 8, !dbg !248, !tbaa !195, !alias.scope !198, !noalias !199 %140 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %137, i32 0, i32 1, !dbg !248 %141 = load ptr addrspace(10), ptr addrspace(11) %140, align 8, !dbg !248, !tbaa !195, !alias.scope !198, !noalias !199, !dereferenceable_or_null !139, !align !137 %142 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %139, 0, !dbg !248 %"segs::Array.ref307" = insertvalue { ptr, ptr addrspace(10) } %142, ptr addrspace(10) %141, 1, !dbg !248 %"segs::Array.ref307.mem" = extractvalue { ptr, ptr addrspace(10) } %"segs::Array.ref307", 1, !dbg !260 %143 = addrspacecast ptr addrspace(10) %"segs::Array.ref307.mem" to ptr addrspace(11), !dbg !262 %144 = addrspacecast ptr addrspace(10) %"segs::Array" to ptr addrspace(11), !dbg !265 %"segs::Array.size_ptr308" = getelementptr inbounds i8, ptr addrspace(11) %144, i32 16, !dbg !265 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %"segs::Array.size309", ptr addrspace(11) align 8 %"segs::Array.size_ptr308", i64 8, i1 false), !dbg !265, !tbaa !140, !alias.scope !186, !noalias !187 %"segs::Array.size309.unbox" = load i64, ptr %"segs::Array.size309", align 8, !dbg !268, !tbaa !188, !alias.scope !190, !noalias !191 %145 = add i64 %"segs::Array.size309.unbox", 1, !dbg !268 %146 = addrspacecast ptr addrspace(10) %141 to ptr addrspace(11), !dbg !270 %memory_data_ptr310 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %146, i32 0, i32 1, !dbg !270 %memory_data311 = load ptr, ptr addrspace(11) %memory_data_ptr310, align 8, !dbg !270, !tbaa !203, !alias.scope !198, !noalias !199, !nonnull !0 %147 = ptrtoint ptr %memory_data311 to i64, !dbg !270 %148 = ptrtoint ptr %139 to i64, !dbg !270 %memoryref_offset312 = sub i64 %148, %147, !dbg !270 %memoryref_offsetidx313 = udiv exact i64 %memoryref_offset312, 32, !dbg !270 %149 = add i64 %memoryref_offsetidx313, 1, !dbg !270 %150 = add i64 %149, %145, !dbg !271 %151 = sub i64 %150, 1, !dbg !273 %.unbox314 = load i64, ptr addrspace(11) %143, align 8, !dbg !275, !tbaa !200, !alias.scope !198, !noalias !199 %152 = icmp slt i64 %.unbox314, %151, !dbg !275 %153 = xor i1 %152, true, !dbg !277 br i1 %153, label %L143, label %L142, !dbg !277 L142: ; preds = %L112 %"segs::Array.size309.unbox315" = load i64, ptr %"segs::Array.size309", align 8, !dbg !278, !tbaa !188, !alias.scope !190, !noalias !191 call void @julia__growend_internal__56971(ptr addrspace(10) %"segs::Array", i64 signext 1, i64 signext %"segs::Array.size309.unbox315"), !dbg !278 br label %L143, !dbg !278 L143: ; preds = %L142, %L112 %154 = getelementptr inbounds i8, ptr %"new::Tuple316", i32 0, !dbg !279 store i64 %145, ptr %154, align 8, !dbg !279, !tbaa !188, !alias.scope !190, !noalias !191 %155 = addrspacecast ptr addrspace(10) %"segs::Array" to ptr addrspace(11), !dbg !279 %"segs::Array.size_ptr317" = getelementptr inbounds i8, ptr addrspace(11) %155, i32 16, !dbg !279 call void @llvm.memcpy.p11.p0.i64(ptr addrspace(11) align 8 %"segs::Array.size_ptr317", ptr align 8 %"new::Tuple316", i64 8, i1 false), !dbg !279, !tbaa !140, !alias.scope !280, !noalias !187 br label %L146, !dbg !281 L146: ; preds = %L143 %156 = addrspacecast ptr addrspace(10) %"segs::Array" to ptr addrspace(11), !dbg !282 %"segs::Array.size_ptr318" = getelementptr inbounds i8, ptr addrspace(11) %156, i32 16, !dbg !282 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %"segs::Array.size319", ptr addrspace(11) align 8 %"segs::Array.size_ptr318", i64 8, i1 false), !dbg !282, !tbaa !140, !alias.scope !186, !noalias !187 %157 = addrspacecast ptr addrspace(10) %"segs::Array" to ptr addrspace(11), !dbg !285 %158 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %157, i32 0, i32 0, !dbg !285 %memoryref_data321 = load ptr, ptr addrspace(11) %158, align 8, !dbg !285, !tbaa !195, !alias.scope !198, !noalias !199 %159 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %157, i32 0, i32 1, !dbg !285 %memoryref_mem341 = load ptr addrspace(10), ptr addrspace(11) %159, align 8, !dbg !285, !tbaa !195, !alias.scope !198, !noalias !199, !dereferenceable_or_null !139, !align !137 %160 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data321, 0, !dbg !285 %"segs::Array.ref320" = insertvalue { ptr, ptr addrspace(10) } %160, ptr addrspace(10) %memoryref_mem341, 1, !dbg !285 %"segs::Array.size319.unbox" = load i64, ptr %"segs::Array.size319", align 8, !dbg !286, !tbaa !188, !alias.scope !190, !noalias !191 %memoryref_offset323 = sub i64 %"segs::Array.size319.unbox", 1, !dbg !286 %161 = addrspacecast ptr addrspace(10) %memoryref_mem341 to ptr addrspace(11), !dbg !286 %162 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %161, i32 0, i32 0, !dbg !286 %memory_len324 = load i64, ptr addrspace(11) %162, align 8, !dbg !286, !tbaa !200, !range !288, !alias.scope !198, !noalias !199 %163 = add nuw i64 %memory_len324, %memory_len324, !dbg !286 %164 = add i64 %memoryref_offset323, %memory_len324, !dbg !286 %memoryref_ovflw325 = icmp uge i64 %164, %163, !dbg !286 %memoryref_byteoffset326 = mul i64 %memoryref_offset323, 32, !dbg !286 %memoryref_data_byteoffset327 = getelementptr i8, ptr %memoryref_data321, i64 %memoryref_byteoffset326, !dbg !286 %165 = addrspacecast ptr addrspace(10) %memoryref_mem341 to ptr addrspace(11), !dbg !286 %166 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %165, i32 0, i32 0, !dbg !286 %memory_len328 = load i64, ptr addrspace(11) %166, align 8, !dbg !286, !tbaa !200, !range !288, !alias.scope !198, !noalias !199 %167 = addrspacecast ptr addrspace(10) %memoryref_mem341 to ptr addrspace(11), !dbg !286 %memory_data_ptr329 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %167, i32 0, i32 1, !dbg !286 %memory_data330 = load ptr, ptr addrspace(11) %memory_data_ptr329, align 8, !dbg !286, !tbaa !203, !alias.scope !198, !noalias !199, !nonnull !0 %168 = ptrtoint ptr %memory_data330 to i64, !dbg !286 %169 = ptrtoint ptr %memoryref_data_byteoffset327 to i64, !dbg !286 %170 = sub i64 %169, %168, !dbg !286 %memoryref_bytelen331 = mul nuw nsw i64 %memory_len328, 32, !dbg !286 %memoryref_isinbounds332 = icmp ult i64 %170, %memoryref_bytelen331, !dbg !286 %171 = xor i1 %memoryref_ovflw325, true, !dbg !286 %"memoryref_isinbounds¬ovflw333" = and i1 %171, %memoryref_isinbounds332, !dbg !286 br i1 %"memoryref_isinbounds¬ovflw333", label %idxend339, label %oob334, !dbg !286 L152: ; preds = %load344 br label %L153, !dbg !254 L153: ; preds = %L152 %172 = addrspacecast ptr addrspace(10) %"segs::Array" to ptr addrspace(11), !dbg !289 %"segs::Array.size_ptr346" = getelementptr inbounds i8, ptr addrspace(11) %172, i32 16, !dbg !289 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %"segs::Array.size347", ptr addrspace(11) align 8 %"segs::Array.size_ptr346", i64 8, i1 false), !dbg !289, !tbaa !140, !alias.scope !186, !noalias !187 br i1 false, label %L169, label %L157, !dbg !292 L157: ; preds = %L153 %"segs::Array.size347.unbox" = load i64, ptr %"segs::Array.size347", align 8, !dbg !295, !tbaa !188, !alias.scope !190, !noalias !191 %173 = sub i64 %"segs::Array.size347.unbox", 1, !dbg !295 %174 = addrspacecast ptr addrspace(10) %"segs::Array" to ptr addrspace(11), !dbg !297 %"segs::Array.size_ptr348" = getelementptr inbounds i8, ptr addrspace(11) %174, i32 16, !dbg !297 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %"segs::Array.size349", ptr addrspace(11) align 8 %"segs::Array.size_ptr348", i64 8, i1 false), !dbg !297, !tbaa !140, !alias.scope !186, !noalias !187 %bitcast350 = load i64, ptr %"segs::Array.size349", align 8, !dbg !295, !tbaa !188, !alias.scope !190, !noalias !191 %175 = icmp ult i64 %173, %bitcast350, !dbg !295 %176 = xor i1 %175, true, !dbg !296 br i1 %176, label %L165, label %L164, !dbg !296 L164: ; preds = %L157 br label %L168, !dbg !296 L165: ; preds = %L157 %177 = getelementptr inbounds i8, ptr %"new::Tuple759", i32 0, !dbg !296 call void @llvm.memcpy.p0.p0.i64(ptr align 8 %177, ptr align 8 %"segs::Array.size347", i64 8, i1 false), !dbg !296, !tbaa !188, !alias.scope !190, !noalias !191 %178 = addrspacecast ptr %"new::Tuple759" to ptr addrspace(11), !dbg !296 call void @julia_throw_boundserror_56957(ptr addrspace(10) %"segs::Array", ptr addrspace(11) nocapture readonly %178) #133, !dbg !296 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4), !dbg !296 unreachable, !dbg !296 L168: ; preds = %L164 br label %L169, !dbg !296 L169: ; preds = %L168, %L153 %179 = addrspacecast ptr addrspace(10) %"segs::Array" to ptr addrspace(11), !dbg !299 %180 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %179, i32 0, i32 0, !dbg !299 %memoryref_data352 = load ptr, ptr addrspace(11) %180, align 8, !dbg !299, !tbaa !195, !alias.scope !198, !noalias !199 %181 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %179, i32 0, i32 1, !dbg !299 %memoryref_mem373 = load ptr addrspace(10), ptr addrspace(11) %181, align 8, !dbg !299, !tbaa !195, !alias.scope !198, !noalias !199, !dereferenceable_or_null !139, !align !137 %182 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data352, 0, !dbg !299 %"segs::Array.ref351" = insertvalue { ptr, ptr addrspace(10) } %182, ptr addrspace(10) %memoryref_mem373, 1, !dbg !299 %"segs::Array.size347.unbox354" = load i64, ptr %"segs::Array.size347", align 8, !dbg !299, !tbaa !188, !alias.scope !190, !noalias !191 %memoryref_offset355 = sub i64 %"segs::Array.size347.unbox354", 1, !dbg !299 %183 = addrspacecast ptr addrspace(10) %memoryref_mem373 to ptr addrspace(11), !dbg !299 %184 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %183, i32 0, i32 0, !dbg !299 %memory_len356 = load i64, ptr addrspace(11) %184, align 8, !dbg !299, !tbaa !200, !range !288, !alias.scope !198, !noalias !199 %185 = add nuw i64 %memory_len356, %memory_len356, !dbg !299 %186 = add i64 %memoryref_offset355, %memory_len356, !dbg !299 %memoryref_ovflw357 = icmp uge i64 %186, %185, !dbg !299 %memoryref_byteoffset358 = mul i64 %memoryref_offset355, 32, !dbg !299 %memoryref_data_byteoffset359 = getelementptr i8, ptr %memoryref_data352, i64 %memoryref_byteoffset358, !dbg !299 %187 = addrspacecast ptr addrspace(10) %memoryref_mem373 to ptr addrspace(11), !dbg !299 %188 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %187, i32 0, i32 0, !dbg !299 %memory_len360 = load i64, ptr addrspace(11) %188, align 8, !dbg !299, !tbaa !200, !range !288, !alias.scope !198, !noalias !199 %189 = addrspacecast ptr addrspace(10) %memoryref_mem373 to ptr addrspace(11), !dbg !299 %memory_data_ptr361 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %189, i32 0, i32 1, !dbg !299 %memory_data362 = load ptr, ptr addrspace(11) %memory_data_ptr361, align 8, !dbg !299, !tbaa !203, !alias.scope !198, !noalias !199, !nonnull !0 %190 = ptrtoint ptr %memory_data362 to i64, !dbg !299 %191 = ptrtoint ptr %memoryref_data_byteoffset359 to i64, !dbg !299 %192 = sub i64 %191, %190, !dbg !299 %memoryref_bytelen363 = mul nuw nsw i64 %memory_len360, 32, !dbg !299 %memoryref_isinbounds364 = icmp ult i64 %192, %memoryref_bytelen363, !dbg !299 %193 = xor i1 %memoryref_ovflw357, true, !dbg !299 %"memoryref_isinbounds¬ovflw365" = and i1 %193, %memoryref_isinbounds364, !dbg !299 br i1 %"memoryref_isinbounds¬ovflw365", label %idxend371, label %oob366, !dbg !299 L173: ; preds = %load376 br i1 false, label %L187, label %L175, !dbg !300 L175: ; preds = %L173 %"segs::Array.size347.unbox378" = load i64, ptr %"segs::Array.size347", align 8, !dbg !301, !tbaa !188, !alias.scope !190, !noalias !191 %194 = sub i64 %"segs::Array.size347.unbox378", 1, !dbg !301 %195 = addrspacecast ptr addrspace(10) %"segs::Array" to ptr addrspace(11), !dbg !303 %"segs::Array.size_ptr379" = getelementptr inbounds i8, ptr addrspace(11) %195, i32 16, !dbg !303 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %"segs::Array.size380", ptr addrspace(11) align 8 %"segs::Array.size_ptr379", i64 8, i1 false), !dbg !303, !tbaa !140, !alias.scope !186, !noalias !187 %bitcast381 = load i64, ptr %"segs::Array.size380", align 8, !dbg !301, !tbaa !188, !alias.scope !190, !noalias !191 %196 = icmp ult i64 %194, %bitcast381, !dbg !301 %197 = xor i1 %196, true, !dbg !302 br i1 %197, label %L183, label %L182, !dbg !302 L182: ; preds = %L175 br label %L186, !dbg !302 L183: ; preds = %L175 %198 = getelementptr inbounds i8, ptr %"new::Tuple756", i32 0, !dbg !302 call void @llvm.memcpy.p0.p0.i64(ptr align 8 %198, ptr align 8 %"segs::Array.size347", i64 8, i1 false), !dbg !302, !tbaa !188, !alias.scope !190, !noalias !191 %199 = addrspacecast ptr %"new::Tuple756" to ptr addrspace(11), !dbg !302 call void @julia_throw_boundserror_56957(ptr addrspace(10) %"segs::Array", ptr addrspace(11) nocapture readonly %199) #133, !dbg !302 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4), !dbg !302 unreachable, !dbg !302 L186: ; preds = %L182 br label %L187, !dbg !302 L187: ; preds = %L186, %L173 %200 = icmp ne ptr %"segs::Array.size347", null br i1 %200, label %guard_pass778, label %guard_exit779 L188: ; preds = %L275, %guard_exit782 %value_phi382 = phi i64 [ %guard_res784, %guard_exit782 ], [ %782, %L275 ] %201 = icmp ne i64 %value_phi382, -9223372036854775808, !dbg !305 %202 = or i1 true, %201, !dbg !305 %divisor_valid383 = and i1 true, %202, !dbg !305 %jl_diverror_exception384 = load ptr, ptr @jl_diverror_exception, align 8, !dbg !305, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0 br i1 %divisor_valid383, label %pass386, label %fail385, !dbg !305 L192: ; preds = %pass386 br i1 false, label %L206, label %L194, !dbg !310 L194: ; preds = %L192 %203 = sub i64 %782, 1, !dbg !312 %204 = addrspacecast ptr addrspace(10) %"segs::Array" to ptr addrspace(11), !dbg !314 %"segs::Array.size_ptr387" = getelementptr inbounds i8, ptr addrspace(11) %204, i32 16, !dbg !314 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %"segs::Array.size388", ptr addrspace(11) align 8 %"segs::Array.size_ptr387", i64 8, i1 false), !dbg !314, !tbaa !140, !alias.scope !186, !noalias !187 %bitcast389 = load i64, ptr %"segs::Array.size388", align 8, !dbg !312, !tbaa !188, !alias.scope !190, !noalias !191 %205 = icmp ult i64 %203, %bitcast389, !dbg !312 %206 = xor i1 %205, true, !dbg !313 br i1 %206, label %L202, label %L201, !dbg !313 L201: ; preds = %L194 br label %L205, !dbg !313 L202: ; preds = %L194 %207 = getelementptr inbounds i8, ptr %"new::Tuple753", i32 0, !dbg !313 store i64 %782, ptr %207, align 8, !dbg !313, !tbaa !188, !alias.scope !190, !noalias !191 %208 = addrspacecast ptr %"new::Tuple753" to ptr addrspace(11), !dbg !313 call void @julia_throw_boundserror_56957(ptr addrspace(10) %"segs::Array", ptr addrspace(11) nocapture readonly %208) #133, !dbg !313 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4), !dbg !313 unreachable, !dbg !313 L205: ; preds = %L201 br label %L206, !dbg !313 L206: ; preds = %L205, %L192 %209 = addrspacecast ptr addrspace(10) %"segs::Array" to ptr addrspace(11), !dbg !316 %210 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %209, i32 0, i32 0, !dbg !316 %memoryref_data391 = load ptr, ptr addrspace(11) %210, align 8, !dbg !316, !tbaa !195, !alias.scope !198, !noalias !199 %211 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %209, i32 0, i32 1, !dbg !316 %memoryref_mem411 = load ptr addrspace(10), ptr addrspace(11) %211, align 8, !dbg !316, !tbaa !195, !alias.scope !198, !noalias !199, !dereferenceable_or_null !139, !align !137 %212 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data391, 0, !dbg !316 %"segs::Array.ref390" = insertvalue { ptr, ptr addrspace(10) } %212, ptr addrspace(10) %memoryref_mem411, 1, !dbg !316 %memoryref_offset393 = sub i64 %782, 1, !dbg !316 %213 = addrspacecast ptr addrspace(10) %memoryref_mem411 to ptr addrspace(11), !dbg !316 %214 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %213, i32 0, i32 0, !dbg !316 %memory_len394 = load i64, ptr addrspace(11) %214, align 8, !dbg !316, !tbaa !200, !range !288, !alias.scope !198, !noalias !199 %215 = add nuw i64 %memory_len394, %memory_len394, !dbg !316 %216 = add i64 %memoryref_offset393, %memory_len394, !dbg !316 %memoryref_ovflw395 = icmp uge i64 %216, %215, !dbg !316 %memoryref_byteoffset396 = mul i64 %memoryref_offset393, 32, !dbg !316 %memoryref_data_byteoffset397 = getelementptr i8, ptr %memoryref_data391, i64 %memoryref_byteoffset396, !dbg !316 %217 = addrspacecast ptr addrspace(10) %memoryref_mem411 to ptr addrspace(11), !dbg !316 %218 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %217, i32 0, i32 0, !dbg !316 %memory_len398 = load i64, ptr addrspace(11) %218, align 8, !dbg !316, !tbaa !200, !range !288, !alias.scope !198, !noalias !199 %219 = addrspacecast ptr addrspace(10) %memoryref_mem411 to ptr addrspace(11), !dbg !316 %memory_data_ptr399 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %219, i32 0, i32 1, !dbg !316 %memory_data400 = load ptr, ptr addrspace(11) %memory_data_ptr399, align 8, !dbg !316, !tbaa !203, !alias.scope !198, !noalias !199, !nonnull !0 %220 = ptrtoint ptr %memory_data400 to i64, !dbg !316 %221 = ptrtoint ptr %memoryref_data_byteoffset397 to i64, !dbg !316 %222 = sub i64 %221, %220, !dbg !316 %memoryref_bytelen401 = mul nuw nsw i64 %memory_len398, 32, !dbg !316 %memoryref_isinbounds402 = icmp ult i64 %222, %memoryref_bytelen401, !dbg !316 %223 = xor i1 %memoryref_ovflw395, true, !dbg !316 %"memoryref_isinbounds¬ovflw403" = and i1 %223, %memoryref_isinbounds402, !dbg !316 br i1 %"memoryref_isinbounds¬ovflw403", label %idxend409, label %oob404, !dbg !316 L210: ; preds = %load414 %.E_ptr416 = getelementptr inbounds i8, ptr %6, i32 24, !dbg !317 %.E_ptr417 = getelementptr inbounds i8, ptr %5, i32 24, !dbg !317 %.E_ptr416.unbox = load double, ptr %.E_ptr416, align 8, !dbg !325, !tbaa !188, !alias.scope !190, !noalias !191 %.E_ptr416.unbox418 = load double, ptr %.E_ptr416, align 8, !dbg !325, !tbaa !188, !alias.scope !190, !noalias !191 %224 = fcmp oeq double %.E_ptr416.unbox, %.E_ptr416.unbox418, !dbg !325 %225 = xor i1 %224, true, !dbg !332 %226 = xor i1 %225, true, !dbg !330 br i1 %226, label %L216, label %L215, !dbg !330 L215: ; preds = %L210 br label %L230, !dbg !330 L216: ; preds = %L210 %.E_ptr417.unbox = load double, ptr %.E_ptr417, align 8, !dbg !325, !tbaa !188, !alias.scope !190, !noalias !191 %.E_ptr417.unbox746 = load double, ptr %.E_ptr417, align 8, !dbg !325, !tbaa !188, !alias.scope !190, !noalias !191 %227 = fcmp oeq double %.E_ptr417.unbox, %.E_ptr417.unbox746, !dbg !325 %228 = xor i1 %227, true, !dbg !332 %229 = xor i1 %228, true, !dbg !330 br i1 %229, label %L220, label %L219, !dbg !330 L219: ; preds = %L216 br label %L230, !dbg !330 L220: ; preds = %L216 %bitcast747 = load double, ptr %.E_ptr416, align 8, !dbg !335, !tbaa !188, !alias.scope !190, !noalias !191 %bitcast_coercion748 = bitcast double %bitcast747 to i64, !dbg !335 %230 = icmp slt i64 %bitcast_coercion748, 0, !dbg !340 %231 = xor i64 %bitcast_coercion748, 9223372036854775807, !dbg !342 %ifelse_cond749 = xor i1 %230, true, !dbg !344 %232 = select i1 %ifelse_cond749, i64 %bitcast_coercion748, i64 %231, !dbg !344 %bitcast750 = load double, ptr %.E_ptr417, align 8, !dbg !335, !tbaa !188, !alias.scope !190, !noalias !191 %bitcast_coercion751 = bitcast double %bitcast750 to i64, !dbg !335 %233 = icmp slt i64 %bitcast_coercion751, 0, !dbg !340 %234 = xor i64 %bitcast_coercion751, 9223372036854775807, !dbg !342 %ifelse_cond752 = xor i1 %233, true, !dbg !344 %235 = select i1 %ifelse_cond752, i64 %bitcast_coercion751, i64 %234, !dbg !344 %236 = icmp slt i64 %232, %235, !dbg !346 %237 = zext i1 %236 to i8 br label %L234, !dbg !339 L230: ; preds = %L219, %L215 %.E_ptr416.unbox419 = load double, ptr %.E_ptr416, align 8, !dbg !325, !tbaa !188, !alias.scope !190, !noalias !191 %.E_ptr416.unbox420 = load double, ptr %.E_ptr416, align 8, !dbg !325, !tbaa !188, !alias.scope !190, !noalias !191 %238 = fcmp oeq double %.E_ptr416.unbox419, %.E_ptr416.unbox420, !dbg !325 %239 = xor i1 %238, true, !dbg !332 %240 = xor i1 %239, true, !dbg !347 %241 = zext i1 %240 to i8 br label %L234, !dbg !330 L234: ; preds = %L220, %L230 %value_phi421 = phi i8 [ %237, %L220 ], [ %241, %L230 ] br label %L236, !dbg !318 L236: ; preds = %L234 br label %L237, !dbg !318 L237: ; preds = %L236 br label %L238, !dbg !318 L238: ; preds = %L237 %242 = trunc i8 %value_phi421 to i1, !dbg !311 %243 = xor i1 %242, true, !dbg !311 br i1 %243, label %L276, label %L239, !dbg !311 L239: ; preds = %L238 br i1 false, label %L253, label %L241, !dbg !348 L241: ; preds = %L239 %244 = sub i64 %782, 1, !dbg !350 %245 = addrspacecast ptr addrspace(10) %"segs::Array" to ptr addrspace(11), !dbg !352 %"segs::Array.size_ptr422" = getelementptr inbounds i8, ptr addrspace(11) %245, i32 16, !dbg !352 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %"segs::Array.size423", ptr addrspace(11) align 8 %"segs::Array.size_ptr422", i64 8, i1 false), !dbg !352, !tbaa !140, !alias.scope !186, !noalias !187 %bitcast424 = load i64, ptr %"segs::Array.size423", align 8, !dbg !350, !tbaa !188, !alias.scope !190, !noalias !191 %246 = icmp ult i64 %244, %bitcast424, !dbg !350 %247 = xor i1 %246, true, !dbg !351 br i1 %247, label %L249, label %L248, !dbg !351 L248: ; preds = %L241 br label %L252, !dbg !351 L249: ; preds = %L241 %248 = getelementptr inbounds i8, ptr %"new::Tuple483", i32 0, !dbg !351 store i64 %782, ptr %248, align 8, !dbg !351, !tbaa !188, !alias.scope !190, !noalias !191 %249 = addrspacecast ptr %"new::Tuple483" to ptr addrspace(11), !dbg !351 call void @julia_throw_boundserror_56957(ptr addrspace(10) %"segs::Array", ptr addrspace(11) nocapture readonly %249) #133, !dbg !351 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4), !dbg !351 unreachable, !dbg !351 L252: ; preds = %L248 br label %L253, !dbg !351 L253: ; preds = %L252, %L239 %250 = addrspacecast ptr addrspace(10) %"segs::Array" to ptr addrspace(11), !dbg !354 %251 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %250, i32 0, i32 0, !dbg !354 %memoryref_data426 = load ptr, ptr addrspace(11) %251, align 8, !dbg !354, !tbaa !195, !alias.scope !198, !noalias !199 %252 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %250, i32 0, i32 1, !dbg !354 %memoryref_mem446 = load ptr addrspace(10), ptr addrspace(11) %252, align 8, !dbg !354, !tbaa !195, !alias.scope !198, !noalias !199, !dereferenceable_or_null !139, !align !137 %253 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data426, 0, !dbg !354 %"segs::Array.ref425" = insertvalue { ptr, ptr addrspace(10) } %253, ptr addrspace(10) %memoryref_mem446, 1, !dbg !354 %memoryref_offset428 = sub i64 %782, 1, !dbg !354 %254 = addrspacecast ptr addrspace(10) %memoryref_mem446 to ptr addrspace(11), !dbg !354 %255 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %254, i32 0, i32 0, !dbg !354 %memory_len429 = load i64, ptr addrspace(11) %255, align 8, !dbg !354, !tbaa !200, !range !288, !alias.scope !198, !noalias !199 %256 = add nuw i64 %memory_len429, %memory_len429, !dbg !354 %257 = add i64 %memoryref_offset428, %memory_len429, !dbg !354 %memoryref_ovflw430 = icmp uge i64 %257, %256, !dbg !354 %memoryref_byteoffset431 = mul i64 %memoryref_offset428, 32, !dbg !354 %memoryref_data_byteoffset432 = getelementptr i8, ptr %memoryref_data426, i64 %memoryref_byteoffset431, !dbg !354 %258 = addrspacecast ptr addrspace(10) %memoryref_mem446 to ptr addrspace(11), !dbg !354 %259 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %258, i32 0, i32 0, !dbg !354 %memory_len433 = load i64, ptr addrspace(11) %259, align 8, !dbg !354, !tbaa !200, !range !288, !alias.scope !198, !noalias !199 %260 = addrspacecast ptr addrspace(10) %memoryref_mem446 to ptr addrspace(11), !dbg !354 %memory_data_ptr434 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %260, i32 0, i32 1, !dbg !354 %memory_data435 = load ptr, ptr addrspace(11) %memory_data_ptr434, align 8, !dbg !354, !tbaa !203, !alias.scope !198, !noalias !199, !nonnull !0 %261 = ptrtoint ptr %memory_data435 to i64, !dbg !354 %262 = ptrtoint ptr %memoryref_data_byteoffset432 to i64, !dbg !354 %263 = sub i64 %262, %261, !dbg !354 %memoryref_bytelen436 = mul nuw nsw i64 %memory_len433, 32, !dbg !354 %memoryref_isinbounds437 = icmp ult i64 %263, %memoryref_bytelen436, !dbg !354 %264 = xor i1 %memoryref_ovflw430, true, !dbg !354 %"memoryref_isinbounds¬ovflw438" = and i1 %264, %memoryref_isinbounds437, !dbg !354 br i1 %"memoryref_isinbounds¬ovflw438", label %idxend444, label %oob439, !dbg !354 L257: ; preds = %load449 br i1 false, label %L270, label %L259, !dbg !355 L259: ; preds = %L257 %265 = sub i64 %value_phi382, 1, !dbg !359 %266 = addrspacecast ptr addrspace(10) %"segs::Array" to ptr addrspace(11), !dbg !360 %"segs::Array.size_ptr451" = getelementptr inbounds i8, ptr addrspace(11) %266, i32 16, !dbg !360 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %"segs::Array.size452", ptr addrspace(11) align 8 %"segs::Array.size_ptr451", i64 8, i1 false), !dbg !360, !tbaa !140, !alias.scope !186, !noalias !187 %bitcast453 = load i64, ptr %"segs::Array.size452", align 8, !dbg !359, !tbaa !188, !alias.scope !190, !noalias !191 %267 = icmp ult i64 %265, %bitcast453, !dbg !359 %268 = xor i1 %267, true, !dbg !355 br i1 %268, label %L267, label %L266, !dbg !355 L266: ; preds = %L259 br label %L270, !dbg !355 L267: ; preds = %L259 %269 = getelementptr inbounds i8, ptr %"new::Tuple480", i32 0, !dbg !355 store i64 %value_phi382, ptr %269, align 8, !dbg !355, !tbaa !188, !alias.scope !190, !noalias !191 %270 = addrspacecast ptr %"new::Tuple480" to ptr addrspace(11), !dbg !355 call void @julia_throw_boundserror_56957(ptr addrspace(10) %"segs::Array", ptr addrspace(11) nocapture readonly %270) #133, !dbg !355 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4), !dbg !355 unreachable, !dbg !355 L270: ; preds = %L266, %L257 %271 = addrspacecast ptr addrspace(10) %"segs::Array" to ptr addrspace(11), !dbg !362 %272 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %271, i32 0, i32 0, !dbg !362 %memoryref_data455 = load ptr, ptr addrspace(11) %272, align 8, !dbg !362, !tbaa !195, !alias.scope !198, !noalias !199 %273 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %271, i32 0, i32 1, !dbg !362 %memoryref_mem475 = load ptr addrspace(10), ptr addrspace(11) %273, align 8, !dbg !362, !tbaa !195, !alias.scope !198, !noalias !199, !dereferenceable_or_null !139, !align !137 %274 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data455, 0, !dbg !362 %"segs::Array.ref454" = insertvalue { ptr, ptr addrspace(10) } %274, ptr addrspace(10) %memoryref_mem475, 1, !dbg !362 %memoryref_offset457 = sub i64 %value_phi382, 1, !dbg !363 %275 = addrspacecast ptr addrspace(10) %memoryref_mem475 to ptr addrspace(11), !dbg !363 %276 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %275, i32 0, i32 0, !dbg !363 %memory_len458 = load i64, ptr addrspace(11) %276, align 8, !dbg !363, !tbaa !200, !range !288, !alias.scope !198, !noalias !199 %277 = add nuw i64 %memory_len458, %memory_len458, !dbg !363 %278 = add i64 %memoryref_offset457, %memory_len458, !dbg !363 %memoryref_ovflw459 = icmp uge i64 %278, %277, !dbg !363 %memoryref_byteoffset460 = mul i64 %memoryref_offset457, 32, !dbg !363 %memoryref_data_byteoffset461 = getelementptr i8, ptr %memoryref_data455, i64 %memoryref_byteoffset460, !dbg !363 %279 = addrspacecast ptr addrspace(10) %memoryref_mem475 to ptr addrspace(11), !dbg !363 %280 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %279, i32 0, i32 0, !dbg !363 %memory_len462 = load i64, ptr addrspace(11) %280, align 8, !dbg !363, !tbaa !200, !range !288, !alias.scope !198, !noalias !199 %281 = addrspacecast ptr addrspace(10) %memoryref_mem475 to ptr addrspace(11), !dbg !363 %memory_data_ptr463 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %281, i32 0, i32 1, !dbg !363 %memory_data464 = load ptr, ptr addrspace(11) %memory_data_ptr463, align 8, !dbg !363, !tbaa !203, !alias.scope !198, !noalias !199, !nonnull !0 %282 = ptrtoint ptr %memory_data464 to i64, !dbg !363 %283 = ptrtoint ptr %memoryref_data_byteoffset461 to i64, !dbg !363 %284 = sub i64 %283, %282, !dbg !363 %memoryref_bytelen465 = mul nuw nsw i64 %memory_len462, 32, !dbg !363 %memoryref_isinbounds466 = icmp ult i64 %284, %memoryref_bytelen465, !dbg !363 %285 = xor i1 %memoryref_ovflw459, true, !dbg !363 %"memoryref_isinbounds¬ovflw467" = and i1 %285, %memoryref_isinbounds466, !dbg !363 br i1 %"memoryref_isinbounds¬ovflw467", label %idxend473, label %oob468, !dbg !363 L274: ; preds = %load478 br label %L275, !dbg !357 L275: ; preds = %L274 br label %L188, !dbg !364 L276: ; preds = %L238 br label %L277, !dbg !351 L277: ; preds = %L276, %pass386 br i1 false, label %L290, label %L279, !dbg !365 L279: ; preds = %L277 %286 = sub i64 %value_phi382, 1, !dbg !368 %287 = addrspacecast ptr addrspace(10) %"segs::Array" to ptr addrspace(11), !dbg !369 %"segs::Array.size_ptr486" = getelementptr inbounds i8, ptr addrspace(11) %287, i32 16, !dbg !369 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %"segs::Array.size487", ptr addrspace(11) align 8 %"segs::Array.size_ptr486", i64 8, i1 false), !dbg !369, !tbaa !140, !alias.scope !186, !noalias !187 %bitcast488 = load i64, ptr %"segs::Array.size487", align 8, !dbg !368, !tbaa !188, !alias.scope !190, !noalias !191 %288 = icmp ult i64 %286, %bitcast488, !dbg !368 %289 = xor i1 %288, true, !dbg !365 br i1 %289, label %L287, label %L286, !dbg !365 L286: ; preds = %L279 br label %L290, !dbg !365 L287: ; preds = %L279 %290 = getelementptr inbounds i8, ptr %"new::Tuple743", i32 0, !dbg !365 store i64 %value_phi382, ptr %290, align 8, !dbg !365, !tbaa !188, !alias.scope !190, !noalias !191 %291 = addrspacecast ptr %"new::Tuple743" to ptr addrspace(11), !dbg !365 call void @julia_throw_boundserror_56957(ptr addrspace(10) %"segs::Array", ptr addrspace(11) nocapture readonly %291) #133, !dbg !365 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4), !dbg !365 unreachable, !dbg !365 L290: ; preds = %L286, %L277 %292 = addrspacecast ptr addrspace(10) %"segs::Array" to ptr addrspace(11), !dbg !371 %293 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %292, i32 0, i32 0, !dbg !371 %memoryref_data490 = load ptr, ptr addrspace(11) %293, align 8, !dbg !371, !tbaa !195, !alias.scope !198, !noalias !199 %294 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %292, i32 0, i32 1, !dbg !371 %memoryref_mem510 = load ptr addrspace(10), ptr addrspace(11) %294, align 8, !dbg !371, !tbaa !195, !alias.scope !198, !noalias !199, !dereferenceable_or_null !139, !align !137 %295 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data490, 0, !dbg !371 %"segs::Array.ref489" = insertvalue { ptr, ptr addrspace(10) } %295, ptr addrspace(10) %memoryref_mem510, 1, !dbg !371 %memoryref_offset492 = sub i64 %value_phi382, 1, !dbg !372 %296 = addrspacecast ptr addrspace(10) %memoryref_mem510 to ptr addrspace(11), !dbg !372 %297 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %296, i32 0, i32 0, !dbg !372 %memory_len493 = load i64, ptr addrspace(11) %297, align 8, !dbg !372, !tbaa !200, !range !288, !alias.scope !198, !noalias !199 %298 = add nuw i64 %memory_len493, %memory_len493, !dbg !372 %299 = add i64 %memoryref_offset492, %memory_len493, !dbg !372 %memoryref_ovflw494 = icmp uge i64 %299, %298, !dbg !372 %memoryref_byteoffset495 = mul i64 %memoryref_offset492, 32, !dbg !372 %memoryref_data_byteoffset496 = getelementptr i8, ptr %memoryref_data490, i64 %memoryref_byteoffset495, !dbg !372 %300 = addrspacecast ptr addrspace(10) %memoryref_mem510 to ptr addrspace(11), !dbg !372 %301 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %300, i32 0, i32 0, !dbg !372 %memory_len497 = load i64, ptr addrspace(11) %301, align 8, !dbg !372, !tbaa !200, !range !288, !alias.scope !198, !noalias !199 %302 = addrspacecast ptr addrspace(10) %memoryref_mem510 to ptr addrspace(11), !dbg !372 %memory_data_ptr498 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %302, i32 0, i32 1, !dbg !372 %memory_data499 = load ptr, ptr addrspace(11) %memory_data_ptr498, align 8, !dbg !372, !tbaa !203, !alias.scope !198, !noalias !199, !nonnull !0 %303 = ptrtoint ptr %memory_data499 to i64, !dbg !372 %304 = ptrtoint ptr %memoryref_data_byteoffset496 to i64, !dbg !372 %305 = sub i64 %304, %303, !dbg !372 %memoryref_bytelen500 = mul nuw nsw i64 %memory_len497, 32, !dbg !372 %memoryref_isinbounds501 = icmp ult i64 %305, %memoryref_bytelen500, !dbg !372 %306 = xor i1 %memoryref_ovflw494, true, !dbg !372 %"memoryref_isinbounds¬ovflw502" = and i1 %306, %memoryref_isinbounds501, !dbg !372 br i1 %"memoryref_isinbounds¬ovflw502", label %idxend508, label %oob503, !dbg !372 L294: ; preds = %load513 br label %L295, !dbg !366 L295: ; preds = %L294 br label %L296, !dbg !366 L296: ; preds = %L295 br label %L297, !dbg !366 L297: ; preds = %L296 br label %L298, !dbg !373 L298: ; preds = %L297 %307 = addrspacecast ptr addrspace(10) %"segs::Array" to ptr addrspace(11), !dbg !374 %308 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %307, i32 0, i32 0, !dbg !374 %309 = load ptr, ptr addrspace(11) %308, align 8, !dbg !374, !tbaa !195, !alias.scope !198, !noalias !199 %310 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %307, i32 0, i32 1, !dbg !374 %311 = load ptr addrspace(10), ptr addrspace(11) %310, align 8, !dbg !374, !tbaa !195, !alias.scope !198, !noalias !199, !dereferenceable_or_null !139, !align !137 %312 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %309, 0, !dbg !374 %"segs::Array.ref515" = insertvalue { ptr, ptr addrspace(10) } %312, ptr addrspace(10) %311, 1, !dbg !374 %"segs::Array.ref515.mem" = extractvalue { ptr, ptr addrspace(10) } %"segs::Array.ref515", 1, !dbg !380 %313 = addrspacecast ptr addrspace(10) %"segs::Array.ref515.mem" to ptr addrspace(11), !dbg !382 %314 = addrspacecast ptr addrspace(10) %"segs::Array" to ptr addrspace(11), !dbg !385 %"segs::Array.size_ptr516" = getelementptr inbounds i8, ptr addrspace(11) %314, i32 16, !dbg !385 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %"segs::Array.size517", ptr addrspace(11) align 8 %"segs::Array.size_ptr516", i64 8, i1 false), !dbg !385, !tbaa !140, !alias.scope !186, !noalias !187 %"segs::Array.size517.unbox" = load i64, ptr %"segs::Array.size517", align 8, !dbg !388, !tbaa !188, !alias.scope !190, !noalias !191 %315 = add i64 %"segs::Array.size517.unbox", 1, !dbg !388 %316 = addrspacecast ptr addrspace(10) %311 to ptr addrspace(11), !dbg !390 %memory_data_ptr518 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %316, i32 0, i32 1, !dbg !390 %memory_data519 = load ptr, ptr addrspace(11) %memory_data_ptr518, align 8, !dbg !390, !tbaa !203, !alias.scope !198, !noalias !199, !nonnull !0 %317 = ptrtoint ptr %memory_data519 to i64, !dbg !390 %318 = ptrtoint ptr %309 to i64, !dbg !390 %memoryref_offset520 = sub i64 %318, %317, !dbg !390 %memoryref_offsetidx521 = udiv exact i64 %memoryref_offset520, 32, !dbg !390 %319 = add i64 %memoryref_offsetidx521, 1, !dbg !390 %320 = add i64 %319, %315, !dbg !391 %321 = sub i64 %320, 1, !dbg !393 %.unbox522 = load i64, ptr addrspace(11) %313, align 8, !dbg !394, !tbaa !200, !alias.scope !198, !noalias !199 %322 = icmp slt i64 %.unbox522, %321, !dbg !394 %323 = xor i1 %322, true, !dbg !395 br i1 %323, label %L310, label %L309, !dbg !395 L309: ; preds = %L298 %"segs::Array.size517.unbox523" = load i64, ptr %"segs::Array.size517", align 8, !dbg !396, !tbaa !188, !alias.scope !190, !noalias !191 call void @julia__growend_internal__56971(ptr addrspace(10) %"segs::Array", i64 signext 1, i64 signext %"segs::Array.size517.unbox523"), !dbg !396 br label %L310, !dbg !396 L310: ; preds = %L309, %L298 %324 = getelementptr inbounds i8, ptr %"new::Tuple524", i32 0, !dbg !397 store i64 %315, ptr %324, align 8, !dbg !397, !tbaa !188, !alias.scope !190, !noalias !191 %325 = addrspacecast ptr addrspace(10) %"segs::Array" to ptr addrspace(11), !dbg !397 %"segs::Array.size_ptr525" = getelementptr inbounds i8, ptr addrspace(11) %325, i32 16, !dbg !397 call void @llvm.memcpy.p11.p0.i64(ptr addrspace(11) align 8 %"segs::Array.size_ptr525", ptr align 8 %"new::Tuple524", i64 8, i1 false), !dbg !397, !tbaa !140, !alias.scope !280, !noalias !187 br label %L313, !dbg !398 L313: ; preds = %L310 %326 = addrspacecast ptr addrspace(10) %"segs::Array" to ptr addrspace(11), !dbg !399 %"segs::Array.size_ptr526" = getelementptr inbounds i8, ptr addrspace(11) %326, i32 16, !dbg !399 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %"segs::Array.size527", ptr addrspace(11) align 8 %"segs::Array.size_ptr526", i64 8, i1 false), !dbg !399, !tbaa !140, !alias.scope !186, !noalias !187 %327 = addrspacecast ptr addrspace(10) %"segs::Array" to ptr addrspace(11), !dbg !402 %328 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %327, i32 0, i32 0, !dbg !402 %memoryref_data529 = load ptr, ptr addrspace(11) %328, align 8, !dbg !402, !tbaa !195, !alias.scope !198, !noalias !199 %329 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %327, i32 0, i32 1, !dbg !402 %memoryref_mem549 = load ptr addrspace(10), ptr addrspace(11) %329, align 8, !dbg !402, !tbaa !195, !alias.scope !198, !noalias !199, !dereferenceable_or_null !139, !align !137 %330 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data529, 0, !dbg !402 %"segs::Array.ref528" = insertvalue { ptr, ptr addrspace(10) } %330, ptr addrspace(10) %memoryref_mem549, 1, !dbg !402 %"segs::Array.size527.unbox" = load i64, ptr %"segs::Array.size527", align 8, !dbg !403, !tbaa !188, !alias.scope !190, !noalias !191 %memoryref_offset531 = sub i64 %"segs::Array.size527.unbox", 1, !dbg !403 %331 = addrspacecast ptr addrspace(10) %memoryref_mem549 to ptr addrspace(11), !dbg !403 %332 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %331, i32 0, i32 0, !dbg !403 %memory_len532 = load i64, ptr addrspace(11) %332, align 8, !dbg !403, !tbaa !200, !range !288, !alias.scope !198, !noalias !199 %333 = add nuw i64 %memory_len532, %memory_len532, !dbg !403 %334 = add i64 %memoryref_offset531, %memory_len532, !dbg !403 %memoryref_ovflw533 = icmp uge i64 %334, %333, !dbg !403 %memoryref_byteoffset534 = mul i64 %memoryref_offset531, 32, !dbg !403 %memoryref_data_byteoffset535 = getelementptr i8, ptr %memoryref_data529, i64 %memoryref_byteoffset534, !dbg !403 %335 = addrspacecast ptr addrspace(10) %memoryref_mem549 to ptr addrspace(11), !dbg !403 %336 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %335, i32 0, i32 0, !dbg !403 %memory_len536 = load i64, ptr addrspace(11) %336, align 8, !dbg !403, !tbaa !200, !range !288, !alias.scope !198, !noalias !199 %337 = addrspacecast ptr addrspace(10) %memoryref_mem549 to ptr addrspace(11), !dbg !403 %memory_data_ptr537 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %337, i32 0, i32 1, !dbg !403 %memory_data538 = load ptr, ptr addrspace(11) %memory_data_ptr537, align 8, !dbg !403, !tbaa !203, !alias.scope !198, !noalias !199, !nonnull !0 %338 = ptrtoint ptr %memory_data538 to i64, !dbg !403 %339 = ptrtoint ptr %memoryref_data_byteoffset535 to i64, !dbg !403 %340 = sub i64 %339, %338, !dbg !403 %memoryref_bytelen539 = mul nuw nsw i64 %memory_len536, 32, !dbg !403 %memoryref_isinbounds540 = icmp ult i64 %340, %memoryref_bytelen539, !dbg !403 %341 = xor i1 %memoryref_ovflw533, true, !dbg !403 %"memoryref_isinbounds¬ovflw541" = and i1 %341, %memoryref_isinbounds540, !dbg !403 br i1 %"memoryref_isinbounds¬ovflw541", label %idxend547, label %oob542, !dbg !403 L319: ; preds = %load552 br label %L320, !dbg !377 L320: ; preds = %L319 %342 = addrspacecast ptr addrspace(10) %"segs::Array" to ptr addrspace(11), !dbg !404 %"segs::Array.size_ptr554" = getelementptr inbounds i8, ptr addrspace(11) %342, i32 16, !dbg !404 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %"segs::Array.size555", ptr addrspace(11) align 8 %"segs::Array.size_ptr554", i64 8, i1 false), !dbg !404, !tbaa !140, !alias.scope !186, !noalias !187 br i1 false, label %L336, label %L324, !dbg !407 L324: ; preds = %L320 %"segs::Array.size555.unbox" = load i64, ptr %"segs::Array.size555", align 8, !dbg !409, !tbaa !188, !alias.scope !190, !noalias !191 %343 = sub i64 %"segs::Array.size555.unbox", 1, !dbg !409 %344 = addrspacecast ptr addrspace(10) %"segs::Array" to ptr addrspace(11), !dbg !411 %"segs::Array.size_ptr556" = getelementptr inbounds i8, ptr addrspace(11) %344, i32 16, !dbg !411 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %"segs::Array.size557", ptr addrspace(11) align 8 %"segs::Array.size_ptr556", i64 8, i1 false), !dbg !411, !tbaa !140, !alias.scope !186, !noalias !187 %bitcast558 = load i64, ptr %"segs::Array.size557", align 8, !dbg !409, !tbaa !188, !alias.scope !190, !noalias !191 %345 = icmp ult i64 %343, %bitcast558, !dbg !409 %346 = xor i1 %345, true, !dbg !410 br i1 %346, label %L332, label %L331, !dbg !410 L331: ; preds = %L324 br label %L335, !dbg !410 L332: ; preds = %L324 %347 = getelementptr inbounds i8, ptr %"new::Tuple740", i32 0, !dbg !410 call void @llvm.memcpy.p0.p0.i64(ptr align 8 %347, ptr align 8 %"segs::Array.size555", i64 8, i1 false), !dbg !410, !tbaa !188, !alias.scope !190, !noalias !191 %348 = addrspacecast ptr %"new::Tuple740" to ptr addrspace(11), !dbg !410 call void @julia_throw_boundserror_56957(ptr addrspace(10) %"segs::Array", ptr addrspace(11) nocapture readonly %348) #133, !dbg !410 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4), !dbg !410 unreachable, !dbg !410 L335: ; preds = %L331 br label %L336, !dbg !410 L336: ; preds = %L335, %L320 %349 = addrspacecast ptr addrspace(10) %"segs::Array" to ptr addrspace(11), !dbg !413 %350 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %349, i32 0, i32 0, !dbg !413 %memoryref_data560 = load ptr, ptr addrspace(11) %350, align 8, !dbg !413, !tbaa !195, !alias.scope !198, !noalias !199 %351 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %349, i32 0, i32 1, !dbg !413 %memoryref_mem581 = load ptr addrspace(10), ptr addrspace(11) %351, align 8, !dbg !413, !tbaa !195, !alias.scope !198, !noalias !199, !dereferenceable_or_null !139, !align !137 %352 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data560, 0, !dbg !413 %"segs::Array.ref559" = insertvalue { ptr, ptr addrspace(10) } %352, ptr addrspace(10) %memoryref_mem581, 1, !dbg !413 %"segs::Array.size555.unbox562" = load i64, ptr %"segs::Array.size555", align 8, !dbg !413, !tbaa !188, !alias.scope !190, !noalias !191 %memoryref_offset563 = sub i64 %"segs::Array.size555.unbox562", 1, !dbg !413 %353 = addrspacecast ptr addrspace(10) %memoryref_mem581 to ptr addrspace(11), !dbg !413 %354 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %353, i32 0, i32 0, !dbg !413 %memory_len564 = load i64, ptr addrspace(11) %354, align 8, !dbg !413, !tbaa !200, !range !288, !alias.scope !198, !noalias !199 %355 = add nuw i64 %memory_len564, %memory_len564, !dbg !413 %356 = add i64 %memoryref_offset563, %memory_len564, !dbg !413 %memoryref_ovflw565 = icmp uge i64 %356, %355, !dbg !413 %memoryref_byteoffset566 = mul i64 %memoryref_offset563, 32, !dbg !413 %memoryref_data_byteoffset567 = getelementptr i8, ptr %memoryref_data560, i64 %memoryref_byteoffset566, !dbg !413 %357 = addrspacecast ptr addrspace(10) %memoryref_mem581 to ptr addrspace(11), !dbg !413 %358 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %357, i32 0, i32 0, !dbg !413 %memory_len568 = load i64, ptr addrspace(11) %358, align 8, !dbg !413, !tbaa !200, !range !288, !alias.scope !198, !noalias !199 %359 = addrspacecast ptr addrspace(10) %memoryref_mem581 to ptr addrspace(11), !dbg !413 %memory_data_ptr569 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %359, i32 0, i32 1, !dbg !413 %memory_data570 = load ptr, ptr addrspace(11) %memory_data_ptr569, align 8, !dbg !413, !tbaa !203, !alias.scope !198, !noalias !199, !nonnull !0 %360 = ptrtoint ptr %memory_data570 to i64, !dbg !413 %361 = ptrtoint ptr %memoryref_data_byteoffset567 to i64, !dbg !413 %362 = sub i64 %361, %360, !dbg !413 %memoryref_bytelen571 = mul nuw nsw i64 %memory_len568, 32, !dbg !413 %memoryref_isinbounds572 = icmp ult i64 %362, %memoryref_bytelen571, !dbg !413 %363 = xor i1 %memoryref_ovflw565, true, !dbg !413 %"memoryref_isinbounds¬ovflw573" = and i1 %363, %memoryref_isinbounds572, !dbg !413 br i1 %"memoryref_isinbounds¬ovflw573", label %idxend579, label %oob574, !dbg !413 L340: ; preds = %load584 br i1 false, label %L354, label %L342, !dbg !414 L342: ; preds = %L340 %"segs::Array.size555.unbox586" = load i64, ptr %"segs::Array.size555", align 8, !dbg !415, !tbaa !188, !alias.scope !190, !noalias !191 %364 = sub i64 %"segs::Array.size555.unbox586", 1, !dbg !415 %365 = addrspacecast ptr addrspace(10) %"segs::Array" to ptr addrspace(11), !dbg !417 %"segs::Array.size_ptr587" = getelementptr inbounds i8, ptr addrspace(11) %365, i32 16, !dbg !417 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %"segs::Array.size588", ptr addrspace(11) align 8 %"segs::Array.size_ptr587", i64 8, i1 false), !dbg !417, !tbaa !140, !alias.scope !186, !noalias !187 %bitcast589 = load i64, ptr %"segs::Array.size588", align 8, !dbg !415, !tbaa !188, !alias.scope !190, !noalias !191 %366 = icmp ult i64 %364, %bitcast589, !dbg !415 %367 = xor i1 %366, true, !dbg !416 br i1 %367, label %L350, label %L349, !dbg !416 L349: ; preds = %L342 br label %L353, !dbg !416 L350: ; preds = %L342 %368 = getelementptr inbounds i8, ptr %"new::Tuple737", i32 0, !dbg !416 call void @llvm.memcpy.p0.p0.i64(ptr align 8 %368, ptr align 8 %"segs::Array.size555", i64 8, i1 false), !dbg !416, !tbaa !188, !alias.scope !190, !noalias !191 %369 = addrspacecast ptr %"new::Tuple737" to ptr addrspace(11), !dbg !416 call void @julia_throw_boundserror_56957(ptr addrspace(10) %"segs::Array", ptr addrspace(11) nocapture readonly %369) #133, !dbg !416 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4), !dbg !416 unreachable, !dbg !416 L353: ; preds = %L349 br label %L354, !dbg !416 L354: ; preds = %L353, %L340 %370 = icmp ne ptr %"segs::Array.size555", null br i1 %370, label %guard_pass785, label %guard_exit786 L355: ; preds = %L442, %guard_exit789 %value_phi590 = phi i64 [ %guard_res791, %guard_exit789 ], [ %846, %L442 ] %371 = icmp ne i64 %value_phi590, -9223372036854775808, !dbg !419 %372 = or i1 true, %371, !dbg !419 %divisor_valid591 = and i1 true, %372, !dbg !419 %jl_diverror_exception592 = load ptr, ptr @jl_diverror_exception, align 8, !dbg !419, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0 br i1 %divisor_valid591, label %pass594, label %fail593, !dbg !419 L359: ; preds = %pass594 br i1 false, label %L373, label %L361, !dbg !422 L361: ; preds = %L359 %373 = sub i64 %846, 1, !dbg !424 %374 = addrspacecast ptr addrspace(10) %"segs::Array" to ptr addrspace(11), !dbg !426 %"segs::Array.size_ptr595" = getelementptr inbounds i8, ptr addrspace(11) %374, i32 16, !dbg !426 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %"segs::Array.size596", ptr addrspace(11) align 8 %"segs::Array.size_ptr595", i64 8, i1 false), !dbg !426, !tbaa !140, !alias.scope !186, !noalias !187 %bitcast597 = load i64, ptr %"segs::Array.size596", align 8, !dbg !424, !tbaa !188, !alias.scope !190, !noalias !191 %375 = icmp ult i64 %373, %bitcast597, !dbg !424 %376 = xor i1 %375, true, !dbg !425 br i1 %376, label %L369, label %L368, !dbg !425 L368: ; preds = %L361 br label %L372, !dbg !425 L369: ; preds = %L361 %377 = getelementptr inbounds i8, ptr %"new::Tuple734", i32 0, !dbg !425 store i64 %846, ptr %377, align 8, !dbg !425, !tbaa !188, !alias.scope !190, !noalias !191 %378 = addrspacecast ptr %"new::Tuple734" to ptr addrspace(11), !dbg !425 call void @julia_throw_boundserror_56957(ptr addrspace(10) %"segs::Array", ptr addrspace(11) nocapture readonly %378) #133, !dbg !425 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4), !dbg !425 unreachable, !dbg !425 L372: ; preds = %L368 br label %L373, !dbg !425 L373: ; preds = %L372, %L359 %379 = addrspacecast ptr addrspace(10) %"segs::Array" to ptr addrspace(11), !dbg !428 %380 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %379, i32 0, i32 0, !dbg !428 %memoryref_data599 = load ptr, ptr addrspace(11) %380, align 8, !dbg !428, !tbaa !195, !alias.scope !198, !noalias !199 %381 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %379, i32 0, i32 1, !dbg !428 %memoryref_mem619 = load ptr addrspace(10), ptr addrspace(11) %381, align 8, !dbg !428, !tbaa !195, !alias.scope !198, !noalias !199, !dereferenceable_or_null !139, !align !137 %382 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data599, 0, !dbg !428 %"segs::Array.ref598" = insertvalue { ptr, ptr addrspace(10) } %382, ptr addrspace(10) %memoryref_mem619, 1, !dbg !428 %memoryref_offset601 = sub i64 %846, 1, !dbg !428 %383 = addrspacecast ptr addrspace(10) %memoryref_mem619 to ptr addrspace(11), !dbg !428 %384 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %383, i32 0, i32 0, !dbg !428 %memory_len602 = load i64, ptr addrspace(11) %384, align 8, !dbg !428, !tbaa !200, !range !288, !alias.scope !198, !noalias !199 %385 = add nuw i64 %memory_len602, %memory_len602, !dbg !428 %386 = add i64 %memoryref_offset601, %memory_len602, !dbg !428 %memoryref_ovflw603 = icmp uge i64 %386, %385, !dbg !428 %memoryref_byteoffset604 = mul i64 %memoryref_offset601, 32, !dbg !428 %memoryref_data_byteoffset605 = getelementptr i8, ptr %memoryref_data599, i64 %memoryref_byteoffset604, !dbg !428 %387 = addrspacecast ptr addrspace(10) %memoryref_mem619 to ptr addrspace(11), !dbg !428 %388 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %387, i32 0, i32 0, !dbg !428 %memory_len606 = load i64, ptr addrspace(11) %388, align 8, !dbg !428, !tbaa !200, !range !288, !alias.scope !198, !noalias !199 %389 = addrspacecast ptr addrspace(10) %memoryref_mem619 to ptr addrspace(11), !dbg !428 %memory_data_ptr607 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %389, i32 0, i32 1, !dbg !428 %memory_data608 = load ptr, ptr addrspace(11) %memory_data_ptr607, align 8, !dbg !428, !tbaa !203, !alias.scope !198, !noalias !199, !nonnull !0 %390 = ptrtoint ptr %memory_data608 to i64, !dbg !428 %391 = ptrtoint ptr %memoryref_data_byteoffset605 to i64, !dbg !428 %392 = sub i64 %391, %390, !dbg !428 %memoryref_bytelen609 = mul nuw nsw i64 %memory_len606, 32, !dbg !428 %memoryref_isinbounds610 = icmp ult i64 %392, %memoryref_bytelen609, !dbg !428 %393 = xor i1 %memoryref_ovflw603, true, !dbg !428 %"memoryref_isinbounds¬ovflw611" = and i1 %393, %memoryref_isinbounds610, !dbg !428 br i1 %"memoryref_isinbounds¬ovflw611", label %idxend617, label %oob612, !dbg !428 L377: ; preds = %load622 %.E_ptr624 = getelementptr inbounds i8, ptr %9, i32 24, !dbg !429 %.E_ptr625 = getelementptr inbounds i8, ptr %8, i32 24, !dbg !429 %.E_ptr624.unbox = load double, ptr %.E_ptr624, align 8, !dbg !433, !tbaa !188, !alias.scope !190, !noalias !191 %.E_ptr624.unbox626 = load double, ptr %.E_ptr624, align 8, !dbg !433, !tbaa !188, !alias.scope !190, !noalias !191 %394 = fcmp oeq double %.E_ptr624.unbox, %.E_ptr624.unbox626, !dbg !433 %395 = xor i1 %394, true, !dbg !437 %396 = xor i1 %395, true, !dbg !436 br i1 %396, label %L383, label %L382, !dbg !436 L382: ; preds = %L377 br label %L397, !dbg !436 L383: ; preds = %L377 %.E_ptr625.unbox = load double, ptr %.E_ptr625, align 8, !dbg !433, !tbaa !188, !alias.scope !190, !noalias !191 %.E_ptr625.unbox727 = load double, ptr %.E_ptr625, align 8, !dbg !433, !tbaa !188, !alias.scope !190, !noalias !191 %397 = fcmp oeq double %.E_ptr625.unbox, %.E_ptr625.unbox727, !dbg !433 %398 = xor i1 %397, true, !dbg !437 %399 = xor i1 %398, true, !dbg !436 br i1 %399, label %L387, label %L386, !dbg !436 L386: ; preds = %L383 br label %L397, !dbg !436 L387: ; preds = %L383 %bitcast728 = load double, ptr %.E_ptr624, align 8, !dbg !438, !tbaa !188, !alias.scope !190, !noalias !191 %bitcast_coercion729 = bitcast double %bitcast728 to i64, !dbg !438 %400 = icmp slt i64 %bitcast_coercion729, 0, !dbg !441 %401 = xor i64 %bitcast_coercion729, 9223372036854775807, !dbg !443 %ifelse_cond730 = xor i1 %400, true, !dbg !444 %402 = select i1 %ifelse_cond730, i64 %bitcast_coercion729, i64 %401, !dbg !444 %bitcast731 = load double, ptr %.E_ptr625, align 8, !dbg !438, !tbaa !188, !alias.scope !190, !noalias !191 %bitcast_coercion732 = bitcast double %bitcast731 to i64, !dbg !438 %403 = icmp slt i64 %bitcast_coercion732, 0, !dbg !441 %404 = xor i64 %bitcast_coercion732, 9223372036854775807, !dbg !443 %ifelse_cond733 = xor i1 %403, true, !dbg !444 %405 = select i1 %ifelse_cond733, i64 %bitcast_coercion732, i64 %404, !dbg !444 %406 = icmp slt i64 %402, %405, !dbg !445 %407 = zext i1 %406 to i8 br label %L401, !dbg !440 L397: ; preds = %L386, %L382 %.E_ptr624.unbox627 = load double, ptr %.E_ptr624, align 8, !dbg !433, !tbaa !188, !alias.scope !190, !noalias !191 %.E_ptr624.unbox628 = load double, ptr %.E_ptr624, align 8, !dbg !433, !tbaa !188, !alias.scope !190, !noalias !191 %408 = fcmp oeq double %.E_ptr624.unbox627, %.E_ptr624.unbox628, !dbg !433 %409 = xor i1 %408, true, !dbg !437 %410 = xor i1 %409, true, !dbg !446 %411 = zext i1 %410 to i8 br label %L401, !dbg !436 L401: ; preds = %L387, %L397 %value_phi629 = phi i8 [ %407, %L387 ], [ %411, %L397 ] br label %L403, !dbg !430 L403: ; preds = %L401 br label %L404, !dbg !430 L404: ; preds = %L403 br label %L405, !dbg !430 L405: ; preds = %L404 %412 = trunc i8 %value_phi629 to i1, !dbg !423 %413 = xor i1 %412, true, !dbg !423 br i1 %413, label %L443, label %L406, !dbg !423 L406: ; preds = %L405 br i1 false, label %L420, label %L408, !dbg !447 L408: ; preds = %L406 %414 = sub i64 %846, 1, !dbg !449 %415 = addrspacecast ptr addrspace(10) %"segs::Array" to ptr addrspace(11), !dbg !451 %"segs::Array.size_ptr630" = getelementptr inbounds i8, ptr addrspace(11) %415, i32 16, !dbg !451 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %"segs::Array.size631", ptr addrspace(11) align 8 %"segs::Array.size_ptr630", i64 8, i1 false), !dbg !451, !tbaa !140, !alias.scope !186, !noalias !187 %bitcast632 = load i64, ptr %"segs::Array.size631", align 8, !dbg !449, !tbaa !188, !alias.scope !190, !noalias !191 %416 = icmp ult i64 %414, %bitcast632, !dbg !449 %417 = xor i1 %416, true, !dbg !450 br i1 %417, label %L416, label %L415, !dbg !450 L415: ; preds = %L408 br label %L419, !dbg !450 L416: ; preds = %L408 %418 = getelementptr inbounds i8, ptr %"new::Tuple691", i32 0, !dbg !450 store i64 %846, ptr %418, align 8, !dbg !450, !tbaa !188, !alias.scope !190, !noalias !191 %419 = addrspacecast ptr %"new::Tuple691" to ptr addrspace(11), !dbg !450 call void @julia_throw_boundserror_56957(ptr addrspace(10) %"segs::Array", ptr addrspace(11) nocapture readonly %419) #133, !dbg !450 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4), !dbg !450 unreachable, !dbg !450 L419: ; preds = %L415 br label %L420, !dbg !450 L420: ; preds = %L419, %L406 %420 = addrspacecast ptr addrspace(10) %"segs::Array" to ptr addrspace(11), !dbg !453 %421 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %420, i32 0, i32 0, !dbg !453 %memoryref_data634 = load ptr, ptr addrspace(11) %421, align 8, !dbg !453, !tbaa !195, !alias.scope !198, !noalias !199 %422 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %420, i32 0, i32 1, !dbg !453 %memoryref_mem654 = load ptr addrspace(10), ptr addrspace(11) %422, align 8, !dbg !453, !tbaa !195, !alias.scope !198, !noalias !199, !dereferenceable_or_null !139, !align !137 %423 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data634, 0, !dbg !453 %"segs::Array.ref633" = insertvalue { ptr, ptr addrspace(10) } %423, ptr addrspace(10) %memoryref_mem654, 1, !dbg !453 %memoryref_offset636 = sub i64 %846, 1, !dbg !453 %424 = addrspacecast ptr addrspace(10) %memoryref_mem654 to ptr addrspace(11), !dbg !453 %425 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %424, i32 0, i32 0, !dbg !453 %memory_len637 = load i64, ptr addrspace(11) %425, align 8, !dbg !453, !tbaa !200, !range !288, !alias.scope !198, !noalias !199 %426 = add nuw i64 %memory_len637, %memory_len637, !dbg !453 %427 = add i64 %memoryref_offset636, %memory_len637, !dbg !453 %memoryref_ovflw638 = icmp uge i64 %427, %426, !dbg !453 %memoryref_byteoffset639 = mul i64 %memoryref_offset636, 32, !dbg !453 %memoryref_data_byteoffset640 = getelementptr i8, ptr %memoryref_data634, i64 %memoryref_byteoffset639, !dbg !453 %428 = addrspacecast ptr addrspace(10) %memoryref_mem654 to ptr addrspace(11), !dbg !453 %429 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %428, i32 0, i32 0, !dbg !453 %memory_len641 = load i64, ptr addrspace(11) %429, align 8, !dbg !453, !tbaa !200, !range !288, !alias.scope !198, !noalias !199 %430 = addrspacecast ptr addrspace(10) %memoryref_mem654 to ptr addrspace(11), !dbg !453 %memory_data_ptr642 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %430, i32 0, i32 1, !dbg !453 %memory_data643 = load ptr, ptr addrspace(11) %memory_data_ptr642, align 8, !dbg !453, !tbaa !203, !alias.scope !198, !noalias !199, !nonnull !0 %431 = ptrtoint ptr %memory_data643 to i64, !dbg !453 %432 = ptrtoint ptr %memoryref_data_byteoffset640 to i64, !dbg !453 %433 = sub i64 %432, %431, !dbg !453 %memoryref_bytelen644 = mul nuw nsw i64 %memory_len641, 32, !dbg !453 %memoryref_isinbounds645 = icmp ult i64 %433, %memoryref_bytelen644, !dbg !453 %434 = xor i1 %memoryref_ovflw638, true, !dbg !453 %"memoryref_isinbounds¬ovflw646" = and i1 %434, %memoryref_isinbounds645, !dbg !453 br i1 %"memoryref_isinbounds¬ovflw646", label %idxend652, label %oob647, !dbg !453 L424: ; preds = %load657 br i1 false, label %L437, label %L426, !dbg !454 L426: ; preds = %L424 %435 = sub i64 %value_phi590, 1, !dbg !456 %436 = addrspacecast ptr addrspace(10) %"segs::Array" to ptr addrspace(11), !dbg !457 %"segs::Array.size_ptr659" = getelementptr inbounds i8, ptr addrspace(11) %436, i32 16, !dbg !457 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %"segs::Array.size660", ptr addrspace(11) align 8 %"segs::Array.size_ptr659", i64 8, i1 false), !dbg !457, !tbaa !140, !alias.scope !186, !noalias !187 %bitcast661 = load i64, ptr %"segs::Array.size660", align 8, !dbg !456, !tbaa !188, !alias.scope !190, !noalias !191 %437 = icmp ult i64 %435, %bitcast661, !dbg !456 %438 = xor i1 %437, true, !dbg !454 br i1 %438, label %L434, label %L433, !dbg !454 L433: ; preds = %L426 br label %L437, !dbg !454 L434: ; preds = %L426 %439 = getelementptr inbounds i8, ptr %"new::Tuple688", i32 0, !dbg !454 store i64 %value_phi590, ptr %439, align 8, !dbg !454, !tbaa !188, !alias.scope !190, !noalias !191 %440 = addrspacecast ptr %"new::Tuple688" to ptr addrspace(11), !dbg !454 call void @julia_throw_boundserror_56957(ptr addrspace(10) %"segs::Array", ptr addrspace(11) nocapture readonly %440) #133, !dbg !454 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4), !dbg !454 unreachable, !dbg !454 L437: ; preds = %L433, %L424 %441 = addrspacecast ptr addrspace(10) %"segs::Array" to ptr addrspace(11), !dbg !459 %442 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %441, i32 0, i32 0, !dbg !459 %memoryref_data663 = load ptr, ptr addrspace(11) %442, align 8, !dbg !459, !tbaa !195, !alias.scope !198, !noalias !199 %443 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %441, i32 0, i32 1, !dbg !459 %memoryref_mem683 = load ptr addrspace(10), ptr addrspace(11) %443, align 8, !dbg !459, !tbaa !195, !alias.scope !198, !noalias !199, !dereferenceable_or_null !139, !align !137 %444 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data663, 0, !dbg !459 %"segs::Array.ref662" = insertvalue { ptr, ptr addrspace(10) } %444, ptr addrspace(10) %memoryref_mem683, 1, !dbg !459 %memoryref_offset665 = sub i64 %value_phi590, 1, !dbg !460 %445 = addrspacecast ptr addrspace(10) %memoryref_mem683 to ptr addrspace(11), !dbg !460 %446 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %445, i32 0, i32 0, !dbg !460 %memory_len666 = load i64, ptr addrspace(11) %446, align 8, !dbg !460, !tbaa !200, !range !288, !alias.scope !198, !noalias !199 %447 = add nuw i64 %memory_len666, %memory_len666, !dbg !460 %448 = add i64 %memoryref_offset665, %memory_len666, !dbg !460 %memoryref_ovflw667 = icmp uge i64 %448, %447, !dbg !460 %memoryref_byteoffset668 = mul i64 %memoryref_offset665, 32, !dbg !460 %memoryref_data_byteoffset669 = getelementptr i8, ptr %memoryref_data663, i64 %memoryref_byteoffset668, !dbg !460 %449 = addrspacecast ptr addrspace(10) %memoryref_mem683 to ptr addrspace(11), !dbg !460 %450 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %449, i32 0, i32 0, !dbg !460 %memory_len670 = load i64, ptr addrspace(11) %450, align 8, !dbg !460, !tbaa !200, !range !288, !alias.scope !198, !noalias !199 %451 = addrspacecast ptr addrspace(10) %memoryref_mem683 to ptr addrspace(11), !dbg !460 %memory_data_ptr671 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %451, i32 0, i32 1, !dbg !460 %memory_data672 = load ptr, ptr addrspace(11) %memory_data_ptr671, align 8, !dbg !460, !tbaa !203, !alias.scope !198, !noalias !199, !nonnull !0 %452 = ptrtoint ptr %memory_data672 to i64, !dbg !460 %453 = ptrtoint ptr %memoryref_data_byteoffset669 to i64, !dbg !460 %454 = sub i64 %453, %452, !dbg !460 %memoryref_bytelen673 = mul nuw nsw i64 %memory_len670, 32, !dbg !460 %memoryref_isinbounds674 = icmp ult i64 %454, %memoryref_bytelen673, !dbg !460 %455 = xor i1 %memoryref_ovflw667, true, !dbg !460 %"memoryref_isinbounds¬ovflw675" = and i1 %455, %memoryref_isinbounds674, !dbg !460 br i1 %"memoryref_isinbounds¬ovflw675", label %idxend681, label %oob676, !dbg !460 L441: ; preds = %load686 br label %L442, !dbg !455 L442: ; preds = %L441 br label %L355, !dbg !461 L443: ; preds = %L405 br label %L444, !dbg !450 L444: ; preds = %L443, %pass594 br i1 false, label %L457, label %L446, !dbg !462 L446: ; preds = %L444 %456 = sub i64 %value_phi590, 1, !dbg !465 %457 = addrspacecast ptr addrspace(10) %"segs::Array" to ptr addrspace(11), !dbg !466 %"segs::Array.size_ptr694" = getelementptr inbounds i8, ptr addrspace(11) %457, i32 16, !dbg !466 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %"segs::Array.size695", ptr addrspace(11) align 8 %"segs::Array.size_ptr694", i64 8, i1 false), !dbg !466, !tbaa !140, !alias.scope !186, !noalias !187 %bitcast696 = load i64, ptr %"segs::Array.size695", align 8, !dbg !465, !tbaa !188, !alias.scope !190, !noalias !191 %458 = icmp ult i64 %456, %bitcast696, !dbg !465 %459 = xor i1 %458, true, !dbg !462 br i1 %459, label %L454, label %L453, !dbg !462 L453: ; preds = %L446 br label %L457, !dbg !462 L454: ; preds = %L446 %460 = getelementptr inbounds i8, ptr %"new::Tuple724", i32 0, !dbg !462 store i64 %value_phi590, ptr %460, align 8, !dbg !462, !tbaa !188, !alias.scope !190, !noalias !191 %461 = addrspacecast ptr %"new::Tuple724" to ptr addrspace(11), !dbg !462 call void @julia_throw_boundserror_56957(ptr addrspace(10) %"segs::Array", ptr addrspace(11) nocapture readonly %461) #133, !dbg !462 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4), !dbg !462 unreachable, !dbg !462 L457: ; preds = %L453, %L444 %462 = addrspacecast ptr addrspace(10) %"segs::Array" to ptr addrspace(11), !dbg !468 %463 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %462, i32 0, i32 0, !dbg !468 %memoryref_data698 = load ptr, ptr addrspace(11) %463, align 8, !dbg !468, !tbaa !195, !alias.scope !198, !noalias !199 %464 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %462, i32 0, i32 1, !dbg !468 %memoryref_mem718 = load ptr addrspace(10), ptr addrspace(11) %464, align 8, !dbg !468, !tbaa !195, !alias.scope !198, !noalias !199, !dereferenceable_or_null !139, !align !137 %465 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data698, 0, !dbg !468 %"segs::Array.ref697" = insertvalue { ptr, ptr addrspace(10) } %465, ptr addrspace(10) %memoryref_mem718, 1, !dbg !468 %memoryref_offset700 = sub i64 %value_phi590, 1, !dbg !469 %466 = addrspacecast ptr addrspace(10) %memoryref_mem718 to ptr addrspace(11), !dbg !469 %467 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %466, i32 0, i32 0, !dbg !469 %memory_len701 = load i64, ptr addrspace(11) %467, align 8, !dbg !469, !tbaa !200, !range !288, !alias.scope !198, !noalias !199 %468 = add nuw i64 %memory_len701, %memory_len701, !dbg !469 %469 = add i64 %memoryref_offset700, %memory_len701, !dbg !469 %memoryref_ovflw702 = icmp uge i64 %469, %468, !dbg !469 %memoryref_byteoffset703 = mul i64 %memoryref_offset700, 32, !dbg !469 %memoryref_data_byteoffset704 = getelementptr i8, ptr %memoryref_data698, i64 %memoryref_byteoffset703, !dbg !469 %470 = addrspacecast ptr addrspace(10) %memoryref_mem718 to ptr addrspace(11), !dbg !469 %471 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %470, i32 0, i32 0, !dbg !469 %memory_len705 = load i64, ptr addrspace(11) %471, align 8, !dbg !469, !tbaa !200, !range !288, !alias.scope !198, !noalias !199 %472 = addrspacecast ptr addrspace(10) %memoryref_mem718 to ptr addrspace(11), !dbg !469 %memory_data_ptr706 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %472, i32 0, i32 1, !dbg !469 %memory_data707 = load ptr, ptr addrspace(11) %memory_data_ptr706, align 8, !dbg !469, !tbaa !203, !alias.scope !198, !noalias !199, !nonnull !0 %473 = ptrtoint ptr %memory_data707 to i64, !dbg !469 %474 = ptrtoint ptr %memoryref_data_byteoffset704 to i64, !dbg !469 %475 = sub i64 %474, %473, !dbg !469 %memoryref_bytelen708 = mul nuw nsw i64 %memory_len705, 32, !dbg !469 %memoryref_isinbounds709 = icmp ult i64 %475, %memoryref_bytelen708, !dbg !469 %476 = xor i1 %memoryref_ovflw702, true, !dbg !469 %"memoryref_isinbounds¬ovflw710" = and i1 %476, %memoryref_isinbounds709, !dbg !469 br i1 %"memoryref_isinbounds¬ovflw710", label %idxend716, label %oob711, !dbg !469 L461: ; preds = %load721 br label %L462, !dbg !463 L462: ; preds = %L461 br label %L463, !dbg !463 L463: ; preds = %L462 br label %L464, !dbg !463 L464: ; preds = %L463 br label %L465, !dbg !470 L465: ; preds = %L464 %477 = getelementptr inbounds i8, ptr %"new::Tuple723", i32 0, !dbg !471 store double %130, ptr %477, align 8, !dbg !471, !tbaa !188, !alias.scope !190, !noalias !191 %478 = getelementptr inbounds i8, ptr %"new::Tuple723", i32 8, !dbg !471 store double %133, ptr %478, align 8, !dbg !471, !tbaa !188, !alias.scope !190, !noalias !191 %479 = getelementptr inbounds i8, ptr %"new::Tuple723", i32 16, !dbg !471 store i64 %136, ptr %479, align 8, !dbg !471, !tbaa !188, !alias.scope !190, !noalias !191 switch i8 1, label %union_move_skip [ i8 1, label %union_move ], !dbg !471 L467: ; preds = %L111, %L58 %480 = addrspacecast ptr addrspace(10) %"segs::Array" to ptr addrspace(11), !dbg !472 %481 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %480, i32 0, i32 0, !dbg !472 %482 = load ptr, ptr addrspace(11) %481, align 8, !dbg !472, !tbaa !195, !alias.scope !198, !noalias !199 %483 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %480, i32 0, i32 1, !dbg !472 %484 = load ptr addrspace(10), ptr addrspace(11) %483, align 8, !dbg !472, !tbaa !195, !alias.scope !198, !noalias !199, !dereferenceable_or_null !139, !align !137 %485 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %482, 0, !dbg !472 %"segs::Array.ref" = insertvalue { ptr, ptr addrspace(10) } %485, ptr addrspace(10) %484, 1, !dbg !472 %"segs::Array.ref.mem" = extractvalue { ptr, ptr addrspace(10) } %"segs::Array.ref", 1, !dbg !478 %486 = addrspacecast ptr addrspace(10) %"segs::Array.ref.mem" to ptr addrspace(11), !dbg !480 %487 = addrspacecast ptr addrspace(10) %"segs::Array" to ptr addrspace(11), !dbg !483 %"segs::Array.size_ptr" = getelementptr inbounds i8, ptr addrspace(11) %487, i32 16, !dbg !483 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %"segs::Array.size", ptr addrspace(11) align 8 %"segs::Array.size_ptr", i64 8, i1 false), !dbg !483, !tbaa !140, !alias.scope !186, !noalias !187 %"segs::Array.size.unbox" = load i64, ptr %"segs::Array.size", align 8, !dbg !486, !tbaa !188, !alias.scope !190, !noalias !191 %488 = add i64 %"segs::Array.size.unbox", 1, !dbg !486 %489 = addrspacecast ptr addrspace(10) %484 to ptr addrspace(11), !dbg !488 %memory_data_ptr37 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %489, i32 0, i32 1, !dbg !488 %memory_data38 = load ptr, ptr addrspace(11) %memory_data_ptr37, align 8, !dbg !488, !tbaa !203, !alias.scope !198, !noalias !199, !nonnull !0 %490 = ptrtoint ptr %memory_data38 to i64, !dbg !488 %491 = ptrtoint ptr %482 to i64, !dbg !488 %memoryref_offset = sub i64 %491, %490, !dbg !488 %memoryref_offsetidx = udiv exact i64 %memoryref_offset, 32, !dbg !488 %492 = add i64 %memoryref_offsetidx, 1, !dbg !488 %493 = add i64 %492, %488, !dbg !489 %494 = sub i64 %493, 1, !dbg !491 %.unbox = load i64, ptr addrspace(11) %486, align 8, !dbg !492, !tbaa !200, !alias.scope !198, !noalias !199 %495 = icmp slt i64 %.unbox, %494, !dbg !492 %496 = xor i1 %495, true, !dbg !493 br i1 %496, label %L479, label %L478, !dbg !493 L478: ; preds = %L467 %"segs::Array.size.unbox39" = load i64, ptr %"segs::Array.size", align 8, !dbg !494, !tbaa !188, !alias.scope !190, !noalias !191 call void @julia__growend_internal__56971(ptr addrspace(10) %"segs::Array", i64 signext 1, i64 signext %"segs::Array.size.unbox39"), !dbg !494 br label %L479, !dbg !494 L479: ; preds = %L478, %L467 %497 = getelementptr inbounds i8, ptr %"new::Tuple", i32 0, !dbg !495 store i64 %488, ptr %497, align 8, !dbg !495, !tbaa !188, !alias.scope !190, !noalias !191 %498 = addrspacecast ptr addrspace(10) %"segs::Array" to ptr addrspace(11), !dbg !495 %"segs::Array.size_ptr40" = getelementptr inbounds i8, ptr addrspace(11) %498, i32 16, !dbg !495 call void @llvm.memcpy.p11.p0.i64(ptr addrspace(11) align 8 %"segs::Array.size_ptr40", ptr align 8 %"new::Tuple", i64 8, i1 false), !dbg !495, !tbaa !140, !alias.scope !280, !noalias !187 br label %L482, !dbg !496 L482: ; preds = %L479 %499 = addrspacecast ptr addrspace(10) %"segs::Array" to ptr addrspace(11), !dbg !497 %"segs::Array.size_ptr41" = getelementptr inbounds i8, ptr addrspace(11) %499, i32 16, !dbg !497 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %"segs::Array.size42", ptr addrspace(11) align 8 %"segs::Array.size_ptr41", i64 8, i1 false), !dbg !497, !tbaa !140, !alias.scope !186, !noalias !187 %500 = addrspacecast ptr addrspace(10) %"segs::Array" to ptr addrspace(11), !dbg !500 %501 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %500, i32 0, i32 0, !dbg !500 %memoryref_data44 = load ptr, ptr addrspace(11) %501, align 8, !dbg !500, !tbaa !195, !alias.scope !198, !noalias !199 %502 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %500, i32 0, i32 1, !dbg !500 %memoryref_mem62 = load ptr addrspace(10), ptr addrspace(11) %502, align 8, !dbg !500, !tbaa !195, !alias.scope !198, !noalias !199, !dereferenceable_or_null !139, !align !137 %503 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data44, 0, !dbg !500 %"segs::Array.ref43" = insertvalue { ptr, ptr addrspace(10) } %503, ptr addrspace(10) %memoryref_mem62, 1, !dbg !500 %"segs::Array.size42.unbox" = load i64, ptr %"segs::Array.size42", align 8, !dbg !501, !tbaa !188, !alias.scope !190, !noalias !191 %memoryref_offset46 = sub i64 %"segs::Array.size42.unbox", 1, !dbg !501 %504 = addrspacecast ptr addrspace(10) %memoryref_mem62 to ptr addrspace(11), !dbg !501 %505 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %504, i32 0, i32 0, !dbg !501 %memory_len47 = load i64, ptr addrspace(11) %505, align 8, !dbg !501, !tbaa !200, !range !288, !alias.scope !198, !noalias !199 %506 = add nuw i64 %memory_len47, %memory_len47, !dbg !501 %507 = add i64 %memoryref_offset46, %memory_len47, !dbg !501 %memoryref_ovflw48 = icmp uge i64 %507, %506, !dbg !501 %memoryref_byteoffset = mul i64 %memoryref_offset46, 32, !dbg !501 %memoryref_data_byteoffset49 = getelementptr i8, ptr %memoryref_data44, i64 %memoryref_byteoffset, !dbg !501 %508 = addrspacecast ptr addrspace(10) %memoryref_mem62 to ptr addrspace(11), !dbg !501 %509 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %508, i32 0, i32 0, !dbg !501 %memory_len50 = load i64, ptr addrspace(11) %509, align 8, !dbg !501, !tbaa !200, !range !288, !alias.scope !198, !noalias !199 %510 = addrspacecast ptr addrspace(10) %memoryref_mem62 to ptr addrspace(11), !dbg !501 %memory_data_ptr51 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %510, i32 0, i32 1, !dbg !501 %memory_data52 = load ptr, ptr addrspace(11) %memory_data_ptr51, align 8, !dbg !501, !tbaa !203, !alias.scope !198, !noalias !199, !nonnull !0 %511 = ptrtoint ptr %memory_data52 to i64, !dbg !501 %512 = ptrtoint ptr %memoryref_data_byteoffset49 to i64, !dbg !501 %513 = sub i64 %512, %511, !dbg !501 %memoryref_bytelen53 = mul nuw nsw i64 %memory_len50, 32, !dbg !501 %memoryref_isinbounds54 = icmp ult i64 %513, %memoryref_bytelen53, !dbg !501 %514 = xor i1 %memoryref_ovflw48, true, !dbg !501 %"memoryref_isinbounds¬ovflw55" = and i1 %514, %memoryref_isinbounds54, !dbg !501 br i1 %"memoryref_isinbounds¬ovflw55", label %idxend60, label %oob56, !dbg !501 L488: ; preds = %load65 br label %L489, !dbg !475 L489: ; preds = %L488 %515 = addrspacecast ptr addrspace(10) %"segs::Array" to ptr addrspace(11), !dbg !502 %"segs::Array.size_ptr67" = getelementptr inbounds i8, ptr addrspace(11) %515, i32 16, !dbg !502 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %"segs::Array.size68", ptr addrspace(11) align 8 %"segs::Array.size_ptr67", i64 8, i1 false), !dbg !502, !tbaa !140, !alias.scope !186, !noalias !187 br i1 false, label %L505, label %L493, !dbg !505 L493: ; preds = %L489 %"segs::Array.size68.unbox" = load i64, ptr %"segs::Array.size68", align 8, !dbg !507, !tbaa !188, !alias.scope !190, !noalias !191 %516 = sub i64 %"segs::Array.size68.unbox", 1, !dbg !507 %517 = addrspacecast ptr addrspace(10) %"segs::Array" to ptr addrspace(11), !dbg !509 %"segs::Array.size_ptr69" = getelementptr inbounds i8, ptr addrspace(11) %517, i32 16, !dbg !509 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %"segs::Array.size70", ptr addrspace(11) align 8 %"segs::Array.size_ptr69", i64 8, i1 false), !dbg !509, !tbaa !140, !alias.scope !186, !noalias !187 %bitcast71 = load i64, ptr %"segs::Array.size70", align 8, !dbg !507, !tbaa !188, !alias.scope !190, !noalias !191 %518 = icmp ult i64 %516, %bitcast71, !dbg !507 %519 = xor i1 %518, true, !dbg !508 br i1 %519, label %L501, label %L500, !dbg !508 L500: ; preds = %L493 br label %L504, !dbg !508 L501: ; preds = %L493 %520 = getelementptr inbounds i8, ptr %"new::Tuple243", i32 0, !dbg !508 call void @llvm.memcpy.p0.p0.i64(ptr align 8 %520, ptr align 8 %"segs::Array.size68", i64 8, i1 false), !dbg !508, !tbaa !188, !alias.scope !190, !noalias !191 %521 = addrspacecast ptr %"new::Tuple243" to ptr addrspace(11), !dbg !508 call void @julia_throw_boundserror_56957(ptr addrspace(10) %"segs::Array", ptr addrspace(11) nocapture readonly %521) #133, !dbg !508 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4), !dbg !508 unreachable, !dbg !508 L504: ; preds = %L500 br label %L505, !dbg !508 L505: ; preds = %L504, %L489 %522 = addrspacecast ptr addrspace(10) %"segs::Array" to ptr addrspace(11), !dbg !511 %523 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %522, i32 0, i32 0, !dbg !511 %memoryref_data73 = load ptr, ptr addrspace(11) %523, align 8, !dbg !511, !tbaa !195, !alias.scope !198, !noalias !199 %524 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %522, i32 0, i32 1, !dbg !511 %memoryref_mem94 = load ptr addrspace(10), ptr addrspace(11) %524, align 8, !dbg !511, !tbaa !195, !alias.scope !198, !noalias !199, !dereferenceable_or_null !139, !align !137 %525 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data73, 0, !dbg !511 %"segs::Array.ref72" = insertvalue { ptr, ptr addrspace(10) } %525, ptr addrspace(10) %memoryref_mem94, 1, !dbg !511 %"segs::Array.size68.unbox75" = load i64, ptr %"segs::Array.size68", align 8, !dbg !511, !tbaa !188, !alias.scope !190, !noalias !191 %memoryref_offset76 = sub i64 %"segs::Array.size68.unbox75", 1, !dbg !511 %526 = addrspacecast ptr addrspace(10) %memoryref_mem94 to ptr addrspace(11), !dbg !511 %527 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %526, i32 0, i32 0, !dbg !511 %memory_len77 = load i64, ptr addrspace(11) %527, align 8, !dbg !511, !tbaa !200, !range !288, !alias.scope !198, !noalias !199 %528 = add nuw i64 %memory_len77, %memory_len77, !dbg !511 %529 = add i64 %memoryref_offset76, %memory_len77, !dbg !511 %memoryref_ovflw78 = icmp uge i64 %529, %528, !dbg !511 %memoryref_byteoffset79 = mul i64 %memoryref_offset76, 32, !dbg !511 %memoryref_data_byteoffset80 = getelementptr i8, ptr %memoryref_data73, i64 %memoryref_byteoffset79, !dbg !511 %530 = addrspacecast ptr addrspace(10) %memoryref_mem94 to ptr addrspace(11), !dbg !511 %531 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %530, i32 0, i32 0, !dbg !511 %memory_len81 = load i64, ptr addrspace(11) %531, align 8, !dbg !511, !tbaa !200, !range !288, !alias.scope !198, !noalias !199 %532 = addrspacecast ptr addrspace(10) %memoryref_mem94 to ptr addrspace(11), !dbg !511 %memory_data_ptr82 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %532, i32 0, i32 1, !dbg !511 %memory_data83 = load ptr, ptr addrspace(11) %memory_data_ptr82, align 8, !dbg !511, !tbaa !203, !alias.scope !198, !noalias !199, !nonnull !0 %533 = ptrtoint ptr %memory_data83 to i64, !dbg !511 %534 = ptrtoint ptr %memoryref_data_byteoffset80 to i64, !dbg !511 %535 = sub i64 %534, %533, !dbg !511 %memoryref_bytelen84 = mul nuw nsw i64 %memory_len81, 32, !dbg !511 %memoryref_isinbounds85 = icmp ult i64 %535, %memoryref_bytelen84, !dbg !511 %536 = xor i1 %memoryref_ovflw78, true, !dbg !511 %"memoryref_isinbounds¬ovflw86" = and i1 %536, %memoryref_isinbounds85, !dbg !511 br i1 %"memoryref_isinbounds¬ovflw86", label %idxend92, label %oob87, !dbg !511 L509: ; preds = %load97 br i1 false, label %L523, label %L511, !dbg !512 L511: ; preds = %L509 %"segs::Array.size68.unbox99" = load i64, ptr %"segs::Array.size68", align 8, !dbg !513, !tbaa !188, !alias.scope !190, !noalias !191 %537 = sub i64 %"segs::Array.size68.unbox99", 1, !dbg !513 %538 = addrspacecast ptr addrspace(10) %"segs::Array" to ptr addrspace(11), !dbg !515 %"segs::Array.size_ptr100" = getelementptr inbounds i8, ptr addrspace(11) %538, i32 16, !dbg !515 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %"segs::Array.size101", ptr addrspace(11) align 8 %"segs::Array.size_ptr100", i64 8, i1 false), !dbg !515, !tbaa !140, !alias.scope !186, !noalias !187 %bitcast102 = load i64, ptr %"segs::Array.size101", align 8, !dbg !513, !tbaa !188, !alias.scope !190, !noalias !191 %539 = icmp ult i64 %537, %bitcast102, !dbg !513 %540 = xor i1 %539, true, !dbg !514 br i1 %540, label %L519, label %L518, !dbg !514 L518: ; preds = %L511 br label %L522, !dbg !514 L519: ; preds = %L511 %541 = getelementptr inbounds i8, ptr %"new::Tuple240", i32 0, !dbg !514 call void @llvm.memcpy.p0.p0.i64(ptr align 8 %541, ptr align 8 %"segs::Array.size68", i64 8, i1 false), !dbg !514, !tbaa !188, !alias.scope !190, !noalias !191 %542 = addrspacecast ptr %"new::Tuple240" to ptr addrspace(11), !dbg !514 call void @julia_throw_boundserror_56957(ptr addrspace(10) %"segs::Array", ptr addrspace(11) nocapture readonly %542) #133, !dbg !514 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4), !dbg !514 unreachable, !dbg !514 L522: ; preds = %L518 br label %L523, !dbg !514 L523: ; preds = %L522, %L509 %543 = icmp ne ptr %"segs::Array.size68", null br i1 %543, label %guard_pass, label %guard_exit L524: ; preds = %L611, %guard_exit775 %value_phi103 = phi i64 [ %guard_res777, %guard_exit775 ], [ %698, %L611 ] %544 = icmp ne i64 %value_phi103, -9223372036854775808, !dbg !517 %545 = or i1 true, %544, !dbg !517 %divisor_valid = and i1 true, %545, !dbg !517 %jl_diverror_exception = load ptr, ptr @jl_diverror_exception, align 8, !dbg !517, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0 br i1 %divisor_valid, label %pass, label %fail, !dbg !517 L528: ; preds = %pass br i1 false, label %L542, label %L530, !dbg !520 L530: ; preds = %L528 %546 = sub i64 %698, 1, !dbg !522 %547 = addrspacecast ptr addrspace(10) %"segs::Array" to ptr addrspace(11), !dbg !524 %"segs::Array.size_ptr104" = getelementptr inbounds i8, ptr addrspace(11) %547, i32 16, !dbg !524 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %"segs::Array.size105", ptr addrspace(11) align 8 %"segs::Array.size_ptr104", i64 8, i1 false), !dbg !524, !tbaa !140, !alias.scope !186, !noalias !187 %bitcast106 = load i64, ptr %"segs::Array.size105", align 8, !dbg !522, !tbaa !188, !alias.scope !190, !noalias !191 %548 = icmp ult i64 %546, %bitcast106, !dbg !522 %549 = xor i1 %548, true, !dbg !523 br i1 %549, label %L538, label %L537, !dbg !523 L537: ; preds = %L530 br label %L541, !dbg !523 L538: ; preds = %L530 %550 = getelementptr inbounds i8, ptr %"new::Tuple237", i32 0, !dbg !523 store i64 %698, ptr %550, align 8, !dbg !523, !tbaa !188, !alias.scope !190, !noalias !191 %551 = addrspacecast ptr %"new::Tuple237" to ptr addrspace(11), !dbg !523 call void @julia_throw_boundserror_56957(ptr addrspace(10) %"segs::Array", ptr addrspace(11) nocapture readonly %551) #133, !dbg !523 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4), !dbg !523 unreachable, !dbg !523 L541: ; preds = %L537 br label %L542, !dbg !523 L542: ; preds = %L541, %L528 %552 = addrspacecast ptr addrspace(10) %"segs::Array" to ptr addrspace(11), !dbg !526 %553 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %552, i32 0, i32 0, !dbg !526 %memoryref_data108 = load ptr, ptr addrspace(11) %553, align 8, !dbg !526, !tbaa !195, !alias.scope !198, !noalias !199 %554 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %552, i32 0, i32 1, !dbg !526 %memoryref_mem128 = load ptr addrspace(10), ptr addrspace(11) %554, align 8, !dbg !526, !tbaa !195, !alias.scope !198, !noalias !199, !dereferenceable_or_null !139, !align !137 %555 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data108, 0, !dbg !526 %"segs::Array.ref107" = insertvalue { ptr, ptr addrspace(10) } %555, ptr addrspace(10) %memoryref_mem128, 1, !dbg !526 %memoryref_offset110 = sub i64 %698, 1, !dbg !526 %556 = addrspacecast ptr addrspace(10) %memoryref_mem128 to ptr addrspace(11), !dbg !526 %557 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %556, i32 0, i32 0, !dbg !526 %memory_len111 = load i64, ptr addrspace(11) %557, align 8, !dbg !526, !tbaa !200, !range !288, !alias.scope !198, !noalias !199 %558 = add nuw i64 %memory_len111, %memory_len111, !dbg !526 %559 = add i64 %memoryref_offset110, %memory_len111, !dbg !526 %memoryref_ovflw112 = icmp uge i64 %559, %558, !dbg !526 %memoryref_byteoffset113 = mul i64 %memoryref_offset110, 32, !dbg !526 %memoryref_data_byteoffset114 = getelementptr i8, ptr %memoryref_data108, i64 %memoryref_byteoffset113, !dbg !526 %560 = addrspacecast ptr addrspace(10) %memoryref_mem128 to ptr addrspace(11), !dbg !526 %561 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %560, i32 0, i32 0, !dbg !526 %memory_len115 = load i64, ptr addrspace(11) %561, align 8, !dbg !526, !tbaa !200, !range !288, !alias.scope !198, !noalias !199 %562 = addrspacecast ptr addrspace(10) %memoryref_mem128 to ptr addrspace(11), !dbg !526 %memory_data_ptr116 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %562, i32 0, i32 1, !dbg !526 %memory_data117 = load ptr, ptr addrspace(11) %memory_data_ptr116, align 8, !dbg !526, !tbaa !203, !alias.scope !198, !noalias !199, !nonnull !0 %563 = ptrtoint ptr %memory_data117 to i64, !dbg !526 %564 = ptrtoint ptr %memoryref_data_byteoffset114 to i64, !dbg !526 %565 = sub i64 %564, %563, !dbg !526 %memoryref_bytelen118 = mul nuw nsw i64 %memory_len115, 32, !dbg !526 %memoryref_isinbounds119 = icmp ult i64 %565, %memoryref_bytelen118, !dbg !526 %566 = xor i1 %memoryref_ovflw112, true, !dbg !526 %"memoryref_isinbounds¬ovflw120" = and i1 %566, %memoryref_isinbounds119, !dbg !526 br i1 %"memoryref_isinbounds¬ovflw120", label %idxend126, label %oob121, !dbg !526 L546: ; preds = %load131 %.E_ptr = getelementptr inbounds i8, ptr %1, i32 24, !dbg !527 %.E_ptr133 = getelementptr inbounds i8, ptr %0, i32 24, !dbg !527 %.E_ptr.unbox = load double, ptr %.E_ptr, align 8, !dbg !531, !tbaa !188, !alias.scope !190, !noalias !191 %.E_ptr.unbox134 = load double, ptr %.E_ptr, align 8, !dbg !531, !tbaa !188, !alias.scope !190, !noalias !191 %567 = fcmp oeq double %.E_ptr.unbox, %.E_ptr.unbox134, !dbg !531 %568 = xor i1 %567, true, !dbg !535 %569 = xor i1 %568, true, !dbg !534 br i1 %569, label %L552, label %L551, !dbg !534 L551: ; preds = %L546 br label %L566, !dbg !534 L552: ; preds = %L546 %.E_ptr133.unbox = load double, ptr %.E_ptr133, align 8, !dbg !531, !tbaa !188, !alias.scope !190, !noalias !191 %.E_ptr133.unbox232 = load double, ptr %.E_ptr133, align 8, !dbg !531, !tbaa !188, !alias.scope !190, !noalias !191 %570 = fcmp oeq double %.E_ptr133.unbox, %.E_ptr133.unbox232, !dbg !531 %571 = xor i1 %570, true, !dbg !535 %572 = xor i1 %571, true, !dbg !534 br i1 %572, label %L556, label %L555, !dbg !534 L555: ; preds = %L552 br label %L566, !dbg !534 L556: ; preds = %L552 %bitcast233 = load double, ptr %.E_ptr, align 8, !dbg !536, !tbaa !188, !alias.scope !190, !noalias !191 %bitcast_coercion = bitcast double %bitcast233 to i64, !dbg !536 %573 = icmp slt i64 %bitcast_coercion, 0, !dbg !539 %574 = xor i64 %bitcast_coercion, 9223372036854775807, !dbg !541 %ifelse_cond = xor i1 %573, true, !dbg !542 %575 = select i1 %ifelse_cond, i64 %bitcast_coercion, i64 %574, !dbg !542 %bitcast234 = load double, ptr %.E_ptr133, align 8, !dbg !536, !tbaa !188, !alias.scope !190, !noalias !191 %bitcast_coercion235 = bitcast double %bitcast234 to i64, !dbg !536 %576 = icmp slt i64 %bitcast_coercion235, 0, !dbg !539 %577 = xor i64 %bitcast_coercion235, 9223372036854775807, !dbg !541 %ifelse_cond236 = xor i1 %576, true, !dbg !542 %578 = select i1 %ifelse_cond236, i64 %bitcast_coercion235, i64 %577, !dbg !542 %579 = icmp slt i64 %575, %578, !dbg !543 %580 = zext i1 %579 to i8 br label %L570, !dbg !538 L566: ; preds = %L555, %L551 %.E_ptr.unbox135 = load double, ptr %.E_ptr, align 8, !dbg !531, !tbaa !188, !alias.scope !190, !noalias !191 %.E_ptr.unbox136 = load double, ptr %.E_ptr, align 8, !dbg !531, !tbaa !188, !alias.scope !190, !noalias !191 %581 = fcmp oeq double %.E_ptr.unbox135, %.E_ptr.unbox136, !dbg !531 %582 = xor i1 %581, true, !dbg !535 %583 = xor i1 %582, true, !dbg !544 %584 = zext i1 %583 to i8 br label %L570, !dbg !534 L570: ; preds = %L556, %L566 %value_phi137 = phi i8 [ %580, %L556 ], [ %584, %L566 ] br label %L572, !dbg !528 L572: ; preds = %L570 br label %L573, !dbg !528 L573: ; preds = %L572 br label %L574, !dbg !528 L574: ; preds = %L573 %585 = trunc i8 %value_phi137 to i1, !dbg !521 %586 = xor i1 %585, true, !dbg !521 br i1 %586, label %L612, label %L575, !dbg !521 L575: ; preds = %L574 br i1 false, label %L589, label %L577, !dbg !545 L577: ; preds = %L575 %587 = sub i64 %698, 1, !dbg !547 %588 = addrspacecast ptr addrspace(10) %"segs::Array" to ptr addrspace(11), !dbg !549 %"segs::Array.size_ptr138" = getelementptr inbounds i8, ptr addrspace(11) %588, i32 16, !dbg !549 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %"segs::Array.size139", ptr addrspace(11) align 8 %"segs::Array.size_ptr138", i64 8, i1 false), !dbg !549, !tbaa !140, !alias.scope !186, !noalias !187 %bitcast140 = load i64, ptr %"segs::Array.size139", align 8, !dbg !547, !tbaa !188, !alias.scope !190, !noalias !191 %589 = icmp ult i64 %587, %bitcast140, !dbg !547 %590 = xor i1 %589, true, !dbg !548 br i1 %590, label %L585, label %L584, !dbg !548 L584: ; preds = %L577 br label %L588, !dbg !548 L585: ; preds = %L577 %591 = getelementptr inbounds i8, ptr %"new::Tuple197", i32 0, !dbg !548 store i64 %698, ptr %591, align 8, !dbg !548, !tbaa !188, !alias.scope !190, !noalias !191 %592 = addrspacecast ptr %"new::Tuple197" to ptr addrspace(11), !dbg !548 call void @julia_throw_boundserror_56957(ptr addrspace(10) %"segs::Array", ptr addrspace(11) nocapture readonly %592) #133, !dbg !548 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4), !dbg !548 unreachable, !dbg !548 L588: ; preds = %L584 br label %L589, !dbg !548 L589: ; preds = %L588, %L575 %593 = addrspacecast ptr addrspace(10) %"segs::Array" to ptr addrspace(11), !dbg !551 %594 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %593, i32 0, i32 0, !dbg !551 %memoryref_data142 = load ptr, ptr addrspace(11) %594, align 8, !dbg !551, !tbaa !195, !alias.scope !198, !noalias !199 %595 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %593, i32 0, i32 1, !dbg !551 %memoryref_mem162 = load ptr addrspace(10), ptr addrspace(11) %595, align 8, !dbg !551, !tbaa !195, !alias.scope !198, !noalias !199, !dereferenceable_or_null !139, !align !137 %596 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data142, 0, !dbg !551 %"segs::Array.ref141" = insertvalue { ptr, ptr addrspace(10) } %596, ptr addrspace(10) %memoryref_mem162, 1, !dbg !551 %memoryref_offset144 = sub i64 %698, 1, !dbg !551 %597 = addrspacecast ptr addrspace(10) %memoryref_mem162 to ptr addrspace(11), !dbg !551 %598 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %597, i32 0, i32 0, !dbg !551 %memory_len145 = load i64, ptr addrspace(11) %598, align 8, !dbg !551, !tbaa !200, !range !288, !alias.scope !198, !noalias !199 %599 = add nuw i64 %memory_len145, %memory_len145, !dbg !551 %600 = add i64 %memoryref_offset144, %memory_len145, !dbg !551 %memoryref_ovflw146 = icmp uge i64 %600, %599, !dbg !551 %memoryref_byteoffset147 = mul i64 %memoryref_offset144, 32, !dbg !551 %memoryref_data_byteoffset148 = getelementptr i8, ptr %memoryref_data142, i64 %memoryref_byteoffset147, !dbg !551 %601 = addrspacecast ptr addrspace(10) %memoryref_mem162 to ptr addrspace(11), !dbg !551 %602 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %601, i32 0, i32 0, !dbg !551 %memory_len149 = load i64, ptr addrspace(11) %602, align 8, !dbg !551, !tbaa !200, !range !288, !alias.scope !198, !noalias !199 %603 = addrspacecast ptr addrspace(10) %memoryref_mem162 to ptr addrspace(11), !dbg !551 %memory_data_ptr150 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %603, i32 0, i32 1, !dbg !551 %memory_data151 = load ptr, ptr addrspace(11) %memory_data_ptr150, align 8, !dbg !551, !tbaa !203, !alias.scope !198, !noalias !199, !nonnull !0 %604 = ptrtoint ptr %memory_data151 to i64, !dbg !551 %605 = ptrtoint ptr %memoryref_data_byteoffset148 to i64, !dbg !551 %606 = sub i64 %605, %604, !dbg !551 %memoryref_bytelen152 = mul nuw nsw i64 %memory_len149, 32, !dbg !551 %memoryref_isinbounds153 = icmp ult i64 %606, %memoryref_bytelen152, !dbg !551 %607 = xor i1 %memoryref_ovflw146, true, !dbg !551 %"memoryref_isinbounds¬ovflw154" = and i1 %607, %memoryref_isinbounds153, !dbg !551 br i1 %"memoryref_isinbounds¬ovflw154", label %idxend160, label %oob155, !dbg !551 L593: ; preds = %load165 br i1 false, label %L606, label %L595, !dbg !552 L595: ; preds = %L593 %608 = sub i64 %value_phi103, 1, !dbg !554 %609 = addrspacecast ptr addrspace(10) %"segs::Array" to ptr addrspace(11), !dbg !555 %"segs::Array.size_ptr167" = getelementptr inbounds i8, ptr addrspace(11) %609, i32 16, !dbg !555 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %"segs::Array.size168", ptr addrspace(11) align 8 %"segs::Array.size_ptr167", i64 8, i1 false), !dbg !555, !tbaa !140, !alias.scope !186, !noalias !187 %bitcast169 = load i64, ptr %"segs::Array.size168", align 8, !dbg !554, !tbaa !188, !alias.scope !190, !noalias !191 %610 = icmp ult i64 %608, %bitcast169, !dbg !554 %611 = xor i1 %610, true, !dbg !552 br i1 %611, label %L603, label %L602, !dbg !552 L602: ; preds = %L595 br label %L606, !dbg !552 L603: ; preds = %L595 %612 = getelementptr inbounds i8, ptr %"new::Tuple196", i32 0, !dbg !552 store i64 %value_phi103, ptr %612, align 8, !dbg !552, !tbaa !188, !alias.scope !190, !noalias !191 %613 = addrspacecast ptr %"new::Tuple196" to ptr addrspace(11), !dbg !552 call void @julia_throw_boundserror_56957(ptr addrspace(10) %"segs::Array", ptr addrspace(11) nocapture readonly %613) #133, !dbg !552 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4), !dbg !552 unreachable, !dbg !552 L606: ; preds = %L602, %L593 %614 = addrspacecast ptr addrspace(10) %"segs::Array" to ptr addrspace(11), !dbg !557 %615 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %614, i32 0, i32 0, !dbg !557 %memoryref_data171 = load ptr, ptr addrspace(11) %615, align 8, !dbg !557, !tbaa !195, !alias.scope !198, !noalias !199 %616 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %614, i32 0, i32 1, !dbg !557 %memoryref_mem191 = load ptr addrspace(10), ptr addrspace(11) %616, align 8, !dbg !557, !tbaa !195, !alias.scope !198, !noalias !199, !dereferenceable_or_null !139, !align !137 %617 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data171, 0, !dbg !557 %"segs::Array.ref170" = insertvalue { ptr, ptr addrspace(10) } %617, ptr addrspace(10) %memoryref_mem191, 1, !dbg !557 %memoryref_offset173 = sub i64 %value_phi103, 1, !dbg !558 %618 = addrspacecast ptr addrspace(10) %memoryref_mem191 to ptr addrspace(11), !dbg !558 %619 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %618, i32 0, i32 0, !dbg !558 %memory_len174 = load i64, ptr addrspace(11) %619, align 8, !dbg !558, !tbaa !200, !range !288, !alias.scope !198, !noalias !199 %620 = add nuw i64 %memory_len174, %memory_len174, !dbg !558 %621 = add i64 %memoryref_offset173, %memory_len174, !dbg !558 %memoryref_ovflw175 = icmp uge i64 %621, %620, !dbg !558 %memoryref_byteoffset176 = mul i64 %memoryref_offset173, 32, !dbg !558 %memoryref_data_byteoffset177 = getelementptr i8, ptr %memoryref_data171, i64 %memoryref_byteoffset176, !dbg !558 %622 = addrspacecast ptr addrspace(10) %memoryref_mem191 to ptr addrspace(11), !dbg !558 %623 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %622, i32 0, i32 0, !dbg !558 %memory_len178 = load i64, ptr addrspace(11) %623, align 8, !dbg !558, !tbaa !200, !range !288, !alias.scope !198, !noalias !199 %624 = addrspacecast ptr addrspace(10) %memoryref_mem191 to ptr addrspace(11), !dbg !558 %memory_data_ptr179 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %624, i32 0, i32 1, !dbg !558 %memory_data180 = load ptr, ptr addrspace(11) %memory_data_ptr179, align 8, !dbg !558, !tbaa !203, !alias.scope !198, !noalias !199, !nonnull !0 %625 = ptrtoint ptr %memory_data180 to i64, !dbg !558 %626 = ptrtoint ptr %memoryref_data_byteoffset177 to i64, !dbg !558 %627 = sub i64 %626, %625, !dbg !558 %memoryref_bytelen181 = mul nuw nsw i64 %memory_len178, 32, !dbg !558 %memoryref_isinbounds182 = icmp ult i64 %627, %memoryref_bytelen181, !dbg !558 %628 = xor i1 %memoryref_ovflw175, true, !dbg !558 %"memoryref_isinbounds¬ovflw183" = and i1 %628, %memoryref_isinbounds182, !dbg !558 br i1 %"memoryref_isinbounds¬ovflw183", label %idxend189, label %oob184, !dbg !558 L610: ; preds = %load194 br label %L611, !dbg !553 L611: ; preds = %L610 br label %L524, !dbg !559 L612: ; preds = %L574 br label %L613, !dbg !548 L613: ; preds = %L612, %pass br i1 false, label %L626, label %L615, !dbg !560 L615: ; preds = %L613 %629 = sub i64 %value_phi103, 1, !dbg !563 %630 = addrspacecast ptr addrspace(10) %"segs::Array" to ptr addrspace(11), !dbg !564 %"segs::Array.size_ptr200" = getelementptr inbounds i8, ptr addrspace(11) %630, i32 16, !dbg !564 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %"segs::Array.size201", ptr addrspace(11) align 8 %"segs::Array.size_ptr200", i64 8, i1 false), !dbg !564, !tbaa !140, !alias.scope !186, !noalias !187 %bitcast202 = load i64, ptr %"segs::Array.size201", align 8, !dbg !563, !tbaa !188, !alias.scope !190, !noalias !191 %631 = icmp ult i64 %629, %bitcast202, !dbg !563 %632 = xor i1 %631, true, !dbg !560 br i1 %632, label %L623, label %L622, !dbg !560 L622: ; preds = %L615 br label %L626, !dbg !560 L623: ; preds = %L615 %633 = getelementptr inbounds i8, ptr %"new::Tuple229", i32 0, !dbg !560 store i64 %value_phi103, ptr %633, align 8, !dbg !560, !tbaa !188, !alias.scope !190, !noalias !191 %634 = addrspacecast ptr %"new::Tuple229" to ptr addrspace(11), !dbg !560 call void @julia_throw_boundserror_56957(ptr addrspace(10) %"segs::Array", ptr addrspace(11) nocapture readonly %634) #133, !dbg !560 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____4), !dbg !560 unreachable, !dbg !560 L626: ; preds = %L622, %L613 %635 = addrspacecast ptr addrspace(10) %"segs::Array" to ptr addrspace(11), !dbg !566 %636 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %635, i32 0, i32 0, !dbg !566 %memoryref_data204 = load ptr, ptr addrspace(11) %636, align 8, !dbg !566, !tbaa !195, !alias.scope !198, !noalias !199 %637 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %635, i32 0, i32 1, !dbg !566 %memoryref_mem224 = load ptr addrspace(10), ptr addrspace(11) %637, align 8, !dbg !566, !tbaa !195, !alias.scope !198, !noalias !199, !dereferenceable_or_null !139, !align !137 %638 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data204, 0, !dbg !566 %"segs::Array.ref203" = insertvalue { ptr, ptr addrspace(10) } %638, ptr addrspace(10) %memoryref_mem224, 1, !dbg !566 %memoryref_offset206 = sub i64 %value_phi103, 1, !dbg !567 %639 = addrspacecast ptr addrspace(10) %memoryref_mem224 to ptr addrspace(11), !dbg !567 %640 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %639, i32 0, i32 0, !dbg !567 %memory_len207 = load i64, ptr addrspace(11) %640, align 8, !dbg !567, !tbaa !200, !range !288, !alias.scope !198, !noalias !199 %641 = add nuw i64 %memory_len207, %memory_len207, !dbg !567 %642 = add i64 %memoryref_offset206, %memory_len207, !dbg !567 %memoryref_ovflw208 = icmp uge i64 %642, %641, !dbg !567 %memoryref_byteoffset209 = mul i64 %memoryref_offset206, 32, !dbg !567 %memoryref_data_byteoffset210 = getelementptr i8, ptr %memoryref_data204, i64 %memoryref_byteoffset209, !dbg !567 %643 = addrspacecast ptr addrspace(10) %memoryref_mem224 to ptr addrspace(11), !dbg !567 %644 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %643, i32 0, i32 0, !dbg !567 %memory_len211 = load i64, ptr addrspace(11) %644, align 8, !dbg !567, !tbaa !200, !range !288, !alias.scope !198, !noalias !199 %645 = addrspacecast ptr addrspace(10) %memoryref_mem224 to ptr addrspace(11), !dbg !567 %memory_data_ptr212 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %645, i32 0, i32 1, !dbg !567 %memory_data213 = load ptr, ptr addrspace(11) %memory_data_ptr212, align 8, !dbg !567, !tbaa !203, !alias.scope !198, !noalias !199, !nonnull !0 %646 = ptrtoint ptr %memory_data213 to i64, !dbg !567 %647 = ptrtoint ptr %memoryref_data_byteoffset210 to i64, !dbg !567 %648 = sub i64 %647, %646, !dbg !567 %memoryref_bytelen214 = mul nuw nsw i64 %memory_len211, 32, !dbg !567 %memoryref_isinbounds215 = icmp ult i64 %648, %memoryref_bytelen214, !dbg !567 %649 = xor i1 %memoryref_ovflw208, true, !dbg !567 %"memoryref_isinbounds¬ovflw216" = and i1 %649, %memoryref_isinbounds215, !dbg !567 br i1 %"memoryref_isinbounds¬ovflw216", label %idxend222, label %oob217, !dbg !567 L630: ; preds = %load227 br label %L631, !dbg !561 L631: ; preds = %L630 br label %L632, !dbg !561 L632: ; preds = %L631 br label %L633, !dbg !561 L633: ; preds = %L632 br label %L634, !dbg !568 L634: ; preds = %L633 %650 = call ptr addrspace(10) @julia.typeof(ptr addrspace(10) %"segs::Array"), !dbg !569 %651 = addrspacecast ptr addrspace(10) %650 to ptr addrspace(11), !dbg !569 %652 = call nonnull ptr @julia.pointer_from_objref(ptr addrspace(11) %651) #134, !dbg !569 %typeof = ptrtoint ptr %652 to i64, !dbg !569 %"+Core.Tuple#56964" = load ptr, ptr @_Core_Tuple_56964, align 8, !dbg !569, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0, !dereferenceable !138, !align !139 %Tuple = ptrtoint ptr %"+Core.Tuple#56964" to i64, !dbg !569 %653 = icmp eq i64 %Tuple, %typeof, !dbg !569 %typeof.tindex = select i1 %653, i8 1, i8 0, !dbg !569 %654 = or i8 %typeof.tindex, -128, !dbg !569 %655 = insertvalue { ptr addrspace(10), i8 } undef, ptr addrspace(10) %"segs::Array", 0, !dbg !569 %656 = insertvalue { ptr addrspace(10), i8 } %655, i8 %654, 1, !dbg !569 ret { ptr addrspace(10), i8 } %656, !dbg !569 oob: ; preds = %L23 %"+Core.GenericMemoryRef#56966" = load ptr, ptr @_Core_GenericMemoryRef_56966, align 8, !dbg !194, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0, !dereferenceable !138, !align !139 %GenericMemoryRef = ptrtoint ptr %"+Core.GenericMemoryRef#56966" to i64, !dbg !194 %657 = inttoptr i64 %GenericMemoryRef to ptr, !dbg !194 %current_task3 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !194 %658 = addrspacecast ptr %657 to ptr addrspace(10), !dbg !194 %"box::GenericMemoryRef" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task3, i64 16, ptr addrspace(10) %658) #135, !dbg !194 %659 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef" to ptr addrspace(11), !dbg !194 store { ptr, ptr addrspace(10) } %"x::Array.ref", ptr addrspace(11) %659, align 8, !dbg !194, !tbaa !146, !alias.scope !150, !noalias !151 %660 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef" to ptr addrspace(12), !dbg !194 call void @ijl_bounds_error_int(ptr addrspace(12) %660, i64 1), !dbg !194 unreachable, !dbg !194 idxend: ; preds = %L23 %661 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data_byteoffset, 0, !dbg !194 %memory_ref = insertvalue { ptr, ptr addrspace(10) } %661, ptr addrspace(10) %memoryref_mem, 1, !dbg !194 %662 = addrspacecast ptr addrspace(10) %memoryref_mem to ptr addrspace(11), !dbg !194 %663 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %662, i32 0, i32 0, !dbg !194 %memory_len4 = load i64, ptr addrspace(11) %663, align 8, !dbg !194, !tbaa !200, !range !202, !alias.scope !198, !noalias !199 %664 = icmp eq i64 %memory_len4, 0, !dbg !194 br i1 %664, label %oob5, label %load, !dbg !194 oob5: ; preds = %idxend %665 = addrspacecast ptr addrspace(10) %memoryref_mem to ptr addrspace(12), !dbg !194 call void @ijl_bounds_error_int(ptr addrspace(12) %665, i64 1), !dbg !194 unreachable, !dbg !194 load: ; preds = %idxend %memoryref_data6 = call ptr addrspace(13) @julia.gc_loaded(ptr addrspace(10) %memoryref_mem, ptr %memoryref_data), !dbg !194 %666 = load double, ptr addrspace(13) %memoryref_data6, align 8, !dbg !194, !tbaa !570, !alias.scope !150, !noalias !151 br label %L27, !dbg !194 oob24: ; preds = %L45 %"+Core.GenericMemoryRef#5696625" = load ptr, ptr @_Core_GenericMemoryRef_56966, align 8, !dbg !218, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0, !dereferenceable !138, !align !139 %GenericMemoryRef26 = ptrtoint ptr %"+Core.GenericMemoryRef#5696625" to i64, !dbg !218 %667 = inttoptr i64 %GenericMemoryRef26 to ptr, !dbg !218 %current_task27 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !218 %668 = addrspacecast ptr %667 to ptr addrspace(10), !dbg !218 %"box::GenericMemoryRef28" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task27, i64 16, ptr addrspace(10) %668) #135, !dbg !218 %669 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef28" to ptr addrspace(11), !dbg !218 store { ptr, ptr addrspace(10) } %"x::Array.ref12", ptr addrspace(11) %669, align 8, !dbg !218, !tbaa !146, !alias.scope !150, !noalias !151 %670 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef28" to ptr addrspace(12), !dbg !218 call void @ijl_bounds_error_int(ptr addrspace(12) %670, i64 1), !dbg !218 unreachable, !dbg !218 idxend29: ; preds = %L45 %671 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data_byteoffset17, 0, !dbg !218 %memory_ref30 = insertvalue { ptr, ptr addrspace(10) } %671, ptr addrspace(10) %memoryref_mem31, 1, !dbg !218 %672 = addrspacecast ptr addrspace(10) %memoryref_mem31 to ptr addrspace(11), !dbg !218 %673 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %672, i32 0, i32 0, !dbg !218 %memory_len32 = load i64, ptr addrspace(11) %673, align 8, !dbg !218, !tbaa !200, !range !202, !alias.scope !198, !noalias !199 %674 = icmp eq i64 %memory_len32, 0, !dbg !218 br i1 %674, label %oob33, label %load34, !dbg !218 oob33: ; preds = %idxend29 %675 = addrspacecast ptr addrspace(10) %memoryref_mem31 to ptr addrspace(12), !dbg !218 call void @ijl_bounds_error_int(ptr addrspace(12) %675, i64 1), !dbg !218 unreachable, !dbg !218 load34: ; preds = %idxend29 %memoryref_data35 = call ptr addrspace(13) @julia.gc_loaded(ptr addrspace(10) %memoryref_mem31, ptr %memoryref_data13), !dbg !218 %676 = load double, ptr addrspace(13) %memoryref_data35, align 8, !dbg !218, !tbaa !570, !alias.scope !150, !noalias !151 br label %L49, !dbg !218 oob56: ; preds = %L482 %"+Core.GenericMemoryRef#56953" = load ptr, ptr @_Core_GenericMemoryRef_56953, align 8, !dbg !501, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0, !dereferenceable !138, !align !139 %GenericMemoryRef57 = ptrtoint ptr %"+Core.GenericMemoryRef#56953" to i64, !dbg !501 %677 = inttoptr i64 %GenericMemoryRef57 to ptr, !dbg !501 %current_task58 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !501 %678 = addrspacecast ptr %677 to ptr addrspace(10), !dbg !501 %"box::GenericMemoryRef59" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task58, i64 16, ptr addrspace(10) %678) #135, !dbg !501 %679 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef59" to ptr addrspace(11), !dbg !501 store { ptr, ptr addrspace(10) } %"segs::Array.ref43", ptr addrspace(11) %679, align 8, !dbg !501, !tbaa !146, !alias.scope !150, !noalias !151 %680 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef59" to ptr addrspace(12), !dbg !501 call void @ijl_bounds_error_int(ptr addrspace(12) %680, i64 %"segs::Array.size42.unbox"), !dbg !501 unreachable, !dbg !501 idxend60: ; preds = %L482 %681 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data_byteoffset49, 0, !dbg !501 %memory_ref61 = insertvalue { ptr, ptr addrspace(10) } %681, ptr addrspace(10) %memoryref_mem62, 1, !dbg !501 %682 = addrspacecast ptr addrspace(10) %memoryref_mem62 to ptr addrspace(11), !dbg !501 %683 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %682, i32 0, i32 0, !dbg !501 %memory_len63 = load i64, ptr addrspace(11) %683, align 8, !dbg !501, !tbaa !200, !range !288, !alias.scope !198, !noalias !199 %684 = icmp eq i64 %memory_len63, 0, !dbg !501 br i1 %684, label %oob64, label %load65, !dbg !501 oob64: ; preds = %idxend60 %685 = addrspacecast ptr addrspace(10) %memoryref_mem62 to ptr addrspace(12), !dbg !501 call void @ijl_bounds_error_int(ptr addrspace(12) %685, i64 1), !dbg !501 unreachable, !dbg !501 load65: ; preds = %idxend60 %686 = call ptr addrspace(13) @julia.gc_loaded(ptr addrspace(10) %memoryref_mem62, ptr %memoryref_data44), !dbg !501 %memoryref_data66 = getelementptr inbounds i8, ptr addrspace(13) %686, i64 %memoryref_byteoffset, !dbg !501 call void @llvm.memcpy.p13.p0.i64(ptr addrspace(13) align 8 %memoryref_data66, ptr align 8 %sret_box, i64 32, i1 false), !dbg !501, !tbaa !140, !alias.scope !572, !noalias !573 br label %L488, !dbg !574 oob87: ; preds = %L505 %"+Core.GenericMemoryRef#5695388" = load ptr, ptr @_Core_GenericMemoryRef_56953, align 8, !dbg !511, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0, !dereferenceable !138, !align !139 %GenericMemoryRef89 = ptrtoint ptr %"+Core.GenericMemoryRef#5695388" to i64, !dbg !511 %687 = inttoptr i64 %GenericMemoryRef89 to ptr, !dbg !511 %current_task90 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !511 %688 = addrspacecast ptr %687 to ptr addrspace(10), !dbg !511 %"box::GenericMemoryRef91" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task90, i64 16, ptr addrspace(10) %688) #135, !dbg !511 %689 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef91" to ptr addrspace(11), !dbg !511 store { ptr, ptr addrspace(10) } %"segs::Array.ref72", ptr addrspace(11) %689, align 8, !dbg !511, !tbaa !146, !alias.scope !150, !noalias !151 %690 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef91" to ptr addrspace(12), !dbg !511 call void @ijl_bounds_error_int(ptr addrspace(12) %690, i64 %"segs::Array.size68.unbox75"), !dbg !511 unreachable, !dbg !511 idxend92: ; preds = %L505 %691 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data_byteoffset80, 0, !dbg !511 %memory_ref93 = insertvalue { ptr, ptr addrspace(10) } %691, ptr addrspace(10) %memoryref_mem94, 1, !dbg !511 %692 = addrspacecast ptr addrspace(10) %memoryref_mem94 to ptr addrspace(11), !dbg !511 %693 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %692, i32 0, i32 0, !dbg !511 %memory_len95 = load i64, ptr addrspace(11) %693, align 8, !dbg !511, !tbaa !200, !range !288, !alias.scope !198, !noalias !199 %694 = icmp eq i64 %memory_len95, 0, !dbg !511 br i1 %694, label %oob96, label %load97, !dbg !511 oob96: ; preds = %idxend92 %695 = addrspacecast ptr addrspace(10) %memoryref_mem94 to ptr addrspace(12), !dbg !511 call void @ijl_bounds_error_int(ptr addrspace(12) %695, i64 1), !dbg !511 unreachable, !dbg !511 load97: ; preds = %idxend92 %696 = call ptr addrspace(13) @julia.gc_loaded(ptr addrspace(10) %memoryref_mem94, ptr %memoryref_data73), !dbg !511 %memoryref_data98 = getelementptr inbounds i8, ptr addrspace(13) %696, i64 %memoryref_byteoffset79, !dbg !511 call void @llvm.memcpy.p0.p13.i64(ptr align 8 %0, ptr addrspace(13) align 8 %memoryref_data98, i64 32, i1 false), !dbg !511, !tbaa !140, !alias.scope !192, !noalias !193 br label %L509, !dbg !511 fail: ; preds = %L524 %697 = addrspacecast ptr %jl_diverror_exception to ptr addrspace(12), !dbg !517 call void @ijl_throw(ptr addrspace(12) %697), !dbg !517 unreachable, !dbg !517 pass: ; preds = %L524 %698 = sdiv i64 %value_phi103, 2, !dbg !517 %699 = icmp sle i64 1, %698, !dbg !575 %700 = xor i1 %699, true, !dbg !519 br i1 %700, label %L613, label %L528, !dbg !519 oob121: ; preds = %L542 %"+Core.GenericMemoryRef#56953122" = load ptr, ptr @_Core_GenericMemoryRef_56953, align 8, !dbg !526, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0, !dereferenceable !138, !align !139 %GenericMemoryRef123 = ptrtoint ptr %"+Core.GenericMemoryRef#56953122" to i64, !dbg !526 %701 = inttoptr i64 %GenericMemoryRef123 to ptr, !dbg !526 %current_task124 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !526 %702 = addrspacecast ptr %701 to ptr addrspace(10), !dbg !526 %"box::GenericMemoryRef125" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task124, i64 16, ptr addrspace(10) %702) #135, !dbg !526 %703 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef125" to ptr addrspace(11), !dbg !526 store { ptr, ptr addrspace(10) } %"segs::Array.ref107", ptr addrspace(11) %703, align 8, !dbg !526, !tbaa !146, !alias.scope !150, !noalias !151 %704 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef125" to ptr addrspace(12), !dbg !526 call void @ijl_bounds_error_int(ptr addrspace(12) %704, i64 %698), !dbg !526 unreachable, !dbg !526 idxend126: ; preds = %L542 %705 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data_byteoffset114, 0, !dbg !526 %memory_ref127 = insertvalue { ptr, ptr addrspace(10) } %705, ptr addrspace(10) %memoryref_mem128, 1, !dbg !526 %706 = addrspacecast ptr addrspace(10) %memoryref_mem128 to ptr addrspace(11), !dbg !526 %707 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %706, i32 0, i32 0, !dbg !526 %memory_len129 = load i64, ptr addrspace(11) %707, align 8, !dbg !526, !tbaa !200, !range !288, !alias.scope !198, !noalias !199 %708 = icmp eq i64 %memory_len129, 0, !dbg !526 br i1 %708, label %oob130, label %load131, !dbg !526 oob130: ; preds = %idxend126 %709 = addrspacecast ptr addrspace(10) %memoryref_mem128 to ptr addrspace(12), !dbg !526 call void @ijl_bounds_error_int(ptr addrspace(12) %709, i64 1), !dbg !526 unreachable, !dbg !526 load131: ; preds = %idxend126 %710 = call ptr addrspace(13) @julia.gc_loaded(ptr addrspace(10) %memoryref_mem128, ptr %memoryref_data108), !dbg !526 %memoryref_data132 = getelementptr inbounds i8, ptr addrspace(13) %710, i64 %memoryref_byteoffset113, !dbg !526 call void @llvm.memcpy.p0.p13.i64(ptr align 8 %1, ptr addrspace(13) align 8 %memoryref_data132, i64 32, i1 false), !dbg !526, !tbaa !140, !alias.scope !192, !noalias !193 br label %L546, !dbg !526 oob155: ; preds = %L589 %"+Core.GenericMemoryRef#56953156" = load ptr, ptr @_Core_GenericMemoryRef_56953, align 8, !dbg !551, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0, !dereferenceable !138, !align !139 %GenericMemoryRef157 = ptrtoint ptr %"+Core.GenericMemoryRef#56953156" to i64, !dbg !551 %711 = inttoptr i64 %GenericMemoryRef157 to ptr, !dbg !551 %current_task158 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !551 %712 = addrspacecast ptr %711 to ptr addrspace(10), !dbg !551 %"box::GenericMemoryRef159" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task158, i64 16, ptr addrspace(10) %712) #135, !dbg !551 %713 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef159" to ptr addrspace(11), !dbg !551 store { ptr, ptr addrspace(10) } %"segs::Array.ref141", ptr addrspace(11) %713, align 8, !dbg !551, !tbaa !146, !alias.scope !150, !noalias !151 %714 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef159" to ptr addrspace(12), !dbg !551 call void @ijl_bounds_error_int(ptr addrspace(12) %714, i64 %698), !dbg !551 unreachable, !dbg !551 idxend160: ; preds = %L589 %715 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data_byteoffset148, 0, !dbg !551 %memory_ref161 = insertvalue { ptr, ptr addrspace(10) } %715, ptr addrspace(10) %memoryref_mem162, 1, !dbg !551 %716 = addrspacecast ptr addrspace(10) %memoryref_mem162 to ptr addrspace(11), !dbg !551 %717 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %716, i32 0, i32 0, !dbg !551 %memory_len163 = load i64, ptr addrspace(11) %717, align 8, !dbg !551, !tbaa !200, !range !288, !alias.scope !198, !noalias !199 %718 = icmp eq i64 %memory_len163, 0, !dbg !551 br i1 %718, label %oob164, label %load165, !dbg !551 oob164: ; preds = %idxend160 %719 = addrspacecast ptr addrspace(10) %memoryref_mem162 to ptr addrspace(12), !dbg !551 call void @ijl_bounds_error_int(ptr addrspace(12) %719, i64 1), !dbg !551 unreachable, !dbg !551 load165: ; preds = %idxend160 %720 = call ptr addrspace(13) @julia.gc_loaded(ptr addrspace(10) %memoryref_mem162, ptr %memoryref_data142), !dbg !551 %memoryref_data166 = getelementptr inbounds i8, ptr addrspace(13) %720, i64 %memoryref_byteoffset147, !dbg !551 call void @llvm.memcpy.p0.p13.i64(ptr align 8 %2, ptr addrspace(13) align 8 %memoryref_data166, i64 32, i1 false), !dbg !551, !tbaa !140, !alias.scope !192, !noalias !193 br label %L593, !dbg !551 oob184: ; preds = %L606 %"+Core.GenericMemoryRef#56953185" = load ptr, ptr @_Core_GenericMemoryRef_56953, align 8, !dbg !558, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0, !dereferenceable !138, !align !139 %GenericMemoryRef186 = ptrtoint ptr %"+Core.GenericMemoryRef#56953185" to i64, !dbg !558 %721 = inttoptr i64 %GenericMemoryRef186 to ptr, !dbg !558 %current_task187 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !558 %722 = addrspacecast ptr %721 to ptr addrspace(10), !dbg !558 %"box::GenericMemoryRef188" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task187, i64 16, ptr addrspace(10) %722) #135, !dbg !558 %723 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef188" to ptr addrspace(11), !dbg !558 store { ptr, ptr addrspace(10) } %"segs::Array.ref170", ptr addrspace(11) %723, align 8, !dbg !558, !tbaa !146, !alias.scope !150, !noalias !151 %724 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef188" to ptr addrspace(12), !dbg !558 call void @ijl_bounds_error_int(ptr addrspace(12) %724, i64 %value_phi103), !dbg !558 unreachable, !dbg !558 idxend189: ; preds = %L606 %725 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data_byteoffset177, 0, !dbg !558 %memory_ref190 = insertvalue { ptr, ptr addrspace(10) } %725, ptr addrspace(10) %memoryref_mem191, 1, !dbg !558 %726 = addrspacecast ptr addrspace(10) %memoryref_mem191 to ptr addrspace(11), !dbg !558 %727 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %726, i32 0, i32 0, !dbg !558 %memory_len192 = load i64, ptr addrspace(11) %727, align 8, !dbg !558, !tbaa !200, !range !288, !alias.scope !198, !noalias !199 %728 = icmp eq i64 %memory_len192, 0, !dbg !558 br i1 %728, label %oob193, label %load194, !dbg !558 oob193: ; preds = %idxend189 %729 = addrspacecast ptr addrspace(10) %memoryref_mem191 to ptr addrspace(12), !dbg !558 call void @ijl_bounds_error_int(ptr addrspace(12) %729, i64 1), !dbg !558 unreachable, !dbg !558 load194: ; preds = %idxend189 %730 = call ptr addrspace(13) @julia.gc_loaded(ptr addrspace(10) %memoryref_mem191, ptr %memoryref_data171), !dbg !558 %memoryref_data195 = getelementptr inbounds i8, ptr addrspace(13) %730, i64 %memoryref_byteoffset176, !dbg !558 call void @llvm.memcpy.p13.p0.i64(ptr addrspace(13) align 8 %memoryref_data195, ptr align 8 %2, i64 32, i1 false), !dbg !558, !tbaa !140, !alias.scope !579, !noalias !193 br label %L610, !dbg !580 after_error: ; No predecessors! call void @llvm.trap(), !dbg !552 unreachable, !dbg !552 after_noret: ; No predecessors! call void @llvm.trap(), !dbg !552 unreachable, !dbg !552 after_error198: ; No predecessors! call void @llvm.trap(), !dbg !548 unreachable, !dbg !548 after_noret199: ; No predecessors! call void @llvm.trap(), !dbg !548 unreachable, !dbg !548 oob217: ; preds = %L626 %"+Core.GenericMemoryRef#56953218" = load ptr, ptr @_Core_GenericMemoryRef_56953, align 8, !dbg !567, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0, !dereferenceable !138, !align !139 %GenericMemoryRef219 = ptrtoint ptr %"+Core.GenericMemoryRef#56953218" to i64, !dbg !567 %731 = inttoptr i64 %GenericMemoryRef219 to ptr, !dbg !567 %current_task220 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !567 %732 = addrspacecast ptr %731 to ptr addrspace(10), !dbg !567 %"box::GenericMemoryRef221" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task220, i64 16, ptr addrspace(10) %732) #135, !dbg !567 %733 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef221" to ptr addrspace(11), !dbg !567 store { ptr, ptr addrspace(10) } %"segs::Array.ref203", ptr addrspace(11) %733, align 8, !dbg !567, !tbaa !146, !alias.scope !150, !noalias !151 %734 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef221" to ptr addrspace(12), !dbg !567 call void @ijl_bounds_error_int(ptr addrspace(12) %734, i64 %value_phi103), !dbg !567 unreachable, !dbg !567 idxend222: ; preds = %L626 %735 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data_byteoffset210, 0, !dbg !567 %memory_ref223 = insertvalue { ptr, ptr addrspace(10) } %735, ptr addrspace(10) %memoryref_mem224, 1, !dbg !567 %736 = addrspacecast ptr addrspace(10) %memoryref_mem224 to ptr addrspace(11), !dbg !567 %737 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %736, i32 0, i32 0, !dbg !567 %memory_len225 = load i64, ptr addrspace(11) %737, align 8, !dbg !567, !tbaa !200, !range !288, !alias.scope !198, !noalias !199 %738 = icmp eq i64 %memory_len225, 0, !dbg !567 br i1 %738, label %oob226, label %load227, !dbg !567 oob226: ; preds = %idxend222 %739 = addrspacecast ptr addrspace(10) %memoryref_mem224 to ptr addrspace(12), !dbg !567 call void @ijl_bounds_error_int(ptr addrspace(12) %739, i64 1), !dbg !567 unreachable, !dbg !567 load227: ; preds = %idxend222 %740 = call ptr addrspace(13) @julia.gc_loaded(ptr addrspace(10) %memoryref_mem224, ptr %memoryref_data204), !dbg !567 %memoryref_data228 = getelementptr inbounds i8, ptr addrspace(13) %740, i64 %memoryref_byteoffset209, !dbg !567 call void @llvm.memcpy.p13.p0.i64(ptr addrspace(13) align 8 %memoryref_data228, ptr align 8 %0, i64 32, i1 false), !dbg !567, !tbaa !140, !alias.scope !579, !noalias !193 br label %L630, !dbg !581 after_error230: ; No predecessors! call void @llvm.trap(), !dbg !560 unreachable, !dbg !560 after_noret231: ; No predecessors! call void @llvm.trap(), !dbg !560 unreachable, !dbg !560 after_error238: ; No predecessors! call void @llvm.trap(), !dbg !523 unreachable, !dbg !523 after_noret239: ; No predecessors! call void @llvm.trap(), !dbg !523 unreachable, !dbg !523 after_error241: ; No predecessors! call void @llvm.trap(), !dbg !514 unreachable, !dbg !514 after_noret242: ; No predecessors! call void @llvm.trap(), !dbg !514 unreachable, !dbg !514 after_error244: ; No predecessors! call void @llvm.trap(), !dbg !508 unreachable, !dbg !508 after_noret245: ; No predecessors! call void @llvm.trap(), !dbg !508 unreachable, !dbg !508 oob262: ; preds = %L76 %"+Core.GenericMemoryRef#56966263" = load ptr, ptr @_Core_GenericMemoryRef_56966, align 8, !dbg !194, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0, !dereferenceable !138, !align !139 %GenericMemoryRef264 = ptrtoint ptr %"+Core.GenericMemoryRef#56966263" to i64, !dbg !194 %741 = inttoptr i64 %GenericMemoryRef264 to ptr, !dbg !194 %current_task265 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !194 %742 = addrspacecast ptr %741 to ptr addrspace(10), !dbg !194 %"box::GenericMemoryRef266" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task265, i64 16, ptr addrspace(10) %742) #135, !dbg !194 %743 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef266" to ptr addrspace(11), !dbg !194 store { ptr, ptr addrspace(10) } %"x::Array.ref250", ptr addrspace(11) %743, align 8, !dbg !194, !tbaa !146, !alias.scope !150, !noalias !151 %744 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef266" to ptr addrspace(12), !dbg !194 call void @ijl_bounds_error_int(ptr addrspace(12) %744, i64 1), !dbg !194 unreachable, !dbg !194 idxend267: ; preds = %L76 %745 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data_byteoffset255, 0, !dbg !194 %memory_ref268 = insertvalue { ptr, ptr addrspace(10) } %745, ptr addrspace(10) %memoryref_mem269, 1, !dbg !194 %746 = addrspacecast ptr addrspace(10) %memoryref_mem269 to ptr addrspace(11), !dbg !194 %747 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %746, i32 0, i32 0, !dbg !194 %memory_len270 = load i64, ptr addrspace(11) %747, align 8, !dbg !194, !tbaa !200, !range !202, !alias.scope !198, !noalias !199 %748 = icmp eq i64 %memory_len270, 0, !dbg !194 br i1 %748, label %oob271, label %load272, !dbg !194 oob271: ; preds = %idxend267 %749 = addrspacecast ptr addrspace(10) %memoryref_mem269 to ptr addrspace(12), !dbg !194 call void @ijl_bounds_error_int(ptr addrspace(12) %749, i64 1), !dbg !194 unreachable, !dbg !194 load272: ; preds = %idxend267 %memoryref_data273 = call ptr addrspace(13) @julia.gc_loaded(ptr addrspace(10) %memoryref_mem269, ptr %memoryref_data251), !dbg !194 %750 = load double, ptr addrspace(13) %memoryref_data273, align 8, !dbg !194, !tbaa !570, !alias.scope !150, !noalias !151 br label %L80, !dbg !194 oob289: ; preds = %L98 %"+Core.GenericMemoryRef#56966290" = load ptr, ptr @_Core_GenericMemoryRef_56966, align 8, !dbg !218, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0, !dereferenceable !138, !align !139 %GenericMemoryRef291 = ptrtoint ptr %"+Core.GenericMemoryRef#56966290" to i64, !dbg !218 %751 = inttoptr i64 %GenericMemoryRef291 to ptr, !dbg !218 %current_task292 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !218 %752 = addrspacecast ptr %751 to ptr addrspace(10), !dbg !218 %"box::GenericMemoryRef293" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task292, i64 16, ptr addrspace(10) %752) #135, !dbg !218 %753 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef293" to ptr addrspace(11), !dbg !218 store { ptr, ptr addrspace(10) } %"x::Array.ref277", ptr addrspace(11) %753, align 8, !dbg !218, !tbaa !146, !alias.scope !150, !noalias !151 %754 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef293" to ptr addrspace(12), !dbg !218 call void @ijl_bounds_error_int(ptr addrspace(12) %754, i64 1), !dbg !218 unreachable, !dbg !218 idxend294: ; preds = %L98 %755 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data_byteoffset282, 0, !dbg !218 %memory_ref295 = insertvalue { ptr, ptr addrspace(10) } %755, ptr addrspace(10) %memoryref_mem296, 1, !dbg !218 %756 = addrspacecast ptr addrspace(10) %memoryref_mem296 to ptr addrspace(11), !dbg !218 %757 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %756, i32 0, i32 0, !dbg !218 %memory_len297 = load i64, ptr addrspace(11) %757, align 8, !dbg !218, !tbaa !200, !range !202, !alias.scope !198, !noalias !199 %758 = icmp eq i64 %memory_len297, 0, !dbg !218 br i1 %758, label %oob298, label %load299, !dbg !218 oob298: ; preds = %idxend294 %759 = addrspacecast ptr addrspace(10) %memoryref_mem296 to ptr addrspace(12), !dbg !218 call void @ijl_bounds_error_int(ptr addrspace(12) %759, i64 1), !dbg !218 unreachable, !dbg !218 load299: ; preds = %idxend294 %memoryref_data300 = call ptr addrspace(13) @julia.gc_loaded(ptr addrspace(10) %memoryref_mem296, ptr %memoryref_data278), !dbg !218 %760 = load double, ptr addrspace(13) %memoryref_data300, align 8, !dbg !218, !tbaa !570, !alias.scope !150, !noalias !151 br label %L102, !dbg !218 oob334: ; preds = %L146 %"+Core.GenericMemoryRef#56953335" = load ptr, ptr @_Core_GenericMemoryRef_56953, align 8, !dbg !286, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0, !dereferenceable !138, !align !139 %GenericMemoryRef336 = ptrtoint ptr %"+Core.GenericMemoryRef#56953335" to i64, !dbg !286 %761 = inttoptr i64 %GenericMemoryRef336 to ptr, !dbg !286 %current_task337 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !286 %762 = addrspacecast ptr %761 to ptr addrspace(10), !dbg !286 %"box::GenericMemoryRef338" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task337, i64 16, ptr addrspace(10) %762) #135, !dbg !286 %763 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef338" to ptr addrspace(11), !dbg !286 store { ptr, ptr addrspace(10) } %"segs::Array.ref320", ptr addrspace(11) %763, align 8, !dbg !286, !tbaa !146, !alias.scope !150, !noalias !151 %764 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef338" to ptr addrspace(12), !dbg !286 call void @ijl_bounds_error_int(ptr addrspace(12) %764, i64 %"segs::Array.size319.unbox"), !dbg !286 unreachable, !dbg !286 idxend339: ; preds = %L146 %765 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data_byteoffset327, 0, !dbg !286 %memory_ref340 = insertvalue { ptr, ptr addrspace(10) } %765, ptr addrspace(10) %memoryref_mem341, 1, !dbg !286 %766 = addrspacecast ptr addrspace(10) %memoryref_mem341 to ptr addrspace(11), !dbg !286 %767 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %766, i32 0, i32 0, !dbg !286 %memory_len342 = load i64, ptr addrspace(11) %767, align 8, !dbg !286, !tbaa !200, !range !288, !alias.scope !198, !noalias !199 %768 = icmp eq i64 %memory_len342, 0, !dbg !286 br i1 %768, label %oob343, label %load344, !dbg !286 oob343: ; preds = %idxend339 %769 = addrspacecast ptr addrspace(10) %memoryref_mem341 to ptr addrspace(12), !dbg !286 call void @ijl_bounds_error_int(ptr addrspace(12) %769, i64 1), !dbg !286 unreachable, !dbg !286 load344: ; preds = %idxend339 %770 = call ptr addrspace(13) @julia.gc_loaded(ptr addrspace(10) %memoryref_mem341, ptr %memoryref_data321), !dbg !286 %memoryref_data345 = getelementptr inbounds i8, ptr addrspace(13) %770, i64 %memoryref_byteoffset326, !dbg !286 call void @llvm.memcpy.p13.p0.i64(ptr addrspace(13) align 8 %memoryref_data345, ptr align 8 %sret_box303, i64 32, i1 false), !dbg !286, !tbaa !140, !alias.scope !572, !noalias !573 br label %L152, !dbg !582 oob366: ; preds = %L169 %"+Core.GenericMemoryRef#56953367" = load ptr, ptr @_Core_GenericMemoryRef_56953, align 8, !dbg !299, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0, !dereferenceable !138, !align !139 %GenericMemoryRef368 = ptrtoint ptr %"+Core.GenericMemoryRef#56953367" to i64, !dbg !299 %771 = inttoptr i64 %GenericMemoryRef368 to ptr, !dbg !299 %current_task369 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !299 %772 = addrspacecast ptr %771 to ptr addrspace(10), !dbg !299 %"box::GenericMemoryRef370" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task369, i64 16, ptr addrspace(10) %772) #135, !dbg !299 %773 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef370" to ptr addrspace(11), !dbg !299 store { ptr, ptr addrspace(10) } %"segs::Array.ref351", ptr addrspace(11) %773, align 8, !dbg !299, !tbaa !146, !alias.scope !150, !noalias !151 %774 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef370" to ptr addrspace(12), !dbg !299 call void @ijl_bounds_error_int(ptr addrspace(12) %774, i64 %"segs::Array.size347.unbox354"), !dbg !299 unreachable, !dbg !299 idxend371: ; preds = %L169 %775 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data_byteoffset359, 0, !dbg !299 %memory_ref372 = insertvalue { ptr, ptr addrspace(10) } %775, ptr addrspace(10) %memoryref_mem373, 1, !dbg !299 %776 = addrspacecast ptr addrspace(10) %memoryref_mem373 to ptr addrspace(11), !dbg !299 %777 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %776, i32 0, i32 0, !dbg !299 %memory_len374 = load i64, ptr addrspace(11) %777, align 8, !dbg !299, !tbaa !200, !range !288, !alias.scope !198, !noalias !199 %778 = icmp eq i64 %memory_len374, 0, !dbg !299 br i1 %778, label %oob375, label %load376, !dbg !299 oob375: ; preds = %idxend371 %779 = addrspacecast ptr addrspace(10) %memoryref_mem373 to ptr addrspace(12), !dbg !299 call void @ijl_bounds_error_int(ptr addrspace(12) %779, i64 1), !dbg !299 unreachable, !dbg !299 load376: ; preds = %idxend371 %780 = call ptr addrspace(13) @julia.gc_loaded(ptr addrspace(10) %memoryref_mem373, ptr %memoryref_data352), !dbg !299 %memoryref_data377 = getelementptr inbounds i8, ptr addrspace(13) %780, i64 %memoryref_byteoffset358, !dbg !299 call void @llvm.memcpy.p0.p13.i64(ptr align 8 %5, ptr addrspace(13) align 8 %memoryref_data377, i64 32, i1 false), !dbg !299, !tbaa !140, !alias.scope !192, !noalias !193 br label %L173, !dbg !299 fail385: ; preds = %L188 %781 = addrspacecast ptr %jl_diverror_exception384 to ptr addrspace(12), !dbg !305 call void @ijl_throw(ptr addrspace(12) %781), !dbg !305 unreachable, !dbg !305 pass386: ; preds = %L188 %782 = sdiv i64 %value_phi382, 2, !dbg !305 %783 = icmp sle i64 1, %782, !dbg !583 %784 = xor i1 %783, true, !dbg !309 br i1 %784, label %L277, label %L192, !dbg !309 oob404: ; preds = %L206 %"+Core.GenericMemoryRef#56953405" = load ptr, ptr @_Core_GenericMemoryRef_56953, align 8, !dbg !316, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0, !dereferenceable !138, !align !139 %GenericMemoryRef406 = ptrtoint ptr %"+Core.GenericMemoryRef#56953405" to i64, !dbg !316 %785 = inttoptr i64 %GenericMemoryRef406 to ptr, !dbg !316 %current_task407 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !316 %786 = addrspacecast ptr %785 to ptr addrspace(10), !dbg !316 %"box::GenericMemoryRef408" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task407, i64 16, ptr addrspace(10) %786) #135, !dbg !316 %787 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef408" to ptr addrspace(11), !dbg !316 store { ptr, ptr addrspace(10) } %"segs::Array.ref390", ptr addrspace(11) %787, align 8, !dbg !316, !tbaa !146, !alias.scope !150, !noalias !151 %788 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef408" to ptr addrspace(12), !dbg !316 call void @ijl_bounds_error_int(ptr addrspace(12) %788, i64 %782), !dbg !316 unreachable, !dbg !316 idxend409: ; preds = %L206 %789 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data_byteoffset397, 0, !dbg !316 %memory_ref410 = insertvalue { ptr, ptr addrspace(10) } %789, ptr addrspace(10) %memoryref_mem411, 1, !dbg !316 %790 = addrspacecast ptr addrspace(10) %memoryref_mem411 to ptr addrspace(11), !dbg !316 %791 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %790, i32 0, i32 0, !dbg !316 %memory_len412 = load i64, ptr addrspace(11) %791, align 8, !dbg !316, !tbaa !200, !range !288, !alias.scope !198, !noalias !199 %792 = icmp eq i64 %memory_len412, 0, !dbg !316 br i1 %792, label %oob413, label %load414, !dbg !316 oob413: ; preds = %idxend409 %793 = addrspacecast ptr addrspace(10) %memoryref_mem411 to ptr addrspace(12), !dbg !316 call void @ijl_bounds_error_int(ptr addrspace(12) %793, i64 1), !dbg !316 unreachable, !dbg !316 load414: ; preds = %idxend409 %794 = call ptr addrspace(13) @julia.gc_loaded(ptr addrspace(10) %memoryref_mem411, ptr %memoryref_data391), !dbg !316 %memoryref_data415 = getelementptr inbounds i8, ptr addrspace(13) %794, i64 %memoryref_byteoffset396, !dbg !316 call void @llvm.memcpy.p0.p13.i64(ptr align 8 %6, ptr addrspace(13) align 8 %memoryref_data415, i64 32, i1 false), !dbg !316, !tbaa !140, !alias.scope !192, !noalias !193 br label %L210, !dbg !316 oob439: ; preds = %L253 %"+Core.GenericMemoryRef#56953440" = load ptr, ptr @_Core_GenericMemoryRef_56953, align 8, !dbg !354, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0, !dereferenceable !138, !align !139 %GenericMemoryRef441 = ptrtoint ptr %"+Core.GenericMemoryRef#56953440" to i64, !dbg !354 %795 = inttoptr i64 %GenericMemoryRef441 to ptr, !dbg !354 %current_task442 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !354 %796 = addrspacecast ptr %795 to ptr addrspace(10), !dbg !354 %"box::GenericMemoryRef443" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task442, i64 16, ptr addrspace(10) %796) #135, !dbg !354 %797 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef443" to ptr addrspace(11), !dbg !354 store { ptr, ptr addrspace(10) } %"segs::Array.ref425", ptr addrspace(11) %797, align 8, !dbg !354, !tbaa !146, !alias.scope !150, !noalias !151 %798 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef443" to ptr addrspace(12), !dbg !354 call void @ijl_bounds_error_int(ptr addrspace(12) %798, i64 %782), !dbg !354 unreachable, !dbg !354 idxend444: ; preds = %L253 %799 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data_byteoffset432, 0, !dbg !354 %memory_ref445 = insertvalue { ptr, ptr addrspace(10) } %799, ptr addrspace(10) %memoryref_mem446, 1, !dbg !354 %800 = addrspacecast ptr addrspace(10) %memoryref_mem446 to ptr addrspace(11), !dbg !354 %801 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %800, i32 0, i32 0, !dbg !354 %memory_len447 = load i64, ptr addrspace(11) %801, align 8, !dbg !354, !tbaa !200, !range !288, !alias.scope !198, !noalias !199 %802 = icmp eq i64 %memory_len447, 0, !dbg !354 br i1 %802, label %oob448, label %load449, !dbg !354 oob448: ; preds = %idxend444 %803 = addrspacecast ptr addrspace(10) %memoryref_mem446 to ptr addrspace(12), !dbg !354 call void @ijl_bounds_error_int(ptr addrspace(12) %803, i64 1), !dbg !354 unreachable, !dbg !354 load449: ; preds = %idxend444 %804 = call ptr addrspace(13) @julia.gc_loaded(ptr addrspace(10) %memoryref_mem446, ptr %memoryref_data426), !dbg !354 %memoryref_data450 = getelementptr inbounds i8, ptr addrspace(13) %804, i64 %memoryref_byteoffset431, !dbg !354 call void @llvm.memcpy.p0.p13.i64(ptr align 8 %7, ptr addrspace(13) align 8 %memoryref_data450, i64 32, i1 false), !dbg !354, !tbaa !140, !alias.scope !192, !noalias !193 br label %L257, !dbg !354 oob468: ; preds = %L270 %"+Core.GenericMemoryRef#56953469" = load ptr, ptr @_Core_GenericMemoryRef_56953, align 8, !dbg !363, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0, !dereferenceable !138, !align !139 %GenericMemoryRef470 = ptrtoint ptr %"+Core.GenericMemoryRef#56953469" to i64, !dbg !363 %805 = inttoptr i64 %GenericMemoryRef470 to ptr, !dbg !363 %current_task471 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !363 %806 = addrspacecast ptr %805 to ptr addrspace(10), !dbg !363 %"box::GenericMemoryRef472" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task471, i64 16, ptr addrspace(10) %806) #135, !dbg !363 %807 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef472" to ptr addrspace(11), !dbg !363 store { ptr, ptr addrspace(10) } %"segs::Array.ref454", ptr addrspace(11) %807, align 8, !dbg !363, !tbaa !146, !alias.scope !150, !noalias !151 %808 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef472" to ptr addrspace(12), !dbg !363 call void @ijl_bounds_error_int(ptr addrspace(12) %808, i64 %value_phi382), !dbg !363 unreachable, !dbg !363 idxend473: ; preds = %L270 %809 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data_byteoffset461, 0, !dbg !363 %memory_ref474 = insertvalue { ptr, ptr addrspace(10) } %809, ptr addrspace(10) %memoryref_mem475, 1, !dbg !363 %810 = addrspacecast ptr addrspace(10) %memoryref_mem475 to ptr addrspace(11), !dbg !363 %811 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %810, i32 0, i32 0, !dbg !363 %memory_len476 = load i64, ptr addrspace(11) %811, align 8, !dbg !363, !tbaa !200, !range !288, !alias.scope !198, !noalias !199 %812 = icmp eq i64 %memory_len476, 0, !dbg !363 br i1 %812, label %oob477, label %load478, !dbg !363 oob477: ; preds = %idxend473 %813 = addrspacecast ptr addrspace(10) %memoryref_mem475 to ptr addrspace(12), !dbg !363 call void @ijl_bounds_error_int(ptr addrspace(12) %813, i64 1), !dbg !363 unreachable, !dbg !363 load478: ; preds = %idxend473 %814 = call ptr addrspace(13) @julia.gc_loaded(ptr addrspace(10) %memoryref_mem475, ptr %memoryref_data455), !dbg !363 %memoryref_data479 = getelementptr inbounds i8, ptr addrspace(13) %814, i64 %memoryref_byteoffset460, !dbg !363 call void @llvm.memcpy.p13.p0.i64(ptr addrspace(13) align 8 %memoryref_data479, ptr align 8 %7, i64 32, i1 false), !dbg !363, !tbaa !140, !alias.scope !579, !noalias !193 br label %L274, !dbg !585 after_error481: ; No predecessors! call void @llvm.trap(), !dbg !355 unreachable, !dbg !355 after_noret482: ; No predecessors! call void @llvm.trap(), !dbg !355 unreachable, !dbg !355 after_error484: ; No predecessors! call void @llvm.trap(), !dbg !351 unreachable, !dbg !351 after_noret485: ; No predecessors! call void @llvm.trap(), !dbg !351 unreachable, !dbg !351 oob503: ; preds = %L290 %"+Core.GenericMemoryRef#56953504" = load ptr, ptr @_Core_GenericMemoryRef_56953, align 8, !dbg !372, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0, !dereferenceable !138, !align !139 %GenericMemoryRef505 = ptrtoint ptr %"+Core.GenericMemoryRef#56953504" to i64, !dbg !372 %815 = inttoptr i64 %GenericMemoryRef505 to ptr, !dbg !372 %current_task506 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !372 %816 = addrspacecast ptr %815 to ptr addrspace(10), !dbg !372 %"box::GenericMemoryRef507" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task506, i64 16, ptr addrspace(10) %816) #135, !dbg !372 %817 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef507" to ptr addrspace(11), !dbg !372 store { ptr, ptr addrspace(10) } %"segs::Array.ref489", ptr addrspace(11) %817, align 8, !dbg !372, !tbaa !146, !alias.scope !150, !noalias !151 %818 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef507" to ptr addrspace(12), !dbg !372 call void @ijl_bounds_error_int(ptr addrspace(12) %818, i64 %value_phi382), !dbg !372 unreachable, !dbg !372 idxend508: ; preds = %L290 %819 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data_byteoffset496, 0, !dbg !372 %memory_ref509 = insertvalue { ptr, ptr addrspace(10) } %819, ptr addrspace(10) %memoryref_mem510, 1, !dbg !372 %820 = addrspacecast ptr addrspace(10) %memoryref_mem510 to ptr addrspace(11), !dbg !372 %821 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %820, i32 0, i32 0, !dbg !372 %memory_len511 = load i64, ptr addrspace(11) %821, align 8, !dbg !372, !tbaa !200, !range !288, !alias.scope !198, !noalias !199 %822 = icmp eq i64 %memory_len511, 0, !dbg !372 br i1 %822, label %oob512, label %load513, !dbg !372 oob512: ; preds = %idxend508 %823 = addrspacecast ptr addrspace(10) %memoryref_mem510 to ptr addrspace(12), !dbg !372 call void @ijl_bounds_error_int(ptr addrspace(12) %823, i64 1), !dbg !372 unreachable, !dbg !372 load513: ; preds = %idxend508 %824 = call ptr addrspace(13) @julia.gc_loaded(ptr addrspace(10) %memoryref_mem510, ptr %memoryref_data490), !dbg !372 %memoryref_data514 = getelementptr inbounds i8, ptr addrspace(13) %824, i64 %memoryref_byteoffset495, !dbg !372 call void @llvm.memcpy.p13.p0.i64(ptr addrspace(13) align 8 %memoryref_data514, ptr align 8 %5, i64 32, i1 false), !dbg !372, !tbaa !140, !alias.scope !579, !noalias !193 br label %L294, !dbg !586 oob542: ; preds = %L313 %"+Core.GenericMemoryRef#56953543" = load ptr, ptr @_Core_GenericMemoryRef_56953, align 8, !dbg !403, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0, !dereferenceable !138, !align !139 %GenericMemoryRef544 = ptrtoint ptr %"+Core.GenericMemoryRef#56953543" to i64, !dbg !403 %825 = inttoptr i64 %GenericMemoryRef544 to ptr, !dbg !403 %current_task545 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !403 %826 = addrspacecast ptr %825 to ptr addrspace(10), !dbg !403 %"box::GenericMemoryRef546" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task545, i64 16, ptr addrspace(10) %826) #135, !dbg !403 %827 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef546" to ptr addrspace(11), !dbg !403 store { ptr, ptr addrspace(10) } %"segs::Array.ref528", ptr addrspace(11) %827, align 8, !dbg !403, !tbaa !146, !alias.scope !150, !noalias !151 %828 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef546" to ptr addrspace(12), !dbg !403 call void @ijl_bounds_error_int(ptr addrspace(12) %828, i64 %"segs::Array.size527.unbox"), !dbg !403 unreachable, !dbg !403 idxend547: ; preds = %L313 %829 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data_byteoffset535, 0, !dbg !403 %memory_ref548 = insertvalue { ptr, ptr addrspace(10) } %829, ptr addrspace(10) %memoryref_mem549, 1, !dbg !403 %830 = addrspacecast ptr addrspace(10) %memoryref_mem549 to ptr addrspace(11), !dbg !403 %831 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %830, i32 0, i32 0, !dbg !403 %memory_len550 = load i64, ptr addrspace(11) %831, align 8, !dbg !403, !tbaa !200, !range !288, !alias.scope !198, !noalias !199 %832 = icmp eq i64 %memory_len550, 0, !dbg !403 br i1 %832, label %oob551, label %load552, !dbg !403 oob551: ; preds = %idxend547 %833 = addrspacecast ptr addrspace(10) %memoryref_mem549 to ptr addrspace(12), !dbg !403 call void @ijl_bounds_error_int(ptr addrspace(12) %833, i64 1), !dbg !403 unreachable, !dbg !403 load552: ; preds = %idxend547 %834 = call ptr addrspace(13) @julia.gc_loaded(ptr addrspace(10) %memoryref_mem549, ptr %memoryref_data529), !dbg !403 %memoryref_data553 = getelementptr inbounds i8, ptr addrspace(13) %834, i64 %memoryref_byteoffset534, !dbg !403 call void @llvm.memcpy.p13.p0.i64(ptr addrspace(13) align 8 %memoryref_data553, ptr align 8 %sret_box306, i64 32, i1 false), !dbg !403, !tbaa !140, !alias.scope !572, !noalias !573 br label %L319, !dbg !587 oob574: ; preds = %L336 %"+Core.GenericMemoryRef#56953575" = load ptr, ptr @_Core_GenericMemoryRef_56953, align 8, !dbg !413, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0, !dereferenceable !138, !align !139 %GenericMemoryRef576 = ptrtoint ptr %"+Core.GenericMemoryRef#56953575" to i64, !dbg !413 %835 = inttoptr i64 %GenericMemoryRef576 to ptr, !dbg !413 %current_task577 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !413 %836 = addrspacecast ptr %835 to ptr addrspace(10), !dbg !413 %"box::GenericMemoryRef578" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task577, i64 16, ptr addrspace(10) %836) #135, !dbg !413 %837 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef578" to ptr addrspace(11), !dbg !413 store { ptr, ptr addrspace(10) } %"segs::Array.ref559", ptr addrspace(11) %837, align 8, !dbg !413, !tbaa !146, !alias.scope !150, !noalias !151 %838 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef578" to ptr addrspace(12), !dbg !413 call void @ijl_bounds_error_int(ptr addrspace(12) %838, i64 %"segs::Array.size555.unbox562"), !dbg !413 unreachable, !dbg !413 idxend579: ; preds = %L336 %839 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data_byteoffset567, 0, !dbg !413 %memory_ref580 = insertvalue { ptr, ptr addrspace(10) } %839, ptr addrspace(10) %memoryref_mem581, 1, !dbg !413 %840 = addrspacecast ptr addrspace(10) %memoryref_mem581 to ptr addrspace(11), !dbg !413 %841 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %840, i32 0, i32 0, !dbg !413 %memory_len582 = load i64, ptr addrspace(11) %841, align 8, !dbg !413, !tbaa !200, !range !288, !alias.scope !198, !noalias !199 %842 = icmp eq i64 %memory_len582, 0, !dbg !413 br i1 %842, label %oob583, label %load584, !dbg !413 oob583: ; preds = %idxend579 %843 = addrspacecast ptr addrspace(10) %memoryref_mem581 to ptr addrspace(12), !dbg !413 call void @ijl_bounds_error_int(ptr addrspace(12) %843, i64 1), !dbg !413 unreachable, !dbg !413 load584: ; preds = %idxend579 %844 = call ptr addrspace(13) @julia.gc_loaded(ptr addrspace(10) %memoryref_mem581, ptr %memoryref_data560), !dbg !413 %memoryref_data585 = getelementptr inbounds i8, ptr addrspace(13) %844, i64 %memoryref_byteoffset566, !dbg !413 call void @llvm.memcpy.p0.p13.i64(ptr align 8 %8, ptr addrspace(13) align 8 %memoryref_data585, i64 32, i1 false), !dbg !413, !tbaa !140, !alias.scope !192, !noalias !193 br label %L340, !dbg !413 fail593: ; preds = %L355 %845 = addrspacecast ptr %jl_diverror_exception592 to ptr addrspace(12), !dbg !419 call void @ijl_throw(ptr addrspace(12) %845), !dbg !419 unreachable, !dbg !419 pass594: ; preds = %L355 %846 = sdiv i64 %value_phi590, 2, !dbg !419 %847 = icmp sle i64 1, %846, !dbg !588 %848 = xor i1 %847, true, !dbg !421 br i1 %848, label %L444, label %L359, !dbg !421 oob612: ; preds = %L373 %"+Core.GenericMemoryRef#56953613" = load ptr, ptr @_Core_GenericMemoryRef_56953, align 8, !dbg !428, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0, !dereferenceable !138, !align !139 %GenericMemoryRef614 = ptrtoint ptr %"+Core.GenericMemoryRef#56953613" to i64, !dbg !428 %849 = inttoptr i64 %GenericMemoryRef614 to ptr, !dbg !428 %current_task615 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !428 %850 = addrspacecast ptr %849 to ptr addrspace(10), !dbg !428 %"box::GenericMemoryRef616" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task615, i64 16, ptr addrspace(10) %850) #135, !dbg !428 %851 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef616" to ptr addrspace(11), !dbg !428 store { ptr, ptr addrspace(10) } %"segs::Array.ref598", ptr addrspace(11) %851, align 8, !dbg !428, !tbaa !146, !alias.scope !150, !noalias !151 %852 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef616" to ptr addrspace(12), !dbg !428 call void @ijl_bounds_error_int(ptr addrspace(12) %852, i64 %846), !dbg !428 unreachable, !dbg !428 idxend617: ; preds = %L373 %853 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data_byteoffset605, 0, !dbg !428 %memory_ref618 = insertvalue { ptr, ptr addrspace(10) } %853, ptr addrspace(10) %memoryref_mem619, 1, !dbg !428 %854 = addrspacecast ptr addrspace(10) %memoryref_mem619 to ptr addrspace(11), !dbg !428 %855 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %854, i32 0, i32 0, !dbg !428 %memory_len620 = load i64, ptr addrspace(11) %855, align 8, !dbg !428, !tbaa !200, !range !288, !alias.scope !198, !noalias !199 %856 = icmp eq i64 %memory_len620, 0, !dbg !428 br i1 %856, label %oob621, label %load622, !dbg !428 oob621: ; preds = %idxend617 %857 = addrspacecast ptr addrspace(10) %memoryref_mem619 to ptr addrspace(12), !dbg !428 call void @ijl_bounds_error_int(ptr addrspace(12) %857, i64 1), !dbg !428 unreachable, !dbg !428 load622: ; preds = %idxend617 %858 = call ptr addrspace(13) @julia.gc_loaded(ptr addrspace(10) %memoryref_mem619, ptr %memoryref_data599), !dbg !428 %memoryref_data623 = getelementptr inbounds i8, ptr addrspace(13) %858, i64 %memoryref_byteoffset604, !dbg !428 call void @llvm.memcpy.p0.p13.i64(ptr align 8 %9, ptr addrspace(13) align 8 %memoryref_data623, i64 32, i1 false), !dbg !428, !tbaa !140, !alias.scope !192, !noalias !193 br label %L377, !dbg !428 oob647: ; preds = %L420 %"+Core.GenericMemoryRef#56953648" = load ptr, ptr @_Core_GenericMemoryRef_56953, align 8, !dbg !453, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0, !dereferenceable !138, !align !139 %GenericMemoryRef649 = ptrtoint ptr %"+Core.GenericMemoryRef#56953648" to i64, !dbg !453 %859 = inttoptr i64 %GenericMemoryRef649 to ptr, !dbg !453 %current_task650 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !453 %860 = addrspacecast ptr %859 to ptr addrspace(10), !dbg !453 %"box::GenericMemoryRef651" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task650, i64 16, ptr addrspace(10) %860) #135, !dbg !453 %861 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef651" to ptr addrspace(11), !dbg !453 store { ptr, ptr addrspace(10) } %"segs::Array.ref633", ptr addrspace(11) %861, align 8, !dbg !453, !tbaa !146, !alias.scope !150, !noalias !151 %862 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef651" to ptr addrspace(12), !dbg !453 call void @ijl_bounds_error_int(ptr addrspace(12) %862, i64 %846), !dbg !453 unreachable, !dbg !453 idxend652: ; preds = %L420 %863 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data_byteoffset640, 0, !dbg !453 %memory_ref653 = insertvalue { ptr, ptr addrspace(10) } %863, ptr addrspace(10) %memoryref_mem654, 1, !dbg !453 %864 = addrspacecast ptr addrspace(10) %memoryref_mem654 to ptr addrspace(11), !dbg !453 %865 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %864, i32 0, i32 0, !dbg !453 %memory_len655 = load i64, ptr addrspace(11) %865, align 8, !dbg !453, !tbaa !200, !range !288, !alias.scope !198, !noalias !199 %866 = icmp eq i64 %memory_len655, 0, !dbg !453 br i1 %866, label %oob656, label %load657, !dbg !453 oob656: ; preds = %idxend652 %867 = addrspacecast ptr addrspace(10) %memoryref_mem654 to ptr addrspace(12), !dbg !453 call void @ijl_bounds_error_int(ptr addrspace(12) %867, i64 1), !dbg !453 unreachable, !dbg !453 load657: ; preds = %idxend652 %868 = call ptr addrspace(13) @julia.gc_loaded(ptr addrspace(10) %memoryref_mem654, ptr %memoryref_data634), !dbg !453 %memoryref_data658 = getelementptr inbounds i8, ptr addrspace(13) %868, i64 %memoryref_byteoffset639, !dbg !453 call void @llvm.memcpy.p0.p13.i64(ptr align 8 %10, ptr addrspace(13) align 8 %memoryref_data658, i64 32, i1 false), !dbg !453, !tbaa !140, !alias.scope !192, !noalias !193 br label %L424, !dbg !453 oob676: ; preds = %L437 %"+Core.GenericMemoryRef#56953677" = load ptr, ptr @_Core_GenericMemoryRef_56953, align 8, !dbg !460, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0, !dereferenceable !138, !align !139 %GenericMemoryRef678 = ptrtoint ptr %"+Core.GenericMemoryRef#56953677" to i64, !dbg !460 %869 = inttoptr i64 %GenericMemoryRef678 to ptr, !dbg !460 %current_task679 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !460 %870 = addrspacecast ptr %869 to ptr addrspace(10), !dbg !460 %"box::GenericMemoryRef680" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task679, i64 16, ptr addrspace(10) %870) #135, !dbg !460 %871 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef680" to ptr addrspace(11), !dbg !460 store { ptr, ptr addrspace(10) } %"segs::Array.ref662", ptr addrspace(11) %871, align 8, !dbg !460, !tbaa !146, !alias.scope !150, !noalias !151 %872 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef680" to ptr addrspace(12), !dbg !460 call void @ijl_bounds_error_int(ptr addrspace(12) %872, i64 %value_phi590), !dbg !460 unreachable, !dbg !460 idxend681: ; preds = %L437 %873 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data_byteoffset669, 0, !dbg !460 %memory_ref682 = insertvalue { ptr, ptr addrspace(10) } %873, ptr addrspace(10) %memoryref_mem683, 1, !dbg !460 %874 = addrspacecast ptr addrspace(10) %memoryref_mem683 to ptr addrspace(11), !dbg !460 %875 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %874, i32 0, i32 0, !dbg !460 %memory_len684 = load i64, ptr addrspace(11) %875, align 8, !dbg !460, !tbaa !200, !range !288, !alias.scope !198, !noalias !199 %876 = icmp eq i64 %memory_len684, 0, !dbg !460 br i1 %876, label %oob685, label %load686, !dbg !460 oob685: ; preds = %idxend681 %877 = addrspacecast ptr addrspace(10) %memoryref_mem683 to ptr addrspace(12), !dbg !460 call void @ijl_bounds_error_int(ptr addrspace(12) %877, i64 1), !dbg !460 unreachable, !dbg !460 load686: ; preds = %idxend681 %878 = call ptr addrspace(13) @julia.gc_loaded(ptr addrspace(10) %memoryref_mem683, ptr %memoryref_data663), !dbg !460 %memoryref_data687 = getelementptr inbounds i8, ptr addrspace(13) %878, i64 %memoryref_byteoffset668, !dbg !460 call void @llvm.memcpy.p13.p0.i64(ptr addrspace(13) align 8 %memoryref_data687, ptr align 8 %10, i64 32, i1 false), !dbg !460, !tbaa !140, !alias.scope !579, !noalias !193 br label %L441, !dbg !590 after_error689: ; No predecessors! call void @llvm.trap(), !dbg !454 unreachable, !dbg !454 after_noret690: ; No predecessors! call void @llvm.trap(), !dbg !454 unreachable, !dbg !454 after_error692: ; No predecessors! call void @llvm.trap(), !dbg !450 unreachable, !dbg !450 after_noret693: ; No predecessors! call void @llvm.trap(), !dbg !450 unreachable, !dbg !450 oob711: ; preds = %L457 %"+Core.GenericMemoryRef#56953712" = load ptr, ptr @_Core_GenericMemoryRef_56953, align 8, !dbg !469, !tbaa !125, !alias.scope !128, !noalias !131, !nonnull !0, !dereferenceable !138, !align !139 %GenericMemoryRef713 = ptrtoint ptr %"+Core.GenericMemoryRef#56953712" to i64, !dbg !469 %879 = inttoptr i64 %GenericMemoryRef713 to ptr, !dbg !469 %current_task714 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !469 %880 = addrspacecast ptr %879 to ptr addrspace(10), !dbg !469 %"box::GenericMemoryRef715" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task714, i64 16, ptr addrspace(10) %880) #135, !dbg !469 %881 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef715" to ptr addrspace(11), !dbg !469 store { ptr, ptr addrspace(10) } %"segs::Array.ref697", ptr addrspace(11) %881, align 8, !dbg !469, !tbaa !146, !alias.scope !150, !noalias !151 %882 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef715" to ptr addrspace(12), !dbg !469 call void @ijl_bounds_error_int(ptr addrspace(12) %882, i64 %value_phi590), !dbg !469 unreachable, !dbg !469 idxend716: ; preds = %L457 %883 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data_byteoffset704, 0, !dbg !469 %memory_ref717 = insertvalue { ptr, ptr addrspace(10) } %883, ptr addrspace(10) %memoryref_mem718, 1, !dbg !469 %884 = addrspacecast ptr addrspace(10) %memoryref_mem718 to ptr addrspace(11), !dbg !469 %885 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %884, i32 0, i32 0, !dbg !469 %memory_len719 = load i64, ptr addrspace(11) %885, align 8, !dbg !469, !tbaa !200, !range !288, !alias.scope !198, !noalias !199 %886 = icmp eq i64 %memory_len719, 0, !dbg !469 br i1 %886, label %oob720, label %load721, !dbg !469 oob720: ; preds = %idxend716 %887 = addrspacecast ptr addrspace(10) %memoryref_mem718 to ptr addrspace(12), !dbg !469 call void @ijl_bounds_error_int(ptr addrspace(12) %887, i64 1), !dbg !469 unreachable, !dbg !469 load721: ; preds = %idxend716 %888 = call ptr addrspace(13) @julia.gc_loaded(ptr addrspace(10) %memoryref_mem718, ptr %memoryref_data698), !dbg !469 %memoryref_data722 = getelementptr inbounds i8, ptr addrspace(13) %888, i64 %memoryref_byteoffset703, !dbg !469 call void @llvm.memcpy.p13.p0.i64(ptr addrspace(13) align 8 %memoryref_data722, ptr align 8 %8, i64 32, i1 false), !dbg !469, !tbaa !140, !alias.scope !579, !noalias !193 br label %L461, !dbg !591 union_move_skip: ; preds = %L465 br label %post_union_move, !dbg !471 post_union_move: ; preds = %union_move_skip, %union_move ret { ptr addrspace(10), i8 } { ptr addrspace(10) null, i8 1 }, !dbg !471 union_move: ; preds = %L465 call void @llvm.memcpy.p0.p0.i64(ptr align 8 %union_bytes_return, ptr align 8 %"new::Tuple723", i64 24, i1 false), !dbg !471 br label %post_union_move, !dbg !471 after_error725: ; No predecessors! call void @llvm.trap(), !dbg !462 unreachable, !dbg !462 after_noret726: ; No predecessors! call void @llvm.trap(), !dbg !462 unreachable, !dbg !462 after_error735: ; No predecessors! call void @llvm.trap(), !dbg !425 unreachable, !dbg !425 after_noret736: ; No predecessors! call void @llvm.trap(), !dbg !425 unreachable, !dbg !425 after_error738: ; No predecessors! call void @llvm.trap(), !dbg !416 unreachable, !dbg !416 after_noret739: ; No predecessors! call void @llvm.trap(), !dbg !416 unreachable, !dbg !416 after_error741: ; No predecessors! call void @llvm.trap(), !dbg !410 unreachable, !dbg !410 after_noret742: ; No predecessors! call void @llvm.trap(), !dbg !410 unreachable, !dbg !410 after_error744: ; No predecessors! call void @llvm.trap(), !dbg !365 unreachable, !dbg !365 after_noret745: ; No predecessors! call void @llvm.trap(), !dbg !365 unreachable, !dbg !365 after_error754: ; No predecessors! call void @llvm.trap(), !dbg !313 unreachable, !dbg !313 after_noret755: ; No predecessors! call void @llvm.trap(), !dbg !313 unreachable, !dbg !313 after_error757: ; No predecessors! call void @llvm.trap(), !dbg !302 unreachable, !dbg !302 after_noret758: ; No predecessors! call void @llvm.trap(), !dbg !302 unreachable, !dbg !302 after_error760: ; No predecessors! call void @llvm.trap(), !dbg !296 unreachable, !dbg !296 after_noret761: ; No predecessors! call void @llvm.trap(), !dbg !296 unreachable, !dbg !296 after_error763: ; No predecessors! call void @llvm.trap(), !dbg !217 unreachable, !dbg !217 after_noret764: ; No predecessors! call void @llvm.trap(), !dbg !217 unreachable, !dbg !217 after_error766: ; No predecessors! call void @llvm.trap(), !dbg !185 unreachable, !dbg !185 after_noret767: ; No predecessors! call void @llvm.trap(), !dbg !185 unreachable, !dbg !185 after_error769: ; No predecessors! call void @llvm.trap(), !dbg !217 unreachable, !dbg !217 after_noret770: ; No predecessors! call void @llvm.trap(), !dbg !217 unreachable, !dbg !217 after_error772: ; No predecessors! call void @llvm.trap(), !dbg !185 unreachable, !dbg !185 after_noret773: ; No predecessors! call void @llvm.trap(), !dbg !185 unreachable, !dbg !185 guard_pass: ; preds = %L523 br label %guard_exit guard_exit: ; preds = %guard_pass, %L523 %guard_res = phi i1 [ false, %L523 ], [ true, %guard_pass ] br i1 %guard_res, label %guard_pass774, label %guard_exit775 guard_pass774: ; preds = %guard_exit %"segs::Array.size68.unbox776" = load i64, ptr %"segs::Array.size68", align 8, !tbaa !188, !alias.scope !190, !noalias !191 br label %guard_exit775 guard_exit775: ; preds = %guard_pass774, %guard_exit %guard_res777 = phi i64 [ undef, %guard_exit ], [ %"segs::Array.size68.unbox776", %guard_pass774 ] br label %L524, !dbg !514 guard_pass778: ; preds = %L187 br label %guard_exit779 guard_exit779: ; preds = %guard_pass778, %L187 %guard_res780 = phi i1 [ false, %L187 ], [ true, %guard_pass778 ] br i1 %guard_res780, label %guard_pass781, label %guard_exit782 guard_pass781: ; preds = %guard_exit779 %"segs::Array.size347.unbox783" = load i64, ptr %"segs::Array.size347", align 8, !tbaa !188, !alias.scope !190, !noalias !191 br label %guard_exit782 guard_exit782: ; preds = %guard_pass781, %guard_exit779 %guard_res784 = phi i64 [ undef, %guard_exit779 ], [ %"segs::Array.size347.unbox783", %guard_pass781 ] br label %L188, !dbg !302 guard_pass785: ; preds = %L354 br label %guard_exit786 guard_exit786: ; preds = %guard_pass785, %L354 %guard_res787 = phi i1 [ false, %L354 ], [ true, %guard_pass785 ] br i1 %guard_res787, label %guard_pass788, label %guard_exit789 guard_pass788: ; preds = %guard_exit786 %"segs::Array.size555.unbox790" = load i64, ptr %"segs::Array.size555", align 8, !tbaa !188, !alias.scope !190, !noalias !191 br label %guard_exit789 guard_exit789: ; preds = %guard_pass788, %guard_exit786 %guard_res791 = phi i64 [ undef, %guard_exit786 ], [ %"segs::Array.size555.unbox790", %guard_pass788 ] br label %L355, !dbg !416 } expectLen=13 swiftself=false sret=Ptr{Union{Tuple{Float64, Float64, Int64}, Vector{QuadGK.Segment{Float64, Float64, Float64}}}} returnRoots=nothing mi.specTypes.parameters=svec(typeof(QuadGK.refine), QuadGK.var"#handle_infinities##6#handle_infinities##7"{QuadGK.Counter{Main.var"#f3_count##0#f3_count##1"{Float64}}, Float64, Float64}, Vector{QuadGK.Segment{Float64, Float64, Float64}}, Float64, Float64, Int64, Vector{Float64}, Vector{Float64}, Vector{Float64}, Int64, Float64, Float64, Int64, typeof(norm)) retRemoved=false parmsRemoved=UInt64[] Stacktrace: [1] julia_activity_rule(f::LLVM.Function) @ Enzyme.Compiler ~/.julia/packages/Enzyme/EPXUy/src/rules/activityrules.jl:48 [2] handle_compiled(state::Enzyme.Compiler.HandlerState, edges::Vector{Any}, run_enzyme::Bool, mode::Enzyme.API.CDerivativeMode, world::UInt64, method_table::Compiler.OverlayMethodTable, custom::Dict{String, LLVM.API.LLVMLinkage}, mod::LLVM.Module, mi::Core.MethodInstance, k_name::String, rettype::Type) @ Enzyme.Compiler ~/.julia/packages/Enzyme/EPXUy/src/compiler.jl:628 [3] set_module_types!(interp::Enzyme.Compiler.Interpreter.EnzymeInterpreter{Nothing}, mod::LLVM.Module, primalf::LLVM.Function, job::GPUCompiler.CompilerJob{Enzyme.Compiler.EnzymeTarget{GPUCompiler.NativeCompilerTarget}, Enzyme.Compiler.EnzymeCompilerParams{Enzyme.Compiler.PrimalCompilerParams}}, edges::Vector{Any}, run_enzyme::Bool, mode::Enzyme.API.CDerivativeMode) @ Enzyme.Compiler ~/.julia/packages/Enzyme/EPXUy/src/compiler.jl:1220 [4] compile_unhooked(output::Symbol, job::GPUCompiler.CompilerJob{Enzyme.Compiler.EnzymeTarget{GPUCompiler.NativeCompilerTarget}, Enzyme.Compiler.EnzymeCompilerParams{Enzyme.Compiler.PrimalCompilerParams}}) @ Enzyme.Compiler ~/.julia/packages/Enzyme/EPXUy/src/compiler.jl:4627 [5] compile(target::Symbol, job::GPUCompiler.CompilerJob; kwargs::@Kwargs{}) @ GPUCompiler ~/.julia/packages/GPUCompiler/Gp8bZ/src/driver.jl:67 [6] compile @ ~/.julia/packages/GPUCompiler/Gp8bZ/src/driver.jl:55 [inlined] [7] _thunk(job::GPUCompiler.CompilerJob{Enzyme.Compiler.EnzymeTarget{GPUCompiler.NativeCompilerTarget}, Enzyme.Compiler.EnzymeCompilerParams{Enzyme.Compiler.PrimalCompilerParams}}, postopt::Bool) @ Enzyme.Compiler ~/.julia/packages/Enzyme/EPXUy/src/compiler.jl:5960 [8] _thunk @ ~/.julia/packages/Enzyme/EPXUy/src/compiler.jl:5958 [inlined] [9] cached_compilation @ ~/.julia/packages/Enzyme/EPXUy/src/compiler.jl:6015 [inlined] [10] thunkbase(mi::Core.MethodInstance, World::UInt64, FA::Type{<:Annotation}, A::Type{<:Annotation}, TT::Type, Mode::Enzyme.API.CDerivativeMode, width::Int64, ModifiedBetween::NTuple{N, Bool} where N, ReturnPrimal::Bool, ShadowInit::Bool, ABI::Type, ErrIfFuncWritten::Bool, RuntimeActivity::Bool, StrongZero::Bool, edges::Vector{Any}) @ Enzyme.Compiler ~/.julia/packages/Enzyme/EPXUy/src/compiler.jl:6131 [11] thunk_generator(world::UInt64, source::Union{LineNumberNode, Method}, FA::Type, A::Type, TT::Type, Mode::Enzyme.API.CDerivativeMode, Width::Int64, ModifiedBetween::NTuple{N, Bool} where N, ReturnPrimal::Bool, ShadowInit::Bool, ABI::Type, ErrIfFuncWritten::Bool, RuntimeActivity::Bool, StrongZero::Bool, self::Any, fakeworld::Any, fa::Type, a::Type, tt::Type, mode::Type, width::Type, modifiedbetween::Type, returnprimal::Type, shadowinit::Type, abi::Type, erriffuncwritten::Type, runtimeactivity::Type, strongzero::Type) @ Enzyme.Compiler ~/.julia/packages/Enzyme/EPXUy/src/compiler.jl:6275 [12] autodiff @ ~/.julia/packages/Enzyme/EPXUy/src/Enzyme.jl:502 [inlined] [13] autodiff @ ~/.julia/packages/Enzyme/EPXUy/src/Enzyme.jl:562 [inlined] [14] autodiff(mode::ReverseMode{false, false, false, FFIABI, false, false}, f::typeof(f3_count), args::Active{Float64}) @ Enzyme ~/.julia/packages/Enzyme/EPXUy/src/Enzyme.jl:534 [15] top-level scope @ ~/.julia/packages/QuadGK/7rND3/test/runtests.jl:469 [16] macro expansion @ /opt/julia/share/julia/stdlib/v1.14/Test/src/Test.jl:1961 [inlined] [17] macro expansion @ ~/.julia/packages/QuadGK/7rND3/test/runtests.jl:475 [inlined] [18] macro expansion @ /opt/julia/share/julia/stdlib/v1.14/Test/src/Test.jl:750 [inlined] Enzyme: Test Failed at /home/pkgeval/.julia/packages/QuadGK/7rND3/test/runtests.jl:481 Expression: autodiff(Reverse, f_vec, Duplicated(x, dx)) Expected: Enzyme.Compiler.EnzymeRuntimeException Thrown: ErrorException Taking the type of an opaque pointer is illegal Stacktrace: [1] error(s::String) @ Base ./error.jl:44 [2] eltype @ ~/.julia/packages/LLVM/iza6e/src/core/type.jl:293 [inlined] [3] propagate_returned!(mod::LLVM.Module) @ Enzyme.Compiler ~/.julia/packages/Enzyme/EPXUy/src/llvm/transforms.jl:1688 [4] removeDeadArgs!(mod::LLVM.Module, tm::LLVM.TargetMachine) @ Enzyme.Compiler ~/.julia/packages/Enzyme/EPXUy/src/llvm/transforms.jl:2563 [5] optimize!(mod::LLVM.Module, tm::LLVM.TargetMachine) @ Enzyme.Compiler ~/.julia/packages/Enzyme/EPXUy/src/compiler/optimize.jl:181 [6] compile_unhooked(output::Symbol, job::GPUCompiler.CompilerJob{Enzyme.Compiler.EnzymeTarget{GPUCompiler.NativeCompilerTarget}, Enzyme.Compiler.EnzymeCompilerParams{Enzyme.Compiler.PrimalCompilerParams}}) @ Enzyme.Compiler ~/.julia/packages/Enzyme/EPXUy/src/compiler.jl:4774 [7] compile(target::Symbol, job::GPUCompiler.CompilerJob; kwargs::@Kwargs{}) @ GPUCompiler ~/.julia/packages/GPUCompiler/Gp8bZ/src/driver.jl:67 [8] compile @ ~/.julia/packages/GPUCompiler/Gp8bZ/src/driver.jl:55 [inlined] [9] _thunk(job::GPUCompiler.CompilerJob{Enzyme.Compiler.EnzymeTarget{GPUCompiler.NativeCompilerTarget}, Enzyme.Compiler.EnzymeCompilerParams{Enzyme.Compiler.PrimalCompilerParams}}, postopt::Bool) @ Enzyme.Compiler ~/.julia/packages/Enzyme/EPXUy/src/compiler.jl:5960 [10] _thunk @ ~/.julia/packages/Enzyme/EPXUy/src/compiler.jl:5958 [inlined] [11] cached_compilation @ ~/.julia/packages/Enzyme/EPXUy/src/compiler.jl:6015 [inlined] [12] thunkbase(mi::Core.MethodInstance, World::UInt64, FA::Type{<:Annotation}, A::Type{<:Annotation}, TT::Type, Mode::Enzyme.API.CDerivativeMode, width::Int64, ModifiedBetween::NTuple{N, Bool} where N, ReturnPrimal::Bool, ShadowInit::Bool, ABI::Type, ErrIfFuncWritten::Bool, RuntimeActivity::Bool, StrongZero::Bool, edges::Vector{Any}) @ Enzyme.Compiler ~/.julia/packages/Enzyme/EPXUy/src/compiler.jl:6131 [13] thunk_generator(world::UInt64, source::Union{LineNumberNode, Method}, FA::Type, A::Type, TT::Type, Mode::Enzyme.API.CDerivativeMode, Width::Int64, ModifiedBetween::NTuple{N, Bool} where N, ReturnPrimal::Bool, ShadowInit::Bool, ABI::Type, ErrIfFuncWritten::Bool, RuntimeActivity::Bool, StrongZero::Bool, self::Any, fakeworld::Any, fa::Type, a::Type, tt::Type, mode::Type, width::Type, modifiedbetween::Type, returnprimal::Type, shadowinit::Type, abi::Type, erriffuncwritten::Type, runtimeactivity::Type, strongzero::Type) @ Enzyme.Compiler ~/.julia/packages/Enzyme/EPXUy/src/compiler.jl:6275 [14] autodiff @ ~/.julia/packages/Enzyme/EPXUy/src/Enzyme.jl:502 [inlined] [15] autodiff @ ~/.julia/packages/Enzyme/EPXUy/src/Enzyme.jl:562 [inlined] [16] autodiff(mode::ReverseMode{false, false, false, FFIABI, false, false}, f::typeof(f_vec), args::Duplicated{Vector{Float64}}) @ Enzyme ~/.julia/packages/Enzyme/EPXUy/src/Enzyme.jl:534 [17] top-level scope @ ~/.julia/packages/QuadGK/7rND3/test/runtests.jl:469 [18] macro expansion @ /opt/julia/share/julia/stdlib/v1.14/Test/src/Test.jl:1961 [inlined] [19] macro expansion @ ~/.julia/packages/QuadGK/7rND3/test/runtests.jl:481 [inlined] [20] macro expansion @ /opt/julia/share/julia/stdlib/v1.14/Test/src/Test.jl:865 [inlined] [21] macro expansion @ ~/.julia/packages/QuadGK/7rND3/test/runtests.jl:481 [inlined] Stacktrace: [1] do_test_throws(result::Test.ExecutionResult, orig_expr::Any, extype::Any) @ Test /opt/julia/share/julia/stdlib/v1.14/Test/src/Test.jl:910 [2] top-level scope @ ~/.julia/packages/QuadGK/7rND3/test/runtests.jl:469 [3] macro expansion @ /opt/julia/share/julia/stdlib/v1.14/Test/src/Test.jl:1961 [inlined] [4] macro expansion @ ~/.julia/packages/QuadGK/7rND3/test/runtests.jl:481 [inlined] Test Summary: | Fail Error Total Time Enzyme | 1 6 7 6m24.8s RNG of the outermost testset: Random.Xoshiro(0xc91d943395f284bd, 0x4c27e346cce87bd6, 0xa4bfa959877b89a7, 0xcb51f178f47dfcfc, 0x7491271651879366) ERROR: LoadError: Some tests did not pass: 0 passed, 1 failed, 6 errored, 0 broken. in expression starting at /home/pkgeval/.julia/packages/QuadGK/7rND3/test/runtests.jl:456 Testing failed after 698.83s ERROR: LoadError: Package QuadGK errored during testing Stacktrace: [1] pkgerror(msg::String) @ Pkg.Types /opt/julia/share/julia/stdlib/v1.14/Pkg/src/Types.jl:68 [2] test(ctx::Pkg.Types.Context, pkgs::Vector{PackageSpec}; coverage::Bool, julia_args::Cmd, test_args::Cmd, test_fn::Nothing, force_latest_compatible_version::Bool, allow_earlier_backwards_compatible_versions::Bool, allow_reresolve::Bool) @ Pkg.Operations /opt/julia/share/julia/stdlib/v1.14/Pkg/src/Operations.jl:2946 [3] test @ /opt/julia/share/julia/stdlib/v1.14/Pkg/src/Operations.jl:2795 [inlined] [4] test(ctx::Pkg.Types.Context, pkgs::Vector{PackageSpec}; coverage::Bool, test_fn::Nothing, julia_args::Cmd, test_args::Cmd, force_latest_compatible_version::Bool, allow_earlier_backwards_compatible_versions::Bool, allow_reresolve::Bool, kwargs::@Kwargs{io::IOContext{IO}}) @ Pkg.API /opt/julia/share/julia/stdlib/v1.14/Pkg/src/API.jl:572 [5] kwcall(::@NamedTuple{julia_args::Cmd, io::IOContext{IO}}, ::typeof(Pkg.API.test), ctx::Pkg.Types.Context, pkgs::Vector{PackageSpec}) @ Pkg.API /opt/julia/share/julia/stdlib/v1.14/Pkg/src/API.jl:548 [6] test(pkgs::Vector{PackageSpec}; io::IOContext{IO}, kwargs::@Kwargs{julia_args::Cmd}) @ Pkg.API /opt/julia/share/julia/stdlib/v1.14/Pkg/src/API.jl:172 [7] kwcall(::@NamedTuple{julia_args::Cmd}, ::typeof(Pkg.API.test), pkgs::Vector{PackageSpec}) @ Pkg.API /opt/julia/share/julia/stdlib/v1.14/Pkg/src/API.jl:161 [8] test(pkgs::Vector{String}; kwargs::@Kwargs{julia_args::Cmd}) @ Pkg.API /opt/julia/share/julia/stdlib/v1.14/Pkg/src/API.jl:160 [9] test @ /opt/julia/share/julia/stdlib/v1.14/Pkg/src/API.jl:160 [inlined] [10] kwcall(::@NamedTuple{julia_args::Cmd}, ::typeof(Pkg.API.test), pkg::String) @ Pkg.API /opt/julia/share/julia/stdlib/v1.14/Pkg/src/API.jl:159 [11] top-level scope @ /PkgEval.jl/scripts/evaluate.jl:219 [12] include(mod::Module, _path::String) @ Base ./Base.jl:309 [13] exec_options(opts::Base.JLOptions) @ Base ./client.jl:344 [14] _start() @ Base ./client.jl:577 in expression starting at /PkgEval.jl/scripts/evaluate.jl:210 PkgEval failed after 741.78s: package tests unexpectedly errored