Package evaluation of ECCO on Julia 1.10.8 (92f03a4775*) started at 2025-02-25T15:31:00.548 ################################################################################ # Set-up # Installing PkgEval dependencies (TestEnv)... Set-up completed after 4.95s ################################################################################ # Installation # Installing ECCO... Resolving package versions... Updating `~/.julia/environments/v1.10/Project.toml` [485acfd6] + ECCO v0.1.1 Updating `~/.julia/environments/v1.10/Manifest.toml` [621f4979] + AbstractFFTs v1.5.0 [79e6a3ab] + Adapt v4.2.0 [3dfee02d] + AirSeaFluxes v0.1.4 [66dad0bd] + AliasTables v1.1.3 [4fba245c] + ArrayInterface v7.18.0 [a9b6321e] + Atomix v1.1.0 [d1d4a3ce] + BitFlags v0.1.9 [fa961155] + CEnum v0.5.0 [179af706] + CFTime v0.1.4 [336ed68f] + CSV v0.10.15 [81a5f4ea] + CatViews v1.0.0 [082447d4] + ChainRules v1.72.2 [d360d2e6] + ChainRulesCore v1.25.1 [f6adb021] + ClimateModels v0.3.8 [9e9a4d37] + Climatology v0.5.14 [944b1d66] + CodecZlib v0.7.8 [3da002f7] + ColorTypes v0.12.0 [bbf7d656] + CommonSubexpressions v0.3.1 [34da2185] + Compat v4.16.0 [f0e56b4a] + ConcurrentUtilities v2.5.0 [187b0558] + ConstructionBase v1.5.8 [a8cc5b0e] + Crayons v4.1.1 [9a962f9c] + DataAPI v1.16.0 [124859b0] + DataDeps v0.7.13 [a93c6f00] + DataFrames v1.7.0 [864edb3b] + DataStructures v0.18.20 [e2d170a0] + DataValueInterfaces v1.0.0 [9c0b9be8] + Dataverse v0.2.5 [39dd38d3] + Dierckx v0.5.4 [163ba53b] + DiffResults v1.1.0 [b552c78f] + DiffRules v1.15.1 [b4f34e82] + Distances v0.10.12 [ffbed154] + DocStringExtensions v0.9.3 [485acfd6] + ECCO v0.1.1 [7da242da] + Enzyme v0.13.30 [f151be2c] + EnzymeCore v0.8.8 [460bff9d] + ExceptionUnwrapping v0.1.11 [e2ba6199] + ExprTools v0.1.10 [411431e0] + Extents v0.1.5 [5789e2e9] + FileIO v1.16.6 [48062228] + FilePathsBase v0.9.23 [1a297f60] + FillArrays v1.13.0 [6a86dc24] + FiniteDiff v2.27.0 [53c48c17] + FixedPointNumbers v0.8.5 [c58ffaec] + FortranFiles v0.6.0 [f6369f11] + ForwardDiff v0.10.38 [0c68f7d7] + GPUArrays v11.2.2 [46192b85] + GPUArraysCore v0.2.0 [61eb1bfa] + GPUCompiler v1.2.0 [68eda718] + GeoFormatTypes v0.4.4 [cf35fbd7] + GeoInterface v1.4.1 [0edc0954] + GeoInterfaceMakie v0.1.9 [0329782f] + GeoInterfaceRecipes v1.0.2 [61d90e0f] + GeoJSON v0.8.2 [5c1252a2] + GeometryBasics v0.5.5 [d7ba0133] + Git v1.3.1 [c27321d9] + Glob v1.3.1 [cd3eb016] + HTTP v1.10.15 [076d061b] + HashArrayMappedTries v0.2.0 [7869d1d1] + IRTools v0.4.14 [842dd82b] + InlineStrings v1.4.3 [8197267c] + IntervalSets v0.7.10 [41ab1584] + InvertedIndices v1.3.1 [92d709cd] + IrrationalConstants v0.2.4 [c8e1da08] + IterTools v1.10.0 [82899510] + IteratorInterfaceExtensions v1.0.0 [033835bb] + JLD2 v0.5.11 [692b3bcd] + JLLWrappers v1.7.0 [682c06a0] + JSON v0.21.4 [0f8b85d8] + JSON3 v1.14.1 [8e2b3108] + KahanSummation v0.3.1 [63c18a36] + KernelAbstractions v0.9.34 [929cbde3] + LLVM v9.2.0 [8ac3fa9e] + LRUCache v1.6.1 [b964fa9f] + LaTeXStrings v1.4.0 [d3d80556] + LineSearches v7.3.0 [2ab3a3ac] + LogExpFunctions v0.3.29 [e6f89c97] + LoggingExtras v1.1.0 [dce5fa8e] + MITgcm v0.5.2 [1914dd2f] + MacroTools v0.5.15 [20f20a25] + MakieCore v0.9.0 [739be429] + MbedTLS v1.1.9 [cb8c808f] + MeshArrays v0.3.20 [e1d29d7a] + Missings v1.2.0 [d41bc354] + NLSolversBase v7.8.3 [77ba4419] + NaNMath v1.1.2 [b8a86587] + NearestNeighbors v0.4.21 [d8793406] + ObjectFile v0.4.3 [510215fc] + Observables v0.5.5 [6fe1bfb0] + OffsetArrays v1.15.0 [4d8831e6] + OpenSSL v1.4.3 [429524aa] + Optim v1.11.0 [bac558e1] + OrderedCollections v1.8.0 [d96e819e] + Parameters v0.12.3 [69de0a69] + Parsers v2.8.1 [2dfb63ee] + PooledArrays v1.4.3 [85a6dd25] + PositiveFactorizations v0.2.4 [aea7be01] + PrecompileTools v1.2.1 [21216c6a] + Preferences v1.4.3 [08abe8d2] + PrettyTables v2.4.0 [43287f4e] + PtrArrays v1.3.0 [c1ae055f] + RealDot v0.1.0 [3cdcf5f2] + RecipesBase v1.3.4 [189a3867] + Reexport v1.2.2 [ae029012] + Requires v1.3.0 [b0e4dd01] + RollingFunctions v0.8.1 [08e62803] + STAC v0.1.3 [7e506255] + ScopedValues v1.3.0 [6c6a2e73] + Scratch v1.2.1 [91c51154] + SentinelArrays v1.4.8 [efcf1570] + Setfield v1.1.1 [777ac1f9] + SimpleBufferStream v1.2.0 [a2af1166] + SortingAlgorithms v1.2.1 [dc90abb0] + SparseInverseSubset v0.1.2 [276daf66] + SpecialFunctions v2.5.0 [90137ffa] + StaticArrays v1.9.12 [1e83bf80] + StaticArraysCore v1.4.3 [82ae8749] + StatsAPI v1.7.0 [2913bbd2] + StatsBase v0.34.4 [892a3eda] + StringManipulation v0.4.1 [09ab397b] + StructArrays v0.7.0 [53d494c1] + StructIO v0.3.1 [856f2bd8] + StructTypes v1.11.0 [fd094767] + Suppressor v0.2.8 [3783bdb8] + TableTraits v1.0.1 [bd369af6] + Tables v1.12.0 [a759f4b9] + TimerOutputs v0.5.27 [3bb67fe8] + TranscodingStreams v0.11.3 [5c2747f8] + URIs v1.5.1 [3a884ed6] + UnPack v1.0.2 [1986cc42] + Unitful v1.22.0 [013be700] + UnsafeAtomics v0.3.0 [ea10d353] + WeakRefStrings v1.4.2 [76eceee3] + WorkerUtilities v1.6.1 [a5390f91] + ZipFile v0.10.1 ⌅ [e88e6eb3] + Zygote v0.6.75 [700de1a5] + ZygoteRules v0.2.7 [cd4c43a9] + Dierckx_jll v0.2.0+0 [5ae413db] + EarCut_jll v2.2.4+0 [7cc45869] + Enzyme_jll v0.0.172+0 [2e619515] + Expat_jll v2.6.5+0 [f8c6e375] + Git_jll v2.47.1+0 [dad2f222] + LLVMExtra_jll v0.0.35+0 [94ce4f54] + Libiconv_jll v1.18.0+0 [458c3c95] + OpenSSL_jll v3.0.16+0 [efe28fd5] + OpenSpecFun_jll v0.5.6+0 [0dad84c5] + ArgTools v1.1.1 [56f22d72] + Artifacts [2a0f44e3] + Base64 [ade2ca70] + Dates [8ba89e20] + Distributed [f43a241f] + Downloads v1.6.0 [7b1f6079] + FileWatching [9fa8497b] + Future [b77e0a4c] + InteractiveUtils [4af54fe1] + LazyArtifacts [b27032c2] + LibCURL v0.6.4 [76f85450] + LibGit2 [8f399da3] + Libdl [37e2e46d] + LinearAlgebra [56ddb016] + Logging [d6f4376e] + Markdown [a63ad114] + Mmap [ca575930] + NetworkOptions v1.2.0 [44cfe95a] + Pkg v1.10.0 [de0858da] + Printf [3fa0cd96] + REPL [9a3f8284] + Random [ea8e919c] + SHA v0.7.0 [9e88b42a] + Serialization [1a1011a3] + SharedArrays [6462fe0b] + Sockets [2f01184e] + SparseArrays v1.10.0 [10745b16] + Statistics v1.10.0 [4607b0f0] + SuiteSparse [fa267f1f] + TOML v1.0.3 [a4e569a6] + Tar v1.10.0 [8dfed614] + Test [cf7118a7] + UUIDs [4ec0a83e] + Unicode [e66e0078] + CompilerSupportLibraries_jll v1.1.1+0 [deac9b47] + LibCURL_jll v8.4.0+0 [e37daf67] + LibGit2_jll v1.6.4+0 [29816b5a] + LibSSH2_jll v1.11.0+1 [c8ffd9c3] + MbedTLS_jll v2.28.2+1 [14a3606d] + MozillaCACerts_jll v2023.1.10 [4536629a] + OpenBLAS_jll v0.3.23+4 [05823500] + OpenLibm_jll v0.8.1+4 [efcefdf7] + PCRE2_jll v10.42.0+1 [bea87d4a] + SuiteSparse_jll v7.2.1+1 [83775a58] + Zlib_jll v1.2.13+1 [8e850b90] + libblastrampoline_jll v5.11.0+0 [8e850ede] + nghttp2_jll v1.52.0+1 [3f19e933] + p7zip_jll v17.4.0+2 Info Packages marked with ⌅ have new versions available but compatibility constraints restrict them from upgrading. To see why use `status --outdated -m` Installation completed after 10.7s ################################################################################ # Precompilation # Precompiling PkgEval dependencies... Precompiling package dependencies... Precompilation completed after 576.56s ################################################################################ # Testing # Testing ECCO Status `/tmp/jl_pWAlmi/Project.toml` [485acfd6] ECCO v0.1.1 [8dfed614] Test Status `/tmp/jl_pWAlmi/Manifest.toml` [621f4979] AbstractFFTs v1.5.0 [79e6a3ab] Adapt v4.2.0 [3dfee02d] AirSeaFluxes v0.1.4 [66dad0bd] AliasTables v1.1.3 [4fba245c] ArrayInterface v7.18.0 [a9b6321e] Atomix v1.1.0 [d1d4a3ce] BitFlags v0.1.9 [fa961155] CEnum v0.5.0 [179af706] CFTime v0.1.4 [336ed68f] CSV v0.10.15 [81a5f4ea] CatViews v1.0.0 [082447d4] ChainRules v1.72.2 [d360d2e6] ChainRulesCore v1.25.1 [f6adb021] ClimateModels v0.3.8 [9e9a4d37] Climatology v0.5.14 [944b1d66] CodecZlib v0.7.8 [3da002f7] ColorTypes v0.12.0 [bbf7d656] CommonSubexpressions v0.3.1 [34da2185] Compat v4.16.0 [f0e56b4a] ConcurrentUtilities v2.5.0 [187b0558] ConstructionBase v1.5.8 [a8cc5b0e] Crayons v4.1.1 [9a962f9c] DataAPI v1.16.0 [124859b0] DataDeps v0.7.13 [a93c6f00] DataFrames v1.7.0 [864edb3b] DataStructures v0.18.20 [e2d170a0] DataValueInterfaces v1.0.0 [9c0b9be8] Dataverse v0.2.5 [39dd38d3] Dierckx v0.5.4 [163ba53b] DiffResults v1.1.0 [b552c78f] DiffRules v1.15.1 [b4f34e82] Distances v0.10.12 [ffbed154] DocStringExtensions v0.9.3 [485acfd6] ECCO v0.1.1 [7da242da] Enzyme v0.13.30 [f151be2c] EnzymeCore v0.8.8 [460bff9d] ExceptionUnwrapping v0.1.11 [e2ba6199] ExprTools v0.1.10 [411431e0] Extents v0.1.5 [5789e2e9] FileIO v1.16.6 [48062228] FilePathsBase v0.9.23 [1a297f60] FillArrays v1.13.0 [6a86dc24] FiniteDiff v2.27.0 [53c48c17] FixedPointNumbers v0.8.5 [c58ffaec] FortranFiles v0.6.0 [f6369f11] ForwardDiff v0.10.38 [0c68f7d7] GPUArrays v11.2.2 [46192b85] GPUArraysCore v0.2.0 [61eb1bfa] GPUCompiler v1.2.0 [68eda718] GeoFormatTypes v0.4.4 [cf35fbd7] GeoInterface v1.4.1 [0edc0954] GeoInterfaceMakie v0.1.9 [0329782f] GeoInterfaceRecipes v1.0.2 [61d90e0f] GeoJSON v0.8.2 [5c1252a2] GeometryBasics v0.5.5 [d7ba0133] Git v1.3.1 [c27321d9] Glob v1.3.1 [cd3eb016] HTTP v1.10.15 [076d061b] HashArrayMappedTries v0.2.0 [7869d1d1] IRTools v0.4.14 [842dd82b] InlineStrings v1.4.3 [8197267c] IntervalSets v0.7.10 [41ab1584] InvertedIndices v1.3.1 [92d709cd] IrrationalConstants v0.2.4 [c8e1da08] IterTools v1.10.0 [82899510] IteratorInterfaceExtensions v1.0.0 [033835bb] JLD2 v0.5.11 [692b3bcd] JLLWrappers v1.7.0 [682c06a0] JSON v0.21.4 [0f8b85d8] JSON3 v1.14.1 [8e2b3108] KahanSummation v0.3.1 [63c18a36] KernelAbstractions v0.9.34 [929cbde3] LLVM v9.2.0 [8ac3fa9e] LRUCache v1.6.1 [b964fa9f] LaTeXStrings v1.4.0 [d3d80556] LineSearches v7.3.0 [2ab3a3ac] LogExpFunctions v0.3.29 [e6f89c97] LoggingExtras v1.1.0 [dce5fa8e] MITgcm v0.5.2 [1914dd2f] MacroTools v0.5.15 [20f20a25] MakieCore v0.9.0 [739be429] MbedTLS v1.1.9 [cb8c808f] MeshArrays v0.3.20 [e1d29d7a] Missings v1.2.0 [d41bc354] NLSolversBase v7.8.3 [77ba4419] NaNMath v1.1.2 [b8a86587] NearestNeighbors v0.4.21 [d8793406] ObjectFile v0.4.3 [510215fc] Observables v0.5.5 [6fe1bfb0] OffsetArrays v1.15.0 [4d8831e6] OpenSSL v1.4.3 [429524aa] Optim v1.11.0 [bac558e1] OrderedCollections v1.8.0 [d96e819e] Parameters v0.12.3 [69de0a69] Parsers v2.8.1 [2dfb63ee] PooledArrays v1.4.3 [85a6dd25] PositiveFactorizations v0.2.4 [aea7be01] PrecompileTools v1.2.1 [21216c6a] Preferences v1.4.3 [08abe8d2] PrettyTables v2.4.0 [43287f4e] PtrArrays v1.3.0 [c1ae055f] RealDot v0.1.0 [3cdcf5f2] RecipesBase v1.3.4 [189a3867] Reexport v1.2.2 [ae029012] Requires v1.3.0 [b0e4dd01] RollingFunctions v0.8.1 [08e62803] STAC v0.1.3 [7e506255] ScopedValues v1.3.0 [6c6a2e73] Scratch v1.2.1 [91c51154] SentinelArrays v1.4.8 [efcf1570] Setfield v1.1.1 [777ac1f9] SimpleBufferStream v1.2.0 [a2af1166] SortingAlgorithms v1.2.1 [dc90abb0] SparseInverseSubset v0.1.2 [276daf66] SpecialFunctions v2.5.0 [90137ffa] StaticArrays v1.9.12 [1e83bf80] StaticArraysCore v1.4.3 [82ae8749] StatsAPI v1.7.0 [2913bbd2] StatsBase v0.34.4 [892a3eda] StringManipulation v0.4.1 [09ab397b] StructArrays v0.7.0 [53d494c1] StructIO v0.3.1 [856f2bd8] StructTypes v1.11.0 [fd094767] Suppressor v0.2.8 [3783bdb8] TableTraits v1.0.1 [bd369af6] Tables v1.12.0 [a759f4b9] TimerOutputs v0.5.27 [3bb67fe8] TranscodingStreams v0.11.3 [5c2747f8] URIs v1.5.1 [3a884ed6] UnPack v1.0.2 [1986cc42] Unitful v1.22.0 [013be700] UnsafeAtomics v0.3.0 [ea10d353] WeakRefStrings v1.4.2 [76eceee3] WorkerUtilities v1.6.1 [a5390f91] ZipFile v0.10.1 ⌅ [e88e6eb3] Zygote v0.6.75 [700de1a5] ZygoteRules v0.2.7 [cd4c43a9] Dierckx_jll v0.2.0+0 [5ae413db] EarCut_jll v2.2.4+0 [7cc45869] Enzyme_jll v0.0.172+0 [2e619515] Expat_jll v2.6.5+0 [f8c6e375] Git_jll v2.47.1+0 [dad2f222] LLVMExtra_jll v0.0.35+0 [94ce4f54] Libiconv_jll v1.18.0+0 [458c3c95] OpenSSL_jll v3.0.16+0 [efe28fd5] OpenSpecFun_jll v0.5.6+0 [0dad84c5] ArgTools v1.1.1 [56f22d72] Artifacts [2a0f44e3] Base64 [ade2ca70] Dates [8ba89e20] Distributed [f43a241f] Downloads v1.6.0 [7b1f6079] FileWatching [9fa8497b] Future [b77e0a4c] InteractiveUtils [4af54fe1] LazyArtifacts [b27032c2] LibCURL v0.6.4 [76f85450] LibGit2 [8f399da3] Libdl [37e2e46d] LinearAlgebra [56ddb016] Logging [d6f4376e] Markdown [a63ad114] Mmap [ca575930] NetworkOptions v1.2.0 [44cfe95a] Pkg v1.10.0 [de0858da] Printf [3fa0cd96] REPL [9a3f8284] Random [ea8e919c] SHA v0.7.0 [9e88b42a] Serialization [1a1011a3] SharedArrays [6462fe0b] Sockets [2f01184e] SparseArrays v1.10.0 [10745b16] Statistics v1.10.0 [4607b0f0] SuiteSparse [fa267f1f] TOML v1.0.3 [a4e569a6] Tar v1.10.0 [8dfed614] Test [cf7118a7] UUIDs [4ec0a83e] Unicode [e66e0078] CompilerSupportLibraries_jll v1.1.1+0 [deac9b47] LibCURL_jll v8.4.0+0 [e37daf67] LibGit2_jll v1.6.4+0 [29816b5a] LibSSH2_jll v1.11.0+1 [c8ffd9c3] MbedTLS_jll v2.28.2+1 [14a3606d] MozillaCACerts_jll v2023.1.10 [4536629a] OpenBLAS_jll v0.3.23+4 [05823500] OpenLibm_jll v0.8.1+4 [efcefdf7] PCRE2_jll v10.42.0+1 [bea87d4a] SuiteSparse_jll v7.2.1+1 [83775a58] Zlib_jll v1.2.13+1 [8e850b90] libblastrampoline_jll v5.11.0+0 [8e850ede] nghttp2_jll v1.52.0+1 [3f19e933] p7zip_jll v17.4.0+2 Info Packages marked with ⌅ have new versions available but compatibility constraints restrict them from upgrading. Testing Running tests... ; Function Attrs: mustprogress willreturn define internal fastcc "enzyme_type"="{[-1]:Float@double}" { double } @diffejulia__forward_problem_1_6996(double "enzyme_type"="{[-1]:Float@double}" "enzymejl_parmtype"="137725943506992" "enzymejl_parmtype_ref"="0" %0, double %differeturn) unnamed_addr #36 !dbg !3531 { top: %newstruct54 = alloca { [1 x double], [2 x i64] }, align 8 %newstruct404 = alloca [1 x [2 x i64]], align 8 %newstruct412 = alloca [1 x [2 x i64]], align 8 %newstruct420 = alloca [1 x [2 x i64]], align 8 %newstruct428 = alloca [1 x [2 x i64]], align 8 %newstruct575 = alloca [1 x [2 x i64]], align 8 %newstruct583 = alloca [1 x [2 x i64]], align 8 %newstruct685 = alloca [1 x [2 x i64]], align 8 %newstruct702 = alloca [1 x [2 x i64]], align 8 %newstruct710 = alloca [1 x [2 x i64]], align 8 %newstruct718 = alloca [1 x [2 x i64]], align 8 %newstruct849 = alloca [1 x [2 x i64]], align 8 %1 = alloca { [2 x {} addrspace(10)*], [2 x i64] }, align 8 %newstruct948 = alloca [1 x [2 x i64]], align 8 %newstruct992 = alloca [1 x [1 x i64]], align 8 %newstruct997 = alloca [1 x [1 x i64]], align 8 %2 = alloca [1 x {} addrspace(10)*], align 8 %3 = alloca { {} addrspace(10)*, [1 x [2 x i64]], i64, i64 }, align 8 %4 = call {}*** @julia.get_pgcstack() #39 %current_task11552 = getelementptr inbounds {}**, {}*** %4, i64 -14 %current_task1 = bitcast {}*** %current_task11552 to {}** %ptls_field1553 = getelementptr inbounds {}**, {}*** %4, i64 2 %5 = bitcast {}*** %ptls_field1553 to i64*** %ptls_load15541555 = load i64**, i64*** %5, align 8, !tbaa !38, !alias.scope !3532, !noalias !3535 %6 = getelementptr inbounds i64*, i64** %ptls_load15541555, i64 2 %safepoint = load i64*, i64** %6, align 8, !tbaa !42, !alias.scope !3537, !noalias !3540 fence syncscope("singlethread") seq_cst call void @julia.safepoint(i64* %safepoint) #39, !dbg !3542 fence syncscope("singlethread") seq_cst %7 = call {} addrspace(10)* @ijl_alloc_array_1d({} addrspace(10)* addrspacecast ({}* inttoptr (i64 137725871856384 to {}*) to {} addrspace(10)*), i64 30), !dbg !3543 %8 = bitcast {} addrspace(10)* %7 to i8 addrspace(13)* addrspace(10)*, !dbg !3543 %9 = load i8 addrspace(13)*, i8 addrspace(13)* addrspace(10)* %8, align 8, !dbg !3543 call void @llvm.memset.p13i8.i64(i8 addrspace(13)* align 8 %9, i8 0, i64 240, i1 false), !dbg !3543 %10 = call noalias nonnull "enzyme_type"="{[-1]:Pointer, [-1,0]:Pointer, [-1,0,-1]:Float@double, [-1,8]:Integer, [-1,9]:Integer, [-1,10]:Integer, [-1,11]:Integer, [-1,12]:Integer, [-1,13]:Integer, [-1,14]:Integer, [-1,15]:Integer, [-1,16]:Integer, [-1,17]:Integer, [-1,18]:Integer, [-1,19]:Integer, [-1,20]:Integer, [-1,21]:Integer, [-1,22]:Integer, [-1,23]:Integer, [-1,24]:Integer, [-1,25]:Integer, [-1,26]:Integer, [-1,27]:Integer, [-1,28]:Integer, [-1,29]:Integer, [-1,30]:Integer, [-1,31]:Integer, [-1,32]:Integer, [-1,33]:Integer, [-1,34]:Integer, [-1,35]:Integer, [-1,36]:Integer, [-1,37]:Integer, [-1,38]:Integer, [-1,39]:Integer}" {} addrspace(10)* @ijl_alloc_array_1d({} addrspace(10)* noundef addrspacecast ({}* inttoptr (i64 137725871856384 to {}*) to {} addrspace(10)*), i64 noundef 30) #40, !dbg !3543 %11 = addrspacecast {} addrspace(10)* %10 to { i8 addrspace(13)*, i64, i16, i16, i32 } addrspace(11)*, !dbg !3549 %arraylen_ptr = getelementptr inbounds { i8 addrspace(13)*, i64, i16, i16, i32 }, { i8 addrspace(13)*, i64, i16, i16, i32 } addrspace(11)* %11, i64 0, i32 1, !dbg !3549 %arraylen = load i64, i64 addrspace(11)* %arraylen_ptr, align 8, !dbg !3549, !tbaa !617, !range !620, !alias.scope !3555, !noalias !3558, !enzyme_inactive !0, !enzyme_type !567, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_UInt64 !0 %.not = icmp eq i64 %arraylen, 0, !dbg !3560 br i1 %.not, label %L32, label %L32.loopexit, !dbg !3553 L32.loopexit: ; preds = %top %"'ipc" = addrspacecast {} addrspace(10)* %7 to i8 addrspace(13)* addrspace(11)* %12 = addrspacecast {} addrspace(10)* %10 to i8 addrspace(13)* addrspace(11)* %"arrayptr15569682'ipl" = load i8 addrspace(13)*, i8 addrspace(13)* addrspace(11)* %"'ipc", align 8, !tbaa !628, !alias.scope !3564, !noalias !3565, !nonnull !0 %arrayptr15569682 = load i8 addrspace(13)*, i8 addrspace(13)* addrspace(11)* %12, align 8, !tbaa !628, !alias.scope !3566, !noalias !3558, !nonnull !0, !enzyme_type !631, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_Ptr\7BFloat64\7D !0 %13 = shl nuw i64 %arraylen, 3, !dbg !3567 call void @llvm.memset.p13i8.i64(i8 addrspace(13)* nonnull align 8 %arrayptr15569682, i8 noundef 0, i64 %13, i1 noundef false) #39, !dbg !3567, !tbaa !633, !alias.scope !636, !noalias !3569 br label %L32, !dbg !3572 L32: ; preds = %L32.loopexit, %top %14 = call {} addrspace(10)* @ijl_alloc_array_1d({} addrspace(10)* addrspacecast ({}* inttoptr (i64 137725871856384 to {}*) to {} addrspace(10)*), i64 30), !dbg !3572 %15 = bitcast {} addrspace(10)* %14 to i8 addrspace(13)* addrspace(10)*, !dbg !3572 %16 = load i8 addrspace(13)*, i8 addrspace(13)* addrspace(10)* %15, align 8, !dbg !3572 call void @llvm.memset.p13i8.i64(i8 addrspace(13)* align 8 %16, i8 0, i64 240, i1 false), !dbg !3572 %17 = call noalias nonnull "enzyme_type"="{[-1]:Pointer, [-1,0]:Pointer, [-1,0,-1]:Float@double, [-1,8]:Integer, [-1,9]:Integer, [-1,10]:Integer, [-1,11]:Integer, [-1,12]:Integer, [-1,13]:Integer, [-1,14]:Integer, [-1,15]:Integer, [-1,16]:Integer, [-1,17]:Integer, [-1,18]:Integer, [-1,19]:Integer, [-1,20]:Integer, [-1,21]:Integer, [-1,22]:Integer, [-1,23]:Integer, [-1,24]:Integer, [-1,25]:Integer, [-1,26]:Integer, [-1,27]:Integer, [-1,28]:Integer, [-1,29]:Integer, [-1,30]:Integer, [-1,31]:Integer, [-1,32]:Integer, [-1,33]:Integer, [-1,34]:Integer, [-1,35]:Integer, [-1,36]:Integer, [-1,37]:Integer, [-1,38]:Integer, [-1,39]:Integer}" {} addrspace(10)* @ijl_alloc_array_1d({} addrspace(10)* noundef addrspacecast ({}* inttoptr (i64 137725871856384 to {}*) to {} addrspace(10)*), i64 noundef 30) #40, !dbg !3572 %18 = addrspacecast {} addrspace(10)* %17 to { i8 addrspace(13)*, i64, i16, i16, i32 } addrspace(11)*, !dbg !3578 %arraylen_ptr11 = getelementptr inbounds { i8 addrspace(13)*, i64, i16, i16, i32 }, { i8 addrspace(13)*, i64, i16, i16, i32 } addrspace(11)* %18, i64 0, i32 1, !dbg !3578 %arraylen12 = load i64, i64 addrspace(11)* %arraylen_ptr11, align 8, !dbg !3578, !tbaa !617, !range !620, !alias.scope !3584, !noalias !3587, !enzyme_inactive !0, !enzyme_type !567, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_UInt64 !0 %.not1558 = icmp eq i64 %arraylen12, 0, !dbg !3589 br i1 %.not1558, label %L63, label %L63.loopexit, !dbg !3582 L63.loopexit: ; preds = %L32 %"'ipc40" = addrspacecast {} addrspace(10)* %14 to i8 addrspace(13)* addrspace(11)* %19 = addrspacecast {} addrspace(10)* %17 to i8 addrspace(13)* addrspace(11)* %"arrayptr2615599683'ipl" = load i8 addrspace(13)*, i8 addrspace(13)* addrspace(11)* %"'ipc40", align 8, !tbaa !628, !alias.scope !3593, !noalias !3594, !nonnull !0 %arrayptr2615599683 = load i8 addrspace(13)*, i8 addrspace(13)* addrspace(11)* %19, align 8, !tbaa !628, !alias.scope !3595, !noalias !3587, !nonnull !0, !enzyme_type !631, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_Ptr\7BFloat64\7D !0 %20 = shl nuw i64 %arraylen12, 3, !dbg !3596 call void @llvm.memset.p13i8.i64(i8 addrspace(13)* nonnull align 8 %arrayptr2615599683, i8 noundef 0, i64 %20, i1 noundef false) #39, !dbg !3596, !tbaa !633, !alias.scope !636, !noalias !3569 br label %L63, !dbg !3598 L63: ; preds = %L63.loopexit, %L32 %21 = call noalias nonnull "enzyme_type"="{[-1]:Pointer, [-1,0]:Pointer, [-1,0,-1]:Float@double, [-1,8]:Integer, [-1,9]:Integer, [-1,10]:Integer, [-1,11]:Integer, [-1,12]:Integer, [-1,13]:Integer, [-1,14]:Integer, [-1,15]:Integer, [-1,16]:Integer, [-1,17]:Integer, [-1,18]:Integer, [-1,19]:Integer, [-1,20]:Integer, [-1,21]:Integer, [-1,22]:Integer, [-1,23]:Integer, [-1,24]:Integer, [-1,25]:Integer, [-1,26]:Integer, [-1,27]:Integer, [-1,28]:Integer, [-1,29]:Integer, [-1,30]:Integer, [-1,31]:Integer, [-1,32]:Integer, [-1,33]:Integer, [-1,34]:Integer, [-1,35]:Integer, [-1,36]:Integer, [-1,37]:Integer, [-1,38]:Integer, [-1,39]:Integer}" {} addrspace(10)* @ijl_alloc_array_1d({} addrspace(10)* noundef addrspacecast ({}* inttoptr (i64 137725871856384 to {}*) to {} addrspace(10)*), i64 noundef 31) #40, !dbg !3600 %22 = addrspacecast {} addrspace(10)* %21 to { i8 addrspace(13)*, i64, i16, i16, i32 } addrspace(11)*, !dbg !3605 %arraylen_ptr31 = getelementptr inbounds { i8 addrspace(13)*, i64, i16, i16, i32 }, { i8 addrspace(13)*, i64, i16, i16, i32 } addrspace(11)* %22, i64 0, i32 1, !dbg !3605 %arraylen32 = load i64, i64 addrspace(11)* %arraylen_ptr31, align 8, !dbg !3605, !tbaa !617, !range !620, !alias.scope !3611, !noalias !3614, !enzyme_inactive !0, !enzyme_type !567, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_UInt64 !0 %.not1561 = icmp eq i64 %arraylen32, 0, !dbg !3616 br i1 %.not1561, label %L95, label %L95.loopexit, !dbg !3609 L95.loopexit: ; preds = %L63 %23 = addrspacecast {} addrspace(10)* %21 to i8 addrspace(13)* addrspace(11)* %arrayptr4615629684 = load i8 addrspace(13)*, i8 addrspace(13)* addrspace(11)* %23, align 8, !tbaa !628, !alias.scope !3620, !noalias !3614, !nonnull !0, !enzyme_type !631, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_Ptr\7BFloat64\7D !0 %24 = shl nuw i64 %arraylen32, 3, !dbg !3621 call void @llvm.memset.p13i8.i64(i8 addrspace(13)* nonnull align 8 %arrayptr4615629684, i8 noundef 0, i64 %24, i1 noundef false) #39, !dbg !3621, !tbaa !633, !alias.scope !636, !noalias !3569 br label %L95, !dbg !3623 L95: ; preds = %L95.loopexit, %L63 %memcpy_refined_dst55 = getelementptr inbounds { [1 x double], [2 x i64] }, { [1 x double], [2 x i64] }* %newstruct54, i64 0, i32 0, i64 0, !dbg !3629 store double 1.000000e+00, double* %memcpy_refined_dst55, align 8, !dbg !3629, !tbaa !864, !alias.scope !866, !noalias !3630 %newstruct52.sroa.0.0..sroa_idx = getelementptr inbounds { [1 x double], [2 x i64] }, { [1 x double], [2 x i64] }* %newstruct54, i64 0, i32 1, i64 0, !dbg !3629 store i64 1, i64* %newstruct52.sroa.0.0..sroa_idx, align 8, !dbg !3629, !tbaa !864, !alias.scope !866, !noalias !3630 %newstruct52.sroa.2.0..sroa_idx1442 = getelementptr inbounds { [1 x double], [2 x i64] }, { [1 x double], [2 x i64] }* %newstruct54, i64 0, i32 1, i64 1, !dbg !3629 store i64 31, i64* %newstruct52.sroa.2.0..sroa_idx1442, align 8, !dbg !3629, !tbaa !864, !alias.scope !866, !noalias !3630 %25 = addrspacecast { [1 x double], [2 x i64] }* %newstruct54 to { [1 x double], [2 x i64] } addrspace(11)*, !dbg !3628 %_augmented = call fastcc { { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* }, {} addrspace(10)*, {} addrspace(10)* } @augmented_julia_collect_7087({ [1 x double], [2 x i64] } addrspace(11)* nocapture nofree readonly align 8 %25), !dbg !3628 %subcache = extractvalue { { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* }, {} addrspace(10)*, {} addrspace(10)* } %_augmented, 0, !dbg !3628 %26 = extractvalue { { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* }, {} addrspace(10)*, {} addrspace(10)* } %_augmented, 1, !dbg !3628 %"'ac" = extractvalue { { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* }, {} addrspace(10)*, {} addrspace(10)* } %_augmented, 2, !dbg !3628 %27 = call {} addrspace(10)* @ijl_alloc_array_1d({} addrspace(10)* addrspacecast ({}* inttoptr (i64 137725871856384 to {}*) to {} addrspace(10)*), i64 31), !dbg !3631 %28 = bitcast {} addrspace(10)* %27 to i8 addrspace(13)* addrspace(10)*, !dbg !3631 %29 = load i8 addrspace(13)*, i8 addrspace(13)* addrspace(10)* %28, align 8, !dbg !3631 call void @llvm.memset.p13i8.i64(i8 addrspace(13)* align 8 %29, i8 0, i64 248, i1 false), !dbg !3631 %30 = call noalias nonnull "enzyme_type"="{[-1]:Pointer, [-1,0]:Pointer, [-1,0,-1]:Float@double, [-1,8]:Integer, [-1,9]:Integer, [-1,10]:Integer, [-1,11]:Integer, [-1,12]:Integer, [-1,13]:Integer, [-1,14]:Integer, [-1,15]:Integer, [-1,16]:Integer, [-1,17]:Integer, [-1,18]:Integer, [-1,19]:Integer, [-1,20]:Integer, [-1,21]:Integer, [-1,22]:Integer, [-1,23]:Integer, [-1,24]:Integer, [-1,25]:Integer, [-1,26]:Integer, [-1,27]:Integer, [-1,28]:Integer, [-1,29]:Integer, [-1,30]:Integer, [-1,31]:Integer, [-1,32]:Integer, [-1,33]:Integer, [-1,34]:Integer, [-1,35]:Integer, [-1,36]:Integer, [-1,37]:Integer, [-1,38]:Integer, [-1,39]:Integer}" {} addrspace(10)* @ijl_alloc_array_1d({} addrspace(10)* noundef addrspacecast ({}* inttoptr (i64 137725871856384 to {}*) to {} addrspace(10)*), i64 noundef 31) #40, !dbg !3631 %31 = addrspacecast {} addrspace(10)* %30 to { i8 addrspace(13)*, i64, i16, i16, i32 } addrspace(11)*, !dbg !3637 %arraylen_ptr56 = getelementptr inbounds { i8 addrspace(13)*, i64, i16, i16, i32 }, { i8 addrspace(13)*, i64, i16, i16, i32 } addrspace(11)* %31, i64 0, i32 1, !dbg !3637 %arraylen57 = load i64, i64 addrspace(11)* %arraylen_ptr56, align 8, !dbg !3637, !tbaa !45, !range !620, !alias.scope !3643, !noalias !3646, !enzyme_inactive !0, !enzyme_type !567, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_UInt64 !0 %.not1564 = icmp eq i64 %arraylen57, 0, !dbg !3648 br i1 %.not1564, label %L139, label %L139.loopexit, !dbg !3641 L139.loopexit: ; preds = %L95 %"'ipc42" = addrspacecast {} addrspace(10)* %27 to i8 addrspace(13)* addrspace(11)* %32 = addrspacecast {} addrspace(10)* %30 to i8 addrspace(13)* addrspace(11)* %"arrayptr7115659685'ipl" = load i8 addrspace(13)*, i8 addrspace(13)* addrspace(11)* %"'ipc42", align 8, !tbaa !628, !alias.scope !3652, !noalias !3653, !nonnull !0 %arrayptr7115659685 = load i8 addrspace(13)*, i8 addrspace(13)* addrspace(11)* %32, align 8, !tbaa !628, !alias.scope !3654, !noalias !3655, !nonnull !0, !enzyme_type !631, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_Ptr\7BFloat64\7D !0 %33 = shl nuw i64 %arraylen57, 3, !dbg !3656 call void @llvm.memset.p13i8.i64(i8 addrspace(13)* nonnull align 8 %arrayptr7115659685, i8 noundef 0, i64 %33, i1 noundef false) #39, !dbg !3656, !tbaa !633, !alias.scope !636, !noalias !3569 br label %L139, !dbg !3658 L139: ; preds = %L139.loopexit, %L95 %34 = call {} addrspace(10)* @ijl_alloc_array_1d({} addrspace(10)* addrspacecast ({}* inttoptr (i64 137725871856384 to {}*) to {} addrspace(10)*), i64 31), !dbg !3658 %35 = bitcast {} addrspace(10)* %34 to i8 addrspace(13)* addrspace(10)*, !dbg !3658 %36 = load i8 addrspace(13)*, i8 addrspace(13)* addrspace(10)* %35, align 8, !dbg !3658 call void @llvm.memset.p13i8.i64(i8 addrspace(13)* align 8 %36, i8 0, i64 248, i1 false), !dbg !3658 %37 = call noalias nonnull "enzyme_type"="{[-1]:Pointer, [-1,0]:Pointer, [-1,0,-1]:Float@double, [-1,8]:Integer, [-1,9]:Integer, [-1,10]:Integer, [-1,11]:Integer, [-1,12]:Integer, [-1,13]:Integer, [-1,14]:Integer, [-1,15]:Integer, [-1,16]:Integer, [-1,17]:Integer, [-1,18]:Integer, [-1,19]:Integer, [-1,20]:Integer, [-1,21]:Integer, [-1,22]:Integer, [-1,23]:Integer, [-1,24]:Integer, [-1,25]:Integer, [-1,26]:Integer, [-1,27]:Integer, [-1,28]:Integer, [-1,29]:Integer, [-1,30]:Integer, [-1,31]:Integer, [-1,32]:Integer, [-1,33]:Integer, [-1,34]:Integer, [-1,35]:Integer, [-1,36]:Integer, [-1,37]:Integer, [-1,38]:Integer, [-1,39]:Integer}" {} addrspace(10)* @ijl_alloc_array_1d({} addrspace(10)* noundef addrspacecast ({}* inttoptr (i64 137725871856384 to {}*) to {} addrspace(10)*), i64 noundef 31) #40, !dbg !3658 %_replacementA = phi {} addrspace(11)* , !dbg !3664 %38 = addrspacecast {} addrspace(10)* %37 to { i8 addrspace(13)*, i64, i16, i16, i32 } addrspace(11)*, !dbg !3664 %arraylen_ptr76 = getelementptr inbounds { i8 addrspace(13)*, i64, i16, i16, i32 }, { i8 addrspace(13)*, i64, i16, i16, i32 } addrspace(11)* %38, i64 0, i32 1, !dbg !3664 %arraylen77 = load i64, i64 addrspace(11)* %arraylen_ptr76, align 8, !dbg !3664, !tbaa !617, !range !620, !alias.scope !3670, !noalias !3673, !enzyme_inactive !0, !enzyme_type !567, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_UInt64 !0 %.not1567 = icmp eq i64 %arraylen77, 0, !dbg !3675 br i1 %.not1567, label %L171, label %L171.loopexit, !dbg !3668 L171.loopexit: ; preds = %L139 %"'ipc44" = addrspacecast {} addrspace(10)* %34 to i8 addrspace(13)* addrspace(11)* %39 = addrspacecast {} addrspace(10)* %37 to i8 addrspace(13)* addrspace(11)* %"arrayptr9115689686'ipl" = load i8 addrspace(13)*, i8 addrspace(13)* addrspace(11)* %"'ipc44", align 8, !tbaa !628, !alias.scope !3679, !noalias !3680, !nonnull !0 %arrayptr9115689686 = load i8 addrspace(13)*, i8 addrspace(13)* addrspace(11)* %39, align 8, !tbaa !628, !alias.scope !3681, !noalias !3673, !nonnull !0, !enzyme_type !631, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_Ptr\7BFloat64\7D !0 %40 = shl nuw i64 %arraylen77, 3, !dbg !3682 call void @llvm.memset.p13i8.i64(i8 addrspace(13)* nonnull align 8 %arrayptr9115689686, i8 noundef 0, i64 %40, i1 noundef false) #39, !dbg !3682, !tbaa !633, !alias.scope !636, !noalias !3569 br label %L171, !dbg !3684 L171: ; preds = %L171.loopexit, %L139 %_replacementA45 = phi {} addrspace(11)* , !dbg !3684 %41 = addrspacecast {} addrspace(10)* %26 to { i8 addrspace(13)*, i64, i16, i16, i32 } addrspace(11)*, !dbg !3684 %arraylen_ptr103 = getelementptr inbounds { i8 addrspace(13)*, i64, i16, i16, i32 }, { i8 addrspace(13)*, i64, i16, i16, i32 } addrspace(11)* %41, i64 0, i32 1, !dbg !3684 %arraylen104 = load i64, i64 addrspace(11)* %arraylen_ptr103, align 8, !dbg !3684, !tbaa !617, !range !620, !alias.scope !3698, !noalias !3701 %42 = icmp ne i64 %arraylen57, %arraylen104, !dbg !3703 %43 = icmp ne i64 %arraylen104, 1, !dbg !3705 %44 = and i1 %42, %43, !dbg !3706 br i1 %44, label %L187, label %L191, !dbg !3706 L187: ; preds = %L171 %_replacementA46 = phi [1 x {} addrspace(10)*] , !dbg !3706 %box1278 = call noalias nonnull dereferenceable(8) "enzyme_inactive" "enzyme_type"="{[-1]:Pointer, [-1,-1]:Pointer}" {} addrspace(10)* @julia.gc_alloc_obj({}** nonnull %current_task1, i64 noundef 8, {} addrspace(10)* noundef addrspacecast ({}* inttoptr (i64 137725923697904 to {}*) to {} addrspace(10)*)) #41, !dbg !3706 %45 = bitcast {} addrspace(10)* %box1278 to [1 x {} addrspace(10)*] addrspace(10)*, !dbg !3706, !enzyme_inactive !0 %46 = getelementptr [1 x {} addrspace(10)*], [1 x {} addrspace(10)*] addrspace(10)* %45, i64 0, i64 0, !dbg !3706 store {} addrspace(10)* addrspacecast ({}* inttoptr (i64 137726003609488 to {}*) to {} addrspace(10)*), {} addrspace(10)* addrspace(10)* %46, align 8, !dbg !3706, !tbaa !771, !alias.scope !636, !noalias !3569 %47 = addrspacecast {} addrspace(10)* %box1278 to {} addrspace(12)*, !dbg !3706, !enzyme_inactive !0 call void @ijl_throw({} addrspace(12)* %47) #42, !dbg !3706 unreachable, !dbg !3706 L191: ; preds = %L171 %arraylen108 = load i64, i64 addrspace(11)* %arraylen_ptr31, align 8, !dbg !3707, !tbaa !617, !range !620, !alias.scope !3611, !noalias !3614, !enzyme_inactive !0, !enzyme_type !567, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_UInt64 !0 %48 = icmp ne i64 %arraylen57, %arraylen108, !dbg !3711 %49 = icmp ne i64 %arraylen108, 1, !dbg !3713 %50 = and i1 %48, %49, !dbg !3714 br i1 %50, label %L202, label %L221, !dbg !3714 L202: ; preds = %L191 %_replacementA47 = phi [1 x {} addrspace(10)*] , !dbg !3714 %box1274 = call noalias nonnull dereferenceable(8) "enzyme_inactive" "enzyme_type"="{[-1]:Pointer, [-1,-1]:Pointer}" {} addrspace(10)* @julia.gc_alloc_obj({}** nonnull %current_task1, i64 noundef 8, {} addrspace(10)* noundef addrspacecast ({}* inttoptr (i64 137725923697904 to {}*) to {} addrspace(10)*)) #41, !dbg !3714 %51 = bitcast {} addrspace(10)* %box1274 to [1 x {} addrspace(10)*] addrspace(10)*, !dbg !3714, !enzyme_inactive !0 %52 = getelementptr [1 x {} addrspace(10)*], [1 x {} addrspace(10)*] addrspace(10)* %51, i64 0, i64 0, !dbg !3714 store {} addrspace(10)* addrspacecast ({}* inttoptr (i64 137726003609488 to {}*) to {} addrspace(10)*), {} addrspace(10)* addrspace(10)* %52, align 8, !dbg !3714, !tbaa !771, !alias.scope !636, !noalias !3569 %53 = addrspacecast {} addrspace(10)* %box1274 to {} addrspace(12)*, !dbg !3714, !enzyme_inactive !0 call void @ijl_throw({} addrspace(12)* %53) #42, !dbg !3714 unreachable, !dbg !3714 L221: ; preds = %L191 %54 = icmp eq i64 %arraylen104, 1, !dbg !3715 %55 = icmp eq i64 %arraylen108, 1, !dbg !3731 br i1 %.not1564, label %L335, label %L292.lr.ph, !dbg !3739 L292.lr.ph: ; preds = %L221 %56 = addrspacecast {} addrspace(10)* %26 to double addrspace(13)* addrspace(11)* %57 = addrspacecast {} addrspace(10)* %21 to double addrspace(13)* addrspace(11)* %58 = addrspacecast {} addrspace(10)* %30 to double addrspace(13)* addrspace(11)* %59 = add nsw i64 %arraylen57, -1, !dbg !3743 br label %L315, !dbg !3743 L315: ; preds = %idxend154, %L292.lr.ph %iv = phi i64 [ %iv.next, %idxend154 ], [ 0, %L292.lr.ph ] %iv.next = add nuw nsw i64 %iv, 1, !dbg !3744 %60 = select i1 %54, i64 1, i64 %iv.next, !dbg !3747 %61 = add nsw i64 %60, -1, !dbg !3760 %inbounds133 = icmp ult i64 %61, %arraylen104, !dbg !3760 br i1 %inbounds133, label %idxend136, label %oob134, !dbg !3760 L335.loopexit: ; preds = %idxend154 br label %L335, !dbg !3761 L335: ; preds = %L335.loopexit, %L221 %62 = icmp ne i64 %arraylen77, %arraylen104, !dbg !3761 %63 = and i1 %62, %43, !dbg !3764 br i1 %63, label %L351, label %L370, !dbg !3764 L351: ; preds = %L335 %_replacementA49 = phi [1 x {} addrspace(10)*] , !dbg !3764 %box1259 = call noalias nonnull dereferenceable(8) "enzyme_inactive" "enzyme_type"="{[-1]:Pointer, [-1,-1]:Pointer}" {} addrspace(10)* @julia.gc_alloc_obj({}** nonnull %current_task1, i64 noundef 8, {} addrspace(10)* noundef addrspacecast ({}* inttoptr (i64 137725923697904 to {}*) to {} addrspace(10)*)) #41, !dbg !3764 %64 = bitcast {} addrspace(10)* %box1259 to [1 x {} addrspace(10)*] addrspace(10)*, !dbg !3764, !enzyme_inactive !0 %65 = getelementptr [1 x {} addrspace(10)*], [1 x {} addrspace(10)*] addrspace(10)* %64, i64 0, i64 0, !dbg !3764 store {} addrspace(10)* addrspacecast ({}* inttoptr (i64 137726003609488 to {}*) to {} addrspace(10)*), {} addrspace(10)* addrspace(10)* %65, align 8, !dbg !3764, !tbaa !771, !alias.scope !636, !noalias !3569 %66 = addrspacecast {} addrspace(10)* %box1259 to {} addrspace(12)*, !dbg !3764, !enzyme_inactive !0 call void @ijl_throw({} addrspace(12)* %66) #42, !dbg !3764 unreachable, !dbg !3764 L370: ; preds = %L335 %.not1578_replacementA = phi i1 , !dbg !3771 br i1 %.not1567, label %L452, label %L412.lr.ph, !dbg !3781 L412.lr.ph: ; preds = %L370 %67 = addrspacecast {} addrspace(10)* %26 to double addrspace(13)* addrspace(11)* %68 = addrspacecast {} addrspace(10)* %37 to double addrspace(13)* addrspace(11)* %69 = add nsw i64 %arraylen77, -1, !dbg !3785 br label %L435, !dbg !3785 L435: ; preds = %idxend199, %L412.lr.ph %iv1 = phi i64 [ %iv.next2, %idxend199 ], [ 0, %L412.lr.ph ] %iv.next2 = add nuw nsw i64 %iv1, 1, !dbg !3786 %70 = select i1 %54, i64 1, i64 %iv.next2, !dbg !3789 %71 = add nsw i64 %70, -1, !dbg !3801 %inbounds187 = icmp ult i64 %71, %arraylen104, !dbg !3801 br i1 %inbounds187, label %idxend190, label %oob188, !dbg !3801 L452.loopexit: ; preds = %idxend199 br label %L452, !dbg !3802 L452: ; preds = %L452.loopexit, %L370 %72 = call {} addrspace(10)* @ijl_alloc_array_1d({} addrspace(10)* addrspacecast ({}* inttoptr (i64 137725871856384 to {}*) to {} addrspace(10)*), i64 31), !dbg !3802 %73 = bitcast {} addrspace(10)* %72 to i8 addrspace(13)* addrspace(10)*, !dbg !3802 %74 = load i8 addrspace(13)*, i8 addrspace(13)* addrspace(10)* %73, align 8, !dbg !3802 call void @llvm.memset.p13i8.i64(i8 addrspace(13)* align 8 %74, i8 0, i64 248, i1 false), !dbg !3802 %75 = call noalias nonnull align 8 dereferenceable(16) "enzyme_type"="{[-1]:Pointer, [-1,0]:Pointer, [-1,0,-1]:Float@double, [-1,8]:Integer, [-1,9]:Integer, [-1,10]:Integer, [-1,11]:Integer, [-1,12]:Integer, [-1,13]:Integer, [-1,14]:Integer, [-1,15]:Integer, [-1,16]:Integer, [-1,17]:Integer, [-1,18]:Integer, [-1,19]:Integer, [-1,20]:Integer, [-1,21]:Integer, [-1,22]:Integer, [-1,23]:Integer, [-1,24]:Integer, [-1,25]:Integer, [-1,26]:Integer, [-1,27]:Integer, [-1,28]:Integer, [-1,29]:Integer, [-1,30]:Integer, [-1,31]:Integer, [-1,32]:Integer, [-1,33]:Integer, [-1,34]:Integer, [-1,35]:Integer, [-1,36]:Integer, [-1,37]:Integer, [-1,38]:Integer, [-1,39]:Integer}" {} addrspace(10)* @ijl_alloc_array_1d({} addrspace(10)* noundef addrspacecast ({}* inttoptr (i64 137725871856384 to {}*) to {} addrspace(10)*), i64 noundef 31) #40, !dbg !3802 %76 = addrspacecast {} addrspace(10)* %75 to { i8 addrspace(13)*, i64, i16, i16, i32 } addrspace(11)*, !dbg !3808 %arraylen_ptr205 = getelementptr inbounds { i8 addrspace(13)*, i64, i16, i16, i32 }, { i8 addrspace(13)*, i64, i16, i16, i32 } addrspace(11)* %76, i64 0, i32 1, !dbg !3808 %arraylen206 = load i64, i64 addrspace(11)* %arraylen_ptr205, align 8, !dbg !3808, !tbaa !45, !range !620, !alias.scope !3814, !noalias !3817, !enzyme_inactive !0, !enzyme_type !567, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_UInt64 !0 %.not1584 = icmp eq i64 %arraylen206, 0, !dbg !3819 br i1 %.not1584, label %L484, label %L484.loopexit, !dbg !3812 L484.loopexit: ; preds = %L452 %"'ipc52" = addrspacecast {} addrspace(10)* %72 to i8 addrspace(13)* addrspace(11)* %77 = addrspacecast {} addrspace(10)* %75 to i8 addrspace(13)* addrspace(11)* %"arrayptr22015859687'ipl" = load i8 addrspace(13)*, i8 addrspace(13)* addrspace(11)* %"'ipc52", align 8, !tbaa !628, !alias.scope !3823, !noalias !3824, !nonnull !0 %arrayptr22015859687 = load i8 addrspace(13)*, i8 addrspace(13)* addrspace(11)* %77, align 8, !tbaa !628, !alias.scope !3825, !noalias !3826, !nonnull !0, !enzyme_type !631, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_Ptr\7BFloat64\7D !0 %78 = shl nuw i64 %arraylen206, 3, !dbg !3827 call void @llvm.memset.p13i8.i64(i8 addrspace(13)* nonnull align 8 %arrayptr22015859687, i8 noundef 0, i64 %78, i1 noundef false) #39, !dbg !3827, !tbaa !633, !alias.scope !636, !noalias !3569 br label %L484, !dbg !3829 L484: ; preds = %L484.loopexit, %L452 %79 = call {} addrspace(10)* @ijl_alloc_array_1d({} addrspace(10)* addrspacecast ({}* inttoptr (i64 137725871856384 to {}*) to {} addrspace(10)*), i64 31), !dbg !3829 %80 = bitcast {} addrspace(10)* %79 to i8 addrspace(13)* addrspace(10)*, !dbg !3829 %81 = load i8 addrspace(13)*, i8 addrspace(13)* addrspace(10)* %80, align 8, !dbg !3829 call void @llvm.memset.p13i8.i64(i8 addrspace(13)* align 8 %81, i8 0, i64 248, i1 false), !dbg !3829 %82 = call noalias nonnull align 8 dereferenceable(16) "enzyme_type"="{[-1]:Pointer, [-1,0]:Pointer, [-1,0,-1]:Float@double, [-1,8]:Integer, [-1,9]:Integer, [-1,10]:Integer, [-1,11]:Integer, [-1,12]:Integer, [-1,13]:Integer, [-1,14]:Integer, [-1,15]:Integer, [-1,16]:Integer, [-1,17]:Integer, [-1,18]:Integer, [-1,19]:Integer, [-1,20]:Integer, [-1,21]:Integer, [-1,22]:Integer, [-1,23]:Integer, [-1,24]:Integer, [-1,25]:Integer, [-1,26]:Integer, [-1,27]:Integer, [-1,28]:Integer, [-1,29]:Integer, [-1,30]:Integer, [-1,31]:Integer, [-1,32]:Integer, [-1,33]:Integer, [-1,34]:Integer, [-1,35]:Integer, [-1,36]:Integer, [-1,37]:Integer, [-1,38]:Integer, [-1,39]:Integer}" {} addrspace(10)* @ijl_alloc_array_1d({} addrspace(10)* noundef addrspacecast ({}* inttoptr (i64 137725871856384 to {}*) to {} addrspace(10)*), i64 noundef 31) #40, !dbg !3829 %83 = addrspacecast {} addrspace(10)* %82 to { i8 addrspace(13)*, i64, i16, i16, i32 } addrspace(11)*, !dbg !3835 %arraylen_ptr225 = getelementptr inbounds { i8 addrspace(13)*, i64, i16, i16, i32 }, { i8 addrspace(13)*, i64, i16, i16, i32 } addrspace(11)* %83, i64 0, i32 1, !dbg !3835 %arraylen226 = load i64, i64 addrspace(11)* %arraylen_ptr225, align 8, !dbg !3835, !tbaa !617, !range !620, !alias.scope !3841, !noalias !3844, !enzyme_inactive !0, !enzyme_type !567, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_UInt64 !0 %.not1587 = icmp eq i64 %arraylen226, 0, !dbg !3846 br i1 %.not1587, label %L516, label %L516.loopexit, !dbg !3839 L516.loopexit: ; preds = %L484 %"'ipc54" = addrspacecast {} addrspace(10)* %79 to i8 addrspace(13)* addrspace(11)* %84 = addrspacecast {} addrspace(10)* %82 to i8 addrspace(13)* addrspace(11)* %"arrayptr24015889688'ipl" = load i8 addrspace(13)*, i8 addrspace(13)* addrspace(11)* %"'ipc54", align 8, !tbaa !628, !alias.scope !3850, !noalias !3851, !nonnull !0 %arrayptr24015889688 = load i8 addrspace(13)*, i8 addrspace(13)* addrspace(11)* %84, align 8, !tbaa !628, !alias.scope !3852, !noalias !3844, !nonnull !0, !enzyme_type !631, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_Ptr\7BFloat64\7D !0 %85 = shl nuw i64 %arraylen226, 3, !dbg !3853 call void @llvm.memset.p13i8.i64(i8 addrspace(13)* nonnull align 8 %arrayptr24015889688, i8 noundef 0, i64 %85, i1 noundef false) #39, !dbg !3853, !tbaa !633, !alias.scope !636, !noalias !3569 br label %L516, !dbg !3855 L516: ; preds = %L516.loopexit, %L484 %86 = call noalias nonnull "enzyme_type"="{[-1]:Pointer, [-1,0]:Pointer, [-1,0,-1]:Float@double, [-1,8]:Integer, [-1,9]:Integer, [-1,10]:Integer, [-1,11]:Integer, [-1,12]:Integer, [-1,13]:Integer, [-1,14]:Integer, [-1,15]:Integer, [-1,16]:Integer, [-1,17]:Integer, [-1,18]:Integer, [-1,19]:Integer, [-1,20]:Integer, [-1,21]:Integer, [-1,22]:Integer, [-1,23]:Integer, [-1,24]:Integer, [-1,25]:Integer, [-1,26]:Integer, [-1,27]:Integer, [-1,28]:Integer, [-1,29]:Integer, [-1,30]:Integer, [-1,31]:Integer, [-1,32]:Integer, [-1,33]:Integer, [-1,34]:Integer, [-1,35]:Integer, [-1,36]:Integer, [-1,37]:Integer, [-1,38]:Integer, [-1,39]:Integer}" {} addrspace(10)* @ijl_alloc_array_1d({} addrspace(10)* noundef addrspacecast ({}* inttoptr (i64 137725871856384 to {}*) to {} addrspace(10)*), i64 noundef 31) #40, !dbg !3855 %87 = addrspacecast {} addrspace(10)* %86 to { i8 addrspace(13)*, i64, i16, i16, i32 } addrspace(11)*, !dbg !3861 %arraylen_ptr245 = getelementptr inbounds { i8 addrspace(13)*, i64, i16, i16, i32 }, { i8 addrspace(13)*, i64, i16, i16, i32 } addrspace(11)* %87, i64 0, i32 1, !dbg !3861 %arraylen246 = load i64, i64 addrspace(11)* %arraylen_ptr245, align 8, !dbg !3861, !tbaa !617, !range !620, !alias.scope !3867, !noalias !3870, !enzyme_inactive !0, !enzyme_type !567, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_UInt64 !0 %.not1590 = icmp eq i64 %arraylen246, 0, !dbg !3872 br i1 %.not1590, label %L548, label %L530.preheader, !dbg !3865 L530.preheader: ; preds = %L516 %88 = addrspacecast {} addrspace(10)* %86 to double addrspace(13)* addrspace(11)* %arrayptr2601591 = load double addrspace(13)*, double addrspace(13)* addrspace(11)* %88, align 8, !tbaa !628, !alias.scope !3876, !noalias !3870, !nonnull !0, !enzyme_type !631, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_Ptr\7BFloat64\7D !0 %89 = add nsw i64 %arraylen246, -1, !dbg !3877 br label %idxend258, !dbg !3877 L548.loopexit: ; preds = %idxend258 br label %L548, !dbg !3879 L548: ; preds = %L548.loopexit, %L516 %90 = icmp ne i64 %arraylen206, %arraylen246, !dbg !3879 %91 = icmp ne i64 %arraylen246, 1, !dbg !3881 %92 = and i1 %90, %91, !dbg !3882 br i1 %92, label %L564, label %L568, !dbg !3882 L564: ; preds = %L548 %_replacementA56 = phi [1 x {} addrspace(10)*] , !dbg !3882 %box1249 = call noalias nonnull dereferenceable(8) "enzyme_inactive" "enzyme_type"="{[-1]:Pointer, [-1,-1]:Pointer}" {} addrspace(10)* @julia.gc_alloc_obj({}** nonnull %current_task1, i64 noundef 8, {} addrspace(10)* noundef addrspacecast ({}* inttoptr (i64 137725923697904 to {}*) to {} addrspace(10)*)) #41, !dbg !3882 %93 = bitcast {} addrspace(10)* %box1249 to [1 x {} addrspace(10)*] addrspace(10)*, !dbg !3882, !enzyme_inactive !0 %94 = getelementptr [1 x {} addrspace(10)*], [1 x {} addrspace(10)*] addrspace(10)* %93, i64 0, i64 0, !dbg !3882 store {} addrspace(10)* addrspacecast ({}* inttoptr (i64 137726003609488 to {}*) to {} addrspace(10)*), {} addrspace(10)* addrspace(10)* %94, align 8, !dbg !3882, !tbaa !771, !alias.scope !636, !noalias !3569 %95 = addrspacecast {} addrspace(10)* %box1249 to {} addrspace(12)*, !dbg !3882, !enzyme_inactive !0 call void @ijl_throw({} addrspace(12)* %95) #42, !dbg !3882 unreachable, !dbg !3882 L568: ; preds = %L548 %96 = icmp ne i64 %arraylen206, %arraylen77, !dbg !3888 %97 = icmp ne i64 %arraylen77, 1, !dbg !3890 %98 = and i1 %96, %97, !dbg !3891 br i1 %98, label %L579, label %L598, !dbg !3891 L579: ; preds = %L568 %_replacementA57 = phi [1 x {} addrspace(10)*] , !dbg !3891 %box1245 = call noalias nonnull dereferenceable(8) "enzyme_inactive" "enzyme_type"="{[-1]:Pointer, [-1,-1]:Pointer}" {} addrspace(10)* @julia.gc_alloc_obj({}** nonnull %current_task1, i64 noundef 8, {} addrspace(10)* noundef addrspacecast ({}* inttoptr (i64 137725923697904 to {}*) to {} addrspace(10)*)) #41, !dbg !3891 %99 = bitcast {} addrspace(10)* %box1245 to [1 x {} addrspace(10)*] addrspace(10)*, !dbg !3891, !enzyme_inactive !0 %100 = getelementptr [1 x {} addrspace(10)*], [1 x {} addrspace(10)*] addrspace(10)* %99, i64 0, i64 0, !dbg !3891 store {} addrspace(10)* addrspacecast ({}* inttoptr (i64 137726003609488 to {}*) to {} addrspace(10)*), {} addrspace(10)* addrspace(10)* %100, align 8, !dbg !3891, !tbaa !771, !alias.scope !636, !noalias !3569 %101 = addrspacecast {} addrspace(10)* %box1245 to {} addrspace(12)*, !dbg !3891, !enzyme_inactive !0 call void @ijl_throw({} addrspace(12)* %101) #42, !dbg !3891 unreachable, !dbg !3891 L598: ; preds = %L568 %102 = icmp eq i64 %arraylen246, 1, !dbg !3894 %103 = icmp eq i64 %arraylen77, 1, !dbg !3905 br i1 %.not1584, label %L701, label %L660.lr.ph, !dbg !3913 L660.lr.ph: ; preds = %L598 %104 = addrspacecast {} addrspace(10)* %86 to double addrspace(13)* addrspace(11)* %105 = addrspacecast {} addrspace(10)* %37 to double addrspace(13)* addrspace(11)* %106 = addrspacecast {} addrspace(10)* %75 to double addrspace(13)* addrspace(11)* %107 = add nsw i64 %arraylen206, -1, !dbg !3917 br label %L683, !dbg !3917 L683: ; preds = %idxend325, %L660.lr.ph %iv5 = phi i64 [ %iv.next6, %idxend325 ], [ 0, %L660.lr.ph ] %iv.next6 = add nuw nsw i64 %iv5, 1, !dbg !3918 %108 = select i1 %102, i64 1, i64 %iv.next6, !dbg !3921 %109 = add nsw i64 %108, -1, !dbg !3929 %inbounds303 = icmp ult i64 %109, %arraylen246, !dbg !3929 br i1 %inbounds303, label %idxend306, label %oob304, !dbg !3929 L701.loopexit: ; preds = %idxend325 br label %L701, !dbg !3930 L701: ; preds = %L701.loopexit, %L598 %110 = icmp ne i64 %arraylen226, %arraylen206, !dbg !3930 %111 = icmp ne i64 %arraylen206, 1, !dbg !3932 %112 = and i1 %111, %110, !dbg !3933 br i1 %112, label %L717, label %L721, !dbg !3933 L717: ; preds = %L701 %_replacementA59 = phi [1 x {} addrspace(10)*] , !dbg !3933 %box1230 = call noalias nonnull dereferenceable(8) "enzyme_inactive" "enzyme_type"="{[-1]:Pointer, [-1,-1]:Pointer}" {} addrspace(10)* @julia.gc_alloc_obj({}** nonnull %current_task1, i64 noundef 8, {} addrspace(10)* noundef addrspacecast ({}* inttoptr (i64 137725923697904 to {}*) to {} addrspace(10)*)) #41, !dbg !3933 %113 = bitcast {} addrspace(10)* %box1230 to [1 x {} addrspace(10)*] addrspace(10)*, !dbg !3933, !enzyme_inactive !0 %114 = getelementptr [1 x {} addrspace(10)*], [1 x {} addrspace(10)*] addrspace(10)* %113, i64 0, i64 0, !dbg !3933 store {} addrspace(10)* addrspacecast ({}* inttoptr (i64 137726003609488 to {}*) to {} addrspace(10)*), {} addrspace(10)* addrspace(10)* %114, align 8, !dbg !3933, !tbaa !771, !alias.scope !636, !noalias !3569 %115 = addrspacecast {} addrspace(10)* %box1230 to {} addrspace(12)*, !dbg !3933, !enzyme_inactive !0 call void @ijl_throw({} addrspace(12)* %115) #42, !dbg !3933 unreachable, !dbg !3933 L721: ; preds = %L701 %116 = icmp ne i64 %arraylen226, %arraylen77, !dbg !3940 %117 = and i1 %116, %97, !dbg !3943 br i1 %117, label %L732, label %L751, !dbg !3943 L732: ; preds = %L721 %_replacementA60 = phi [1 x {} addrspace(10)*] , !dbg !3943 %box1226 = call noalias nonnull dereferenceable(8) "enzyme_inactive" "enzyme_type"="{[-1]:Pointer, [-1,-1]:Pointer}" {} addrspace(10)* @julia.gc_alloc_obj({}** nonnull %current_task1, i64 noundef 8, {} addrspace(10)* noundef addrspacecast ({}* inttoptr (i64 137725923697904 to {}*) to {} addrspace(10)*)) #41, !dbg !3943 %118 = bitcast {} addrspace(10)* %box1226 to [1 x {} addrspace(10)*] addrspace(10)*, !dbg !3943, !enzyme_inactive !0 %119 = getelementptr [1 x {} addrspace(10)*], [1 x {} addrspace(10)*] addrspace(10)* %118, i64 0, i64 0, !dbg !3943 store {} addrspace(10)* addrspacecast ({}* inttoptr (i64 137726003609488 to {}*) to {} addrspace(10)*), {} addrspace(10)* addrspace(10)* %119, align 8, !dbg !3943, !tbaa !771, !alias.scope !636, !noalias !3569 %120 = addrspacecast {} addrspace(10)* %box1226 to {} addrspace(12)*, !dbg !3943, !enzyme_inactive !0 call void @ijl_throw({} addrspace(12)* %120) #42, !dbg !3943 unreachable, !dbg !3943 L751: ; preds = %L721 %121 = icmp eq i64 %arraylen206, 1, !dbg !3946 br i1 %.not1587, label %L869.preheader, label %L813.lr.ph, !dbg !3957 L813.lr.ph: ; preds = %L751 %122 = addrspacecast {} addrspace(10)* %75 to double addrspace(13)* addrspace(11)* %123 = addrspacecast {} addrspace(10)* %37 to double addrspace(13)* addrspace(11)* %124 = addrspacecast {} addrspace(10)* %82 to double addrspace(13)* addrspace(11)* %125 = add nsw i64 %arraylen226, -1, !dbg !3961 br label %L836, !dbg !3961 L836: ; preds = %idxend391, %L813.lr.ph %iv7 = phi i64 [ %iv.next8, %idxend391 ], [ 0, %L813.lr.ph ] %iv.next8 = add nuw nsw i64 %iv7, 1, !dbg !3962 %126 = select i1 %121, i64 1, i64 %iv.next8, !dbg !3965 %127 = add nsw i64 %126, -1, !dbg !3973 %inbounds369 = icmp ult i64 %127, %arraylen206, !dbg !3973 br i1 %inbounds369, label %idxend372, label %oob370, !dbg !3973 L869.preheader.loopexit: ; preds = %idxend391 br label %L869.preheader L869.preheader: ; preds = %L869.preheader.loopexit, %L751 %newstruct402.sroa.0.0..sroa_idx = getelementptr inbounds [1 x [2 x i64]], [1 x [2 x i64]]* %newstruct404, i64 0, i64 0, i64 0 %newstruct402.sroa.2.0..sroa_idx1389 = getelementptr inbounds [1 x [2 x i64]], [1 x [2 x i64]]* %newstruct404, i64 0, i64 0, i64 1 %newstruct410.sroa.0.0..sroa_idx = getelementptr inbounds [1 x [2 x i64]], [1 x [2 x i64]]* %newstruct412, i64 0, i64 0, i64 0 %newstruct410.sroa.2.0..sroa_idx1388 = getelementptr inbounds [1 x [2 x i64]], [1 x [2 x i64]]* %newstruct412, i64 0, i64 0, i64 1 %newstruct418.sroa.0.0..sroa_idx = getelementptr inbounds [1 x [2 x i64]], [1 x [2 x i64]]* %newstruct420, i64 0, i64 0, i64 0 %newstruct418.sroa.2.0..sroa_idx1387 = getelementptr inbounds [1 x [2 x i64]], [1 x [2 x i64]]* %newstruct420, i64 0, i64 0, i64 1 %newstruct426.sroa.0.0..sroa_idx = getelementptr inbounds [1 x [2 x i64]], [1 x [2 x i64]]* %newstruct428, i64 0, i64 0, i64 0 %newstruct426.sroa.2.0..sroa_idx1386 = getelementptr inbounds [1 x [2 x i64]], [1 x [2 x i64]]* %newstruct428, i64 0, i64 0, i64 1 %128 = addrspacecast {} addrspace(10)* %10 to double addrspace(13)* addrspace(11)* %newstruct573.sroa.0.0..sroa_idx = getelementptr inbounds [1 x [2 x i64]], [1 x [2 x i64]]* %newstruct575, i64 0, i64 0, i64 0 %newstruct573.sroa.2.0..sroa_idx1381 = getelementptr inbounds [1 x [2 x i64]], [1 x [2 x i64]]* %newstruct575, i64 0, i64 0, i64 1 %newstruct581.sroa.0.0..sroa_idx = getelementptr inbounds [1 x [2 x i64]], [1 x [2 x i64]]* %newstruct583, i64 0, i64 0, i64 0 %newstruct581.sroa.2.0..sroa_idx1380 = getelementptr inbounds [1 x [2 x i64]], [1 x [2 x i64]]* %newstruct583, i64 0, i64 0, i64 1 %129 = addrspacecast {} addrspace(10)* %17 to double addrspace(13)* addrspace(11)* %newstruct683.sroa.0.0..sroa_idx = getelementptr inbounds [1 x [2 x i64]], [1 x [2 x i64]]* %newstruct685, i64 0, i64 0, i64 0 %newstruct683.sroa.3.0..sroa_idx1363 = getelementptr inbounds [1 x [2 x i64]], [1 x [2 x i64]]* %newstruct685, i64 0, i64 0, i64 1 %newstruct700.sroa.0.0..sroa_idx = getelementptr inbounds [1 x [2 x i64]], [1 x [2 x i64]]* %newstruct702, i64 0, i64 0, i64 0 %newstruct700.sroa.2.0..sroa_idx1360 = getelementptr inbounds [1 x [2 x i64]], [1 x [2 x i64]]* %newstruct702, i64 0, i64 0, i64 1 %newstruct708.sroa.0.0..sroa_idx = getelementptr inbounds [1 x [2 x i64]], [1 x [2 x i64]]* %newstruct710, i64 0, i64 0, i64 0 %newstruct708.sroa.2.0..sroa_idx1359 = getelementptr inbounds [1 x [2 x i64]], [1 x [2 x i64]]* %newstruct710, i64 0, i64 0, i64 1 %newstruct716.sroa.0.0..sroa_idx = getelementptr inbounds [1 x [2 x i64]], [1 x [2 x i64]]* %newstruct718, i64 0, i64 0, i64 0 %newstruct716.sroa.2.0..sroa_idx1358 = getelementptr inbounds [1 x [2 x i64]], [1 x [2 x i64]]* %newstruct718, i64 0, i64 0, i64 1 %130 = addrspacecast {} addrspace(10)* %75 to double addrspace(13)* addrspace(11)* %newstruct847.sroa.0.0..sroa_idx = getelementptr inbounds [1 x [2 x i64]], [1 x [2 x i64]]* %newstruct849, i64 0, i64 0, i64 0 %newstruct847.sroa.3.0..sroa_idx1345 = getelementptr inbounds [1 x [2 x i64]], [1 x [2 x i64]]* %newstruct849, i64 0, i64 0, i64 1 %.fca.0.0.gep = getelementptr inbounds { [2 x {} addrspace(10)*], [2 x i64] }, { [2 x {} addrspace(10)*], [2 x i64] }* %1, i64 0, i32 0, i64 0 %.fca.0.1.gep = getelementptr inbounds { [2 x {} addrspace(10)*], [2 x i64] }, { [2 x {} addrspace(10)*], [2 x i64] }* %1, i64 0, i32 0, i64 1 %.fca.1.0.gep = getelementptr inbounds { [2 x {} addrspace(10)*], [2 x i64] }, { [2 x {} addrspace(10)*], [2 x i64] }* %1, i64 0, i32 1, i64 0 %.fca.1.1.gep = getelementptr inbounds { [2 x {} addrspace(10)*], [2 x i64] }, { [2 x {} addrspace(10)*], [2 x i64] }* %1, i64 0, i32 1, i64 1 %131 = addrspacecast { [2 x {} addrspace(10)*], [2 x i64] }* %1 to { [2 x {} addrspace(10)*], [2 x i64] } addrspace(11)* %.fca.0.gep1326 = getelementptr inbounds { {} addrspace(10)*, [1 x [2 x i64]], i64, i64 }, { {} addrspace(10)*, [1 x [2 x i64]], i64, i64 }* %3, i64 0, i32 0 %.fca.1.0.0.gep1328 = getelementptr inbounds { {} addrspace(10)*, [1 x [2 x i64]], i64, i64 }, { {} addrspace(10)*, [1 x [2 x i64]], i64, i64 }* %3, i64 0, i32 1, i64 0, i64 0 %.fca.1.0.1.gep1330 = getelementptr inbounds { {} addrspace(10)*, [1 x [2 x i64]], i64, i64 }, { {} addrspace(10)*, [1 x [2 x i64]], i64, i64 }* %3, i64 0, i32 1, i64 0, i64 1 %.fca.2.gep1332 = getelementptr inbounds { {} addrspace(10)*, [1 x [2 x i64]], i64, i64 }, { {} addrspace(10)*, [1 x [2 x i64]], i64, i64 }* %3, i64 0, i32 2 %.fca.3.gep1334 = getelementptr inbounds { {} addrspace(10)*, [1 x [2 x i64]], i64, i64 }, { {} addrspace(10)*, [1 x [2 x i64]], i64, i64 }* %3, i64 0, i32 3 %132 = addrspacecast { {} addrspace(10)*, [1 x [2 x i64]], i64, i64 }* %3 to { {} addrspace(10)*, [1 x [2 x i64]], i64, i64 } addrspace(11)* %133 = addrspacecast {} addrspace(10)* %37 to double addrspace(13)* addrspace(11)* %134 = addrspacecast {} addrspace(10)* %82 to double addrspace(13)* addrspace(11)* %135 = call noalias nonnull dereferenceable(240000) dereferenceable_or_null(240000) i8* @malloc(i64 240000), !dbg !3974, !enzyme_cache_alloc !3977 %arraylen441_malloccache = bitcast i8* %135 to i64*, !dbg !3974 store i64* %arraylen441_malloccache, i64** %arraylen441_cache, align 8, !dbg !3974, !invariant.group !3979 %136 = call noalias nonnull dereferenceable(240000) dereferenceable_or_null(240000) i8* @malloc(i64 240000), !dbg !3974, !enzyme_cache_alloc !3980 %arraylen444_malloccache = bitcast i8* %136 to i64*, !dbg !3974 store i64* %arraylen444_malloccache, i64** %arraylen444_cache, align 8, !dbg !3974, !invariant.group !3982 %137 = call noalias nonnull dereferenceable(240000) dereferenceable_or_null(240000) i8* @malloc(i64 240000), !dbg !3974, !enzyme_cache_alloc !3983 %arraylen451_malloccache = bitcast i8* %137 to i64*, !dbg !3974 store i64* %arraylen451_malloccache, i64** %arraylen451_cache, align 8, !dbg !3974, !invariant.group !3985 %138 = call noalias nonnull dereferenceable(240000) dereferenceable_or_null(240000) i8* @malloc(i64 240000), !dbg !3974, !enzyme_cache_alloc !3986 %arraylen454_malloccache = bitcast i8* %138 to i64*, !dbg !3974 store i64* %arraylen454_malloccache, i64** %arraylen454_cache, align 8, !dbg !3974, !invariant.group !3988 %139 = call noalias nonnull dereferenceable(240000) dereferenceable_or_null(240000) i8* @malloc(i64 240000), !dbg !3974, !enzyme_cache_alloc !3989 %arraylen599_malloccache = bitcast i8* %139 to i64*, !dbg !3974 store i64* %arraylen599_malloccache, i64** %arraylen599_cache, align 8, !dbg !3974, !invariant.group !3991 %140 = call noalias nonnull dereferenceable(240000) dereferenceable_or_null(240000) i8* @malloc(i64 240000), !dbg !3974, !enzyme_cache_alloc !3992 %arraylen602_malloccache = bitcast i8* %140 to i64*, !dbg !3974 store i64* %arraylen602_malloccache, i64** %arraylen602_cache, align 8, !dbg !3974, !invariant.group !3994 %141 = call noalias nonnull dereferenceable(240000) dereferenceable_or_null(240000) i8* @malloc(i64 240000), !dbg !3974, !enzyme_cache_alloc !3995 %arraylen596_malloccache = bitcast i8* %141 to i64*, !dbg !3974 store i64* %arraylen596_malloccache, i64** %arraylen596_cache, align 8, !dbg !3974, !invariant.group !3997 %142 = call noalias nonnull dereferenceable(240000) dereferenceable_or_null(240000) i8* @malloc(i64 240000), !dbg !3974, !enzyme_cache_alloc !3998 %arraylen589_malloccache = bitcast i8* %142 to i64*, !dbg !3974 store i64* %arraylen589_malloccache, i64** %arraylen589_cache, align 8, !dbg !3974, !invariant.group !4000 %143 = call noalias nonnull dereferenceable(240000) dereferenceable_or_null(240000) i8* @malloc(i64 240000), !dbg !3974, !enzyme_cache_alloc !4001 %arraylen729_malloccache = bitcast i8* %143 to i64*, !dbg !3974 store i64* %arraylen729_malloccache, i64** %arraylen729_cache, align 8, !dbg !3974, !invariant.group !4003 %144 = call noalias nonnull dereferenceable(240000) dereferenceable_or_null(240000) i8* @malloc(i64 240000), !dbg !3974, !enzyme_cache_alloc !4004 %arraylen732_malloccache = bitcast i8* %144 to i64*, !dbg !3974 store i64* %arraylen732_malloccache, i64** %arraylen732_cache, align 8, !dbg !3974, !invariant.group !4006 br label %L869, !dbg !3974 L869: ; preds = %L2579, %L869.preheader %iv9 = phi i64 [ %iv.next10, %L2579 ], [ 0, %L869.preheader ], !dbg !4007 %arraylen406 = phi i64 [ %arraylen4068859, %L2579 ], [ %arraylen226, %L869.preheader ], !dbg !4007 %iv.next10 = add nuw nsw i64 %iv9, 1, !dbg !4012 %145 = icmp ugt i64 %arraylen406, 29, !dbg !4012 br i1 %145, label %L899, label %L896, !dbg !3974 L896: ; preds = %L869 store i64 1, i64* %newstruct402.sroa.0.0..sroa_idx, align 8, !dbg !4015, !tbaa !864, !alias.scope !866, !noalias !3630 store i64 30, i64* %newstruct402.sroa.2.0..sroa_idx1389, align 8, !dbg !4015, !tbaa !864, !alias.scope !866, !noalias !3630 %146 = addrspacecast [1 x [2 x i64]]* %newstruct404 to [1 x [2 x i64]] addrspace(11)*, !dbg !3974 call fastcc void @julia_throw_boundserror_7036({} addrspace(10)* nofree noundef nonnull align 16 dereferenceable(40) %82, [1 x [2 x i64]] addrspace(11)* nocapture nofree noundef nonnull readonly align 8 dereferenceable(16) %146) #42, !dbg !3974 unreachable, !dbg !3974 L899: ; preds = %L869 %"'mi11" = phi {} addrspace(10)* , !dbg !4016 %147 = call noalias nonnull "enzyme_type"="{[-1]:Pointer, [-1,0]:Pointer, [-1,0,-1]:Float@double, [-1,8]:Integer, [-1,9]:Integer, [-1,10]:Integer, [-1,11]:Integer, [-1,12]:Integer, [-1,13]:Integer, [-1,14]:Integer, [-1,15]:Integer, [-1,16]:Integer, [-1,17]:Integer, [-1,18]:Integer, [-1,19]:Integer, [-1,20]:Integer, [-1,21]:Integer, [-1,22]:Integer, [-1,23]:Integer, [-1,24]:Integer, [-1,25]:Integer, [-1,26]:Integer, [-1,27]:Integer, [-1,28]:Integer, [-1,29]:Integer, [-1,30]:Integer, [-1,31]:Integer, [-1,32]:Integer, [-1,33]:Integer, [-1,34]:Integer, [-1,35]:Integer, [-1,36]:Integer, [-1,37]:Integer, [-1,38]:Integer, [-1,39]:Integer}" {} addrspace(10)* @ijl_alloc_array_1d({} addrspace(10)* noundef addrspacecast ({}* inttoptr (i64 137725871856384 to {}*) to {} addrspace(10)*), i64 noundef 30) #40, !dbg !4016 call fastcc void @julia__copyto_impl__7068({} addrspace(10)* noundef nonnull align 16 dereferenceable(40) %147, {} addrspace(10)* noundef nonnull align 16 dereferenceable(40) %82, i64 noundef signext 1, i64 noundef signext 30) #39, !dbg !4021 %arraylen414.pre = load i64, i64 addrspace(11)* %arraylen_ptr225, align 8, !dbg !4007, !tbaa !617, !range !620, !alias.scope !621, !noalias !622, !enzyme_inactive !0, !enzyme_type !567, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_UInt64 !0 %148 = icmp ugt i64 %arraylen414.pre, 30, !dbg !4012 br i1 %148, label %L940, label %L937, !dbg !3974 L937: ; preds = %L899 store i64 2, i64* %newstruct410.sroa.0.0..sroa_idx, align 8, !dbg !4015, !tbaa !864, !alias.scope !866, !noalias !3630 store i64 31, i64* %newstruct410.sroa.2.0..sroa_idx1388, align 8, !dbg !4015, !tbaa !864, !alias.scope !866, !noalias !3630 %149 = addrspacecast [1 x [2 x i64]]* %newstruct412 to [1 x [2 x i64]] addrspace(11)*, !dbg !3974 call fastcc void @julia_throw_boundserror_7036({} addrspace(10)* nofree noundef nonnull align 16 dereferenceable(40) %82, [1 x [2 x i64]] addrspace(11)* nocapture nofree noundef nonnull readonly align 8 dereferenceable(16) %149) #42, !dbg !3974 unreachable, !dbg !3974 L940: ; preds = %L899 %"'mi13" = phi {} addrspace(10)* , !dbg !4016 %150 = call noalias nonnull "enzyme_type"="{[-1]:Pointer, [-1,0]:Pointer, [-1,0,-1]:Float@double, [-1,8]:Integer, [-1,9]:Integer, [-1,10]:Integer, [-1,11]:Integer, [-1,12]:Integer, [-1,13]:Integer, [-1,14]:Integer, [-1,15]:Integer, [-1,16]:Integer, [-1,17]:Integer, [-1,18]:Integer, [-1,19]:Integer, [-1,20]:Integer, [-1,21]:Integer, [-1,22]:Integer, [-1,23]:Integer, [-1,24]:Integer, [-1,25]:Integer, [-1,26]:Integer, [-1,27]:Integer, [-1,28]:Integer, [-1,29]:Integer, [-1,30]:Integer, [-1,31]:Integer, [-1,32]:Integer, [-1,33]:Integer, [-1,34]:Integer, [-1,35]:Integer, [-1,36]:Integer, [-1,37]:Integer, [-1,38]:Integer, [-1,39]:Integer}" {} addrspace(10)* @ijl_alloc_array_1d({} addrspace(10)* noundef addrspacecast ({}* inttoptr (i64 137725871856384 to {}*) to {} addrspace(10)*), i64 noundef 30) #40, !dbg !4016 call fastcc void @julia__copyto_impl__7068({} addrspace(10)* noundef nonnull align 16 dereferenceable(40) %150, {} addrspace(10)* noundef nonnull align 16 dereferenceable(40) %82, i64 noundef signext 2, i64 noundef signext 30) #39, !dbg !4021 %arraylen422 = load i64, i64 addrspace(11)* %arraylen_ptr205, align 8, !dbg !4007, !tbaa !617, !range !620, !alias.scope !621, !noalias !622, !enzyme_inactive !0, !enzyme_type !567, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_UInt64 !0 %151 = icmp ugt i64 %arraylen422, 30, !dbg !4012 br i1 %151, label %L990, label %L978, !dbg !3974 L978: ; preds = %L940 store i64 2, i64* %newstruct418.sroa.0.0..sroa_idx, align 8, !dbg !4015, !tbaa !864, !alias.scope !866, !noalias !3630 store i64 31, i64* %newstruct418.sroa.2.0..sroa_idx1387, align 8, !dbg !4015, !tbaa !864, !alias.scope !866, !noalias !3630 %152 = addrspacecast [1 x [2 x i64]]* %newstruct420 to [1 x [2 x i64]] addrspace(11)*, !dbg !3974 call fastcc void @julia_throw_boundserror_7036({} addrspace(10)* nofree noundef nonnull align 16 dereferenceable(40) %75, [1 x [2 x i64]] addrspace(11)* nocapture nofree noundef nonnull readonly align 8 dereferenceable(16) %152) #42, !dbg !3974 unreachable, !dbg !3974 L990: ; preds = %L940 %"'mi15" = phi {} addrspace(10)* , !dbg !4016 %153 = call noalias nonnull align 16 dereferenceable(40) "enzyme_type"="{[-1]:Pointer, [-1,0]:Pointer, [-1,0,-1]:Float@double, [-1,8]:Integer, [-1,9]:Integer, [-1,10]:Integer, [-1,11]:Integer, [-1,12]:Integer, [-1,13]:Integer, [-1,14]:Integer, [-1,15]:Integer, [-1,16]:Integer, [-1,17]:Integer, [-1,18]:Integer, [-1,19]:Integer, [-1,20]:Integer, [-1,21]:Integer, [-1,22]:Integer, [-1,23]:Integer, [-1,24]:Integer, [-1,25]:Integer, [-1,26]:Integer, [-1,27]:Integer, [-1,28]:Integer, [-1,29]:Integer, [-1,30]:Integer, [-1,31]:Integer, [-1,32]:Integer, [-1,33]:Integer, [-1,34]:Integer, [-1,35]:Integer, [-1,36]:Integer, [-1,37]:Integer, [-1,38]:Integer, [-1,39]:Integer}" {} addrspace(10)* @ijl_alloc_array_1d({} addrspace(10)* noundef addrspacecast ({}* inttoptr (i64 137725871856384 to {}*) to {} addrspace(10)*), i64 noundef 30) #40, !dbg !4016 call fastcc void @julia__copyto_impl__7068({} addrspace(10)* noundef nonnull align 16 dereferenceable(40) %153, {} addrspace(10)* noundef nonnull align 16 dereferenceable(40) %75, i64 noundef signext 2, i64 noundef signext 30) #39, !dbg !4021 %arraylen430 = load i64, i64 addrspace(11)* %arraylen_ptr205, align 8, !dbg !4007, !tbaa !617, !range !620, !alias.scope !621, !noalias !622, !enzyme_inactive !0, !enzyme_type !567, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_UInt64 !0 %154 = icmp ugt i64 %arraylen430, 29, !dbg !4012 br i1 %154, label %L1021, label %L1018, !dbg !3974 L1018: ; preds = %L990 store i64 1, i64* %newstruct426.sroa.0.0..sroa_idx, align 8, !dbg !4015, !tbaa !864, !alias.scope !866, !noalias !3630 store i64 30, i64* %newstruct426.sroa.2.0..sroa_idx1386, align 8, !dbg !4015, !tbaa !864, !alias.scope !866, !noalias !3630 %155 = addrspacecast [1 x [2 x i64]]* %newstruct428 to [1 x [2 x i64]] addrspace(11)*, !dbg !3974 call fastcc void @julia_throw_boundserror_7036({} addrspace(10)* nofree noundef nonnull align 16 dereferenceable(40) %75, [1 x [2 x i64]] addrspace(11)* nocapture nofree noundef nonnull readonly align 8 dereferenceable(16) %155) #42, !dbg !3974 unreachable, !dbg !3974 L1021: ; preds = %L990 %"'mi17" = phi {} addrspace(10)* , !dbg !4016 %156 = call noalias nonnull "enzyme_type"="{[-1]:Pointer, [-1,0]:Pointer, [-1,0,-1]:Float@double, [-1,8]:Integer, [-1,9]:Integer, [-1,10]:Integer, [-1,11]:Integer, [-1,12]:Integer, [-1,13]:Integer, [-1,14]:Integer, [-1,15]:Integer, [-1,16]:Integer, [-1,17]:Integer, [-1,18]:Integer, [-1,19]:Integer, [-1,20]:Integer, [-1,21]:Integer, [-1,22]:Integer, [-1,23]:Integer, [-1,24]:Integer, [-1,25]:Integer, [-1,26]:Integer, [-1,27]:Integer, [-1,28]:Integer, [-1,29]:Integer, [-1,30]:Integer, [-1,31]:Integer, [-1,32]:Integer, [-1,33]:Integer, [-1,34]:Integer, [-1,35]:Integer, [-1,36]:Integer, [-1,37]:Integer, [-1,38]:Integer, [-1,39]:Integer}" {} addrspace(10)* @ijl_alloc_array_1d({} addrspace(10)* noundef addrspacecast ({}* inttoptr (i64 137725871856384 to {}*) to {} addrspace(10)*), i64 noundef 30) #40, !dbg !4016 call fastcc void @julia__copyto_impl__7068({} addrspace(10)* noundef nonnull align 16 dereferenceable(40) %156, {} addrspace(10)* noundef nonnull align 16 dereferenceable(40) %75, i64 noundef signext 1, i64 noundef signext 30) #39, !dbg !4021 %arraylen434 = load i64, i64 addrspace(11)* %arraylen_ptr, align 8, !dbg !4023, !tbaa !45, !range !620, !alias.scope !982, !noalias !983, !enzyme_inactive !0, !enzyme_type !567, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_UInt64 !0 %157 = addrspacecast {} addrspace(10)* %147 to { i8 addrspace(13)*, i64, i16, i16, i32 } addrspace(11)*, !dbg !4027 %arraylen_ptr440 = getelementptr inbounds { i8 addrspace(13)*, i64, i16, i16, i32 }, { i8 addrspace(13)*, i64, i16, i16, i32 } addrspace(11)* %157, i64 0, i32 1, !dbg !4027 %arraylen441 = load i64, i64 addrspace(11)* %arraylen_ptr440, align 8, !dbg !4027, !tbaa !617, !range !620, !alias.scope !621, !noalias !622, !enzyme_inactive !0, !enzyme_type !567, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_UInt64 !0 %158 = load i64*, i64** %arraylen441_cache, align 8, !dbg !4027, !dereferenceable !4044, !invariant.group !3979 %159 = getelementptr inbounds i64, i64* %158, i64 %iv9, !dbg !4027 store i64 %arraylen441, i64* %159, align 8, !dbg !4027, !tbaa !617, !invariant.group !4045 %160 = addrspacecast {} addrspace(10)* %150 to { i8 addrspace(13)*, i64, i16, i16, i32 } addrspace(11)*, !dbg !4027 %arraylen_ptr443 = getelementptr inbounds { i8 addrspace(13)*, i64, i16, i16, i32 }, { i8 addrspace(13)*, i64, i16, i16, i32 } addrspace(11)* %160, i64 0, i32 1, !dbg !4027 %arraylen444 = load i64, i64 addrspace(11)* %arraylen_ptr443, align 8, !dbg !4027, !tbaa !617, !range !620, !alias.scope !621, !noalias !622, !enzyme_inactive !0, !enzyme_type !567, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_UInt64 !0 %161 = load i64*, i64** %arraylen444_cache, align 8, !dbg !4046, !dereferenceable !4044, !invariant.group !3982 %162 = getelementptr inbounds i64, i64* %161, i64 %iv9, !dbg !4046 store i64 %arraylen444, i64* %162, align 8, !dbg !4046, !tbaa !617, !invariant.group !4052 %163 = icmp eq i64 %arraylen444, %arraylen441, !dbg !4046 %164 = icmp eq i64 %arraylen441, 1, !dbg !4048 %value_phi446 = or i1 %164, %163, !dbg !4048 br i1 %value_phi446, label %L1079, label %L1051, !dbg !4049 L1051: ; preds = %L1021 %.not1691 = icmp eq i64 %arraylen444, 1, !dbg !4048 br i1 %.not1691, label %L1079, label %L1059, !dbg !4049 L1059: ; preds = %L1051 %165 = call nonnull {} addrspace(10)* @julia_string_7020({} addrspace(10)* nofree noundef nonnull align 16 addrspacecast ({}* inttoptr (i64 137725978888656 to {}*) to {} addrspace(10)*), i64 signext %arraylen441, {} addrspace(10)* nofree noundef nonnull align 16 addrspacecast ({}* inttoptr (i64 137725978888624 to {}*) to {} addrspace(10)*), i64 signext %arraylen444) #39, !dbg !4049 %box1207 = call noalias nonnull dereferenceable(8) "enzyme_inactive" "enzyme_type"="{[-1]:Pointer, [-1,-1]:Pointer}" {} addrspace(10)* @julia.gc_alloc_obj({}** nonnull %current_task1, i64 noundef 8, {} addrspace(10)* noundef addrspacecast ({}* inttoptr (i64 137725923697904 to {}*) to {} addrspace(10)*)) #41, !dbg !4049 %166 = bitcast {} addrspace(10)* %box1207 to [1 x {} addrspace(10)*] addrspace(10)*, !dbg !4049, !enzyme_inactive !0 %167 = getelementptr [1 x {} addrspace(10)*], [1 x {} addrspace(10)*] addrspace(10)* %166, i64 0, i64 0, !dbg !4049 store {} addrspace(10)* %165, {} addrspace(10)* addrspace(10)* %167, align 8, !dbg !4049, !tbaa !771, !alias.scope !636, !noalias !3569 %168 = addrspacecast {} addrspace(10)* %box1207 to {} addrspace(12)*, !dbg !4049, !enzyme_inactive !0 call void @ijl_throw({} addrspace(12)* %168) #42, !dbg !4049 unreachable, !dbg !4049 L1079: ; preds = %L1051, %L1021 %value_phi447 = phi i64 [ %arraylen441, %L1051 ], [ %arraylen444, %L1021 ], !enzyme_inactive !0 %169 = icmp ne i64 %arraylen434, %value_phi447, !dbg !4053 %170 = icmp ne i64 %value_phi447, 1, !dbg !4055 %171 = and i1 %169, %170, !dbg !4056 br i1 %171, label %L1087, label %L1091, !dbg !4056 L1087: ; preds = %L1079 %172 = call fastcc [1 x {} addrspace(10)*] @julia_DimensionMismatch_7029() #39, !dbg !4056 %box1202 = call noalias nonnull dereferenceable(8) "enzyme_inactive" "enzyme_type"="{[-1]:Pointer, [-1,-1]:Pointer}" {} addrspace(10)* @julia.gc_alloc_obj({}** nonnull %current_task1, i64 noundef 8, {} addrspace(10)* noundef addrspacecast ({}* inttoptr (i64 137725923697904 to {}*) to {} addrspace(10)*)) #41, !dbg !4056 %173 = bitcast {} addrspace(10)* %box1202 to [1 x {} addrspace(10)*] addrspace(10)*, !dbg !4056, !enzyme_inactive !0 %174 = getelementptr [1 x {} addrspace(10)*], [1 x {} addrspace(10)*] addrspace(10)* %173, i64 0, i64 0, !dbg !4056 store {} addrspace(10)* addrspacecast ({}* inttoptr (i64 137726003609488 to {}*) to {} addrspace(10)*), {} addrspace(10)* addrspace(10)* %174, align 8, !dbg !4056, !tbaa !771, !alias.scope !636, !noalias !3569 %175 = addrspacecast {} addrspace(10)* %box1202 to {} addrspace(12)*, !dbg !4056, !enzyme_inactive !0 call void @ijl_throw({} addrspace(12)* %175) #42, !dbg !4056 unreachable, !dbg !4056 L1091: ; preds = %L1079 %176 = addrspacecast {} addrspace(10)* %153 to { i8 addrspace(13)*, i64, i16, i16, i32 } addrspace(11)*, !dbg !4057 %arraylen_ptr450 = getelementptr inbounds { i8 addrspace(13)*, i64, i16, i16, i32 }, { i8 addrspace(13)*, i64, i16, i16, i32 } addrspace(11)* %176, i64 0, i32 1, !dbg !4057 %arraylen451 = load i64, i64 addrspace(11)* %arraylen_ptr450, align 8, !dbg !4057, !tbaa !617, !range !620, !alias.scope !621, !noalias !622 %177 = load i64*, i64** %arraylen451_cache, align 8, !dbg !4057, !dereferenceable !4044, !invariant.group !3985 %178 = getelementptr inbounds i64, i64* %177, i64 %iv9, !dbg !4057 store i64 %arraylen451, i64* %178, align 8, !dbg !4057, !tbaa !617, !invariant.group !4070 %179 = addrspacecast {} addrspace(10)* %156 to { i8 addrspace(13)*, i64, i16, i16, i32 } addrspace(11)*, !dbg !4057 %arraylen_ptr453 = getelementptr inbounds { i8 addrspace(13)*, i64, i16, i16, i32 }, { i8 addrspace(13)*, i64, i16, i16, i32 } addrspace(11)* %179, i64 0, i32 1, !dbg !4057 %arraylen454 = load i64, i64 addrspace(11)* %arraylen_ptr453, align 8, !dbg !4057, !tbaa !617, !range !620, !alias.scope !621, !noalias !622, !enzyme_inactive !0, !enzyme_type !567, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_UInt64 !0 %180 = load i64*, i64** %arraylen454_cache, align 8, !dbg !4071, !dereferenceable !4044, !invariant.group !3988 %181 = getelementptr inbounds i64, i64* %180, i64 %iv9, !dbg !4071 store i64 %arraylen454, i64* %181, align 8, !dbg !4071, !tbaa !617, !invariant.group !4077 %182 = icmp eq i64 %arraylen454, %arraylen451, !dbg !4071 %183 = icmp eq i64 %arraylen451, 1, !dbg !4073 %value_phi456 = or i1 %183, %182, !dbg !4073 br i1 %value_phi456, label %L1130, label %L1105, !dbg !4074 L1105: ; preds = %L1091 %.not1690 = icmp eq i64 %arraylen454, 1, !dbg !4073 br i1 %.not1690, label %L1130, label %L1113, !dbg !4074 L1113: ; preds = %L1105 %184 = call nonnull {} addrspace(10)* @julia_string_7020({} addrspace(10)* nofree noundef nonnull align 16 addrspacecast ({}* inttoptr (i64 137725978888656 to {}*) to {} addrspace(10)*), i64 signext %arraylen451, {} addrspace(10)* nofree noundef nonnull align 16 addrspacecast ({}* inttoptr (i64 137725978888624 to {}*) to {} addrspace(10)*), i64 signext %arraylen454) #39, !dbg !4074 %box1198 = call noalias nonnull dereferenceable(8) "enzyme_inactive" "enzyme_type"="{[-1]:Pointer, [-1,-1]:Pointer}" {} addrspace(10)* @julia.gc_alloc_obj({}** nonnull %current_task1, i64 noundef 8, {} addrspace(10)* noundef addrspacecast ({}* inttoptr (i64 137725923697904 to {}*) to {} addrspace(10)*)) #41, !dbg !4074 %185 = bitcast {} addrspace(10)* %box1198 to [1 x {} addrspace(10)*] addrspace(10)*, !dbg !4074, !enzyme_inactive !0 %186 = getelementptr [1 x {} addrspace(10)*], [1 x {} addrspace(10)*] addrspace(10)* %185, i64 0, i64 0, !dbg !4074 store {} addrspace(10)* %184, {} addrspace(10)* addrspace(10)* %186, align 8, !dbg !4074, !tbaa !771, !alias.scope !636, !noalias !3569 %187 = addrspacecast {} addrspace(10)* %box1198 to {} addrspace(12)*, !dbg !4074, !enzyme_inactive !0 call void @ijl_throw({} addrspace(12)* %187) #42, !dbg !4074 unreachable, !dbg !4074 L1130: ; preds = %L1105, %L1091 %value_phi457 = phi i64 [ %arraylen451, %L1105 ], [ %arraylen454, %L1091 ] %188 = icmp ne i64 %arraylen434, %value_phi457, !dbg !4078 %189 = icmp ne i64 %value_phi457, 1, !dbg !4080 %190 = and i1 %188, %189, !dbg !4081 br i1 %190, label %L1138, label %L1157, !dbg !4081 L1138: ; preds = %L1130 %191 = call fastcc [1 x {} addrspace(10)*] @julia_DimensionMismatch_7029() #39, !dbg !4081 %box1193 = call noalias nonnull dereferenceable(8) "enzyme_inactive" "enzyme_type"="{[-1]:Pointer, [-1,-1]:Pointer}" {} addrspace(10)* @julia.gc_alloc_obj({}** nonnull %current_task1, i64 noundef 8, {} addrspace(10)* noundef addrspacecast ({}* inttoptr (i64 137725923697904 to {}*) to {} addrspace(10)*)) #41, !dbg !4081 %192 = bitcast {} addrspace(10)* %box1193 to [1 x {} addrspace(10)*] addrspace(10)*, !dbg !4081, !enzyme_inactive !0 %193 = getelementptr [1 x {} addrspace(10)*], [1 x {} addrspace(10)*] addrspace(10)* %192, i64 0, i64 0, !dbg !4081 store {} addrspace(10)* addrspacecast ({}* inttoptr (i64 137726003609488 to {}*) to {} addrspace(10)*), {} addrspace(10)* addrspace(10)* %193, align 8, !dbg !4081, !tbaa !771, !alias.scope !636, !noalias !3569 %194 = addrspacecast {} addrspace(10)* %box1193 to {} addrspace(12)*, !dbg !4081, !enzyme_inactive !0 call void @ijl_throw({} addrspace(12)* %194) #42, !dbg !4081 unreachable, !dbg !4081 L1157: ; preds = %L1130 %195 = icmp eq i64 %arraylen444, 1, !dbg !4082 %196 = icmp eq i64 %arraylen454, 1, !dbg !4103 %.not1614 = icmp eq i64 %arraylen434, 0, !dbg !4118 br i1 %.not1614, label %L1354.thread, label %L1300.lr.ph, !dbg !4119 L1354.thread: ; preds = %L1157 %197 = call noalias nonnull "enzyme_type"="{[-1]:Pointer, [-1,0]:Pointer, [-1,0,-1]:Float@double, [-1,8]:Integer, [-1,9]:Integer, [-1,10]:Integer, [-1,11]:Integer, [-1,12]:Integer, [-1,13]:Integer, [-1,14]:Integer, [-1,15]:Integer, [-1,16]:Integer, [-1,17]:Integer, [-1,18]:Integer, [-1,19]:Integer, [-1,20]:Integer, [-1,21]:Integer, [-1,22]:Integer, [-1,23]:Integer, [-1,24]:Integer, [-1,25]:Integer, [-1,26]:Integer, [-1,27]:Integer, [-1,28]:Integer, [-1,29]:Integer, [-1,30]:Integer, [-1,31]:Integer, [-1,32]:Integer, [-1,33]:Integer, [-1,34]:Integer, [-1,35]:Integer, [-1,36]:Integer, [-1,37]:Integer, [-1,38]:Integer, [-1,39]:Integer}" {} addrspace(10)* @ijl_alloc_array_1d({} addrspace(10)* noundef addrspacecast ({}* inttoptr (i64 137725871856384 to {}*) to {} addrspace(10)*), i64 noundef 0) #40, !dbg !4123 br label %L1407, !dbg !4134 L1300.lr.ph: ; preds = %L1157 %198 = addrspacecast {} addrspace(10)* %147 to double addrspace(13)* addrspace(11)* %199 = addrspacecast {} addrspace(10)* %150 to double addrspace(13)* addrspace(11)* %200 = addrspacecast {} addrspace(10)* %153 to double addrspace(13)* addrspace(11)* %201 = addrspacecast {} addrspace(10)* %156 to double addrspace(13)* addrspace(11)* %202 = add nsw i64 %arraylen434, -1, !dbg !4136 br label %L1323, !dbg !4136 L1323: ; preds = %idxend537, %L1300.lr.ph %iv11 = phi i64 [ %iv.next12, %idxend537 ], [ 0, %L1300.lr.ph ] %iv.next12 = add nuw nsw i64 %iv11, 1, !dbg !4137 %203 = select i1 %164, i64 1, i64 %iv.next12, !dbg !4140 %204 = add nsw i64 %203, -1, !dbg !4157 %inbounds495 = icmp ult i64 %204, %arraylen441, !dbg !4157 br i1 %inbounds495, label %idxend498, label %oob496, !dbg !4157 L1354: ; preds = %idxend537 %arraylen544.pre.pre = load i64, i64 addrspace(11)* %arraylen_ptr, align 8, !dbg !4158, !tbaa !617, !range !620, !alias.scope !621, !noalias !622, !enzyme_inactive !0, !enzyme_type !567, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_UInt64 !0 %"'mi19" = phi {} addrspace(10)* , !dbg !4123 %205 = call noalias nonnull "enzyme_type"="{[-1]:Pointer, [-1,0]:Pointer, [-1,0,-1]:Float@double, [-1,8]:Integer, [-1,9]:Integer, [-1,10]:Integer, [-1,11]:Integer, [-1,12]:Integer, [-1,13]:Integer, [-1,14]:Integer, [-1,15]:Integer, [-1,16]:Integer, [-1,17]:Integer, [-1,18]:Integer, [-1,19]:Integer, [-1,20]:Integer, [-1,21]:Integer, [-1,22]:Integer, [-1,23]:Integer, [-1,24]:Integer, [-1,25]:Integer, [-1,26]:Integer, [-1,27]:Integer, [-1,28]:Integer, [-1,29]:Integer, [-1,30]:Integer, [-1,31]:Integer, [-1,32]:Integer, [-1,33]:Integer, [-1,34]:Integer, [-1,35]:Integer, [-1,36]:Integer, [-1,37]:Integer, [-1,38]:Integer, [-1,39]:Integer}" {} addrspace(10)* @ijl_alloc_array_1d({} addrspace(10)* addrspacecast ({}* inttoptr (i64 137725871856384 to {}*) to {} addrspace(10)*), i64 %arraylen544.pre.pre) #40, !dbg !4123 %.not1623 = icmp eq i64 %arraylen544.pre.pre, 0, !dbg !4163 br i1 %.not1623, label %L1407, label %L1378.lr.ph, !dbg !4134 L1378.lr.ph: ; preds = %L1354 %206 = addrspacecast {} addrspace(10)* %205 to { i8 addrspace(13)*, i64, i16, i16, i32 } addrspace(11)* %arraylen_ptr563 = getelementptr inbounds { i8 addrspace(13)*, i64, i16, i16, i32 }, { i8 addrspace(13)*, i64, i16, i16, i32 } addrspace(11)* %206, i64 0, i32 1 %arraylen564 = load i64, i64 addrspace(11)* %arraylen_ptr563, align 8, !tbaa !617, !range !620, !alias.scope !621, !noalias !622, !enzyme_inactive !0, !enzyme_type !567, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_UInt64 !0 %207 = addrspacecast {} addrspace(10)* %205 to double addrspace(13)* addrspace(11)* %208 = add nsw i64 %arraylen544.pre.pre, -1, !dbg !4164 br label %idxend559, !dbg !4164 L1407.loopexit: ; preds = %idxend568 br label %L1407, !dbg !4165 L1407: ; preds = %L1407.loopexit, %L1354, %L1354.thread %209 = phi {} addrspace(10)* [ %197, %L1354.thread ], [ %205, %L1354 ], [ %205, %L1407.loopexit ] %arraylen577 = load i64, i64 addrspace(11)* %arraylen_ptr205, align 8, !dbg !4165, !tbaa !617, !range !620, !alias.scope !621, !noalias !622, !enzyme_inactive !0, !enzyme_type !567, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_UInt64 !0 %210 = icmp ugt i64 %arraylen577, 30, !dbg !4172 br i1 %210, label %L1437, label %L1434, !dbg !4170 L1434: ; preds = %L1407 store i64 2, i64* %newstruct573.sroa.0.0..sroa_idx, align 8, !dbg !4175, !tbaa !864, !alias.scope !866, !noalias !3630 store i64 31, i64* %newstruct573.sroa.2.0..sroa_idx1381, align 8, !dbg !4175, !tbaa !864, !alias.scope !866, !noalias !3630 %211 = addrspacecast [1 x [2 x i64]]* %newstruct575 to [1 x [2 x i64]] addrspace(11)*, !dbg !4170 call fastcc void @julia_throw_boundserror_7036({} addrspace(10)* nofree noundef nonnull align 16 dereferenceable(40) %75, [1 x [2 x i64]] addrspace(11)* nocapture nofree noundef nonnull readonly align 8 dereferenceable(16) %211) #42, !dbg !4170 unreachable, !dbg !4170 L1437: ; preds = %L1407 %"'mi21" = phi {} addrspace(10)* , !dbg !4176 %212 = call noalias nonnull "enzyme_type"="{[-1]:Pointer, [-1,0]:Pointer, [-1,0,-1]:Float@double, [-1,8]:Integer, [-1,9]:Integer, [-1,10]:Integer, [-1,11]:Integer, [-1,12]:Integer, [-1,13]:Integer, [-1,14]:Integer, [-1,15]:Integer, [-1,16]:Integer, [-1,17]:Integer, [-1,18]:Integer, [-1,19]:Integer, [-1,20]:Integer, [-1,21]:Integer, [-1,22]:Integer, [-1,23]:Integer, [-1,24]:Integer, [-1,25]:Integer, [-1,26]:Integer, [-1,27]:Integer, [-1,28]:Integer, [-1,29]:Integer, [-1,30]:Integer, [-1,31]:Integer, [-1,32]:Integer, [-1,33]:Integer, [-1,34]:Integer, [-1,35]:Integer, [-1,36]:Integer, [-1,37]:Integer, [-1,38]:Integer, [-1,39]:Integer}" {} addrspace(10)* @ijl_alloc_array_1d({} addrspace(10)* noundef addrspacecast ({}* inttoptr (i64 137725871856384 to {}*) to {} addrspace(10)*), i64 noundef 30) #40, !dbg !4176 call fastcc void @julia__copyto_impl__7068({} addrspace(10)* noundef nonnull align 16 dereferenceable(40) %212, {} addrspace(10)* noundef nonnull align 16 dereferenceable(40) %75, i64 noundef signext 2, i64 noundef signext 30) #39, !dbg !4181 %arraylen585.pre = load i64, i64 addrspace(11)* %arraylen_ptr205, align 8, !dbg !4165, !tbaa !617, !range !620, !alias.scope !621, !noalias !622, !enzyme_inactive !0, !enzyme_type !567, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_UInt64 !0 %213 = icmp ugt i64 %arraylen585.pre, 29, !dbg !4172 br i1 %213, label %L1477, label %L1474, !dbg !4170 L1474: ; preds = %L1437 store i64 1, i64* %newstruct581.sroa.0.0..sroa_idx, align 8, !dbg !4175, !tbaa !864, !alias.scope !866, !noalias !3630 store i64 30, i64* %newstruct581.sroa.2.0..sroa_idx1380, align 8, !dbg !4175, !tbaa !864, !alias.scope !866, !noalias !3630 %214 = addrspacecast [1 x [2 x i64]]* %newstruct583 to [1 x [2 x i64]] addrspace(11)*, !dbg !4170 call fastcc void @julia_throw_boundserror_7036({} addrspace(10)* nofree noundef nonnull align 16 dereferenceable(40) %75, [1 x [2 x i64]] addrspace(11)* nocapture nofree noundef nonnull readonly align 8 dereferenceable(16) %214) #42, !dbg !4170 unreachable, !dbg !4170 L1477: ; preds = %L1437 %"'mi23" = phi {} addrspace(10)* , !dbg !4176 %215 = call noalias nonnull align 8 dereferenceable(16) "enzyme_type"="{[-1]:Pointer, [-1,0]:Pointer, [-1,0,-1]:Float@double, [-1,8]:Integer, [-1,9]:Integer, [-1,10]:Integer, [-1,11]:Integer, [-1,12]:Integer, [-1,13]:Integer, [-1,14]:Integer, [-1,15]:Integer, [-1,16]:Integer, [-1,17]:Integer, [-1,18]:Integer, [-1,19]:Integer, [-1,20]:Integer, [-1,21]:Integer, [-1,22]:Integer, [-1,23]:Integer, [-1,24]:Integer, [-1,25]:Integer, [-1,26]:Integer, [-1,27]:Integer, [-1,28]:Integer, [-1,29]:Integer, [-1,30]:Integer, [-1,31]:Integer, [-1,32]:Integer, [-1,33]:Integer, [-1,34]:Integer, [-1,35]:Integer, [-1,36]:Integer, [-1,37]:Integer, [-1,38]:Integer, [-1,39]:Integer}" {} addrspace(10)* @ijl_alloc_array_1d({} addrspace(10)* noundef addrspacecast ({}* inttoptr (i64 137725871856384 to {}*) to {} addrspace(10)*), i64 noundef 30) #40, !dbg !4176 call fastcc void @julia__copyto_impl__7068({} addrspace(10)* noundef nonnull align 16 dereferenceable(40) %215, {} addrspace(10)* noundef nonnull align 16 dereferenceable(40) %75, i64 noundef signext 1, i64 noundef signext 30) #39, !dbg !4181 %arraylen589 = load i64, i64 addrspace(11)* %arraylen_ptr11, align 8, !dbg !4183, !tbaa !45, !range !620, !alias.scope !982, !noalias !983, !enzyme_inactive !0, !enzyme_type !567, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_UInt64 !0 %216 = addrspacecast {} addrspace(10)* %209 to { i8 addrspace(13)*, i64, i16, i16, i32 } addrspace(11)*, !dbg !4187 %arraylen_ptr595 = getelementptr inbounds { i8 addrspace(13)*, i64, i16, i16, i32 }, { i8 addrspace(13)*, i64, i16, i16, i32 } addrspace(11)* %216, i64 0, i32 1, !dbg !4187 %arraylen596 = load i64, i64 addrspace(11)* %arraylen_ptr595, align 8, !dbg !4187, !tbaa !617, !range !620, !alias.scope !621, !noalias !622, !enzyme_inactive !0, !enzyme_type !567, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_UInt64 !0 %217 = addrspacecast {} addrspace(10)* %212 to { i8 addrspace(13)*, i64, i16, i16, i32 } addrspace(11)*, !dbg !4195 %arraylen_ptr598 = getelementptr inbounds { i8 addrspace(13)*, i64, i16, i16, i32 }, { i8 addrspace(13)*, i64, i16, i16, i32 } addrspace(11)* %217, i64 0, i32 1, !dbg !4195 %arraylen599 = load i64, i64 addrspace(11)* %arraylen_ptr598, align 8, !dbg !4195, !tbaa !617, !range !620, !alias.scope !621, !noalias !622, !enzyme_inactive !0, !enzyme_type !567, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_UInt64 !0 %218 = load i64*, i64** %arraylen599_cache, align 8, !dbg !4195, !dereferenceable !4044, !invariant.group !3991 %219 = getelementptr inbounds i64, i64* %218, i64 %iv9, !dbg !4195 store i64 %arraylen599, i64* %219, align 8, !dbg !4195, !tbaa !617, !invariant.group !4200 %220 = load i64*, i64** %arraylen589_cache, align 8, !dbg !4195, !dereferenceable !4044, !invariant.group !4000 %221 = getelementptr inbounds i64, i64* %220, i64 %iv9, !dbg !4195 store i64 %arraylen589, i64* %221, align 8, !dbg !4195, !tbaa !45, !invariant.group !4201 %222 = load i64*, i64** %arraylen596_cache, align 8, !dbg !4195, !dereferenceable !4044, !invariant.group !3997 %223 = getelementptr inbounds i64, i64* %222, i64 %iv9, !dbg !4195 store i64 %arraylen596, i64* %223, align 8, !dbg !4195, !tbaa !617, !invariant.group !4202 %224 = addrspacecast {} addrspace(10)* %215 to { i8 addrspace(13)*, i64, i16, i16, i32 } addrspace(11)*, !dbg !4195 %arraylen_ptr601 = getelementptr inbounds { i8 addrspace(13)*, i64, i16, i16, i32 }, { i8 addrspace(13)*, i64, i16, i16, i32 } addrspace(11)* %224, i64 0, i32 1, !dbg !4195 %arraylen602 = load i64, i64 addrspace(11)* %arraylen_ptr601, align 8, !dbg !4195, !tbaa !617, !range !620, !alias.scope !621, !noalias !622, !enzyme_inactive !0, !enzyme_type !567, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_UInt64 !0 %225 = load i64*, i64** %arraylen602_cache, align 8, !dbg !4203, !dereferenceable !4044, !invariant.group !3994 %226 = getelementptr inbounds i64, i64* %225, i64 %iv9, !dbg !4203 store i64 %arraylen602, i64* %226, align 8, !dbg !4203, !tbaa !617, !invariant.group !4209 %227 = icmp eq i64 %arraylen602, %arraylen599, !dbg !4203 %228 = icmp eq i64 %arraylen599, 1, !dbg !4205 %value_phi604 = or i1 %228, %227, !dbg !4205 br i1 %value_phi604, label %L1533, label %L1510, !dbg !4206 L1510: ; preds = %L1477 %.not1685 = icmp eq i64 %arraylen602, 1, !dbg !4205 br i1 %.not1685, label %L1533, label %L1518, !dbg !4206 L1518: ; preds = %L1510 %229 = call nonnull {} addrspace(10)* @julia_string_7020({} addrspace(10)* nofree noundef nonnull align 16 addrspacecast ({}* inttoptr (i64 137725978888656 to {}*) to {} addrspace(10)*), i64 signext %arraylen599, {} addrspace(10)* nofree noundef nonnull align 16 addrspacecast ({}* inttoptr (i64 137725978888624 to {}*) to {} addrspace(10)*), i64 signext %arraylen602) #39, !dbg !4206 %box1166 = call noalias nonnull dereferenceable(8) "enzyme_inactive" "enzyme_type"="{[-1]:Pointer, [-1,-1]:Pointer}" {} addrspace(10)* @julia.gc_alloc_obj({}** nonnull %current_task1, i64 noundef 8, {} addrspace(10)* noundef addrspacecast ({}* inttoptr (i64 137725923697904 to {}*) to {} addrspace(10)*)) #41, !dbg !4206 %230 = bitcast {} addrspace(10)* %box1166 to [1 x {} addrspace(10)*] addrspace(10)*, !dbg !4206, !enzyme_inactive !0 %231 = getelementptr [1 x {} addrspace(10)*], [1 x {} addrspace(10)*] addrspace(10)* %230, i64 0, i64 0, !dbg !4206 store {} addrspace(10)* %229, {} addrspace(10)* addrspace(10)* %231, align 8, !dbg !4206, !tbaa !771, !alias.scope !636, !noalias !3569 %232 = addrspacecast {} addrspace(10)* %box1166 to {} addrspace(12)*, !dbg !4206, !enzyme_inactive !0 call void @ijl_throw({} addrspace(12)* %232) #42, !dbg !4206 unreachable, !dbg !4206 L1533: ; preds = %L1510, %L1477 %value_phi605 = phi i64 [ %arraylen602, %L1477 ], [ %arraylen599, %L1510 ], !enzyme_inactive !0 %233 = icmp eq i64 %value_phi605, %arraylen596, !dbg !4210 %234 = icmp eq i64 %arraylen596, 1, !dbg !4212 %value_phi611 = or i1 %234, %233, !dbg !4212 br i1 %value_phi611, label %L1560, label %L1541, !dbg !4213 L1541: ; preds = %L1533 %.not1684 = icmp eq i64 %value_phi605, 1, !dbg !4212 br i1 %.not1684, label %L1560, label %L1549, !dbg !4213 L1549: ; preds = %L1541 %235 = call nonnull {} addrspace(10)* @julia_string_7020({} addrspace(10)* nofree noundef nonnull align 16 addrspacecast ({}* inttoptr (i64 137725978888656 to {}*) to {} addrspace(10)*), i64 signext %arraylen596, {} addrspace(10)* nofree noundef nonnull align 16 addrspacecast ({}* inttoptr (i64 137725978888624 to {}*) to {} addrspace(10)*), i64 signext %value_phi605) #39, !dbg !4213 %box1161 = call noalias nonnull dereferenceable(8) "enzyme_inactive" "enzyme_type"="{[-1]:Pointer, [-1,-1]:Pointer}" {} addrspace(10)* @julia.gc_alloc_obj({}** nonnull %current_task1, i64 noundef 8, {} addrspace(10)* noundef addrspacecast ({}* inttoptr (i64 137725923697904 to {}*) to {} addrspace(10)*)) #41, !dbg !4213 %236 = bitcast {} addrspace(10)* %box1161 to [1 x {} addrspace(10)*] addrspace(10)*, !dbg !4213, !enzyme_inactive !0 %237 = getelementptr [1 x {} addrspace(10)*], [1 x {} addrspace(10)*] addrspace(10)* %236, i64 0, i64 0, !dbg !4213 store {} addrspace(10)* %235, {} addrspace(10)* addrspace(10)* %237, align 8, !dbg !4213, !tbaa !771, !alias.scope !636, !noalias !3569 %238 = addrspacecast {} addrspace(10)* %box1161 to {} addrspace(12)*, !dbg !4213, !enzyme_inactive !0 call void @ijl_throw({} addrspace(12)* %238) #42, !dbg !4213 unreachable, !dbg !4213 L1560: ; preds = %L1541, %L1533 %value_phi612 = phi i64 [ %arraylen596, %L1541 ], [ %value_phi605, %L1533 ], !enzyme_inactive !0 %239 = icmp ne i64 %arraylen589, %value_phi612, !dbg !4216 %240 = icmp ne i64 %value_phi612, 1, !dbg !4218 %241 = and i1 %239, %240, !dbg !4219 br i1 %241, label %L1568, label %L1587, !dbg !4219 L1568: ; preds = %L1560 %242 = call fastcc [1 x {} addrspace(10)*] @julia_DimensionMismatch_7029() #39, !dbg !4219 %box1156 = call noalias nonnull dereferenceable(8) "enzyme_inactive" "enzyme_type"="{[-1]:Pointer, [-1,-1]:Pointer}" {} addrspace(10)* @julia.gc_alloc_obj({}** nonnull %current_task1, i64 noundef 8, {} addrspace(10)* noundef addrspacecast ({}* inttoptr (i64 137725923697904 to {}*) to {} addrspace(10)*)) #41, !dbg !4219 %243 = bitcast {} addrspace(10)* %box1156 to [1 x {} addrspace(10)*] addrspace(10)*, !dbg !4219, !enzyme_inactive !0 %244 = getelementptr [1 x {} addrspace(10)*], [1 x {} addrspace(10)*] addrspace(10)* %243, i64 0, i64 0, !dbg !4219 store {} addrspace(10)* addrspacecast ({}* inttoptr (i64 137726003609488 to {}*) to {} addrspace(10)*), {} addrspace(10)* addrspace(10)* %244, align 8, !dbg !4219, !tbaa !771, !alias.scope !636, !noalias !3569 %245 = addrspacecast {} addrspace(10)* %box1156 to {} addrspace(12)*, !dbg !4219, !enzyme_inactive !0 call void @ijl_throw({} addrspace(12)* %245) #42, !dbg !4219 unreachable, !dbg !4219 L1587: ; preds = %L1560 %246 = icmp eq i64 %arraylen602, 1, !dbg !4220 %.not1631 = icmp eq i64 %arraylen589, 0, !dbg !4237 br i1 %.not1631, label %L1728, label %L1683.lr.ph, !dbg !4238 L1683.lr.ph: ; preds = %L1587 %247 = addrspacecast {} addrspace(10)* %209 to double addrspace(13)* addrspace(11)* %248 = addrspacecast {} addrspace(10)* %212 to double addrspace(13)* addrspace(11)* %249 = addrspacecast {} addrspace(10)* %215 to double addrspace(13)* addrspace(11)* %250 = add nsw i64 %arraylen589, -1, !dbg !4242 br label %L1706, !dbg !4242 L1706: ; preds = %idxend676, %L1683.lr.ph %iv15 = phi i64 [ %iv.next16, %idxend676 ], [ 0, %L1683.lr.ph ] %iv.next16 = add nuw nsw i64 %iv15, 1, !dbg !4243 %251 = select i1 %234, i64 1, i64 %iv.next16, !dbg !4246 %252 = add nsw i64 %251, -1, !dbg !4256 %inbounds644 = icmp ult i64 %252, %arraylen596, !dbg !4256 br i1 %inbounds644, label %idxend647, label %oob645, !dbg !4256 L1728.loopexit: ; preds = %idxend676 br label %L1728, !dbg !4257 L1728: ; preds = %L1728.loopexit, %L1587 %arraylen687 = load i64, i64 addrspace(11)* %arraylen_ptr205, align 8, !dbg !4257, !tbaa !617, !range !620, !alias.scope !621, !noalias !622, !enzyme_inactive !0, !enzyme_type !567, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_UInt64 !0 %253 = icmp ugt i64 %arraylen687, 29, !dbg !4267 br i1 %253, label %L1789, label %L1752, !dbg !4262 L1752: ; preds = %L1728 store i64 2, i64* %newstruct683.sroa.0.0..sroa_idx, align 8, !dbg !4270, !tbaa !864, !alias.scope !866, !noalias !3630 store i64 30, i64* %newstruct683.sroa.3.0..sroa_idx1363, align 8, !dbg !4270, !tbaa !864, !alias.scope !866, !noalias !3630 %254 = addrspacecast [1 x [2 x i64]]* %newstruct685 to [1 x [2 x i64]] addrspace(11)*, !dbg !4262 call fastcc void @julia_throw_boundserror_7036({} addrspace(10)* nofree noundef nonnull align 16 dereferenceable(40) %75, [1 x [2 x i64]] addrspace(11)* nocapture nofree noundef nonnull readonly align 8 dereferenceable(16) %254) #42, !dbg !4262 unreachable, !dbg !4262 L1789: ; preds = %L1728 %"'mi25" = phi {} addrspace(10)* , !dbg !4271 %255 = call noalias nonnull "enzyme_type"="{[-1]:Pointer, [-1,0]:Pointer, [-1,0,-1]:Float@double, [-1,8]:Integer, [-1,9]:Integer, [-1,10]:Integer, [-1,11]:Integer, [-1,12]:Integer, [-1,13]:Integer, [-1,14]:Integer, [-1,15]:Integer, [-1,16]:Integer, [-1,17]:Integer, [-1,18]:Integer, [-1,19]:Integer, [-1,20]:Integer, [-1,21]:Integer, [-1,22]:Integer, [-1,23]:Integer, [-1,24]:Integer, [-1,25]:Integer, [-1,26]:Integer, [-1,27]:Integer, [-1,28]:Integer, [-1,29]:Integer, [-1,30]:Integer, [-1,31]:Integer, [-1,32]:Integer, [-1,33]:Integer, [-1,34]:Integer, [-1,35]:Integer, [-1,36]:Integer, [-1,37]:Integer, [-1,38]:Integer, [-1,39]:Integer}" {} addrspace(10)* @ijl_alloc_array_1d({} addrspace(10)* noundef addrspacecast ({}* inttoptr (i64 137725871856384 to {}*) to {} addrspace(10)*), i64 noundef 29) #40, !dbg !4271 call fastcc void @julia__copyto_impl__7068({} addrspace(10)* noundef nonnull align 16 dereferenceable(40) %255, {} addrspace(10)* noundef nonnull align 16 dereferenceable(40) %75, i64 noundef signext 2, i64 noundef signext 29) #39, !dbg !4276 %arraylen704 = load i64, i64 addrspace(11)* %arraylen_ptr56, align 8, !dbg !4278, !tbaa !617, !range !620, !alias.scope !621, !noalias !622, !enzyme_inactive !0, !enzyme_type !567, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_UInt64 !0 %256 = icmp ugt i64 %arraylen704, 29, !dbg !4285 br i1 %256, label %L1840, label %L1826, !dbg !4283 L1826: ; preds = %L1789 store i64 2, i64* %newstruct700.sroa.0.0..sroa_idx, align 8, !dbg !4288, !tbaa !864, !alias.scope !866, !noalias !3630 store i64 30, i64* %newstruct700.sroa.2.0..sroa_idx1360, align 8, !dbg !4288, !tbaa !864, !alias.scope !866, !noalias !3630 %257 = addrspacecast [1 x [2 x i64]]* %newstruct702 to [1 x [2 x i64]] addrspace(11)*, !dbg !4283 call fastcc void @julia_throw_boundserror_7036({} addrspace(10)* nofree noundef nonnull align 16 dereferenceable(40) %30, [1 x [2 x i64]] addrspace(11)* nocapture nofree noundef nonnull readonly align 8 dereferenceable(16) %257) #42, !dbg !4283 unreachable, !dbg !4283 L1840: ; preds = %L1789 %"'mi27" = phi {} addrspace(10)* , !dbg !4271 %258 = call noalias nonnull "enzyme_type"="{[-1]:Pointer, [-1,0]:Pointer, [-1,0,-1]:Float@double, [-1,8]:Integer, [-1,9]:Integer, [-1,10]:Integer, [-1,11]:Integer, [-1,12]:Integer, [-1,13]:Integer, [-1,14]:Integer, [-1,15]:Integer, [-1,16]:Integer, [-1,17]:Integer, [-1,18]:Integer, [-1,19]:Integer, [-1,20]:Integer, [-1,21]:Integer, [-1,22]:Integer, [-1,23]:Integer, [-1,24]:Integer, [-1,25]:Integer, [-1,26]:Integer, [-1,27]:Integer, [-1,28]:Integer, [-1,29]:Integer, [-1,30]:Integer, [-1,31]:Integer, [-1,32]:Integer, [-1,33]:Integer, [-1,34]:Integer, [-1,35]:Integer, [-1,36]:Integer, [-1,37]:Integer, [-1,38]:Integer, [-1,39]:Integer}" {} addrspace(10)* @ijl_alloc_array_1d({} addrspace(10)* addrspacecast ({}* inttoptr (i64 137725871856384 to {}*) to {} addrspace(10)*), i64 29) #40, !dbg !4271 call fastcc void @julia__copyto_impl__7068({} addrspace(10)* noundef nonnull align 16 dereferenceable(40) %258, {} addrspace(10)* noundef nonnull align 16 dereferenceable(40) %30, i64 noundef signext 2, i64 noundef signext 29) #39, !dbg !4276 %arraylen712 = load i64, i64 addrspace(11)* %arraylen_ptr11, align 8, !dbg !4278, !tbaa !617, !range !620, !alias.scope !621, !noalias !622, !enzyme_inactive !0, !enzyme_type !567, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_UInt64 !0 %259 = icmp ugt i64 %arraylen712, 29, !dbg !4285 br i1 %259, label %L1879, label %L1867, !dbg !4283 L1867: ; preds = %L1840 store i64 2, i64* %newstruct708.sroa.0.0..sroa_idx, align 8, !dbg !4288, !tbaa !864, !alias.scope !866, !noalias !3630 store i64 30, i64* %newstruct708.sroa.2.0..sroa_idx1359, align 8, !dbg !4288, !tbaa !864, !alias.scope !866, !noalias !3630 %260 = addrspacecast [1 x [2 x i64]]* %newstruct710 to [1 x [2 x i64]] addrspace(11)*, !dbg !4283 call fastcc void @julia_throw_boundserror_7036({} addrspace(10)* nofree noundef nonnull align 16 dereferenceable(40) %17, [1 x [2 x i64]] addrspace(11)* nocapture nofree noundef nonnull readonly align 8 dereferenceable(16) %260) #42, !dbg !4283 unreachable, !dbg !4283 L1879: ; preds = %L1840 %"'mi29" = phi {} addrspace(10)* , !dbg !4271 %261 = call noalias nonnull "enzyme_type"="{[-1]:Pointer, [-1,0]:Pointer, [-1,0,-1]:Float@double, [-1,8]:Integer, [-1,9]:Integer, [-1,10]:Integer, [-1,11]:Integer, [-1,12]:Integer, [-1,13]:Integer, [-1,14]:Integer, [-1,15]:Integer, [-1,16]:Integer, [-1,17]:Integer, [-1,18]:Integer, [-1,19]:Integer, [-1,20]:Integer, [-1,21]:Integer, [-1,22]:Integer, [-1,23]:Integer, [-1,24]:Integer, [-1,25]:Integer, [-1,26]:Integer, [-1,27]:Integer, [-1,28]:Integer, [-1,29]:Integer, [-1,30]:Integer, [-1,31]:Integer, [-1,32]:Integer, [-1,33]:Integer, [-1,34]:Integer, [-1,35]:Integer, [-1,36]:Integer, [-1,37]:Integer, [-1,38]:Integer, [-1,39]:Integer}" {} addrspace(10)* @ijl_alloc_array_1d({} addrspace(10)* addrspacecast ({}* inttoptr (i64 137725871856384 to {}*) to {} addrspace(10)*), i64 29) #40, !dbg !4271 call fastcc void @julia__copyto_impl__7068({} addrspace(10)* noundef nonnull align 16 dereferenceable(40) %261, {} addrspace(10)* noundef nonnull align 16 dereferenceable(40) %17, i64 noundef signext 2, i64 noundef signext 29) #39, !dbg !4276 %arraylen720 = load i64, i64 addrspace(11)* %arraylen_ptr11, align 8, !dbg !4278, !tbaa !617, !range !620, !alias.scope !621, !noalias !622, !enzyme_inactive !0, !enzyme_type !567, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_UInt64 !0 %262 = icmp ult i64 %arraylen720, 29, !dbg !4285 br i1 %262, label %L1908, label %L1911, !dbg !4283 L1908: ; preds = %L1879 store i64 1, i64* %newstruct716.sroa.0.0..sroa_idx, align 8, !dbg !4288, !tbaa !864, !alias.scope !866, !noalias !3630 store i64 29, i64* %newstruct716.sroa.2.0..sroa_idx1358, align 8, !dbg !4288, !tbaa !864, !alias.scope !866, !noalias !3630 %263 = addrspacecast [1 x [2 x i64]]* %newstruct718 to [1 x [2 x i64]] addrspace(11)*, !dbg !4283 call fastcc void @julia_throw_boundserror_7036({} addrspace(10)* nofree noundef nonnull align 16 dereferenceable(40) %17, [1 x [2 x i64]] addrspace(11)* nocapture nofree noundef nonnull readonly align 8 dereferenceable(16) %263) #42, !dbg !4283 unreachable, !dbg !4283 L1911: ; preds = %L1879 %"'mi31" = phi {} addrspace(10)* , !dbg !4271 %264 = call noalias nonnull "enzyme_type"="{[-1]:Pointer, [-1,0]:Pointer, [-1,0,-1]:Float@double, [-1,8]:Integer, [-1,9]:Integer, [-1,10]:Integer, [-1,11]:Integer, [-1,12]:Integer, [-1,13]:Integer, [-1,14]:Integer, [-1,15]:Integer, [-1,16]:Integer, [-1,17]:Integer, [-1,18]:Integer, [-1,19]:Integer, [-1,20]:Integer, [-1,21]:Integer, [-1,22]:Integer, [-1,23]:Integer, [-1,24]:Integer, [-1,25]:Integer, [-1,26]:Integer, [-1,27]:Integer, [-1,28]:Integer, [-1,29]:Integer, [-1,30]:Integer, [-1,31]:Integer, [-1,32]:Integer, [-1,33]:Integer, [-1,34]:Integer, [-1,35]:Integer, [-1,36]:Integer, [-1,37]:Integer, [-1,38]:Integer, [-1,39]:Integer}" {} addrspace(10)* @ijl_alloc_array_1d({} addrspace(10)* addrspacecast ({}* inttoptr (i64 137725871856384 to {}*) to {} addrspace(10)*), i64 29) #40, !dbg !4271 call fastcc void @julia__copyto_impl__7068({} addrspace(10)* noundef nonnull align 16 dereferenceable(40) %264, {} addrspace(10)* noundef nonnull align 16 dereferenceable(40) %17, i64 noundef signext 1, i64 noundef signext 29) #39, !dbg !4276 %265 = addrspacecast {} addrspace(10)* %255 to {} addrspace(11)*, !dbg !4289 %266 = addrspacecast {} addrspace(10)* %255 to { i8 addrspace(13)*, i64, i16, i16, i32 } addrspace(11)*, !dbg !4289 %arraylen_ptr728 = getelementptr inbounds { i8 addrspace(13)*, i64, i16, i16, i32 }, { i8 addrspace(13)*, i64, i16, i16, i32 } addrspace(11)* %266, i64 0, i32 1, !dbg !4289 %arraylen729 = load i64, i64 addrspace(11)* %arraylen_ptr728, align 8, !dbg !4289, !tbaa !617, !range !620, !alias.scope !621, !noalias !622, !enzyme_inactive !0, !enzyme_type !567, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_UInt64 !0 %267 = load i64*, i64** %arraylen729_cache, align 8, !dbg !4299, !dereferenceable !4044, !invariant.group !4003 %268 = getelementptr inbounds i64, i64* %267, i64 %iv9, !dbg !4299 store i64 %arraylen729, i64* %268, align 8, !dbg !4299, !tbaa !617, !invariant.group !4304 %269 = addrspacecast {} addrspace(10)* %258 to {} addrspace(11)*, !dbg !4299 %270 = addrspacecast {} addrspace(10)* %258 to { i8 addrspace(13)*, i64, i16, i16, i32 } addrspace(11)*, !dbg !4299 %arraylen_ptr731 = getelementptr inbounds { i8 addrspace(13)*, i64, i16, i16, i32 }, { i8 addrspace(13)*, i64, i16, i16, i32 } addrspace(11)* %270, i64 0, i32 1, !dbg !4299 %arraylen732 = load i64, i64 addrspace(11)* %arraylen_ptr731, align 8, !dbg !4299, !tbaa !617, !range !620, !alias.scope !621, !noalias !622 %271 = load i64*, i64** %arraylen732_cache, align 8, !dbg !4305, !dereferenceable !4044, !invariant.group !4006 %272 = getelementptr inbounds i64, i64* %271, i64 %iv9, !dbg !4305 store i64 %arraylen732, i64* %272, align 8, !dbg !4305, !tbaa !617, !invariant.group !4311 %273 = icmp eq i64 %arraylen732, %arraylen729, !dbg !4305 %274 = icmp eq i64 %arraylen729, 1, !dbg !4307 %value_phi734 = or i1 %274, %273, !dbg !4307 br i1 %value_phi734, label %L1961, label %L1942, !dbg !4308 L1942: ; preds = %L1911 %.not1680 = icmp eq i64 %arraylen732, 1, !dbg !4307 br i1 %.not1680, label %L1961, label %L1950, !dbg !4308 L1950: ; preds = %L1942 %275 = call nonnull {} addrspace(10)* @julia_string_7020({} addrspace(10)* nofree noundef nonnull align 16 addrspacecast ({}* inttoptr (i64 137725978888656 to {}*) to {} addrspace(10)*), i64 signext %arraylen729, {} addrspace(10)* nofree noundef nonnull align 16 addrspacecast ({}* inttoptr (i64 137725978888624 to {}*) to {} addrspace(10)*), i64 signext %arraylen732) #39, !dbg !4308 %box1131 = call noalias nonnull dereferenceable(8) "enzyme_inactive" "enzyme_type"="{[-1]:Pointer, [-1,-1]:Pointer}" {} addrspace(10)* @julia.gc_alloc_obj({}** nonnull %current_task1, i64 8, {} addrspace(10)* addrspacecast ({}* inttoptr (i64 137725923697904 to {}*) to {} addrspace(10)*)) #41, !dbg !4308 %276 = bitcast {} addrspace(10)* %box1131 to [1 x {} addrspace(10)*] addrspace(10)*, !dbg !4308, !enzyme_inactive !0 %277 = getelementptr [1 x {} addrspace(10)*], [1 x {} addrspace(10)*] addrspace(10)* %276, i64 0, i64 0, !dbg !4308 store {} addrspace(10)* %275, {} addrspace(10)* addrspace(10)* %277, align 8, !dbg !4308, !tbaa !771, !alias.scope !636, !noalias !3569 %278 = addrspacecast {} addrspace(10)* %box1131 to {} addrspace(12)*, !dbg !4308, !enzyme_inactive !0 call void @ijl_throw({} addrspace(12)* %278) #39, !dbg !4308 unreachable, !dbg !4308 L1961: ; preds = %L1942, %L1911 %value_phi735 = phi i64 [ %arraylen729, %L1942 ], [ %arraylen732, %L1911 ] switch i64 %value_phi735, label %L1969 [ i64 29, label %L1973 i64 1, label %L1973 ], !dbg !4312 L1969: ; preds = %L1961 %279 = call fastcc [1 x {} addrspace(10)*] @julia_DimensionMismatch_7029() #39, !dbg !4312 %box1126 = call noalias nonnull dereferenceable(8) "enzyme_inactive" "enzyme_type"="{[-1]:Pointer, [-1,-1]:Pointer}" {} addrspace(10)* @julia.gc_alloc_obj({}** nonnull %current_task1, i64 8, {} addrspace(10)* addrspacecast ({}* inttoptr (i64 137725923697904 to {}*) to {} addrspace(10)*)) #41, !dbg !4312 %280 = bitcast {} addrspace(10)* %box1126 to [1 x {} addrspace(10)*] addrspace(10)*, !dbg !4312, !enzyme_inactive !0 %281 = extractvalue [1 x {} addrspace(10)*] %279, 0, !dbg !4312, !enzyme_type !1629 %282 = getelementptr [1 x {} addrspace(10)*], [1 x {} addrspace(10)*] addrspace(10)* %280, i64 0, i64 0, !dbg !4312 store {} addrspace(10)* %281, {} addrspace(10)* addrspace(10)* %282, align 8, !dbg !4312, !tbaa !771, !alias.scope !636, !noalias !3569 %283 = addrspacecast {} addrspace(10)* %box1126 to {} addrspace(12)*, !dbg !4312, !enzyme_inactive !0 call void @ijl_throw({} addrspace(12)* %283) #39, !dbg !4312 unreachable, !dbg !4312 L1973: ; preds = %L1961, %L1961 %284 = addrspacecast {} addrspace(10)* %261 to {} addrspace(11)*, !dbg !4313 %285 = addrspacecast {} addrspace(10)* %261 to { i8 addrspace(13)*, i64, i16, i16, i32 } addrspace(11)*, !dbg !4313 %arraylen_ptr738 = getelementptr inbounds { i8 addrspace(13)*, i64, i16, i16, i32 }, { i8 addrspace(13)*, i64, i16, i16, i32 } addrspace(11)* %285, i64 0, i32 1, !dbg !4313 %arraylen739 = load i64, i64 addrspace(11)* %arraylen_ptr738, align 8, !dbg !4313, !tbaa !617, !range !620, !alias.scope !621, !noalias !622 %286 = addrspacecast {} addrspace(10)* %264 to {} addrspace(11)*, !dbg !4313 %287 = addrspacecast {} addrspace(10)* %264 to { i8 addrspace(13)*, i64, i16, i16, i32 } addrspace(11)*, !dbg !4313 %arraylen_ptr741 = getelementptr inbounds { i8 addrspace(13)*, i64, i16, i16, i32 }, { i8 addrspace(13)*, i64, i16, i16, i32 } addrspace(11)* %287, i64 0, i32 1, !dbg !4313 %arraylen742 = load i64, i64 addrspace(11)* %arraylen_ptr741, align 8, !dbg !4313, !tbaa !617, !range !620, !alias.scope !621, !noalias !622, !enzyme_inactive !0, !enzyme_type !567, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_UInt64 !0 %288 = icmp eq i64 %arraylen742, %arraylen739, !dbg !4323 %289 = icmp eq i64 %arraylen739, 1, !dbg !4325 %value_phi744 = or i1 %289, %288, !dbg !4325 br i1 %value_phi744, label %L2009, label %L1987, !dbg !4326 L1987: ; preds = %L1973 %.not1679 = icmp eq i64 %arraylen742, 1, !dbg !4325 br i1 %.not1679, label %L2009, label %L1995, !dbg !4326 L1995: ; preds = %L1987 %290 = call nonnull {} addrspace(10)* @julia_string_7020({} addrspace(10)* nofree noundef nonnull align 16 addrspacecast ({}* inttoptr (i64 137725978888656 to {}*) to {} addrspace(10)*), i64 signext %arraylen739, {} addrspace(10)* nofree noundef nonnull align 16 addrspacecast ({}* inttoptr (i64 137725978888624 to {}*) to {} addrspace(10)*), i64 signext %arraylen742) #39, !dbg !4326 %box1122 = call noalias nonnull dereferenceable(8) "enzyme_inactive" "enzyme_type"="{[-1]:Pointer, [-1,-1]:Pointer}" {} addrspace(10)* @julia.gc_alloc_obj({}** nonnull %current_task1, i64 8, {} addrspace(10)* addrspacecast ({}* inttoptr (i64 137725923697904 to {}*) to {} addrspace(10)*)) #41, !dbg !4326 %291 = bitcast {} addrspace(10)* %box1122 to [1 x {} addrspace(10)*] addrspace(10)*, !dbg !4326, !enzyme_inactive !0 %292 = getelementptr [1 x {} addrspace(10)*], [1 x {} addrspace(10)*] addrspace(10)* %291, i64 0, i64 0, !dbg !4326 store {} addrspace(10)* %290, {} addrspace(10)* addrspace(10)* %292, align 8, !dbg !4326, !tbaa !771, !alias.scope !636, !noalias !3569 %293 = addrspacecast {} addrspace(10)* %box1122 to {} addrspace(12)*, !dbg !4326, !enzyme_inactive !0 call void @ijl_throw({} addrspace(12)* %293) #39, !dbg !4326 unreachable, !dbg !4326 L2009: ; preds = %L1987, %L1973 %value_phi745 = phi i64 [ %arraylen739, %L1987 ], [ %arraylen742, %L1973 ] switch i64 %value_phi745, label %L2017 [ i64 29, label %L2120 i64 1, label %L2120 ], !dbg !4329 L2017: ; preds = %L2009 %294 = call fastcc [1 x {} addrspace(10)*] @julia_DimensionMismatch_7029() #39, !dbg !4329 %box1117 = call noalias nonnull dereferenceable(8) "enzyme_inactive" "enzyme_type"="{[-1]:Pointer, [-1,-1]:Pointer}" {} addrspace(10)* @julia.gc_alloc_obj({}** nonnull %current_task1, i64 8, {} addrspace(10)* addrspacecast ({}* inttoptr (i64 137725923697904 to {}*) to {} addrspace(10)*)) #41, !dbg !4329 %295 = bitcast {} addrspace(10)* %box1117 to [1 x {} addrspace(10)*] addrspace(10)*, !dbg !4329, !enzyme_inactive !0 %296 = extractvalue [1 x {} addrspace(10)*] %294, 0, !dbg !4329, !enzyme_type !1629 %297 = getelementptr [1 x {} addrspace(10)*], [1 x {} addrspace(10)*] addrspace(10)* %295, i64 0, i64 0, !dbg !4329 store {} addrspace(10)* %296, {} addrspace(10)* addrspace(10)* %297, align 8, !dbg !4329, !tbaa !771, !alias.scope !636, !noalias !3569 %298 = addrspacecast {} addrspace(10)* %box1117 to {} addrspace(12)*, !dbg !4329, !enzyme_inactive !0 call void @ijl_throw({} addrspace(12)* %298) #39, !dbg !4329 unreachable, !dbg !4329 L2120: ; preds = %L2009, %L2009 %299 = call nonnull "enzyme_type"="{[-1]:Pointer, [-1,0]:Pointer, [-1,0,-1]:Float@double, [-1,8]:Integer, [-1,9]:Integer, [-1,10]:Integer, [-1,11]:Integer, [-1,12]:Integer, [-1,13]:Integer, [-1,14]:Integer, [-1,15]:Integer, [-1,16]:Integer, [-1,17]:Integer, [-1,18]:Integer, [-1,19]:Integer, [-1,20]:Integer, [-1,21]:Integer, [-1,22]:Integer, [-1,23]:Integer, [-1,24]:Integer, [-1,25]:Integer, [-1,26]:Integer, [-1,27]:Integer, [-1,28]:Integer, [-1,29]:Integer, [-1,30]:Integer, [-1,31]:Integer, [-1,32]:Integer, [-1,33]:Integer, [-1,34]:Integer, [-1,35]:Integer, [-1,36]:Integer, [-1,37]:Integer, [-1,38]:Integer, [-1,39]:Integer}" {}* @julia.pointer_from_objref({} addrspace(11)* %265) #43, !dbg !4330 %300 = call nonnull {}* @julia.pointer_from_objref({} addrspace(11)* %269) #43, !dbg !4343 %301 = icmp eq i64 %arraylen732, 1, !dbg !4353 %302 = call nonnull {}* @julia.pointer_from_objref({} addrspace(11)* %284) #43, !dbg !4359 %303 = call nonnull "enzyme_type"="{[-1]:Pointer, [-1,0]:Pointer, [-1,0,-1]:Float@double, [-1,8]:Integer, [-1,9]:Integer, [-1,10]:Integer, [-1,11]:Integer, [-1,12]:Integer, [-1,13]:Integer, [-1,14]:Integer, [-1,15]:Integer, [-1,16]:Integer, [-1,17]:Integer, [-1,18]:Integer, [-1,19]:Integer, [-1,20]:Integer, [-1,21]:Integer, [-1,22]:Integer, [-1,23]:Integer, [-1,24]:Integer, [-1,25]:Integer, [-1,26]:Integer, [-1,27]:Integer, [-1,28]:Integer, [-1,29]:Integer, [-1,30]:Integer, [-1,31]:Integer, [-1,32]:Integer, [-1,33]:Integer, [-1,34]:Integer, [-1,35]:Integer, [-1,36]:Integer, [-1,37]:Integer, [-1,38]:Integer, [-1,39]:Integer}" {}* @julia.pointer_from_objref({} addrspace(11)* %286) #43, !dbg !4372 %304 = icmp eq i64 %arraylen742, 1, !dbg !4380 %305 = addrspacecast {} addrspace(10)* %255 to double addrspace(13)* addrspace(11)* %306 = addrspacecast {} addrspace(10)* %258 to double addrspace(13)* addrspace(11)* %307 = addrspacecast {} addrspace(10)* %261 to double addrspace(13)* addrspace(11)* %308 = addrspacecast {} addrspace(10)* %264 to double addrspace(13)* addrspace(11)* br label %L2173, !dbg !4386 L2173: ; preds = %idxend839, %L2120 %iv17 = phi i64 [ %iv.next18, %idxend839 ], [ 0, %L2120 ] %iv.next18 = add nuw nsw i64 %iv17, 1, !dbg !4388 %309 = select i1 %274, i64 1, i64 %iv.next18, !dbg !4391 %310 = add nsw i64 %309, -1, !dbg !4401 %inbounds795 = icmp ult i64 %310, %arraylen729, !dbg !4401 br i1 %inbounds795, label %idxend798, label %oob796, !dbg !4401 L2221: ; preds = %idxend839 %311 = icmp ugt i64 %arraylen835, 29, !dbg !4402 br i1 %311, label %L2248, label %L2245, !dbg !4406 L2245: ; preds = %L2221 store i64 2, i64* %newstruct847.sroa.0.0..sroa_idx, align 8, !dbg !4411, !tbaa !864, !alias.scope !866, !noalias !3630 store i64 30, i64* %newstruct847.sroa.3.0..sroa_idx1345, align 8, !dbg !4411, !tbaa !864, !alias.scope !866, !noalias !3630 %312 = addrspacecast [1 x [2 x i64]]* %newstruct849 to [1 x [2 x i64]] addrspace(11)*, !dbg !4406 call fastcc void @julia_throw_boundserror_7036({} addrspace(10)* nofree noundef nonnull align 16 dereferenceable(40) %75, [1 x [2 x i64]] addrspace(11)* nocapture nofree noundef nonnull readonly align 8 dereferenceable(16) %312) #42, !dbg !4406 unreachable, !dbg !4406 L2248: ; preds = %L2221 store {} addrspace(10)* %75, {} addrspace(10)** %.fca.0.0.gep, align 8, !dbg !4410, !noalias !4412 store {} addrspace(10)* %37, {} addrspace(10)** %.fca.0.1.gep, align 8, !dbg !4410, !noalias !4412 store i64 2, i64* %.fca.1.0.gep, align 8, !dbg !4410, !noalias !4412 store i64 30, i64* %.fca.1.1.gep, align 8, !dbg !4410, !noalias !4412 %313 = call fastcc nonnull {} addrspace(10)* @julia_collect_7046({ [2 x {} addrspace(10)*], [2 x i64] } addrspace(11)* nocapture noundef nonnull readonly align 8 dereferenceable(32) %131) #39, !dbg !4410 %"'ip_phi32" = phi {} addrspace(10)* , !dbg !4410 %314 = addrspacecast {} addrspace(10)* %313 to {} addrspace(11)*, !dbg !4413 %315 = addrspacecast {} addrspace(10)* %313 to { i8 addrspace(13)*, i64, i16, i16, i32 } addrspace(11)*, !dbg !4413 %arraylen_ptr864 = getelementptr inbounds { i8 addrspace(13)*, i64, i16, i16, i32 }, { i8 addrspace(13)*, i64, i16, i16, i32 } addrspace(11)* %315, i64 0, i32 1, !dbg !4413 %arraylen865 = load i64, i64 addrspace(11)* %arraylen_ptr864, align 8, !dbg !4413, !tbaa !617, !range !620, !alias.scope !621, !noalias !622 %316 = icmp eq i64 %arraylen865, 29, !dbg !4419 %317 = icmp eq i64 %arraylen865, 1, !dbg !4421 switch i64 %arraylen865, label %L2281 [ i64 29, label %L2319 i64 1, label %L2334 ], !dbg !4422 L2281: ; preds = %L2248 %318 = call fastcc [1 x {} addrspace(10)*] @julia_DimensionMismatch_7029() #39, !dbg !4422 %box1108 = call noalias nonnull dereferenceable(8) "enzyme_inactive" "enzyme_type"="{[-1]:Pointer, [-1,-1]:Pointer}" {} addrspace(10)* @julia.gc_alloc_obj({}** nonnull %current_task1, i64 8, {} addrspace(10)* addrspacecast ({}* inttoptr (i64 137725923697904 to {}*) to {} addrspace(10)*)) #41, !dbg !4422 %319 = bitcast {} addrspace(10)* %box1108 to [1 x {} addrspace(10)*] addrspace(10)*, !dbg !4422, !enzyme_inactive !0 %320 = extractvalue [1 x {} addrspace(10)*] %318, 0, !dbg !4422, !enzyme_type !1629 %321 = getelementptr [1 x {} addrspace(10)*], [1 x {} addrspace(10)*] addrspace(10)* %319, i64 0, i64 0, !dbg !4422 store {} addrspace(10)* %320, {} addrspace(10)* addrspace(10)* %321, align 8, !dbg !4422, !tbaa !771, !alias.scope !636, !noalias !3569 %322 = addrspacecast {} addrspace(10)* %box1108 to {} addrspace(12)*, !dbg !4422, !enzyme_inactive !0 call void @ijl_throw({} addrspace(12)* %322) #39, !dbg !4422 unreachable, !dbg !4422 L2319: ; preds = %L2248 %323 = call nonnull {}* @julia.pointer_from_objref({} addrspace(11)* %314) #43, !dbg !4423 store {} addrspace(10)* %75, {} addrspace(10)** %.fca.0.gep1326, align 8, !dbg !4431, !noalias !4412 store i64 2, i64* %.fca.1.0.0.gep1328, align 8, !dbg !4431, !noalias !4412 store i64 30, i64* %.fca.1.0.1.gep1330, align 8, !dbg !4431, !noalias !4412 store i64 1, i64* %.fca.2.gep1332, align 8, !dbg !4431, !noalias !4412 store i64 1, i64* %.fca.3.gep1334, align 8, !dbg !4431, !noalias !4412 call fastcc void @julia_copyto_unaliased__7024([1 x {} addrspace(10)*]* noalias nocapture noundef nonnull align 8 dereferenceable(8) "enzymejl_returnRoots" %2, { {} addrspace(10)*, [1 x [2 x i64]], i64, i64 } addrspace(11)* nocapture noundef nonnull readonly align 8 dereferenceable(40) %132, {} addrspace(10)* noundef nonnull align 16 dereferenceable(40) %313) #39, !dbg !4431 br label %L2426, !dbg !4431 L2334: ; preds = %L2248 %324 = call nonnull {}* @julia.pointer_from_objref({} addrspace(11)* %314) #43, !dbg !4432 %325 = addrspacecast {} addrspace(10)* %313 to double addrspace(13)* addrspace(11)* br label %L2389, !dbg !4442 L2389: ; preds = %idxend1096, %L2334 %iv19 = phi i64 [ %iv.next20, %idxend1096 ], [ 0, %L2334 ] %iv.next20 = add nuw nsw i64 %iv19, 1, !dbg !4444 %326 = select i1 %317, i64 1, i64 %iv.next20, !dbg !4447 %327 = add nsw i64 %326, -1, !dbg !4455 %inbounds1082 = icmp ult i64 %327, %arraylen865, !dbg !4455 br i1 %inbounds1082, label %idxend1085, label %oob1083, !dbg !4455 L2426.loopexit: ; preds = %idxend1096 br label %L2426, !dbg !4456 L2426: ; preds = %L2426.loopexit, %L2319 %arraylen878 = load i64, i64 addrspace(11)* %arraylen_ptr225, align 8, !dbg !4456, !tbaa !45, !range !620, !alias.scope !982, !noalias !983, !enzyme_inactive !0, !enzyme_type !567, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_UInt64 !0 %arraylen885 = load i64, i64 addrspace(11)* %arraylen_ptr205, align 8, !dbg !4461, !tbaa !617, !range !620, !alias.scope !621, !noalias !622, !enzyme_inactive !0, !enzyme_type !567, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_UInt64 !0 %328 = icmp ne i64 %arraylen878, %arraylen885, !dbg !4466 %329 = icmp ne i64 %arraylen885, 1, !dbg !4468 %330 = and i1 %328, %329, !dbg !4469 br i1 %330, label %L2442, label %L2446, !dbg !4469 L2442: ; preds = %L2426 %331 = call fastcc [1 x {} addrspace(10)*] @julia_DimensionMismatch_7029() #39, !dbg !4469 %box1059 = call noalias nonnull dereferenceable(8) "enzyme_inactive" "enzyme_type"="{[-1]:Pointer, [-1,-1]:Pointer}" {} addrspace(10)* @julia.gc_alloc_obj({}** nonnull %current_task1, i64 8, {} addrspace(10)* addrspacecast ({}* inttoptr (i64 137725923697904 to {}*) to {} addrspace(10)*)) #41, !dbg !4469 %332 = bitcast {} addrspace(10)* %box1059 to [1 x {} addrspace(10)*] addrspace(10)*, !dbg !4469, !enzyme_inactive !0 %333 = extractvalue [1 x {} addrspace(10)*] %331, 0, !dbg !4469, !enzyme_type !1629 %334 = getelementptr [1 x {} addrspace(10)*], [1 x {} addrspace(10)*] addrspace(10)* %332, i64 0, i64 0, !dbg !4469 store {} addrspace(10)* %333, {} addrspace(10)* addrspace(10)* %334, align 8, !dbg !4469, !tbaa !771, !alias.scope !636, !noalias !3569 %335 = addrspacecast {} addrspace(10)* %box1059 to {} addrspace(12)*, !dbg !4469, !enzyme_inactive !0 call void @ijl_throw({} addrspace(12)* %335) #39, !dbg !4469 unreachable, !dbg !4469 L2446: ; preds = %L2426 %arraylen889 = load i64, i64 addrspace(11)* %arraylen_ptr76, align 8, !dbg !4470, !tbaa !617, !range !620, !alias.scope !621, !noalias !622, !enzyme_inactive !0, !enzyme_type !567, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_UInt64 !0 %336 = icmp ne i64 %arraylen878, %arraylen889, !dbg !4474 %337 = icmp ne i64 %arraylen889, 1, !dbg !4476 %338 = and i1 %336, %337, !dbg !4477 br i1 %338, label %L2457, label %L2479, !dbg !4477 L2457: ; preds = %L2446 %339 = call fastcc [1 x {} addrspace(10)*] @julia_DimensionMismatch_7029() #39, !dbg !4477 %box = call noalias nonnull dereferenceable(8) "enzyme_inactive" "enzyme_type"="{[-1]:Pointer, [-1,-1]:Pointer}" {} addrspace(10)* @julia.gc_alloc_obj({}** nonnull %current_task1, i64 8, {} addrspace(10)* addrspacecast ({}* inttoptr (i64 137725923697904 to {}*) to {} addrspace(10)*)) #41, !dbg !4477 %340 = bitcast {} addrspace(10)* %box to [1 x {} addrspace(10)*] addrspace(10)*, !dbg !4477, !enzyme_inactive !0 %341 = extractvalue [1 x {} addrspace(10)*] %339, 0, !dbg !4477, !enzyme_type !1629 %342 = getelementptr [1 x {} addrspace(10)*], [1 x {} addrspace(10)*] addrspace(10)* %340, i64 0, i64 0, !dbg !4477 store {} addrspace(10)* %341, {} addrspace(10)* addrspace(10)* %342, align 8, !dbg !4477, !tbaa !771, !alias.scope !636, !noalias !3569 %343 = addrspacecast {} addrspace(10)* %box to {} addrspace(12)*, !dbg !4477, !enzyme_inactive !0 call void @ijl_throw({} addrspace(12)* %343) #39, !dbg !4477 unreachable, !dbg !4477 L2479: ; preds = %L2446 %344 = icmp eq i64 %arraylen885, 1, !dbg !4478 %345 = icmp eq i64 %arraylen889, 1, !dbg !4489 %.not1651 = icmp eq i64 %arraylen878, 0, !dbg !4497 br i1 %.not1651, label %L2579, label %L2561.preheader, !dbg !4498 L2561.preheader: ; preds = %L2479 %346 = add nsw i64 %arraylen878, -1, !dbg !4502 br label %L2561, !dbg !4502 L2561: ; preds = %idxend937, %L2561.preheader %iv21 = phi i64 [ 0, %L2561.preheader ], [ %iv.next22, %idxend937 ] %iv.next22 = add nuw nsw i64 %iv21, 1, !dbg !4509 %347 = select i1 %344, i64 1, i64 %iv.next22, !dbg !4512 %348 = add nsw i64 %347, -1, !dbg !4502 %inbounds915 = icmp ult i64 %348, %arraylen885, !dbg !4502 br i1 %inbounds915, label %idxend918, label %oob916, !dbg !4502 L2579.loopexit: ; preds = %idxend937 br label %L2579, !dbg !4514 L2579: ; preds = %L2579.loopexit, %L2479 %arraylen4068859 = phi i64 [ 0, %L2479 ], [ %arraylen933, %L2579.loopexit ] %.not1657 = icmp eq i64 %iv.next10, 30000, !dbg !4514 %349 = add nuw i64 %iv.next10, 1, !dbg !4515 br i1 %.not1657, label %L2589.loopexit, label %L869, !dbg !4516 L2589.loopexit: ; preds = %L2579 store i64 1, i64* %newstruct402.sroa.0.0..sroa_idx, align 8, !dbg !4015, !tbaa !864, !alias.scope !866, !noalias !3630 store i64 30, i64* %newstruct402.sroa.2.0..sroa_idx1389, align 8, !dbg !4015, !tbaa !864, !alias.scope !866, !noalias !3630 store i64 2, i64* %newstruct410.sroa.0.0..sroa_idx, align 8, !dbg !4015, !tbaa !864, !alias.scope !866, !noalias !3630 store i64 31, i64* %newstruct410.sroa.2.0..sroa_idx1388, align 8, !dbg !4015, !tbaa !864, !alias.scope !866, !noalias !3630 store i64 2, i64* %newstruct418.sroa.0.0..sroa_idx, align 8, !dbg !4015, !tbaa !864, !alias.scope !866, !noalias !3630 store i64 31, i64* %newstruct418.sroa.2.0..sroa_idx1387, align 8, !dbg !4015, !tbaa !864, !alias.scope !866, !noalias !3630 store i64 1, i64* %newstruct426.sroa.0.0..sroa_idx, align 8, !dbg !4015, !tbaa !864, !alias.scope !866, !noalias !3630 store i64 30, i64* %newstruct426.sroa.2.0..sroa_idx1386, align 8, !dbg !4015, !tbaa !864, !alias.scope !866, !noalias !3630 store i64 2, i64* %newstruct573.sroa.0.0..sroa_idx, align 8, !dbg !4175, !tbaa !864, !alias.scope !866, !noalias !3630 store i64 31, i64* %newstruct573.sroa.2.0..sroa_idx1381, align 8, !dbg !4175, !tbaa !864, !alias.scope !866, !noalias !3630 store i64 1, i64* %newstruct581.sroa.0.0..sroa_idx, align 8, !dbg !4175, !tbaa !864, !alias.scope !866, !noalias !3630 store i64 30, i64* %newstruct581.sroa.2.0..sroa_idx1380, align 8, !dbg !4175, !tbaa !864, !alias.scope !866, !noalias !3630 store i64 2, i64* %newstruct683.sroa.0.0..sroa_idx, align 8, !dbg !4270, !tbaa !864, !alias.scope !866, !noalias !3630 store i64 30, i64* %newstruct683.sroa.3.0..sroa_idx1363, align 8, !dbg !4270, !tbaa !864, !alias.scope !866, !noalias !3630 store i64 2, i64* %newstruct700.sroa.0.0..sroa_idx, align 8, !dbg !4288, !tbaa !864, !alias.scope !866, !noalias !3630 store i64 30, i64* %newstruct700.sroa.2.0..sroa_idx1360, align 8, !dbg !4288, !tbaa !864, !alias.scope !866, !noalias !3630 store i64 2, i64* %newstruct708.sroa.0.0..sroa_idx, align 8, !dbg !4288, !tbaa !864, !alias.scope !866, !noalias !3630 store i64 30, i64* %newstruct708.sroa.2.0..sroa_idx1359, align 8, !dbg !4288, !tbaa !864, !alias.scope !866, !noalias !3630 store i64 1, i64* %newstruct716.sroa.0.0..sroa_idx, align 8, !dbg !4288, !tbaa !864, !alias.scope !866, !noalias !3630 store i64 29, i64* %newstruct716.sroa.2.0..sroa_idx1358, align 8, !dbg !4288, !tbaa !864, !alias.scope !866, !noalias !3630 store i64 2, i64* %newstruct847.sroa.0.0..sroa_idx, align 8, !dbg !4411, !tbaa !864, !alias.scope !866, !noalias !3630 store i64 30, i64* %newstruct847.sroa.3.0..sroa_idx1345, align 8, !dbg !4411, !tbaa !864, !alias.scope !866, !noalias !3630 %newstruct946.sroa.0.0..sroa_idx = getelementptr inbounds [1 x [2 x i64]], [1 x [2 x i64]]* %newstruct948, i64 0, i64 0, i64 0, !dbg !4517 store i64 1, i64* %newstruct946.sroa.0.0..sroa_idx, align 8, !dbg !4517, !tbaa !864, !alias.scope !866, !noalias !3630 %newstruct946.sroa.2.0..sroa_idx1335 = getelementptr inbounds [1 x [2 x i64]], [1 x [2 x i64]]* %newstruct948, i64 0, i64 0, i64 1, !dbg !4517 store i64 31, i64* %newstruct946.sroa.2.0..sroa_idx1335, align 8, !dbg !4517, !tbaa !864, !alias.scope !866, !noalias !3630 %arraylen950 = load i64, i64 addrspace(11)* %arraylen_ptr225, align 8, !dbg !4520, !tbaa !617, !range !620, !alias.scope !621, !noalias !622, !enzyme_inactive !0, !enzyme_type !567, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_UInt64 !0 %350 = icmp ult i64 %arraylen950, 31, !dbg !4526 br i1 %350, label %L2616, label %L2619, !dbg !4525 L2616: ; preds = %L2589.loopexit %351 = addrspacecast [1 x [2 x i64]]* %newstruct948 to [1 x [2 x i64]] addrspace(11)*, !dbg !4525 call fastcc void @julia_throw_boundserror_7036({} addrspace(10)* nofree noundef nonnull align 16 dereferenceable(40) %82, [1 x [2 x i64]] addrspace(11)* nocapture nofree noundef nonnull readonly align 8 dereferenceable(16) %351) #42, !dbg !4525 unreachable, !dbg !4525 L2619: ; preds = %L2589.loopexit %"'mi34" = phi {} addrspace(10)* , !dbg !4529 %352 = call noalias nonnull "enzyme_type"="{[-1]:Pointer, [-1,0]:Pointer, [-1,0,-1]:Float@double, [-1,8]:Integer, [-1,9]:Integer, [-1,10]:Integer, [-1,11]:Integer, [-1,12]:Integer, [-1,13]:Integer, [-1,14]:Integer, [-1,15]:Integer, [-1,16]:Integer, [-1,17]:Integer, [-1,18]:Integer, [-1,19]:Integer, [-1,20]:Integer, [-1,21]:Integer, [-1,22]:Integer, [-1,23]:Integer, [-1,24]:Integer, [-1,25]:Integer, [-1,26]:Integer, [-1,27]:Integer, [-1,28]:Integer, [-1,29]:Integer, [-1,30]:Integer, [-1,31]:Integer, [-1,32]:Integer, [-1,33]:Integer, [-1,34]:Integer, [-1,35]:Integer, [-1,36]:Integer, [-1,37]:Integer, [-1,38]:Integer, [-1,39]:Integer}" {} addrspace(10)* @ijl_alloc_array_1d({} addrspace(10)* addrspacecast ({}* inttoptr (i64 137725871856384 to {}*) to {} addrspace(10)*), i64 31) #40, !dbg !4529 call fastcc void @julia__copyto_impl__7068({} addrspace(10)* noundef nonnull align 16 dereferenceable(40) %352, {} addrspace(10)* noundef nonnull align 16 dereferenceable(40) %82, i64 noundef signext 1, i64 noundef signext 31) #39, !dbg !4534 %353 = addrspacecast {} addrspace(10)* %352 to { i8 addrspace(13)*, i64, i16, i16, i32 } addrspace(11)*, !dbg !4536 %arraylen_ptr957 = getelementptr inbounds { i8 addrspace(13)*, i64, i16, i16, i32 }, { i8 addrspace(13)*, i64, i16, i16, i32 } addrspace(11)* %353, i64 0, i32 1, !dbg !4536 %arraylen958 = load i64, i64 addrspace(11)* %arraylen_ptr957, align 8, !dbg !4536, !tbaa !617, !range !620, !alias.scope !621, !noalias !622, !enzyme_inactive !0, !enzyme_type !567, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_UInt64 !0 %"'mi36" = phi {} addrspace(10)* , !dbg !4543 %354 = call noalias nonnull "enzyme_type"="{[-1]:Pointer, [-1,0]:Pointer, [-1,0,-1]:Float@double, [-1,8]:Integer, [-1,9]:Integer, [-1,10]:Integer, [-1,11]:Integer, [-1,12]:Integer, [-1,13]:Integer, [-1,14]:Integer, [-1,15]:Integer, [-1,16]:Integer, [-1,17]:Integer, [-1,18]:Integer, [-1,19]:Integer, [-1,20]:Integer, [-1,21]:Integer, [-1,22]:Integer, [-1,23]:Integer, [-1,24]:Integer, [-1,25]:Integer, [-1,26]:Integer, [-1,27]:Integer, [-1,28]:Integer, [-1,29]:Integer, [-1,30]:Integer, [-1,31]:Integer, [-1,32]:Integer, [-1,33]:Integer, [-1,34]:Integer, [-1,35]:Integer, [-1,36]:Integer, [-1,37]:Integer, [-1,38]:Integer, [-1,39]:Integer}" {} addrspace(10)* @ijl_alloc_array_1d({} addrspace(10)* addrspacecast ({}* inttoptr (i64 137725871856384 to {}*) to {} addrspace(10)*), i64 %arraylen958) #40, !dbg !4543 %.not1660 = icmp eq i64 %arraylen958, 0, !dbg !4549 br i1 %.not1660, label %L2630.L2631_crit_edge.L2704_crit_edge, label %L2677.lr.ph, !dbg !4550 L2630.L2631_crit_edge.L2704_crit_edge: ; preds = %L2619 %.phi.trans.insert = addrspacecast {} addrspace(10)* %354 to { i8 addrspace(13)*, i64, i16, i16, i32 } addrspace(11)* %arraylen_ptr986.phi.trans.insert = getelementptr inbounds { i8 addrspace(13)*, i64, i16, i16, i32 }, { i8 addrspace(13)*, i64, i16, i16, i32 } addrspace(11)* %.phi.trans.insert, i64 0, i32 1 %arraylen987.pre = load i64, i64 addrspace(11)* %arraylen_ptr986.phi.trans.insert, align 8, !dbg !4552, !tbaa !617, !range !620, !alias.scope !621, !noalias !622, !enzyme_inactive !0, !enzyme_type !567, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_UInt64 !0 br label %L2704, !dbg !4550 L2677.lr.ph: ; preds = %L2619 %355 = addrspacecast {} addrspace(10)* %354 to { i8 addrspace(13)*, i64, i16, i16, i32 } addrspace(11)* %arraylen_ptr977 = getelementptr inbounds { i8 addrspace(13)*, i64, i16, i16, i32 }, { i8 addrspace(13)*, i64, i16, i16, i32 } addrspace(11)* %355, i64 0, i32 1 %arraylen978 = load i64, i64 addrspace(11)* %arraylen_ptr977, align 8, !tbaa !617, !range !620, !alias.scope !621, !noalias !622, !enzyme_inactive !0, !enzyme_type !567, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_UInt64 !0 %356 = addrspacecast {} addrspace(10)* %352 to double addrspace(13)* addrspace(11)* %357 = addrspacecast {} addrspace(10)* %354 to double addrspace(13)* addrspace(11)* %358 = add nsw i64 %arraylen958, -1, !dbg !4555 br label %idxend973, !dbg !4555 L2704.loopexit: ; preds = %idxend982 br label %L2704, !dbg !4556 L2704: ; preds = %L2704.loopexit, %L2630.L2631_crit_edge.L2704_crit_edge %arraylen987 = phi i64 [ %arraylen987.pre, %L2630.L2631_crit_edge.L2704_crit_edge ], [ %arraylen978, %L2704.loopexit ], !dbg !4552, !enzyme_inactive !0 %"'mi38" = phi {} addrspace(10)* , !dbg !4556 %359 = call noalias nonnull "enzyme_type"="{[-1]:Pointer, [-1,0]:Pointer, [-1,0,-1]:Float@double, [-1,8]:Integer, [-1,9]:Integer, [-1,10]:Integer, [-1,11]:Integer, [-1,12]:Integer, [-1,13]:Integer, [-1,14]:Integer, [-1,15]:Integer, [-1,16]:Integer, [-1,17]:Integer, [-1,18]:Integer, [-1,19]:Integer, [-1,20]:Integer, [-1,21]:Integer, [-1,22]:Integer, [-1,23]:Integer, [-1,24]:Integer, [-1,25]:Integer, [-1,26]:Integer, [-1,27]:Integer, [-1,28]:Integer, [-1,29]:Integer, [-1,30]:Integer, [-1,31]:Integer, [-1,32]:Integer, [-1,33]:Integer, [-1,34]:Integer, [-1,35]:Integer, [-1,36]:Integer, [-1,37]:Integer, [-1,38]:Integer, [-1,39]:Integer}" {} addrspace(10)* @ijl_alloc_array_1d({} addrspace(10)* addrspacecast ({}* inttoptr (i64 137725871856384 to {}*) to {} addrspace(10)*), i64 %arraylen987) #40, !dbg !4556 %360 = addrspacecast {} addrspace(10)* %359 to { i8 addrspace(13)*, i64, i16, i16, i32 } addrspace(11)*, !dbg !4558 %arraylen_ptr988 = getelementptr inbounds { i8 addrspace(13)*, i64, i16, i16, i32 }, { i8 addrspace(13)*, i64, i16, i16, i32 } addrspace(11)* %360, i64 0, i32 1, !dbg !4558 %arraylen989 = load i64, i64 addrspace(11)* %arraylen_ptr988, align 8, !dbg !4558, !tbaa !617, !range !620, !alias.scope !621, !noalias !622, !enzyme_inactive !0, !enzyme_type !567, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_UInt64 !0 %361 = getelementptr inbounds [1 x [1 x i64]], [1 x [1 x i64]]* %newstruct992, i64 0, i64 0, i64 0, !dbg !4561 store i64 %arraylen989, i64* %361, align 8, !dbg !4561, !tbaa !864, !alias.scope !866, !noalias !3630 %362 = getelementptr inbounds [1 x [1 x i64]], [1 x [1 x i64]]* %newstruct997, i64 0, i64 0, i64 0, !dbg !4561 store i64 %arraylen987, i64* %362, align 8, !dbg !4561, !tbaa !864, !alias.scope !866, !noalias !3630 %363 = addrspacecast [1 x [1 x i64]]* %newstruct992 to [1 x [1 x i64]] addrspace(11)*, !dbg !4560 %364 = addrspacecast [1 x [1 x i64]]* %newstruct997 to [1 x [1 x i64]] addrspace(11)*, !dbg !4560 call fastcc void @julia__checkaxs_7043([1 x [1 x i64]] addrspace(11)* nocapture noundef nonnull readonly align 8 dereferenceable(8) %363, [1 x [1 x i64]] addrspace(11)* nocapture noundef nonnull readonly align 8 dereferenceable(8) %364) #39, !dbg !4560 call fastcc void @julia__copyto_impl__7068({} addrspace(10)* noundef nonnull align 16 dereferenceable(40) %359, {} addrspace(10)* noundef nonnull align 16 dereferenceable(40) %354, i64 noundef signext 1, i64 signext %arraylen987) #39, !dbg !4565 %arraylen1001 = load i64, i64 addrspace(11)* %arraylen_ptr988, align 8, !dbg !4568, !tbaa !617, !range !620, !alias.scope !621, !noalias !622, !enzyme_inactive !0, !enzyme_type !567, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_UInt64 !0 switch i64 %arraylen1001, label %L2731 [ i64 0, label %L2761 i64 1, label %idxend1009 ], !dbg !4581 L2731: ; preds = %L2704 %365 = icmp ugt i64 %arraylen1001, 15, !dbg !4582 br i1 %365, label %L2747, label %idxend1027, !dbg !4583 L2747: ; preds = %L2731 %366 = call fastcc double @julia_mapreduce_impl_7038({} addrspace(10)* noundef nonnull align 16 dereferenceable(40) %359, i64 noundef signext 1, i64 signext %arraylen1001) #39, !dbg !4584 br label %L2761, !dbg !4586 L2761.loopexit: ; preds = %idxend1039 br label %L2761, !dbg !4593 L2761: ; preds = %idxend1027, %idxend1009, %L2761.loopexit, %L2747, %L2704 %value_phi1003 = phi double [ %arrayref1012, %idxend1009 ], [ %366, %L2747 ], [ 0.000000e+00, %L2704 ], [ %480, %idxend1027 ], [ %485, %L2761.loopexit ] br label %invertL2761, !dbg !4593 oob134: ; preds = %L315 %errorbox135 = alloca i64, align 8, !dbg !3760 store i64 %60, i64* %errorbox135, align 8, !dbg !3760, !noalias !4412 %367 = addrspacecast {} addrspace(10)* %26 to {} addrspace(12)*, !dbg !3760 call void @ijl_bounds_error_ints({} addrspace(12)* %367, i64* noundef nonnull align 8 %errorbox135, i64 noundef 1) #42, !dbg !3760 unreachable, !dbg !3760 idxend136: ; preds = %L315 %368 = select i1 %55, i64 1, i64 %iv.next, !dbg !4594 %369 = add nsw i64 %368, -1, !dbg !4598 %inbounds142 = icmp ult i64 %369, %arraylen108, !dbg !4598 br i1 %inbounds142, label %idxend154, label %oob143, !dbg !4598 oob143: ; preds = %idxend136 %errorbox144 = alloca i64, align 8, !dbg !4598 store i64 %368, i64* %errorbox144, align 8, !dbg !4598, !noalias !4412 %370 = addrspacecast {} addrspace(10)* %21 to {} addrspace(12)*, !dbg !4598 call void @ijl_bounds_error_ints({} addrspace(12)* %370, i64* noundef nonnull align 8 %errorbox144, i64 noundef 1) #42, !dbg !4598 unreachable, !dbg !4598 idxend154: ; preds = %idxend136 %arrayptr1381575 = load double addrspace(13)*, double addrspace(13)* addrspace(11)* %56, align 8, !dbg !3760, !tbaa !628, !alias.scope !4599, !noalias !622, !nonnull !0 %"arrayptr1381575'il_phi" = phi double addrspace(13)* , !dbg !3760 %371 = getelementptr inbounds double, double addrspace(13)* %arrayptr1381575, i64 %61, !dbg !3760 %arrayref = load double, double addrspace(13)* %371, align 8, !dbg !3760, !tbaa !633, !alias.scope !636, !noalias !718 %372 = fmul double %arrayref, 2.000000e-04, !dbg !4600 %373 = fsub double %0, %372, !dbg !4603 %arrayptr1471576 = load double addrspace(13)*, double addrspace(13)* addrspace(11)* %57, align 8, !dbg !4598, !tbaa !628, !alias.scope !4599, !noalias !622, !nonnull !0, !enzyme_type !631, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_Ptr\7BFloat64\7D !0 %"arrayptr1471576'il_phi" = phi double addrspace(13)* , !dbg !4598 %374 = getelementptr inbounds double, double addrspace(13)* %arrayptr1471576, i64 %369, !dbg !4598 %arrayref148 = load double, double addrspace(13)* %374, align 8, !dbg !4598, !tbaa !633, !alias.scope !636, !noalias !718 %375 = fadd double %373, %arrayref148, !dbg !4606 %arrayptr1561577 = load double addrspace(13)*, double addrspace(13)* addrspace(11)* %58, align 8, !dbg !4609, !tbaa !628, !alias.scope !4599, !noalias !622, !nonnull !0, !enzyme_type !631, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_Ptr\7BFloat64\7D !0 %"arrayptr1561577'il_phi" = phi double addrspace(13)* , !dbg !4609 %376 = getelementptr inbounds double, double addrspace(13)* %arrayptr1561577, i64 %iv, !dbg !4609 store double %375, double addrspace(13)* %376, align 8, !dbg !4609, !tbaa !633, !alias.scope !636, !noalias !3569 %exitcond6372.not = icmp eq i64 %iv.next, %arraylen57, !dbg !4610 br i1 %exitcond6372.not, label %L335.loopexit, label %L315, !dbg !3743, !llvm.loop !4611 oob188: ; preds = %L435 %errorbox189 = alloca i64, align 8, !dbg !3801 store i64 %70, i64* %errorbox189, align 8, !dbg !3801, !noalias !4412 %377 = addrspacecast {} addrspace(10)* %26 to {} addrspace(12)*, !dbg !3801 call void @ijl_bounds_error_ints({} addrspace(12)* %377, i64* noundef nonnull align 8 %errorbox189, i64 noundef 1) #42, !dbg !3801 unreachable, !dbg !3801 idxend190: ; preds = %L435 %inbounds196 = icmp ult i64 %iv1, %arraylen77, !dbg !4612 br i1 %inbounds196, label %idxend199, label %oob197, !dbg !4612 oob197: ; preds = %idxend190 %errorbox198 = alloca i64, align 8, !dbg !4612 store i64 %iv.next2, i64* %errorbox198, align 8, !dbg !4612, !noalias !4412 %378 = addrspacecast {} addrspace(10)* %37 to {} addrspace(12)*, !dbg !4612 call void @ijl_bounds_error_ints({} addrspace(12)* %378, i64* noundef nonnull align 8 %errorbox198, i64 noundef 1) #42, !dbg !4612 unreachable, !dbg !4612 idxend199: ; preds = %idxend190 %arrayptr1921582 = load double addrspace(13)*, double addrspace(13)* addrspace(11)* %67, align 8, !dbg !3801, !tbaa !628, !alias.scope !4599, !noalias !622, !nonnull !0 %"arrayptr1921582'il_phi" = phi double addrspace(13)* , !dbg !3801 %379 = getelementptr inbounds double, double addrspace(13)* %arrayptr1921582, i64 %71, !dbg !3801 %arrayref193 = load double, double addrspace(13)* %379, align 8, !dbg !3801, !tbaa !633, !alias.scope !636, !noalias !718 %380 = fmul double %arrayref193, 1.000000e-04, !dbg !4613 %381 = fsub double 1.000000e+00, %380, !dbg !4616 %arrayptr2011583 = load double addrspace(13)*, double addrspace(13)* addrspace(11)* %68, align 8, !dbg !4612, !tbaa !628, !alias.scope !4599, !noalias !622, !nonnull !0, !enzyme_type !631, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_Ptr\7BFloat64\7D !0 %"arrayptr2011583'il_phi" = phi double addrspace(13)* , !dbg !4612 %382 = getelementptr inbounds double, double addrspace(13)* %arrayptr2011583, i64 %iv1, !dbg !4612 store double %381, double addrspace(13)* %382, align 8, !dbg !4612, !tbaa !633, !alias.scope !636, !noalias !3569 %exitcond6371.not = icmp eq i64 %iv.next2, %arraylen77, !dbg !4619 br i1 %exitcond6371.not, label %L452.loopexit, label %L435, !dbg !3785, !llvm.loop !4620 idxend258: ; preds = %idxend258, %L530.preheader %iv3 = phi i64 [ %iv.next4, %idxend258 ], [ 0, %L530.preheader ] %iv.next4 = add nuw nsw i64 %iv3, 1, !dbg !3877 %383 = add nsw i64 %iv.next4, -1, !dbg !3877 %memcpy_refined_dst261 = getelementptr inbounds double, double addrspace(13)* %arrayptr2601591, i64 %383, !dbg !3877 store double 1.000000e+00, double addrspace(13)* %memcpy_refined_dst261, align 8, !dbg !3877, !tbaa !633, !alias.scope !636, !noalias !3569 %.not1592 = icmp eq i64 %iv.next4, %arraylen246, !dbg !4621 %384 = add nuw nsw i64 %iv.next4, 1, !dbg !4622 br i1 %.not1592, label %L548.loopexit, label %idxend258, !dbg !4623 oob304: ; preds = %L683 %errorbox305 = alloca i64, align 8, !dbg !3929 store i64 %108, i64* %errorbox305, align 8, !dbg !3929, !noalias !4412 %385 = addrspacecast {} addrspace(10)* %86 to {} addrspace(12)*, !dbg !3929 call void @ijl_bounds_error_ints({} addrspace(12)* %385, i64* noundef nonnull align 8 %errorbox305, i64 noundef 1) #42, !dbg !3929 unreachable, !dbg !3929 idxend306: ; preds = %L683 %386 = select i1 %103, i64 1, i64 %iv.next6, !dbg !4624 %387 = add nsw i64 %386, -1, !dbg !4628 %inbounds313 = icmp ult i64 %387, %arraylen77, !dbg !4628 br i1 %inbounds313, label %idxend325, label %oob314, !dbg !4628 oob314: ; preds = %idxend306 %errorbox315 = alloca i64, align 8, !dbg !4628 store i64 %386, i64* %errorbox315, align 8, !dbg !4628, !noalias !4412 %388 = addrspacecast {} addrspace(10)* %37 to {} addrspace(12)*, !dbg !4628 call void @ijl_bounds_error_ints({} addrspace(12)* %388, i64* noundef nonnull align 8 %errorbox315, i64 noundef 1) #42, !dbg !4628 unreachable, !dbg !4628 idxend325: ; preds = %idxend306 %arrayptr3081598 = load double addrspace(13)*, double addrspace(13)* addrspace(11)* %104, align 8, !dbg !3929, !tbaa !628, !alias.scope !4599, !noalias !622, !nonnull !0, !enzyme_type !631, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_Ptr\7BFloat64\7D !0 %"arrayptr3081598'il_phi" = phi double addrspace(13)* , !dbg !3929 %389 = getelementptr inbounds double, double addrspace(13)* %arrayptr3081598, i64 %109, !dbg !3929 %arrayref309 = load double, double addrspace(13)* %389, align 8, !dbg !3929, !tbaa !633, !alias.scope !636, !noalias !718 %arrayptr3181599 = load double addrspace(13)*, double addrspace(13)* addrspace(11)* %105, align 8, !dbg !4628, !tbaa !628, !alias.scope !4599, !noalias !622, !nonnull !0, !enzyme_type !631, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_Ptr\7BFloat64\7D !0 %"arrayptr3181599'il_phi" = phi double addrspace(13)* , !dbg !4628 %390 = getelementptr inbounds double, double addrspace(13)* %arrayptr3181599, i64 %387, !dbg !4628 %arrayref319 = load double, double addrspace(13)* %390, align 8, !dbg !4628, !tbaa !633, !alias.scope !636, !noalias !718 %391 = fmul double %arrayref309, %arrayref319, !dbg !4629 %arrayptr3271600 = load double addrspace(13)*, double addrspace(13)* addrspace(11)* %106, align 8, !dbg !4632, !tbaa !628, !alias.scope !4599, !noalias !622, !nonnull !0, !enzyme_type !631, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_Ptr\7BFloat64\7D !0 %"arrayptr3271600'il_phi" = phi double addrspace(13)* , !dbg !4632 %392 = getelementptr inbounds double, double addrspace(13)* %arrayptr3271600, i64 %iv5, !dbg !4632 store double %391, double addrspace(13)* %392, align 8, !dbg !4632, !tbaa !633, !alias.scope !636, !noalias !3569 %exitcond6370.not = icmp eq i64 %iv.next6, %arraylen206, !dbg !4633 br i1 %exitcond6370.not, label %L701.loopexit, label %L683, !dbg !3917, !llvm.loop !4634 oob370: ; preds = %L836 %errorbox371 = alloca i64, align 8, !dbg !3973 store i64 %126, i64* %errorbox371, align 8, !dbg !3973, !noalias !4412 %393 = addrspacecast {} addrspace(10)* %75 to {} addrspace(12)*, !dbg !3973 call void @ijl_bounds_error_ints({} addrspace(12)* %393, i64* noundef nonnull align 8 %errorbox371, i64 noundef 1) #42, !dbg !3973 unreachable, !dbg !3973 idxend372: ; preds = %L836 %394 = select i1 %103, i64 1, i64 %iv.next8, !dbg !4635 %395 = add nsw i64 %394, -1, !dbg !4639 %inbounds379 = icmp ult i64 %395, %arraylen77, !dbg !4639 br i1 %inbounds379, label %idxend382, label %oob380, !dbg !4639 oob380: ; preds = %idxend372 %errorbox381 = alloca i64, align 8, !dbg !4639 store i64 %394, i64* %errorbox381, align 8, !dbg !4639, !noalias !4412 %396 = addrspacecast {} addrspace(10)* %37 to {} addrspace(12)*, !dbg !4639 call void @ijl_bounds_error_ints({} addrspace(12)* %396, i64* noundef nonnull align 8 %errorbox381, i64 noundef 1) #42, !dbg !4639 unreachable, !dbg !4639 idxend382: ; preds = %idxend372 %inbounds388 = icmp ult i64 %iv7, %arraylen226, !dbg !4640 br i1 %inbounds388, label %idxend391, label %oob389, !dbg !4640 oob389: ; preds = %idxend382 %errorbox390 = alloca i64, align 8, !dbg !4640 store i64 %iv.next8, i64* %errorbox390, align 8, !dbg !4640, !noalias !4412 %397 = addrspacecast {} addrspace(10)* %82 to {} addrspace(12)*, !dbg !4640 call void @ijl_bounds_error_ints({} addrspace(12)* %397, i64* noundef nonnull align 8 %errorbox390, i64 noundef 1) #42, !dbg !4640 unreachable, !dbg !4640 idxend391: ; preds = %idxend382 %arrayptr3741606 = load double addrspace(13)*, double addrspace(13)* addrspace(11)* %122, align 8, !dbg !3973, !tbaa !628, !alias.scope !4599, !noalias !622, !nonnull !0, !enzyme_type !631, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_Ptr\7BFloat64\7D !0 %"arrayptr3741606'il_phi" = phi double addrspace(13)* , !dbg !3973 %398 = getelementptr inbounds double, double addrspace(13)* %arrayptr3741606, i64 %127, !dbg !3973 %arrayref375 = load double, double addrspace(13)* %398, align 8, !dbg !3973, !tbaa !633, !alias.scope !636, !noalias !718 %arrayptr3841607 = load double addrspace(13)*, double addrspace(13)* addrspace(11)* %123, align 8, !dbg !4639, !tbaa !628, !alias.scope !4599, !noalias !622, !nonnull !0, !enzyme_type !631, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_Ptr\7BFloat64\7D !0 %"arrayptr3841607'il_phi" = phi double addrspace(13)* , !dbg !4639 %399 = getelementptr inbounds double, double addrspace(13)* %arrayptr3841607, i64 %395, !dbg !4639 %arrayref385 = load double, double addrspace(13)* %399, align 8, !dbg !4639, !tbaa !633, !alias.scope !636, !noalias !718 %400 = fsub double %arrayref375, %arrayref385, !dbg !4641 %arrayptr3931608 = load double addrspace(13)*, double addrspace(13)* addrspace(11)* %124, align 8, !dbg !4640, !tbaa !628, !alias.scope !4599, !noalias !622, !nonnull !0, !enzyme_type !631, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_Ptr\7BFloat64\7D !0 %"arrayptr3931608'il_phi" = phi double addrspace(13)* , !dbg !4640 %401 = getelementptr inbounds double, double addrspace(13)* %arrayptr3931608, i64 %iv7, !dbg !4640 store double %400, double addrspace(13)* %401, align 8, !dbg !4640, !tbaa !633, !alias.scope !636, !noalias !3569 %exitcond6369.not = icmp eq i64 %iv.next8, %arraylen226, !dbg !4644 br i1 %exitcond6369.not, label %L869.preheader.loopexit, label %L836, !dbg !3961, !llvm.loop !4645 oob496: ; preds = %L1323 %errorbox497 = alloca i64, align 8, !dbg !4157 store i64 %203, i64* %errorbox497, align 8, !dbg !4157, !noalias !4412 %402 = addrspacecast {} addrspace(10)* %147 to {} addrspace(12)*, !dbg !4157 call void @ijl_bounds_error_ints({} addrspace(12)* %402, i64* noundef nonnull align 8 %errorbox497, i64 noundef 1) #42, !dbg !4157 unreachable, !dbg !4157 idxend498: ; preds = %L1323 %403 = select i1 %195, i64 1, i64 %iv.next12, !dbg !4646 %404 = add nsw i64 %403, -1, !dbg !4650 %inbounds505 = icmp ult i64 %404, %arraylen444, !dbg !4650 br i1 %inbounds505, label %idxend508, label %oob506, !dbg !4650 oob506: ; preds = %idxend498 %errorbox507 = alloca i64, align 8, !dbg !4650 store i64 %403, i64* %errorbox507, align 8, !dbg !4650, !noalias !4412 %405 = addrspacecast {} addrspace(10)* %150 to {} addrspace(12)*, !dbg !4650 call void @ijl_bounds_error_ints({} addrspace(12)* %405, i64* noundef nonnull align 8 %errorbox507, i64 noundef 1) #42, !dbg !4650 unreachable, !dbg !4650 idxend508: ; preds = %idxend498 %arrayptr5001617 = load double addrspace(13)*, double addrspace(13)* addrspace(11)* %198, align 8, !dbg !4157, !tbaa !628, !alias.scope !4599, !noalias !622, !nonnull !0, !enzyme_type !631, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_Ptr\7BFloat64\7D !0 %"arrayptr5001617'il_phi" = phi double addrspace(13)* , !dbg !4157 %406 = getelementptr inbounds double, double addrspace(13)* %arrayptr5001617, i64 %204, !dbg !4157 %arrayref501 = load double, double addrspace(13)* %406, align 8, !dbg !4157, !tbaa !633, !alias.scope !636, !noalias !718 %arrayptr5101618 = load double addrspace(13)*, double addrspace(13)* addrspace(11)* %199, align 8, !dbg !4650, !tbaa !628, !alias.scope !4599, !noalias !622, !nonnull !0, !enzyme_type !631, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_Ptr\7BFloat64\7D !0 %"arrayptr5101618'il_phi" = phi double addrspace(13)* , !dbg !4650 %407 = getelementptr inbounds double, double addrspace(13)* %arrayptr5101618, i64 %404, !dbg !4650 %arrayref511 = load double, double addrspace(13)* %407, align 8, !dbg !4650, !tbaa !633, !alias.scope !636, !noalias !718 %408 = fadd double %arrayref501, %arrayref511, !dbg !4651 %409 = fmul double %408, 5.000000e-01, !dbg !4654 %410 = call double @julia___7054(double %409, i64 noundef signext 5) #44, !dbg !4657 %411 = fmul double %410, 0x40D7AF8CCDAE4928, !dbg !4659 %412 = select i1 %183, i64 1, i64 %iv.next12, !dbg !4662 %413 = add nsw i64 %412, -1, !dbg !4672 %inbounds515 = icmp ult i64 %413, %arraylen451, !dbg !4672 br i1 %inbounds515, label %idxend518, label %oob516, !dbg !4672 oob516: ; preds = %idxend508 %errorbox517 = alloca i64, align 8, !dbg !4672 store i64 %412, i64* %errorbox517, align 8, !dbg !4672, !noalias !4412 %414 = addrspacecast {} addrspace(10)* %153 to {} addrspace(12)*, !dbg !4672 call void @ijl_bounds_error_ints({} addrspace(12)* %414, i64* noundef nonnull align 8 %errorbox517, i64 noundef 1) #42, !dbg !4672 unreachable, !dbg !4672 idxend518: ; preds = %idxend508 %415 = select i1 %196, i64 1, i64 %iv.next12, !dbg !4673 %416 = add nsw i64 %415, -1, !dbg !4677 %inbounds525 = icmp ult i64 %416, %arraylen454, !dbg !4677 br i1 %inbounds525, label %idxend528, label %oob526, !dbg !4677 oob526: ; preds = %idxend518 %errorbox527 = alloca i64, align 8, !dbg !4677 store i64 %415, i64* %errorbox527, align 8, !dbg !4677, !noalias !4412 %417 = addrspacecast {} addrspace(10)* %156 to {} addrspace(12)*, !dbg !4677 call void @ijl_bounds_error_ints({} addrspace(12)* %417, i64* noundef nonnull align 8 %errorbox527, i64 noundef 1) #42, !dbg !4677 unreachable, !dbg !4677 idxend528: ; preds = %idxend518 %arrayptr5201619 = load double addrspace(13)*, double addrspace(13)* addrspace(11)* %200, align 8, !dbg !4672, !tbaa !628, !alias.scope !4599, !noalias !622, !nonnull !0 %"arrayptr5201619'il_phi" = phi double addrspace(13)* , !dbg !4672 %418 = getelementptr inbounds double, double addrspace(13)* %arrayptr5201619, i64 %413, !dbg !4672 %arrayref521 = load double, double addrspace(13)* %418, align 8, !dbg !4672, !tbaa !633, !alias.scope !636, !noalias !718 %arrayptr5301620 = load double addrspace(13)*, double addrspace(13)* addrspace(11)* %201, align 8, !dbg !4677, !tbaa !628, !alias.scope !4599, !noalias !622, !nonnull !0, !enzyme_type !631, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_Ptr\7BFloat64\7D !0 %"arrayptr5301620'il_phi" = phi double addrspace(13)* , !dbg !4677 %419 = getelementptr inbounds double, double addrspace(13)* %arrayptr5301620, i64 %416, !dbg !4677 %arrayref531 = load double, double addrspace(13)* %419, align 8, !dbg !4677, !tbaa !633, !alias.scope !636, !noalias !718 %420 = fsub double %arrayref521, %arrayref531, !dbg !4678 %421 = call double @julia___7054(double %420, i64 noundef signext 2) #44, !dbg !4681 %arraylen533 = load i64, i64 addrspace(11)* %arraylen_ptr, align 8, !dbg !4683, !tbaa !617, !range !620, !alias.scope !621, !noalias !622, !enzyme_inactive !0, !enzyme_type !567, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_UInt64 !0 %inbounds534 = icmp ult i64 %iv11, %arraylen533, !dbg !4683 br i1 %inbounds534, label %idxend537, label %oob535, !dbg !4683 oob535: ; preds = %idxend528 %errorbox536 = alloca i64, align 8, !dbg !4683 store i64 %iv.next12, i64* %errorbox536, align 8, !dbg !4683, !noalias !4412 %422 = addrspacecast {} addrspace(10)* %10 to {} addrspace(12)*, !dbg !4683 call void @ijl_bounds_error_ints({} addrspace(12)* %422, i64* nonnull align 8 %errorbox536, i64 1) #39, !dbg !4683 unreachable, !dbg !4683 idxend537: ; preds = %idxend528 %423 = fmul double %411, %421, !dbg !4684 %arrayptr5391621 = load double addrspace(13)*, double addrspace(13)* addrspace(11)* %128, align 8, !dbg !4683, !tbaa !628, !alias.scope !4599, !noalias !622, !nonnull !0, !enzyme_type !631, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_Ptr\7BFloat64\7D !0 %"arrayptr5391621'il_phi" = phi double addrspace(13)* , !dbg !4683 %424 = getelementptr inbounds double, double addrspace(13)* %arrayptr5391621, i64 %iv11, !dbg !4683 store double %423, double addrspace(13)* %424, align 8, !dbg !4683, !tbaa !633, !alias.scope !636, !noalias !3569 %exitcond6362.not = icmp eq i64 %iv.next12, %arraylen434, !dbg !4687 br i1 %exitcond6362.not, label %L1354, label %L1323, !dbg !4136, !llvm.loop !4688 idxend559: ; preds = %idxend568, %L1378.lr.ph %iv13 = phi i64 [ %iv.next14, %idxend568 ], [ 0, %L1378.lr.ph ] %iv.next14 = add nuw nsw i64 %iv13, 1, !dbg !4689 %exitcond6363.not = icmp eq i64 %iv13, %arraylen564, !dbg !4692 br i1 %exitcond6363.not, label %oob566, label %idxend568, !dbg !4692 oob566: ; preds = %idxend559 %errorbox567 = alloca i64, align 8, !dbg !4692 store i64 %iv.next14, i64* %errorbox567, align 8, !dbg !4692, !noalias !4412 %425 = addrspacecast {} addrspace(10)* %205 to {} addrspace(12)*, !dbg !4692 call void @ijl_bounds_error_ints({} addrspace(12)* %425, i64* nonnull align 8 %errorbox567, i64 1) #39, !dbg !4692 unreachable, !dbg !4692 idxend568: ; preds = %idxend559 %426 = getelementptr inbounds double, double addrspace(13)* %arrayptr5391621, i64 %iv13, !dbg !4695 %arrayref562 = load double, double addrspace(13)* %426, align 8, !dbg !4695, !tbaa !633, !alias.scope !636, !noalias !718 %427 = fneg double %arrayref562, !dbg !4700 %arrayptr5701627 = load double addrspace(13)*, double addrspace(13)* addrspace(11)* %207, align 8, !dbg !4692, !tbaa !628, !alias.scope !4599, !noalias !622, !nonnull !0, !enzyme_type !631, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_Ptr\7BFloat64\7D !0 %"arrayptr5701627'il_phi" = phi double addrspace(13)* , !dbg !4692 %428 = getelementptr inbounds double, double addrspace(13)* %arrayptr5701627, i64 %iv13, !dbg !4692 store double %427, double addrspace(13)* %428, align 8, !dbg !4692, !tbaa !633, !alias.scope !636, !noalias !3569 %exitcond6364.not = icmp eq i64 %iv.next14, %arraylen544.pre.pre, !dbg !4702 br i1 %exitcond6364.not, label %L1407.loopexit, label %idxend559, !dbg !4164, !llvm.loop !4703 oob645: ; preds = %L1706 %errorbox646 = alloca i64, align 8, !dbg !4256 store i64 %251, i64* %errorbox646, align 8, !dbg !4256, !noalias !4412 %429 = addrspacecast {} addrspace(10)* %209 to {} addrspace(12)*, !dbg !4256 call void @ijl_bounds_error_ints({} addrspace(12)* %429, i64* noundef nonnull align 8 %errorbox646, i64 noundef 1) #42, !dbg !4256 unreachable, !dbg !4256 idxend647: ; preds = %L1706 %arrayptr6491634 = load double addrspace(13)*, double addrspace(13)* addrspace(11)* %247, align 8, !dbg !4256, !tbaa !628, !alias.scope !4599, !noalias !622, !nonnull !0, !enzyme_type !631, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_Ptr\7BFloat64\7D !0 %"arrayptr6491634'il_phi" = phi double addrspace(13)* , !dbg !4256 %430 = getelementptr inbounds double, double addrspace(13)* %arrayptr6491634, i64 %252, !dbg !4256 %arrayref650 = load double, double addrspace(13)* %430, align 8, !dbg !4256, !tbaa !633, !alias.scope !636, !noalias !718 %431 = select i1 %228, i64 1, i64 %iv.next16, !dbg !4704 %432 = add nsw i64 %431, -1, !dbg !4710 %inbounds654 = icmp ult i64 %432, %arraylen599, !dbg !4710 br i1 %inbounds654, label %idxend657, label %oob655, !dbg !4710 oob655: ; preds = %idxend647 %errorbox656 = alloca i64, align 8, !dbg !4710 store i64 %431, i64* %errorbox656, align 8, !dbg !4710, !noalias !4412 %433 = addrspacecast {} addrspace(10)* %212 to {} addrspace(12)*, !dbg !4710 call void @ijl_bounds_error_ints({} addrspace(12)* %433, i64* nonnull align 8 %errorbox656, i64 1) #39, !dbg !4710 unreachable, !dbg !4710 idxend657: ; preds = %idxend647 %434 = select i1 %246, i64 1, i64 %iv.next16, !dbg !4711 %435 = add nsw i64 %434, -1, !dbg !4715 %inbounds664 = icmp ult i64 %435, %arraylen602, !dbg !4715 br i1 %inbounds664, label %idxend667, label %oob665, !dbg !4715 oob665: ; preds = %idxend657 %errorbox666 = alloca i64, align 8, !dbg !4715 store i64 %434, i64* %errorbox666, align 8, !dbg !4715, !noalias !4412 %436 = addrspacecast {} addrspace(10)* %215 to {} addrspace(12)*, !dbg !4715 call void @ijl_bounds_error_ints({} addrspace(12)* %436, i64* nonnull align 8 %errorbox666, i64 1) #39, !dbg !4715 unreachable, !dbg !4715 idxend667: ; preds = %idxend657 %arraylen672 = load i64, i64 addrspace(11)* %arraylen_ptr11, align 8, !dbg !4716, !tbaa !617, !range !620, !alias.scope !621, !noalias !622, !enzyme_inactive !0, !enzyme_type !567, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_UInt64 !0 %inbounds673 = icmp ult i64 %iv15, %arraylen672, !dbg !4716 br i1 %inbounds673, label %idxend676, label %oob674, !dbg !4716 oob674: ; preds = %idxend667 %errorbox675 = alloca i64, align 8, !dbg !4716 store i64 %iv.next16, i64* %errorbox675, align 8, !dbg !4716, !noalias !4412 %437 = addrspacecast {} addrspace(10)* %17 to {} addrspace(12)*, !dbg !4716 call void @ijl_bounds_error_ints({} addrspace(12)* %437, i64* nonnull align 8 %errorbox675, i64 1) #39, !dbg !4716 unreachable, !dbg !4716 idxend676: ; preds = %idxend667 %arrayptr6591635 = load double addrspace(13)*, double addrspace(13)* addrspace(11)* %248, align 8, !dbg !4710, !tbaa !628, !alias.scope !4599, !noalias !622, !nonnull !0, !enzyme_type !631, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_Ptr\7BFloat64\7D !0 %"arrayptr6591635'il_phi" = phi double addrspace(13)* , !dbg !4710 %438 = getelementptr inbounds double, double addrspace(13)* %arrayptr6591635, i64 %432, !dbg !4710 %arrayref660 = load double, double addrspace(13)* %438, align 8, !dbg !4710, !tbaa !633, !alias.scope !636, !noalias !718 %arrayptr6691636 = load double addrspace(13)*, double addrspace(13)* addrspace(11)* %249, align 8, !dbg !4715, !tbaa !628, !alias.scope !4599, !noalias !622, !nonnull !0, !enzyme_type !631, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_Ptr\7BFloat64\7D !0 %"arrayptr6691636'il_phi" = phi double addrspace(13)* , !dbg !4715 %439 = getelementptr inbounds double, double addrspace(13)* %arrayptr6691636, i64 %435, !dbg !4715 %arrayref670 = load double, double addrspace(13)* %439, align 8, !dbg !4715, !tbaa !633, !alias.scope !636, !noalias !718 %440 = fsub double %arrayref660, %arrayref670, !dbg !4717 %441 = fmul double %arrayref650, %440, !dbg !4720 %arrayptr6781637 = load double addrspace(13)*, double addrspace(13)* addrspace(11)* %129, align 8, !dbg !4716, !tbaa !628, !alias.scope !4599, !noalias !622, !nonnull !0, !enzyme_type !631, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_Ptr\7BFloat64\7D !0 %"arrayptr6781637'il_phi" = phi double addrspace(13)* , !dbg !4716 %442 = getelementptr inbounds double, double addrspace(13)* %arrayptr6781637, i64 %iv15, !dbg !4716 store double %441, double addrspace(13)* %442, align 8, !dbg !4716, !tbaa !633, !alias.scope !636, !noalias !3569 %exitcond6365.not = icmp eq i64 %iv.next16, %arraylen589, !dbg !4723 br i1 %exitcond6365.not, label %L1728.loopexit, label %L1706, !dbg !4242, !llvm.loop !4724 oob796: ; preds = %L2173 %errorbox797 = alloca i64, align 8, !dbg !4401 store i64 %309, i64* %errorbox797, align 8, !dbg !4401, !noalias !4412 %443 = addrspacecast {} addrspace(10)* %255 to {} addrspace(12)*, !dbg !4401 call void @ijl_bounds_error_ints({} addrspace(12)* %443, i64* nonnull align 8 %errorbox797, i64 1) #39, !dbg !4401 unreachable, !dbg !4401 idxend798: ; preds = %L2173 %444 = select i1 %301, i64 1, i64 %iv.next18, !dbg !4725 %445 = add nsw i64 %444, -1, !dbg !4731 %inbounds805 = icmp ult i64 %445, %arraylen732, !dbg !4731 br i1 %inbounds805, label %idxend808, label %oob806, !dbg !4731 oob806: ; preds = %idxend798 %errorbox807 = alloca i64, align 8, !dbg !4731 store i64 %444, i64* %errorbox807, align 8, !dbg !4731, !noalias !4412 %446 = addrspacecast {} addrspace(10)* %258 to {} addrspace(12)*, !dbg !4731 call void @ijl_bounds_error_ints({} addrspace(12)* %446, i64* nonnull align 8 %errorbox807, i64 1) #39, !dbg !4731 unreachable, !dbg !4731 idxend808: ; preds = %idxend798 %arrayptr8001645 = load double addrspace(13)*, double addrspace(13)* addrspace(11)* %305, align 8, !dbg !4401, !tbaa !628, !alias.scope !4599, !noalias !622, !nonnull !0, !enzyme_type !631, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_Ptr\7BFloat64\7D !0 %"arrayptr8001645'il_phi" = phi double addrspace(13)* , !dbg !4401 %447 = getelementptr inbounds double, double addrspace(13)* %arrayptr8001645, i64 %310, !dbg !4401 %arrayref801 = load double, double addrspace(13)* %447, align 8, !dbg !4401, !tbaa !633, !alias.scope !636, !noalias !718 %arrayptr8101646 = load double addrspace(13)*, double addrspace(13)* addrspace(11)* %306, align 8, !dbg !4731, !tbaa !628, !alias.scope !4599, !noalias !622, !nonnull !0 %"arrayptr8101646'il_phi" = phi double addrspace(13)* , !dbg !4731 %448 = getelementptr inbounds double, double addrspace(13)* %arrayptr8101646, i64 %445, !dbg !4731 %arrayref811 = load double, double addrspace(13)* %448, align 8, !dbg !4731, !tbaa !633, !alias.scope !636, !noalias !718 %449 = fmul double %arrayref811, 0x3FB5555555555555, !dbg !4732 %450 = fadd double %arrayref801, %449, !dbg !4735 %451 = select i1 %289, i64 1, i64 %iv.next18, !dbg !4738 %452 = add nsw i64 %451, -1, !dbg !4747 %inbounds815 = icmp ult i64 %452, %arraylen739, !dbg !4747 br i1 %inbounds815, label %idxend818, label %oob816, !dbg !4747 oob816: ; preds = %idxend808 %errorbox817 = alloca i64, align 8, !dbg !4747 store i64 %451, i64* %errorbox817, align 8, !dbg !4747, !noalias !4412 %453 = addrspacecast {} addrspace(10)* %261 to {} addrspace(12)*, !dbg !4747 call void @ijl_bounds_error_ints({} addrspace(12)* %453, i64* nonnull align 8 %errorbox817, i64 1) #39, !dbg !4747 unreachable, !dbg !4747 idxend818: ; preds = %idxend808 %454 = select i1 %304, i64 1, i64 %iv.next18, !dbg !4748 %455 = add nsw i64 %454, -1, !dbg !4752 %inbounds825 = icmp ult i64 %455, %arraylen742, !dbg !4752 br i1 %inbounds825, label %idxend828, label %oob826, !dbg !4752 oob826: ; preds = %idxend818 %errorbox827 = alloca i64, align 8, !dbg !4752 store i64 %454, i64* %errorbox827, align 8, !dbg !4752, !noalias !4412 %456 = addrspacecast {} addrspace(10)* %264 to {} addrspace(12)*, !dbg !4752 call void @ijl_bounds_error_ints({} addrspace(12)* %456, i64* nonnull align 8 %errorbox827, i64 1) #39, !dbg !4752 unreachable, !dbg !4752 idxend828: ; preds = %idxend818 %arraylen835 = load i64, i64 addrspace(11)* %arraylen_ptr205, align 8, !dbg !4753, !tbaa !617, !range !620, !alias.scope !621, !noalias !622, !enzyme_inactive !0, !enzyme_type !567, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_UInt64 !0 %inbounds836 = icmp ult i64 %iv.next18, %arraylen835, !dbg !4753 br i1 %inbounds836, label %idxend839, label %oob837, !dbg !4753 oob837: ; preds = %idxend828 %457 = add nuw nsw i64 %iv17, 2, !dbg !4755 %errorbox838 = alloca i64, align 8, !dbg !4753 store i64 %457, i64* %errorbox838, align 8, !dbg !4753, !noalias !4412 %458 = addrspacecast {} addrspace(10)* %75 to {} addrspace(12)*, !dbg !4753 call void @ijl_bounds_error_ints({} addrspace(12)* nonnull align 8 dereferenceable(16) %458, i64* nonnull align 8 %errorbox838, i64 1) #39, !dbg !4753 unreachable, !dbg !4753 idxend839: ; preds = %idxend828 %arrayptr8201647 = load double addrspace(13)*, double addrspace(13)* addrspace(11)* %307, align 8, !dbg !4747, !tbaa !628, !alias.scope !4599, !noalias !622, !nonnull !0 %"arrayptr8201647'il_phi" = phi double addrspace(13)* , !dbg !4747 %459 = getelementptr inbounds double, double addrspace(13)* %arrayptr8201647, i64 %452, !dbg !4747 %arrayref821 = load double, double addrspace(13)* %459, align 8, !dbg !4747, !tbaa !633, !alias.scope !636, !noalias !718 %arrayptr8301648 = load double addrspace(13)*, double addrspace(13)* addrspace(11)* %308, align 8, !dbg !4752, !tbaa !628, !alias.scope !4599, !noalias !622, !nonnull !0, !enzyme_type !631, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_Ptr\7BFloat64\7D !0 %"arrayptr8301648'il_phi" = phi double addrspace(13)* , !dbg !4752 %460 = getelementptr inbounds double, double addrspace(13)* %arrayptr8301648, i64 %455, !dbg !4752 %arrayref831 = load double, double addrspace(13)* %460, align 8, !dbg !4752, !tbaa !633, !alias.scope !636, !noalias !718 %461 = fsub double %arrayref821, %arrayref831, !dbg !4756 %462 = fmul double %461, 0x3FB5555555555555, !dbg !4759 %463 = fsub double %450, %462, !dbg !4762 %arrayptr8411649 = load double addrspace(13)*, double addrspace(13)* addrspace(11)* %130, align 8, !dbg !4753, !tbaa !628, !alias.scope !4599, !noalias !622, !nonnull !0, !enzyme_type !631, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_Ptr\7BFloat64\7D !0 %"arrayptr8411649'il_phi" = phi double addrspace(13)* , !dbg !4753 %464 = getelementptr inbounds double, double addrspace(13)* %arrayptr8411649, i64 %iv.next18, !dbg !4753 store double %463, double addrspace(13)* %464, align 8, !dbg !4753, !tbaa !633, !alias.scope !636, !noalias !3569 %exitcond6366.not = icmp eq i64 %iv.next18, 29, !dbg !4765 br i1 %exitcond6366.not, label %L2221, label %L2173, !dbg !4386, !llvm.loop !4766 oob916: ; preds = %L2561 %errorbox917 = alloca i64, align 8, !dbg !4502 store i64 %347, i64* %errorbox917, align 8, !dbg !4502, !noalias !4412 %465 = addrspacecast {} addrspace(10)* %75 to {} addrspace(12)*, !dbg !4502 call void @ijl_bounds_error_ints({} addrspace(12)* %465, i64* nonnull align 8 %errorbox917, i64 1) #39, !dbg !4502 unreachable, !dbg !4502 idxend918: ; preds = %L2561 %466 = select i1 %345, i64 1, i64 %iv.next22, !dbg !4767 %467 = add nsw i64 %466, -1, !dbg !4771 %inbounds925 = icmp ult i64 %467, %arraylen889, !dbg !4771 br i1 %inbounds925, label %idxend928, label %oob926, !dbg !4771 oob926: ; preds = %idxend918 %errorbox927 = alloca i64, align 8, !dbg !4771 store i64 %466, i64* %errorbox927, align 8, !dbg !4771, !noalias !4412 %468 = addrspacecast {} addrspace(10)* %37 to {} addrspace(12)*, !dbg !4771 call void @ijl_bounds_error_ints({} addrspace(12)* %468, i64* nonnull align 8 %errorbox927, i64 1) #39, !dbg !4771 unreachable, !dbg !4771 idxend928: ; preds = %idxend918 %arraylen933 = load i64, i64 addrspace(11)* %arraylen_ptr225, align 8, !dbg !4772, !tbaa !617, !range !620, !alias.scope !621, !noalias !622, !enzyme_inactive !0, !enzyme_type !567, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_UInt64 !0 %inbounds934 = icmp ult i64 %iv21, %arraylen933, !dbg !4772 br i1 %inbounds934, label %idxend937, label %oob935, !dbg !4772 oob935: ; preds = %idxend928 %errorbox936 = alloca i64, align 8, !dbg !4772 store i64 %iv.next22, i64* %errorbox936, align 8, !dbg !4772, !noalias !4412 %469 = addrspacecast {} addrspace(10)* %82 to {} addrspace(12)*, !dbg !4772 call void @ijl_bounds_error_ints({} addrspace(12)* %469, i64* nonnull align 8 %errorbox936, i64 1) #39, !dbg !4772 unreachable, !dbg !4772 idxend937: ; preds = %idxend928 %arrayptr9201654 = load double addrspace(13)*, double addrspace(13)* addrspace(11)* %130, align 8, !dbg !4502, !tbaa !628, !alias.scope !4599, !noalias !622, !nonnull !0, !enzyme_type !631, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_Ptr\7BFloat64\7D !0 %"arrayptr9201654'il_phi" = phi double addrspace(13)* , !dbg !4502 %470 = getelementptr inbounds double, double addrspace(13)* %arrayptr9201654, i64 %348, !dbg !4502 %arrayref921 = load double, double addrspace(13)* %470, align 8, !dbg !4502, !tbaa !633, !alias.scope !636, !noalias !718 %arrayptr9301655 = load double addrspace(13)*, double addrspace(13)* addrspace(11)* %133, align 8, !dbg !4771, !tbaa !628, !alias.scope !4599, !noalias !622, !nonnull !0, !enzyme_type !631, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_Ptr\7BFloat64\7D !0 %"arrayptr9301655'il_phi" = phi double addrspace(13)* , !dbg !4771 %471 = getelementptr inbounds double, double addrspace(13)* %arrayptr9301655, i64 %467, !dbg !4771 %arrayref931 = load double, double addrspace(13)* %471, align 8, !dbg !4771, !tbaa !633, !alias.scope !636, !noalias !718 %472 = fsub double %arrayref921, %arrayref931, !dbg !4773 %arrayptr9391656 = load double addrspace(13)*, double addrspace(13)* addrspace(11)* %134, align 8, !dbg !4772, !tbaa !628, !alias.scope !4599, !noalias !622, !nonnull !0, !enzyme_type !631, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_Ptr\7BFloat64\7D !0 %"arrayptr9391656'il_phi" = phi double addrspace(13)* , !dbg !4772 %473 = getelementptr inbounds double, double addrspace(13)* %arrayptr9391656, i64 %iv21, !dbg !4772 store double %472, double addrspace(13)* %473, align 8, !dbg !4772, !tbaa !633, !alias.scope !636, !noalias !3569 %exitcond6368.not = icmp eq i64 %iv.next22, %arraylen878, !dbg !4776 br i1 %exitcond6368.not, label %L2579.loopexit, label %L2561, !dbg !4777, !llvm.loop !4778 idxend973: ; preds = %idxend982, %L2677.lr.ph %iv23 = phi i64 [ %iv.next24, %idxend982 ], [ 0, %L2677.lr.ph ] %iv.next24 = add nuw nsw i64 %iv23, 1, !dbg !4779 %exitcond6360.not = icmp eq i64 %iv23, %arraylen978, !dbg !4782 br i1 %exitcond6360.not, label %oob980, label %idxend982, !dbg !4782 oob980: ; preds = %idxend973 %errorbox981 = alloca i64, align 8, !dbg !4782 store i64 %iv.next24, i64* %errorbox981, align 8, !dbg !4782, !noalias !4412 %474 = addrspacecast {} addrspace(10)* %354 to {} addrspace(12)*, !dbg !4782 call void @ijl_bounds_error_ints({} addrspace(12)* %474, i64* nonnull align 8 %errorbox981, i64 1) #39, !dbg !4782 unreachable, !dbg !4782 idxend982: ; preds = %idxend973 %arrayptr9751664 = load double addrspace(13)*, double addrspace(13)* addrspace(11)* %356, align 8, !dbg !4785, !tbaa !628, !alias.scope !4599, !noalias !622, !nonnull !0, !enzyme_type !631, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_Ptr\7BFloat64\7D !0 %"arrayptr9751664'il_phi" = phi double addrspace(13)* , !dbg !4785 %475 = getelementptr inbounds double, double addrspace(13)* %arrayptr9751664, i64 %iv23, !dbg !4785 %arrayref976 = load double, double addrspace(13)* %475, align 8, !dbg !4785, !tbaa !633, !alias.scope !636, !noalias !718 %arrayptr9841665 = load double addrspace(13)*, double addrspace(13)* addrspace(11)* %357, align 8, !dbg !4782, !tbaa !628, !alias.scope !4599, !noalias !622, !nonnull !0, !enzyme_type !631, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_Ptr\7BFloat64\7D !0 %"arrayptr9841665'il_phi" = phi double addrspace(13)* , !dbg !4782 %476 = getelementptr inbounds double, double addrspace(13)* %arrayptr9841665, i64 %iv23, !dbg !4782 store double %arrayref976, double addrspace(13)* %476, align 8, !dbg !4782, !tbaa !633, !alias.scope !636, !noalias !3569 %exitcond6361.not = icmp eq i64 %iv.next24, %arraylen958, !dbg !4790 br i1 %exitcond6361.not, label %L2704.loopexit, label %idxend973, !dbg !4555, !llvm.loop !4791 idxend1009: ; preds = %L2704 %477 = addrspacecast {} addrspace(10)* %359 to double addrspace(13)* addrspace(11)*, !dbg !4792 %arrayptr10111668 = load double addrspace(13)*, double addrspace(13)* addrspace(11)* %477, align 8, !dbg !4792, !tbaa !628, !alias.scope !4599, !noalias !622, !nonnull !0, !enzyme_type !631, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_Ptr\7BFloat64\7D !0 %"arrayptr10111668'il_phi" = phi double addrspace(13)* , !dbg !4792 %arrayref1012 = load double, double addrspace(13)* %arrayptr10111668, align 8, !dbg !4792, !tbaa !633, !alias.scope !636, !noalias !718, !enzyme_type !592, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_Float64 !0 br label %L2761, !dbg !4586 idxend1027: ; preds = %L2731 %478 = addrspacecast {} addrspace(10)* %359 to double addrspace(13)* addrspace(11)*, !dbg !4794 %arrayptr10201669 = load double addrspace(13)*, double addrspace(13)* addrspace(11)* %478, align 8, !dbg !4794, !tbaa !628, !alias.scope !4599, !noalias !622, !nonnull !0, !enzyme_type !631, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_Ptr\7BFloat64\7D !0 %"arrayptr10201669'il_phi" = phi double addrspace(13)* , !dbg !4794 %arrayref1021 = load double, double addrspace(13)* %arrayptr10201669, align 8, !dbg !4794, !tbaa !633, !alias.scope !636, !noalias !718, !enzyme_type !592, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_Float64 !0 %479 = getelementptr inbounds double, double addrspace(13)* %arrayptr10201669, i64 1, !dbg !4796 %arrayref1030 = load double, double addrspace(13)* %479, align 8, !dbg !4796, !tbaa !633, !alias.scope !636, !noalias !718, !enzyme_type !592, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_Float64 !0 %480 = fadd double %arrayref1021, %arrayref1030, !dbg !4798 %.not16703306 = icmp ugt i64 %arraylen1001, 2, !dbg !4801 br i1 %.not16703306, label %idxend1039.preheader, label %L2761, !dbg !4802 idxend1039.preheader: ; preds = %idxend1027 %481 = add nsw i64 %arraylen1001, -3, !dbg !4802 br label %idxend1039, !dbg !4802 idxend1039: ; preds = %idxend1039, %idxend1039.preheader %iv25 = phi i64 [ 0, %idxend1039.preheader ], [ %iv.next26, %idxend1039 ] %value_phi10313307 = phi double [ %485, %idxend1039 ], [ %480, %idxend1039.preheader ] %iv.next26 = add nuw nsw i64 %iv25, 1, !dbg !4803 %482 = add nuw nsw i64 %iv25, 2, !dbg !4803 %483 = add nuw nsw i64 %482, 1, !dbg !4803 %484 = getelementptr inbounds double, double addrspace(13)* %arrayptr10201669, i64 %482, !dbg !4805 %arrayref1042 = load double, double addrspace(13)* %484, align 8, !dbg !4805, !tbaa !633, !alias.scope !636, !noalias !718 %485 = fadd double %value_phi10313307, %arrayref1042, !dbg !4806 %exitcond.not = icmp eq i64 %483, %arraylen1001, !dbg !4801 br i1 %exitcond.not, label %L2761.loopexit, label %idxend1039, !dbg !4802 oob1083: ; preds = %L2389 %errorbox1084 = alloca i64, align 8, !dbg !4455 store i64 %326, i64* %errorbox1084, align 8, !dbg !4455, !noalias !4412 %486 = addrspacecast {} addrspace(10)* %313 to {} addrspace(12)*, !dbg !4455 call void @ijl_bounds_error_ints({} addrspace(12)* %486, i64* nonnull align 8 %errorbox1084, i64 1) #39, !dbg !4455 unreachable, !dbg !4455 idxend1085: ; preds = %L2389 %arraylen1092 = load i64, i64 addrspace(11)* %arraylen_ptr205, align 8, !dbg !4809, !tbaa !617, !range !620, !alias.scope !621, !noalias !622, !enzyme_inactive !0, !enzyme_type !567, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_UInt64 !0 %inbounds1093 = icmp ult i64 %iv.next20, %arraylen1092, !dbg !4809 br i1 %inbounds1093, label %idxend1096, label %oob1094, !dbg !4809 oob1094: ; preds = %idxend1085 %487 = add nuw nsw i64 %iv19, 2, !dbg !4811 %errorbox1095 = alloca i64, align 8, !dbg !4809 store i64 %487, i64* %errorbox1095, align 8, !dbg !4809, !noalias !4412 %488 = addrspacecast {} addrspace(10)* %75 to {} addrspace(12)*, !dbg !4809 call void @ijl_bounds_error_ints({} addrspace(12)* %488, i64* nonnull align 8 %errorbox1095, i64 1) #39, !dbg !4809 unreachable, !dbg !4809 idxend1096: ; preds = %idxend1085 %arrayptr10871677 = load double addrspace(13)*, double addrspace(13)* addrspace(11)* %325, align 8, !dbg !4455, !tbaa !628, !alias.scope !4599, !noalias !622, !nonnull !0 %"arrayptr10871677'il_phi" = phi double addrspace(13)* , !dbg !4455 %489 = getelementptr inbounds double, double addrspace(13)* %arrayptr10871677, i64 %327, !dbg !4455 %arrayref1088 = load double, double addrspace(13)* %489, align 8, !dbg !4455, !tbaa !633, !alias.scope !636, !noalias !718 %arrayptr10981678 = load double addrspace(13)*, double addrspace(13)* addrspace(11)* %130, align 8, !dbg !4809, !tbaa !628, !alias.scope !4599, !noalias !622, !nonnull !0, !enzyme_type !631, !enzymejl_byref_BITS_VALUE !0, !enzymejl_source_type_Ptr\7BFloat64\7D !0 %"arrayptr10981678'il_phi" = phi double addrspace(13)* , !dbg !4809 %490 = getelementptr inbounds double, double addrspace(13)* %arrayptr10981678, i64 %iv.next20, !dbg !4809 store double %arrayref1088, double addrspace(13)* %490, align 8, !dbg !4809, !tbaa !633, !alias.scope !636, !noalias !3569 %exitcond6367.not = icmp eq i64 %iv.next20, 29, !dbg !4812 br i1 %exitcond6367.not, label %L2426.loopexit, label %L2389, !dbg !4442, !llvm.loop !4813 allocsForInversion: ; No predecessors! %"iv'ac" = alloca i64, align 8 %"iv1'ac" = alloca i64, align 8 %"iv5'ac" = alloca i64, align 8 %"iv7'ac" = alloca i64, align 8 %"iv9'ac" = alloca i64, align 8 %"iv11'ac" = alloca i64, align 8 %"iv15'ac" = alloca i64, align 8 %"iv17'ac" = alloca i64, align 8 %"iv19'ac" = alloca i64, align 8 %"iv21'ac" = alloca i64, align 8 %"iv3'ac" = alloca i64, align 8 %"iv13'ac" = alloca i64, align 8 %"iv23'ac" = alloca i64, align 8 %"iv25'ac" = alloca i64, align 8 %"value_phi1003'de" = alloca double, align 8 %491 = getelementptr double, double* %"value_phi1003'de", i64 0 store double 0.000000e+00, double* %491, align 8 %"'de" = alloca double, align 8 %492 = getelementptr double, double* %"'de", i64 0 store double 0.000000e+00, double* %492, align 8 %arraylen441_cache = alloca i64*, align 8 %arraylen444_cache = alloca i64*, align 8 %arraylen451_cache = alloca i64*, align 8 %arraylen454_cache = alloca i64*, align 8 %_cache = alloca {} addrspace(10)*, align 8 store {} addrspace(10)* @ejl_jl_nothing, {} addrspace(10)** %_cache, align 8 %_cache76 = alloca {} addrspace(10)*, align 8 store {} addrspace(10)* @ejl_jl_nothing, {} addrspace(10)** %_cache76, align 8 %arraylen599_cache = alloca i64*, align 8 %arraylen602_cache = alloca i64*, align 8 %arraylen596_cache = alloca i64*, align 8 %arraylen589_cache = alloca i64*, align 8 %arraylen729_cache = alloca i64*, align 8 %arraylen732_cache = alloca i64*, align 8 inverttop: ; preds = %invertL32, %invertL32.loopexit fence syncscope("singlethread") seq_cst fence syncscope("singlethread") seq_cst %493 = load double, double* %"'de", align 8 %494 = insertvalue { double } undef, double %493, 0 ret { double } %494 invertL32.loopexit: ; preds = %invertL32 %_unwrap = shl nuw i64 %arraylen, 3, !dbg !3567 %"'ipc_unwrap" = addrspacecast {} addrspace(10)* %7 to i8 addrspace(13)* addrspace(11)*, !dbg !3567 %"arrayptr15569682'il_phi_unwrap" = load i8 addrspace(13)*, i8 addrspace(13)* addrspace(11)* %"'ipc_unwrap", align 8, !tbaa !628, !alias.scope !3564, !noalias !3565, !nonnull !0 call void @llvm.memset.p13i8.i64(i8 addrspace(13)* nonnull align 8 %"arrayptr15569682'il_phi_unwrap", i8 noundef 0, i64 %_unwrap, i1 noundef false) #39, !dbg !3567, !tbaa !633, !noalias !2389 br label %inverttop invertL32: ; preds = %invertL63, %invertL63.loopexit br i1 %.not, label %inverttop, label %invertL32.loopexit invertL63.loopexit: ; preds = %invertL63 %_unwrap39 = shl nuw i64 %arraylen12, 3, !dbg !3596 %"'ipc40_unwrap" = addrspacecast {} addrspace(10)* %14 to i8 addrspace(13)* addrspace(11)*, !dbg !3596 %"arrayptr2615599683'il_phi_unwrap" = load i8 addrspace(13)*, i8 addrspace(13)* addrspace(11)* %"'ipc40_unwrap", align 8, !tbaa !628, !alias.scope !3593, !noalias !3594, !nonnull !0 call void @llvm.memset.p13i8.i64(i8 addrspace(13)* nonnull align 8 %"arrayptr2615599683'il_phi_unwrap", i8 noundef 0, i64 %_unwrap39, i1 noundef false) #39, !dbg !3596, !tbaa !633, !noalias !2389 br label %invertL32 invertL63: ; preds = %invertL95, %invertL95.loopexit br i1 %.not1558, label %invertL32, label %invertL63.loopexit invertL95.loopexit: ; preds = %invertL95 br label %invertL63 invertL95: ; preds = %invertL139, %invertL139.loopexit call fastcc void @diffejulia_collect_7087({ [1 x double], [2 x i64] } addrspace(11)* nocapture nofree readonly align 8 %25, { {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* } %subcache), !dbg !3628 br i1 %.not1561, label %invertL63, label %invertL95.loopexit invertL139.loopexit: ; preds = %invertL139 %_unwrap41 = shl nuw i64 %arraylen57, 3, !dbg !3656 %"'ipc42_unwrap" = addrspacecast {} addrspace(10)* %27 to i8 addrspace(13)* addrspace(11)*, !dbg !3656 %"arrayptr7115659685'il_phi_unwrap" = load i8 addrspace(13)*, i8 addrspace(13)* addrspace(11)* %"'ipc42_unwrap", align 8, !tbaa !628, !alias.scope !3652, !noalias !3653, !nonnull !0 call void @llvm.memset.p13i8.i64(i8 addrspace(13)* nonnull align 8 %"arrayptr7115659685'il_phi_unwrap", i8 noundef 0, i64 %_unwrap41, i1 noundef false) #39, !dbg !3656, !tbaa !633, !noalias !2389 br label %invertL95 invertL139: ; preds = %invertL171, %invertL171.loopexit br i1 %.not1564, label %invertL95, label %invertL139.loopexit invertL171.loopexit: ; preds = %invertL171 %_unwrap43 = shl nuw i64 %arraylen77, 3, !dbg !3682 %"'ipc44_unwrap" = addrspacecast {} addrspace(10)* %34 to i8 addrspace(13)* addrspace(11)*, !dbg !3682 %"arrayptr9115689686'il_phi_unwrap" = load i8 addrspace(13)*, i8 addrspace(13)* addrspace(11)* %"'ipc44_unwrap", align 8, !tbaa !628, !alias.scope !3679, !noalias !3680, !nonnull !0 call void @llvm.memset.p13i8.i64(i8 addrspace(13)* nonnull align 8 %"arrayptr9115689686'il_phi_unwrap", i8 noundef 0, i64 %_unwrap43, i1 noundef false) #39, !dbg !3682, !tbaa !633, !noalias !2389 br label %invertL139 invertL171: ; preds = %invertL191 br i1 %.not1567, label %invertL139, label %invertL171.loopexit invertL187: ; No predecessors! invertL191: ; preds = %invertL221 br label %invertL171 invertL202: ; No predecessors! invertL221: ; preds = %invertL335, %invertL292.lr.ph br label %invertL191 invertL292.lr.ph: ; preds = %invertL315 br label %invertL221 invertL315: ; No predecessors! %495 = load i64, i64* %"iv'ac", align 8 %496 = icmp eq i64 %495, 0 %497 = xor i1 %496, true br i1 %496, label %invertL292.lr.ph, label %incinvertL315 incinvertL315: ; preds = %invertL315 %498 = load i64, i64* %"iv'ac", align 8 %499 = add nsw i64 %498, -1 store i64 %499, i64* %"iv'ac", align 8 br label %invertidxend154 invertL335.loopexit: ; preds = %invertL335 %_unwrap48 = add nsw i64 %arraylen57, -1 br label %mergeinvertL315_L335.loopexit mergeinvertL315_L335.loopexit: ; preds = %invertL335.loopexit store i64 %_unwrap48, i64* %"iv'ac", align 8 br label %invertidxend154 invertL335: ; preds = %invertL370 br i1 %.not1564, label %invertL221, label %invertL335.loopexit invertL351: ; No predecessors! invertL370: ; preds = %invertL452, %invertL412.lr.ph br label %invertL335 invertL412.lr.ph: ; preds = %invertL435 br label %invertL370 invertL435: ; No predecessors! %500 = load i64, i64* %"iv1'ac", align 8 %501 = icmp eq i64 %500, 0 %502 = xor i1 %501, true br i1 %501, label %invertL412.lr.ph, label %incinvertL435 incinvertL435: ; preds = %invertL435 %503 = load i64, i64* %"iv1'ac", align 8 %504 = add nsw i64 %503, -1 store i64 %504, i64* %"iv1'ac", align 8 br label %invertidxend199 invertL452.loopexit: ; preds = %invertL452 %_unwrap50 = add nsw i64 %arraylen77, -1 br label %mergeinvertL435_L452.loopexit mergeinvertL435_L452.loopexit: ; preds = %invertL452.loopexit store i64 %_unwrap50, i64* %"iv1'ac", align 8 br label %invertidxend199 invertL452: ; preds = %invertL484, %invertL484.loopexit br i1 %.not1567, label %invertL370, label %invertL452.loopexit invertL484.loopexit: ; preds = %invertL484 %_unwrap51 = shl nuw i64 %arraylen206, 3, !dbg !3827 %"'ipc52_unwrap" = addrspacecast {} addrspace(10)* %72 to i8 addrspace(13)* addrspace(11)*, !dbg !3827 %"arrayptr22015859687'il_phi_unwrap" = load i8 addrspace(13)*, i8 addrspace(13)* addrspace(11)* %"'ipc52_unwrap", align 8, !tbaa !628, !alias.scope !3823, !noalias !3824, !nonnull !0 call void @llvm.memset.p13i8.i64(i8 addrspace(13)* nonnull align 8 %"arrayptr22015859687'il_phi_unwrap", i8 noundef 0, i64 %_unwrap51, i1 noundef false) #39, !dbg !3827, !tbaa !633, !noalias !2389 br label %invertL452 invertL484: ; preds = %invertL516, %invertL516.loopexit br i1 %.not1584, label %invertL452, label %invertL484.loopexit invertL516.loopexit: ; preds = %invertL516 %_unwrap53 = shl nuw i64 %arraylen226, 3, !dbg !3853 %"'ipc54_unwrap" = addrspacecast {} addrspace(10)* %79 to i8 addrspace(13)* addrspace(11)*, !dbg !3853 %"arrayptr24015889688'il_phi_unwrap" = load i8 addrspace(13)*, i8 addrspace(13)* addrspace(11)* %"'ipc54_unwrap", align 8, !tbaa !628, !alias.scope !3850, !noalias !3851, !nonnull !0 call void @llvm.memset.p13i8.i64(i8 addrspace(13)* nonnull align 8 %"arrayptr24015889688'il_phi_unwrap", i8 noundef 0, i64 %_unwrap53, i1 noundef false) #39, !dbg !3853, !tbaa !633, !noalias !2389 br label %invertL484 invertL516: ; preds = %invertL548, %invertL530.preheader br i1 %.not1587, label %invertL484, label %invertL516.loopexit invertL530.preheader: ; No predecessors! br label %invertL516 invertL548.loopexit: ; preds = %invertL548 %_unwrap55 = add nsw i64 %arraylen246, -1 br label %mergeinvertidxend258_L548.loopexit mergeinvertidxend258_L548.loopexit: ; preds = %invertL548.loopexit store i64 %_unwrap55, i64* %"iv3'ac", align 8 br label %invertidxend258 invertL548: ; preds = %invertL568 br i1 %.not1590, label %invertL516, label %invertL548.loopexit invertL564: ; No predecessors! invertL568: ; preds = %invertL598 br label %invertL548 invertL579: ; No predecessors! invertL598: ; preds = %invertL701, %invertL660.lr.ph br label %invertL568 invertL660.lr.ph: ; preds = %invertL683 br label %invertL598 invertL683: ; No predecessors! %505 = load i64, i64* %"iv5'ac", align 8 %506 = icmp eq i64 %505, 0 %507 = xor i1 %506, true br i1 %506, label %invertL660.lr.ph, label %incinvertL683 incinvertL683: ; preds = %invertL683 %508 = load i64, i64* %"iv5'ac", align 8 %509 = add nsw i64 %508, -1 store i64 %509, i64* %"iv5'ac", align 8 br label %invertidxend325 invertL701.loopexit: ; preds = %invertL701 %_unwrap58 = add nsw i64 %arraylen206, -1 br label %mergeinvertL683_L701.loopexit mergeinvertL683_L701.loopexit: ; preds = %invertL701.loopexit store i64 %_unwrap58, i64* %"iv5'ac", align 8 br label %invertidxend325 invertL701: ; preds = %invertL721 br i1 %.not1584, label %invertL598, label %invertL701.loopexit invertL717: ; No predecessors! invertL721: ; preds = %invertL751 br label %invertL701 invertL732: ; No predecessors! invertL751: ; preds = %invertL869.preheader, %invertL813.lr.ph br label %invertL721 invertL813.lr.ph: ; preds = %invertL836 br label %invertL751 invertL836: ; No predecessors! %510 = load i64, i64* %"iv7'ac", align 8 %511 = icmp eq i64 %510, 0 %512 = xor i1 %511, true br i1 %511, label %invertL813.lr.ph, label %incinvertL836 incinvertL836: ; preds = %invertL836 %513 = load i64, i64* %"iv7'ac", align 8 %514 = add nsw i64 %513, -1 store i64 %514, i64* %"iv7'ac", align 8 br label %invertidxend391 invertL869.preheader.loopexit: ; preds = %invertL869.preheader %_unwrap61 = add nsw i64 %arraylen226, -1 br label %mergeinvertL836_L869.preheader.loopexit mergeinvertL836_L869.preheader.loopexit: ; preds = %invertL869.preheader.loopexit store i64 %_unwrap61, i64* %"iv7'ac", align 8 br label %invertidxend391 invertL869.preheader: ; No predecessors! %515 = load i64, i64* %"iv9'ac", align 8 %forfree = load i64*, i64** %arraylen441_cache, align 8, !dereferenceable !4044, !invariant.group !3979 %516 = bitcast i64* %forfree to i8* call void @free(i8* nonnull %516), !dbg !4814, !enzyme_cache_free !3977 %517 = load i64, i64* %"iv9'ac", align 8 %forfree68 = load i64*, i64** %arraylen444_cache, align 8, !dereferenceable !4044, !invariant.group !3982 %518 = bitcast i64* %forfree68 to i8* call void @free(i8* nonnull %518), !dbg !4814, !enzyme_cache_free !3980 %519 = load i64, i64* %"iv9'ac", align 8 %forfree70 = load i64*, i64** %arraylen451_cache, align 8, !dereferenceable !4044, !invariant.group !3985 %520 = bitcast i64* %forfree70 to i8* call void @free(i8* nonnull %520), !dbg !4814, !enzyme_cache_free !3983 %521 = load i64, i64* %"iv9'ac", align 8 %forfree72 = load i64*, i64** %arraylen454_cache, align 8, !dereferenceable !4044, !invariant.group !3988 %522 = bitcast i64* %forfree72 to i8* call void @free(i8* nonnull %522), !dbg !4814, !enzyme_cache_free !3986 %523 = load i64, i64* %"iv9'ac", align 8 %forfree78 = load i64*, i64** %arraylen599_cache, align 8, !dereferenceable !4044, !invariant.group !3991 %524 = bitcast i64* %forfree78 to i8* call void @free(i8* nonnull %524), !dbg !4814, !enzyme_cache_free !3989 %525 = load i64, i64* %"iv9'ac", align 8 %forfree80 = load i64*, i64** %arraylen602_cache, align 8, !dereferenceable !4044, !invariant.group !3994 %526 = bitcast i64* %forfree80 to i8* call void @free(i8* nonnull %526), !dbg !4814, !enzyme_cache_free !3992 %527 = load i64, i64* %"iv9'ac", align 8 %forfree82 = load i64*, i64** %arraylen596_cache, align 8, !dereferenceable !4044, !invariant.group !3997 %528 = bitcast i64* %forfree82 to i8* call void @free(i8* nonnull %528), !dbg !4814, !enzyme_cache_free !3995 %529 = load i64, i64* %"iv9'ac", align 8 %forfree89 = load i64*, i64** %arraylen589_cache, align 8, !dereferenceable !4044, !invariant.group !4000 %530 = bitcast i64* %forfree89 to i8* call void @free(i8* nonnull %530), !dbg !4814, !enzyme_cache_free !3998 %531 = load i64, i64* %"iv9'ac", align 8 %forfree90 = load i64*, i64** %arraylen729_cache, align 8, !dereferenceable !4044, !invariant.group !4003 %532 = bitcast i64* %forfree90 to i8* call void @free(i8* nonnull %532), !dbg !4814, !enzyme_cache_free !4001 %533 = load i64, i64* %"iv9'ac", align 8 %forfree92 = load i64*, i64** %arraylen732_cache, align 8, !dereferenceable !4044, !invariant.group !4006 %534 = bitcast i64* %forfree92 to i8* call void @free(i8* nonnull %534), !dbg !4814, !enzyme_cache_free !4004 br i1 %.not1587, label %invertL751, label %invertL869.preheader.loopexit invertL869: ; No predecessors! invertL896: ; No predecessors! invertL899: ; No predecessors! invertL937: ; No predecessors! invertL940: ; No predecessors! invertL978: ; No predecessors! invertL990: ; No predecessors! invertL1018: ; No predecessors! invertL1021: ; No predecessors! invertL1051: ; No predecessors! invertL1059: ; No predecessors! invertL1079: ; No predecessors! invertL1087: ; No predecessors! invertL1091: ; No predecessors! invertL1105: ; No predecessors! invertL1113: ; No predecessors! invertL1130: ; No predecessors! invertL1138: ; No predecessors! invertL1157: ; No predecessors! invertL1354.thread: ; No predecessors! invertL1300.lr.ph: ; No predecessors! invertL1323: ; No predecessors! invertL1354: ; No predecessors! invertL1378.lr.ph: ; No predecessors! invertL1407.loopexit: ; No predecessors! invertL1407: ; No predecessors! invertL1434: ; No predecessors! invertL1437: ; No predecessors! invertL1474: ; No predecessors! invertL1477: ; No predecessors! invertL1510: ; No predecessors! invertL1518: ; No predecessors! invertL1533: ; No predecessors! invertL1541: ; No predecessors! invertL1549: ; No predecessors! invertL1560: ; No predecessors! invertL1568: ; No predecessors! invertL1587: ; No predecessors! invertL1683.lr.ph: ; No predecessors! invertL1706: ; No predecessors! invertL1728.loopexit: ; No predecessors! invertL1728: ; No predecessors! invertL1752: ; No predecessors! invertL1789: ; No predecessors! invertL1826: ; No predecessors! invertL1840: ; No predecessors! invertL1867: ; No predecessors! invertL1879: ; No predecessors! invertL1908: ; No predecessors! invertL1911: ; No predecessors! invertL1942: ; No predecessors! invertL1950: ; No predecessors! invertL1961: ; No predecessors! invertL1969: ; No predecessors! invertL1973: ; No predecessors! invertL1987: ; No predecessors! invertL1995: ; No predecessors! invertL2009: ; No predecessors! invertL2017: ; No predecessors! invertL2120: ; No predecessors! invertL2173: ; No predecessors! invertL2221: ; No predecessors! invertL2245: ; No predecessors! invertL2248: ; No predecessors! invertL2281: ; No predecessors! invertL2319: ; No predecessors! invertL2334: ; No predecessors! invertL2389: ; No predecessors! invertL2426.loopexit: ; No predecessors! invertL2426: ; No predecessors! invertL2442: ; No predecessors! invertL2446: ; No predecessors! invertL2457: ; No predecessors! invertL2479: ; No predecessors! invertL2561.preheader: ; No predecessors! invertL2561: ; No predecessors! invertL2579.loopexit: ; No predecessors! invertL2579: ; No predecessors! invertL2589.loopexit: ; No predecessors! invertL2616: ; No predecessors! invertL2619: ; No predecessors! invertL2630.L2631_crit_edge.L2704_crit_edge: ; No predecessors! invertL2677.lr.ph: ; No predecessors! invertL2704.loopexit: ; No predecessors! invertL2704: ; No predecessors! invertL2731: ; No predecessors! invertL2747: ; No predecessors! invertL2761.loopexit: ; No predecessors! invertL2761: ; preds = %L2761 store double %differeturn, double* %"value_phi1003'de", align 8 invertoob134: ; No predecessors! invertidxend136: ; No predecessors! invertoob143: ; No predecessors! invertidxend154: ; preds = %mergeinvertL315_L335.loopexit, %incinvertL315 invertoob188: ; No predecessors! invertidxend190: ; No predecessors! invertoob197: ; No predecessors! invertidxend199: ; preds = %mergeinvertL435_L452.loopexit, %incinvertL435 invertidxend258: ; preds = %mergeinvertidxend258_L548.loopexit invertoob304: ; No predecessors! invertidxend306: ; No predecessors! invertoob314: ; No predecessors! invertidxend325: ; preds = %mergeinvertL683_L701.loopexit, %incinvertL683 invertoob370: ; No predecessors! invertidxend372: ; No predecessors! invertoob380: ; No predecessors! invertidxend382: ; No predecessors! invertoob389: ; No predecessors! invertidxend391: ; preds = %mergeinvertL836_L869.preheader.loopexit, %incinvertL836 invertoob496: ; No predecessors! invertidxend498: ; No predecessors! invertoob506: ; No predecessors! invertidxend508: ; No predecessors! invertoob516: ; No predecessors! invertidxend518: ; No predecessors! invertoob526: ; No predecessors! invertidxend528: ; No predecessors! invertoob535: ; No predecessors! invertidxend537: ; No predecessors! invertidxend559: ; No predecessors! invertoob566: ; No predecessors! invertidxend568: ; No predecessors! invertoob645: ; No predecessors! invertidxend647: ; No predecessors! invertoob655: ; No predecessors! invertidxend657: ; No predecessors! invertoob665: ; No predecessors! invertidxend667: ; No predecessors! invertoob674: ; No predecessors! invertidxend676: ; No predecessors! invertoob796: ; No predecessors! invertidxend798: ; No predecessors! invertoob806: ; No predecessors! invertidxend808: ; No predecessors! invertoob816: ; No predecessors! invertidxend818: ; No predecessors! invertoob826: ; No predecessors! invertidxend828: ; No predecessors! invertoob837: ; No predecessors! invertidxend839: ; No predecessors! invertoob916: ; No predecessors! invertidxend918: ; No predecessors! invertoob926: ; No predecessors! invertidxend928: ; No predecessors! invertoob935: ; No predecessors! invertidxend937: ; No predecessors! invertidxend973: ; No predecessors! invertoob980: ; No predecessors! invertidxend982: ; No predecessors! invertidxend1009: ; No predecessors! invertidxend1027: ; No predecessors! invertidxend1039.preheader: ; No predecessors! invertidxend1039: ; No predecessors! invertoob1083: ; No predecessors! invertidxend1085: ; No predecessors! invertoob1094: ; No predecessors! invertidxend1096: ; No predecessors! remat_enter: ; No predecessors! br label %remat_L869_L869 remat_L869_L869: ; preds = %remat_enter br label %remat_L869_L899 remat_L869_L899: ; preds = %remat_L869_L869 br label %remat_L869_L940 remat_L869_L940: ; preds = %remat_L869_L899 br label %remat_L869_L990 remat_L869_L990: ; preds = %remat_L869_L940 br label %remat_L869_L1021 remat_L869_L1021: ; preds = %remat_L869_L990 %535 = load i64, i64* %"iv9'ac", align 8 %536 = load i64*, i64** %arraylen441_cache, align 8, !dereferenceable !4044, !invariant.group !3979 %537 = getelementptr inbounds i64, i64* %536, i64 %535 %538 = load i64, i64* %537, align 8, !dbg !4027, !tbaa !617, !range !620, !alias.scope !621, !noalias !622, !invariant.group !4045 %_unwrap67 = icmp eq i64 %538, 1 %539 = load i64*, i64** %arraylen444_cache, align 8, !dereferenceable !4044, !invariant.group !3982 %540 = getelementptr inbounds i64, i64* %539, i64 %535 %541 = load i64, i64* %540, align 8, !dbg !4027, !tbaa !617, !range !620, !alias.scope !621, !noalias !622, !invariant.group !4052 %_unwrap69 = icmp eq i64 %541, %538 %value_phi446_unwrap = or i1 %_unwrap67, %_unwrap69 br i1 %value_phi446_unwrap, label %remat_L869_L1079, label %remat_L869_L1051 remat_L869_L1051: ; preds = %remat_L869_L1021 br label %remat_L869_L1079 remat_L869_L1079: ; preds = %remat_L869_L1051, %remat_L869_L1021 br label %remat_L869_L1091 remat_L869_L1091: ; preds = %remat_L869_L1079 %542 = load i64, i64* %"iv9'ac", align 8 %543 = load i64*, i64** %arraylen451_cache, align 8, !dereferenceable !4044, !invariant.group !3985 %544 = getelementptr inbounds i64, i64* %543, i64 %542 %545 = load i64, i64* %544, align 8, !dbg !4057, !tbaa !617, !range !620, !alias.scope !621, !noalias !622, !invariant.group !4070 %_unwrap71 = icmp eq i64 %545, 1 %546 = load i64*, i64** %arraylen454_cache, align 8, !dereferenceable !4044, !invariant.group !3988 %547 = getelementptr inbounds i64, i64* %546, i64 %542 %548 = load i64, i64* %547, align 8, !dbg !4057, !tbaa !617, !range !620, !alias.scope !621, !noalias !622, !invariant.group !4077 %_unwrap73 = icmp eq i64 %548, %545 %value_phi456_unwrap = or i1 %_unwrap71, %_unwrap73 br i1 %value_phi456_unwrap, label %remat_L869_L1130, label %remat_L869_L1105 remat_L869_L1105: ; preds = %remat_L869_L1091 br label %remat_L869_L1130 remat_L869_L1130: ; preds = %remat_L869_L1105, %remat_L869_L1091 br label %remat_L869_L1157 remat_L869_L1157: ; preds = %remat_L869_L1130 %549 = load i64, i64* %"iv9'ac", align 8 %arraylen434_unwrap = load i64, i64 addrspace(11)* %arraylen_ptr, align 8, !dbg !4023, !tbaa !45, !range !620, !alias.scope !4815, !noalias !4816 %.not1614_unwrap = icmp eq i64 %arraylen434_unwrap, 0 br i1 %.not1614_unwrap, label %remat_L869_L1354.thread, label %remat_L869_L1300.lr.ph remat_L869_L1300.lr.ph: ; preds = %remat_L869_L1157 br label %remat_L869_L1323 remat_L869_L1323: ; preds = %remat_L869_idxend537, %remat_L869_L1300.lr.ph %fiv = phi i64 [ %550, %remat_L869_idxend537 ], [ 0, %remat_L869_L1300.lr.ph ] %550 = add i64 %fiv, 1 br label %remat_L869_idxend498 remat_L869_idxend498: ; preds = %remat_L869_L1323 br label %remat_L869_idxend508 remat_L869_idxend508: ; preds = %remat_L869_idxend498 br label %remat_L869_idxend518 remat_L869_idxend518: ; preds = %remat_L869_idxend508 br label %remat_L869_idxend528 remat_L869_idxend528: ; preds = %remat_L869_idxend518 br label %remat_L869_idxend537 remat_L869_idxend537: ; preds = %remat_L869_idxend528 %551 = load i64, i64* %"iv9'ac", align 8 %arraylen434_unwrap74 = load i64, i64 addrspace(11)* %arraylen_ptr, align 8, !dbg !4023, !tbaa !45, !range !620, !alias.scope !4815, !noalias !4816 %exitcond6362.not_unwrap = icmp eq i64 %550, %arraylen434_unwrap74 br i1 %exitcond6362.not_unwrap, label %remat_L869_L1354, label %remat_L869_L1323 remat_L869_L1354: ; preds = %remat_L869_idxend537 %552 = load i64, i64* %"iv9'ac", align 8 %arraylen544.pre.pre_unwrap = load i64, i64 addrspace(11)* %arraylen_ptr, align 8, !dbg !4158, !tbaa !617, !range !620, !alias.scope !3555, !noalias !3558 %remat_ = call noalias nonnull "enzyme_type"="{[-1]:Pointer, [-1,0]:Pointer, [-1,0,-1]:Float@double, [-1,8]:Integer, [-1,9]:Integer, [-1,10]:Integer, [-1,11]:Integer, [-1,12]:Integer, [-1,13]:Integer, [-1,14]:Integer, [-1,15]:Integer, [-1,16]:Integer, [-1,17]:Integer, [-1,18]:Integer, [-1,19]:Integer, [-1,20]:Integer, [-1,21]:Integer, [-1,22]:Integer, [-1,23]:Integer, [-1,24]:Integer, [-1,25]:Integer, [-1,26]:Integer, [-1,27]:Integer, [-1,28]:Integer, [-1,29]:Integer, [-1,30]:Integer, [-1,31]:Integer, [-1,32]:Integer, [-1,33]:Integer, [-1,34]:Integer, [-1,35]:Integer, [-1,36]:Integer, [-1,37]:Integer, [-1,38]:Integer, [-1,39]:Integer}" {} addrspace(10)* @ijl_alloc_array_1d({} addrspace(10)* addrspacecast ({}* inttoptr (i64 137725871856384 to {}*) to {} addrspace(10)*), i64 %arraylen544.pre.pre_unwrap) #40, !dbg !4123 store {} addrspace(10)* %remat_, {} addrspace(10)** %_cache, align 8, !invariant.group !4817 %553 = load i64, i64* %"iv9'ac", align 8 %.not1623_unwrap = icmp eq i64 %arraylen544.pre.pre_unwrap, 0 br i1 %.not1623_unwrap, label %remat_L869_L1407, label %remat_L869_L1378.lr.ph remat_L869_L1378.lr.ph: ; preds = %remat_L869_L1354 br label %remat_L869_idxend559 remat_L869_idxend559: ; preds = %remat_L869_idxend568, %remat_L869_L1378.lr.ph %fiv62 = phi i64 [ %554, %remat_L869_idxend568 ], [ 0, %remat_L869_L1378.lr.ph ] %554 = add i64 %fiv62, 1 br label %remat_L869_idxend568 remat_L869_idxend568: ; preds = %remat_L869_idxend559 %555 = load i64, i64* %"iv9'ac", align 8 %arraylen544.pre.pre_unwrap75 = load i64, i64 addrspace(11)* %arraylen_ptr, align 8, !dbg !4158, !tbaa !617, !range !620, !alias.scope !3555, !noalias !3558 %exitcond6364.not_unwrap = icmp eq i64 %554, %arraylen544.pre.pre_unwrap75 br i1 %exitcond6364.not_unwrap, label %remat_L869_L1407.loopexit, label %remat_L869_idxend559 remat_L869_L1354.thread: ; preds = %remat_L869_L1157 %remat_77 = call noalias nonnull "enzyme_type"="{[-1]:Pointer, [-1,0]:Pointer, [-1,0,-1]:Float@double, [-1,8]:Integer, [-1,9]:Integer, [-1,10]:Integer, [-1,11]:Integer, [-1,12]:Integer, [-1,13]:Integer, [-1,14]:Integer, [-1,15]:Integer, [-1,16]:Integer, [-1,17]:Integer, [-1,18]:Integer, [-1,19]:Integer, [-1,20]:Integer, [-1,21]:Integer, [-1,22]:Integer, [-1,23]:Integer, [-1,24]:Integer, [-1,25]:Integer, [-1,26]:Integer, [-1,27]:Integer, [-1,28]:Integer, [-1,29]:Integer, [-1,30]:Integer, [-1,31]:Integer, [-1,32]:Integer, [-1,33]:Integer, [-1,34]:Integer, [-1,35]:Integer, [-1,36]:Integer, [-1,37]:Integer, [-1,38]:Integer, [-1,39]:Integer}" {} addrspace(10)* @ijl_alloc_array_1d({} addrspace(10)* noundef addrspacecast ({}* inttoptr (i64 137725871856384 to {}*) to {} addrspace(10)*), i64 noundef 0) #40, !dbg !4123 store {} addrspace(10)* %remat_77, {} addrspace(10)** %_cache76, align 8, !invariant.group !4818 br label %remat_L869_L1407 remat_L869_L1407: ; preds = %remat_L869_L1354.thread, %remat_L869_L1354 br label %remat_L869_L1437 remat_L869_L1437: ; preds = %remat_L869_L1407 br label %remat_L869_L1477 remat_L869_L1477: ; preds = %remat_L869_L1437 %556 = load i64, i64* %"iv9'ac", align 8 %557 = load i64*, i64** %arraylen599_cache, align 8, !dereferenceable !4044, !invariant.group !3991 %558 = getelementptr inbounds i64, i64* %557, i64 %556 %559 = load i64, i64* %558, align 8, !dbg !4195, !tbaa !617, !range !620, !alias.scope !621, !noalias !622, !invariant.group !4200 %_unwrap79 = icmp eq i64 %559, 1 %560 = load i64*, i64** %arraylen602_cache, align 8, !dereferenceable !4044, !invariant.group !3994 %561 = getelementptr inbounds i64, i64* %560, i64 %556 %562 = load i64, i64* %561, align 8, !dbg !4195, !tbaa !617, !range !620, !alias.scope !621, !noalias !622, !invariant.group !4209 %_unwrap81 = icmp eq i64 %562, %559 %value_phi604_unwrap = or i1 %_unwrap79, %_unwrap81 br i1 %value_phi604_unwrap, label %remat_L869_L1533, label %remat_L869_L1510 remat_L869_L1510: ; preds = %remat_L869_L1477 br label %remat_L869_L1533 remat_L869_L1533: ; preds = %remat_L869_L1510, %remat_L869_L1477 %563 = load i64, i64* %"iv9'ac", align 8 %564 = load i64*, i64** %arraylen596_cache, align 8, !dereferenceable !4044, !invariant.group !3997 %565 = getelementptr inbounds i64, i64* %564, i64 %563 %566 = load i64, i64* %565, align 8, !dbg !4187, !tbaa !617, !range !620, !alias.scope !621, !noalias !622, !invariant.group !4202 %_unwrap83 = icmp eq i64 %566, 1 %567 = load i64*, i64** %arraylen599_cache, align 8, !dereferenceable !4044, !invariant.group !3991 %568 = getelementptr inbounds i64, i64* %567, i64 %563 %569 = load i64, i64* %568, align 8, !dbg !4195, !tbaa !617, !range !620, !alias.scope !621, !noalias !622, !invariant.group !4200 %_unwrap84 = icmp eq i64 %569, 1 %570 = load i64*, i64** %arraylen602_cache, align 8, !dereferenceable !4044, !invariant.group !3994 %571 = getelementptr inbounds i64, i64* %570, i64 %563 %572 = load i64, i64* %571, align 8, !dbg !4195, !tbaa !617, !range !620, !alias.scope !621, !noalias !622, !invariant.group !4209 %_unwrap85 = icmp eq i64 %572, %569 %value_phi604_unwrap86 = or i1 %_unwrap84, %_unwrap85 %value_phi605_unwrap = select i1 %value_phi604_unwrap86, i64 %572, i64 %569 %_unwrap88 = icmp eq i64 %value_phi605_unwrap, %566 %value_phi611_unwrap = or i1 %_unwrap83, %_unwrap88 br i1 %value_phi611_unwrap, label %remat_L869_L1560, label %remat_L869_L1541 remat_L869_L1541: ; preds = %remat_L869_L1533 br label %remat_L869_L1560 remat_L869_L1560: ; preds = %remat_L869_L1541, %remat_L869_L1533 br label %remat_L869_L1587 remat_L869_L1587: ; preds = %remat_L869_L1560 %573 = load i64, i64* %"iv9'ac", align 8 %574 = load i64*, i64** %arraylen589_cache, align 8, !dereferenceable !4044, !invariant.group !4000 %575 = getelementptr inbounds i64, i64* %574, i64 %573 %576 = load i64, i64* %575, align 8, !dbg !4183, !tbaa !45, !range !620, !alias.scope !982, !noalias !983, !invariant.group !4201 %.not1631_unwrap = icmp eq i64 %576, 0 br i1 %.not1631_unwrap, label %remat_L869_L1728, label %remat_L869_L1683.lr.ph remat_L869_L1683.lr.ph: ; preds = %remat_L869_L1587 br label %remat_L869_L1706 remat_L869_L1706: ; preds = %remat_L869_idxend676, %remat_L869_L1683.lr.ph %fiv63 = phi i64 [ %577, %remat_L869_idxend676 ], [ 0, %remat_L869_L1683.lr.ph ] %577 = add i64 %fiv63, 1 br label %remat_L869_idxend647 remat_L869_idxend647: ; preds = %remat_L869_L1706 br label %remat_L869_idxend657 remat_L869_idxend657: ; preds = %remat_L869_idxend647 br label %remat_L869_idxend667 remat_L869_idxend667: ; preds = %remat_L869_idxend657 br label %remat_L869_idxend676 remat_L869_idxend676: ; preds = %remat_L869_idxend667 %578 = load i64, i64* %"iv9'ac", align 8 %579 = load i64*, i64** %arraylen589_cache, align 8, !dereferenceable !4044, !invariant.group !4000 %580 = getelementptr inbounds i64, i64* %579, i64 %578 %581 = load i64, i64* %580, align 8, !dbg !4183, !tbaa !45, !range !620, !alias.scope !982, !noalias !983, !invariant.group !4201 %exitcond6365.not_unwrap = icmp eq i64 %577, %581 br i1 %exitcond6365.not_unwrap, label %remat_L869_L1728.loopexit, label %remat_L869_L1706 remat_L869_L1728: ; preds = %remat_L869_L1587 br label %remat_L869_L1789 remat_L869_L1789: ; preds = %remat_L869_L1728 br label %remat_L869_L1840 remat_L869_L1840: ; preds = %remat_L869_L1789 br label %remat_L869_L1879 remat_L869_L1879: ; preds = %remat_L869_L1840 br label %remat_L869_L1911 remat_L869_L1911: ; preds = %remat_L869_L1879 %582 = load i64, i64* %"iv9'ac", align 8 %583 = load i64*, i64** %arraylen729_cache, align 8, !dereferenceable !4044, !invariant.group !4003 %584 = getelementptr inbounds i64, i64* %583, i64 %582 %585 = load i64, i64* %584, align 8, !dbg !4289, !tbaa !617, !range !620, !alias.scope !621, !noalias !622, !invariant.group !4304 %_unwrap91 = icmp eq i64 %585, 1 %586 = load i64*, i64** %arraylen732_cache, align 8, !dereferenceable !4044, !invariant.group !4006 %587 = getelementptr inbounds i64, i64* %586, i64 %582 %588 = load i64, i64* %587, align 8, !dbg !4299, !tbaa !617, !range !620, !alias.scope !621, !noalias !622, !invariant.group !4311 %_unwrap93 = icmp eq i64 %588, %585 %value_phi734_unwrap = or i1 %_unwrap91, %_unwrap93 br i1 %value_phi734_unwrap, label %remat_L869_L1961, label %remat_L869_L1942 remat_L869_L1942: ; preds = %remat_L869_L1911 br label %remat_L869_L1961 remat_L869_L1961: ; preds = %remat_L869_L1942, %remat_L869_L1911 remat_L869_L1973: ; No predecessors! remat_L869_L1987: ; No predecessors! remat_L869_L2009: ; No predecessors! remat_L869_L2120: ; No predecessors! remat_L869_L2173: ; No predecessors! %fiv64 = phi i64 [ %589, %remat_L869_idxend839 ], [ 0, %remat_L869_L2120 ] %589 = add i64 %fiv64, 1 remat_L869_idxend798: ; No predecessors! remat_L869_idxend808: ; No predecessors! remat_L869_idxend818: ; No predecessors! remat_L869_idxend828: ; No predecessors! remat_L869_idxend839: ; No predecessors! remat_L869_L2221: ; No predecessors! remat_L869_L2248: ; No predecessors! remat_L869_L2334: ; No predecessors! remat_L869_L2389: ; No predecessors! %fiv65 = phi i64 [ %590, %remat_L869_idxend1096 ], [ 0, %remat_L869_L2334 ] %590 = add i64 %fiv65, 1 remat_L869_idxend1085: ; No predecessors! remat_L869_idxend1096: ; No predecessors! remat_L869_L2319: ; No predecessors! remat_L869_L2426: ; No predecessors! remat_L869_L2446: ; No predecessors! remat_L869_L2479: ; No predecessors! remat_L869_L2561: ; No predecessors! %fiv66 = phi i64 [ 0, %remat_L869_L2561.preheader ], [ %591, %remat_L869_idxend937 ] %591 = add i64 %fiv66, 1 remat_L869_idxend918: ; No predecessors! remat_L869_idxend928: ; No predecessors! remat_L869_idxend937: ; No predecessors! remat_L869_L2579: ; No predecessors! remat_L869_L2561.preheader: ; No predecessors! remat_L869_L2579.loopexit: ; No predecessors! remat_L869_L2426.loopexit: ; No predecessors! remat_L869_L1728.loopexit: ; preds = %remat_L869_idxend676 remat_L869_L1407.loopexit: ; preds = %remat_L869_idxend568 } Loop at depth 1 containing: %L869
,%L899,%L940,%L990,%L1021,%L1051,%L1079,%L1091,%L1105,%L1130,%L1157,%L1300.lr.ph,%L1323,%idxend498,%idxend508,%idxend518,%idxend528,%idxend537,%L1354,%L1378.lr.ph,%idxend559,%idxend568,%L1354.thread,%L1407,%L1437,%L1477,%L1510,%L1533,%L1541,%L1560,%L1587,%L1683.lr.ph,%L1706,%idxend647,%idxend657,%idxend667,%idxend676,%L1728,%L1789,%L1840,%L1879,%L1911,%L1942,%L1961,%L1973,%L1987,%L2009,%L2120,%L2173,%idxend798,%idxend808,%idxend818,%idxend828,%idxend839,%L2221,%L2248,%L2334,%L2389,%idxend1085,%idxend1096,%L2319,%L2426,%L2446,%L2479,%L2561,%idxend918,%idxend928,%idxend937,%L2579,%L2561.preheader,%L2579.loopexit,%L2426.loopexit,%L1728.loopexit,%L1407.loopexit Loop at depth 2 containing: %L1323
,%idxend498,%idxend508,%idxend518,%idxend528,%idxend537 Loop at depth 2 containing: %idxend559
,%idxend568 Loop at depth 2 containing: %L1706
,%idxend647,%idxend657,%idxend667,%idxend676 Loop at depth 2 containing: %L2173
,%idxend798,%idxend808,%idxend818,%idxend828,%idxend839 Loop at depth 2 containing: %L2389
,%idxend1085,%idxend1096 Loop at depth 2 containing: %L2561
,%idxend918,%idxend928,%idxend937 L1969: ; preds = %L1961 %232 = call fastcc [1 x {} addrspace(10)*] @julia_DimensionMismatch_7029() #39, !dbg !820 %box1126 = call noalias nonnull dereferenceable(8) "enzyme_inactive" "enzyme_type"="{[-1]:Pointer, [-1,-1]:Pointer}" {} addrspace(10)* @julia.gc_alloc_obj({}** nonnull %current_task1, i64 8, {} addrspace(10)* addrspacecast ({}* inttoptr (i64 137725923697904 to {}*) to {} addrspace(10)*)) #41, !dbg !820 %233 = bitcast {} addrspace(10)* %box1126 to [1 x {} addrspace(10)*] addrspace(10)*, !dbg !820, !enzyme_inactive !0 %234 = extractvalue [1 x {} addrspace(10)*] %232, 0, !dbg !820, !enzyme_type !821 %235 = getelementptr [1 x {} addrspace(10)*], [1 x {} addrspace(10)*] addrspace(10)* %233, i64 0, i64 0, !dbg !820 store {} addrspace(10)* %234, {} addrspace(10)* addrspace(10)* %235, align 8, !dbg !820, !tbaa !233, !alias.scope !106, !noalias !107 %236 = addrspacecast {} addrspace(10)* %box1126 to {} addrspace(12)*, !dbg !820, !enzyme_inactive !0 call void @ijl_throw({} addrspace(12)* %236) #39, !dbg !820 unreachable, !dbg !820 julia: /workspace/srcdir/Enzyme/enzyme/Enzyme/GradientUtils.cpp:3588: GradientUtils::prepRematerializedLoopEntry(LoopContext&)::: Assertion `found != origToNewForward.end()' failed. [109] signal (6.-6): Aborted in expression starting at /home/pkgeval/.julia/packages/ECCO/xjGRK/test/runtests.jl:4 unknown function (ip: 0x7d42e48d2ebc) gsignal at /lib/x86_64-linux-gnu/libc.so.6 (unknown line) abort at /lib/x86_64-linux-gnu/libc.so.6 (unknown line) unknown function (ip: 0x7d42e486e394) __assert_fail at /lib/x86_64-linux-gnu/libc.so.6 (unknown line) operator() at /workspace/srcdir/Enzyme/enzyme/Enzyme/GradientUtils.cpp:3588 prepRematerializedLoopEntry at /workspace/srcdir/Enzyme/enzyme/Enzyme/GradientUtils.cpp:3619 getReverseOrLatchMerge at /workspace/srcdir/Enzyme/enzyme/Enzyme/GradientUtils.cpp:3703 createInvertedTerminator at /workspace/srcdir/Enzyme/enzyme/Enzyme/EnzymeLogic.cpp:3192 CreatePrimalAndGradient at /workspace/srcdir/Enzyme/enzyme/Enzyme/EnzymeLogic.cpp:4309 recursivelyHandleSubfunction at /workspace/srcdir/Enzyme/enzyme/Enzyme/AdjointGenerator.h:5753 visitCallInst at /workspace/srcdir/Enzyme/enzyme/Enzyme/AdjointGenerator.h:6490 visit at /opt/x86_64-linux-gnu/x86_64-linux-gnu/sys-root/usr/local/include/llvm/IR/InstVisitor.h:111 [inlined] CreatePrimalAndGradient at /workspace/srcdir/Enzyme/enzyme/Enzyme/EnzymeLogic.cpp:4305 EnzymeCreatePrimalAndGradient at /workspace/srcdir/Enzyme/enzyme/Enzyme/CApi.cpp:633 EnzymeCreatePrimalAndGradient at /home/pkgeval/.julia/packages/Enzyme/QsaeA/src/api.jl:268 unknown function (ip: 0x7d42ca514f5e) _jl_invoke at /source/src/gf.c:2876 [inlined] ijl_apply_generic at /source/src/gf.c:3077 enzyme! at /home/pkgeval/.julia/packages/Enzyme/QsaeA/src/compiler.jl:1706 #codegen#18937 at /home/pkgeval/.julia/packages/Enzyme/QsaeA/src/compiler.jl:4550 codegen at /home/pkgeval/.julia/packages/Enzyme/QsaeA/src/compiler.jl:3353 [inlined] _thunk at /home/pkgeval/.julia/packages/Enzyme/QsaeA/src/compiler.jl:5410 _thunk at /home/pkgeval/.julia/packages/Enzyme/QsaeA/src/compiler.jl:5410 [inlined] cached_compilation at /home/pkgeval/.julia/packages/Enzyme/QsaeA/src/compiler.jl:5462 [inlined] thunkbase at /home/pkgeval/.julia/packages/Enzyme/QsaeA/src/compiler.jl:5573 thunk_generator at /home/pkgeval/.julia/packages/Enzyme/QsaeA/src/compiler.jl:5758 unknown function (ip: 0x7d42ca6f4838) _jl_invoke at /source/src/gf.c:2876 [inlined] ijl_apply_generic at /source/src/gf.c:3077 jl_call_staged at /source/src/method.c:540 ijl_code_for_staged at /source/src/method.c:593 get_staged at ./compiler/utilities.jl:123 retrieve_code_info at ./compiler/utilities.jl:135 [inlined] InferenceState at ./compiler/inferencestate.jl:430 typeinf_edge at ./compiler/typeinfer.jl:920 abstract_call_method at ./compiler/abstractinterpretation.jl:633 abstract_call_gf_by_type at ./compiler/abstractinterpretation.jl:95 abstract_call_known at ./compiler/abstractinterpretation.jl:2101 abstract_call at ./compiler/abstractinterpretation.jl:2184 abstract_call at ./compiler/abstractinterpretation.jl:2177 abstract_call at ./compiler/abstractinterpretation.jl:2369 abstract_eval_call at ./compiler/abstractinterpretation.jl:2385 abstract_eval_statement_expr at ./compiler/abstractinterpretation.jl:2395 abstract_eval_statement at ./compiler/abstractinterpretation.jl:2639 abstract_eval_basic_statement at ./compiler/abstractinterpretation.jl:2904 typeinf_local at ./compiler/abstractinterpretation.jl:3113 typeinf_nocycle at ./compiler/abstractinterpretation.jl:3201 _typeinf at ./compiler/typeinfer.jl:247 typeinf at ./compiler/typeinfer.jl:216 typeinf_edge at ./compiler/typeinfer.jl:930 abstract_call_method at ./compiler/abstractinterpretation.jl:633 abstract_call_gf_by_type at ./compiler/abstractinterpretation.jl:95 abstract_call_known at ./compiler/abstractinterpretation.jl:2101 abstract_call at ./compiler/abstractinterpretation.jl:2184 abstract_apply at ./compiler/abstractinterpretation.jl:1626 abstract_call_known at ./compiler/abstractinterpretation.jl:2018 abstract_call at ./compiler/abstractinterpretation.jl:2184 abstract_call at ./compiler/abstractinterpretation.jl:2177 abstract_call at ./compiler/abstractinterpretation.jl:2369 abstract_eval_call at ./compiler/abstractinterpretation.jl:2385 abstract_eval_statement_expr at ./compiler/abstractinterpretation.jl:2395 abstract_eval_statement at ./compiler/abstractinterpretation.jl:2639 abstract_eval_basic_statement at ./compiler/abstractinterpretation.jl:2928 typeinf_local at ./compiler/abstractinterpretation.jl:3113 typeinf_nocycle at ./compiler/abstractinterpretation.jl:3201 _typeinf at ./compiler/typeinfer.jl:247 typeinf at ./compiler/typeinfer.jl:216 typeinf_edge at ./compiler/typeinfer.jl:930 abstract_call_method at ./compiler/abstractinterpretation.jl:633 abstract_call_gf_by_type at ./compiler/abstractinterpretation.jl:95 abstract_call_known at ./compiler/abstractinterpretation.jl:2101 abstract_call at ./compiler/abstractinterpretation.jl:2184 abstract_apply at ./compiler/abstractinterpretation.jl:1626 abstract_call_known at ./compiler/abstractinterpretation.jl:2018 abstract_call at ./compiler/abstractinterpretation.jl:2184 abstract_call at ./compiler/abstractinterpretation.jl:2177 abstract_call at ./compiler/abstractinterpretation.jl:2369 abstract_eval_call at ./compiler/abstractinterpretation.jl:2385 abstract_eval_statement_expr at ./compiler/abstractinterpretation.jl:2395 abstract_eval_statement at ./compiler/abstractinterpretation.jl:2639 abstract_eval_basic_statement at ./compiler/abstractinterpretation.jl:2928 typeinf_local at ./compiler/abstractinterpretation.jl:3113 typeinf_nocycle at ./compiler/abstractinterpretation.jl:3201 _typeinf at ./compiler/typeinfer.jl:247 typeinf at ./compiler/typeinfer.jl:216 typeinf_edge at ./compiler/typeinfer.jl:930 abstract_call_method at ./compiler/abstractinterpretation.jl:633 abstract_call_gf_by_type at ./compiler/abstractinterpretation.jl:95 abstract_call_known at ./compiler/abstractinterpretation.jl:2101 abstract_call at ./compiler/abstractinterpretation.jl:2184 abstract_call at ./compiler/abstractinterpretation.jl:2177 abstract_call at ./compiler/abstractinterpretation.jl:2369 abstract_eval_call at ./compiler/abstractinterpretation.jl:2385 abstract_eval_statement_expr at ./compiler/abstractinterpretation.jl:2395 abstract_eval_statement at ./compiler/abstractinterpretation.jl:2639 abstract_eval_basic_statement at ./compiler/abstractinterpretation.jl:2928 typeinf_local at ./compiler/abstractinterpretation.jl:3113 typeinf_nocycle at ./compiler/abstractinterpretation.jl:3201 _typeinf at ./compiler/typeinfer.jl:247 typeinf at ./compiler/typeinfer.jl:216 typeinf_ext at ./compiler/typeinfer.jl:1051 typeinf_ext_toplevel at ./compiler/typeinfer.jl:1082 typeinf_ext_toplevel at ./compiler/typeinfer.jl:1078 jfptr_typeinf_ext_toplevel_35711.1 at /opt/julia/lib/julia/sys.so (unknown line) _jl_invoke at /source/src/gf.c:2876 [inlined] ijl_apply_generic at /source/src/gf.c:3077 jl_apply at /source/src/julia.h:1982 [inlined] jl_type_infer at /source/src/gf.c:394 jl_generate_fptr_impl at /source/src/jitlayers.cpp:512 jl_compile_method_internal at /source/src/gf.c:2481 [inlined] jl_compile_method_internal at /source/src/gf.c:2368 _jl_invoke at /source/src/gf.c:2887 [inlined] ijl_apply_generic at /source/src/gf.c:3077 jl_apply at /source/src/julia.h:1982 [inlined] do_call at /source/src/interpreter.c:126 eval_value at /source/src/interpreter.c:223 eval_body at /source/src/interpreter.c:489 eval_body at /source/src/interpreter.c:544 eval_body at /source/src/interpreter.c:544 jl_interpret_toplevel_thunk at /source/src/interpreter.c:775 jl_toplevel_eval_flex at /source/src/toplevel.c:934 jl_toplevel_eval_flex at /source/src/toplevel.c:877 ijl_toplevel_eval_in at /source/src/toplevel.c:985 eval at ./boot.jl:385 [inlined] include_string at ./loading.jl:2146 _jl_invoke at /source/src/gf.c:2876 [inlined] ijl_apply_generic at /source/src/gf.c:3077 _include at ./loading.jl:2206 include at ./client.jl:494 unknown function (ip: 0x7d42e39ff125) _jl_invoke at /source/src/gf.c:2876 [inlined] ijl_apply_generic at /source/src/gf.c:3077 jl_apply at /source/src/julia.h:1982 [inlined] do_call at /source/src/interpreter.c:126 eval_value at /source/src/interpreter.c:223 eval_stmt_value at /source/src/interpreter.c:174 [inlined] eval_body at /source/src/interpreter.c:635 jl_interpret_toplevel_thunk at /source/src/interpreter.c:775 jl_toplevel_eval_flex at /source/src/toplevel.c:934 jl_toplevel_eval_flex at /source/src/toplevel.c:877 ijl_toplevel_eval_in at /source/src/toplevel.c:985 eval at ./boot.jl:385 [inlined] exec_options at ./client.jl:296 _start at ./client.jl:557 jfptr__start_82985.1 at /opt/julia/lib/julia/sys.so (unknown line) _jl_invoke at /source/src/gf.c:2876 [inlined] ijl_apply_generic at /source/src/gf.c:3077 jl_apply at /source/src/julia.h:1982 [inlined] true_main at /source/src/jlapi.c:582 jl_repl_entrypoint at /source/src/jlapi.c:731 main at /source/cli/loader_exe.c:58 unknown function (ip: 0x7d42e486f249) __libc_start_main at /lib/x86_64-linux-gnu/libc.so.6 (unknown line) unknown function (ip: 0x4010b8) Allocations: 43481985 (Pool: 43397015; Big: 84970); GC: 56 Testing failed after 192.52s ERROR: LoadError: Package ECCO errored during testing (received signal: 6) Stacktrace: [1] pkgerror(msg::String) @ Pkg.Types /opt/julia/share/julia/stdlib/v1.10/Pkg/src/Types.jl:70 [2] test(ctx::Pkg.Types.Context, pkgs::Vector{Pkg.Types.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.10/Pkg/src/Operations.jl:2034 [3] test @ /opt/julia/share/julia/stdlib/v1.10/Pkg/src/Operations.jl:1915 [inlined] [4] test(ctx::Pkg.Types.Context, pkgs::Vector{Pkg.Types.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::Base.PipeEndpoint}) @ Pkg.API /opt/julia/share/julia/stdlib/v1.10/Pkg/src/API.jl:444 [5] test(pkgs::Vector{Pkg.Types.PackageSpec}; io::Base.PipeEndpoint, kwargs::@Kwargs{julia_args::Cmd}) @ Pkg.API /opt/julia/share/julia/stdlib/v1.10/Pkg/src/API.jl:159 [6] test @ /opt/julia/share/julia/stdlib/v1.10/Pkg/src/API.jl:147 [inlined] [7] #test#74 @ /opt/julia/share/julia/stdlib/v1.10/Pkg/src/API.jl:146 [inlined] [8] top-level scope @ /PkgEval.jl/scripts/evaluate.jl:219 in expression starting at /PkgEval.jl/scripts/evaluate.jl:210 PkgEval crashed after 799.21s: the process was aborted