Package evaluation to test SpeedyWeather on Julia 1.14.0-DEV.30 (073666df8b*) started at 2025-11-04T23:27:00.473 ################################################################################ # Set-up # Installing PkgEval dependencies (TestEnv)... Set-up completed after 9.31s ################################################################################ # Installation # Installing SpeedyWeather... Resolving package versions... Updating `~/.julia/environments/v1.14/Project.toml` [9e226e20] + SpeedyWeather v0.17.3 Updating `~/.julia/environments/v1.14/Manifest.toml` [621f4979] + AbstractFFTs v1.5.0 [85c772de] + AbstractNumbers v0.2.5 [79e6a3ab] + Adapt v4.4.0 [66dad0bd] + AliasTables v1.1.3 [4fba245c] + ArrayInterface v7.22.0 [2119f1ac] + AssociatedLegendrePolynomials v1.0.2 [a9b6321e] + Atomix v1.1.2 [de688a37] + BitInformation v0.6.3 [fa961155] + CEnum v0.5.0 [179af706] + CFTime v0.2.4 [d360d2e6] + ChainRulesCore v1.26.0 [0b6fb165] + ChunkCodecCore v1.0.0 [4c0bbee4] + ChunkCodecLibZlib v1.0.0 [55437552] + ChunkCodecLibZstd v1.0.0 [944b1d66] + CodecZlib v0.7.8 [1fbeeb36] + CommonDataModel v0.4.1 [f70d9fcc] + CommonWorldInvalidations v1.0.0 [34da2185] + Compat v4.18.1 [b0b7db55] + ComponentArrays v0.15.30 [b152e2b5] + CompositeTypes v0.1.4 [187b0558] + ConstructionBase v1.6.0 [a8cc5b0e] + Crayons v4.1.1 [9a962f9c] + DataAPI v1.16.0 [864edb3b] + DataStructures v0.19.2 [e2d170a0] + DataValueInterfaces v1.0.0 [3c3547ce] + DiskArrays v0.4.18 [31c24e10] + Distributions v0.25.122 [ffbed154] + DocStringExtensions v0.9.5 [5b8099bc] + DomainSets v0.7.16 [7a1cc6ca] + FFTW v1.10.0 [442a2c76] + FastGaussQuadrature v1.1.0 [bf96fef3] + FieldMetadata v0.3.1 [5789e2e9] + FileIO v1.17.1 [1a297f60] + FillArrays v1.14.0 [4c728ea3] + Flatten v0.4.3 [d9f16b24] + Functors v0.5.2 [0c68f7d7] + GPUArrays v11.2.6 [46192b85] + GPUArraysCore v0.2.0 [a8297547] + GenericFFT v0.1.6 [076d061b] + HashArrayMappedTries v0.2.0 [34004b35] + HypergeometricFunctions v0.3.28 [615f187c] + IfElse v0.1.1 [18e54dd8] + IntegerMathUtils v0.1.3 [8197267c] + IntervalSets v0.7.11 [92d709cd] + IrrationalConstants v0.2.6 [82899510] + IteratorInterfaceExtensions v1.0.0 [033835bb] + JLD2 v0.6.2 [692b3bcd] + JLLWrappers v1.7.1 [63c18a36] + KernelAbstractions v0.9.39 [929cbde3] + LLVM v9.4.4 [8ac3fa9e] + LRUCache v1.6.2 [b964fa9f] + LaTeXStrings v1.4.0 [2ab3a3ac] + LogExpFunctions v0.3.29 [ed20b33f] + LowerTriangularArrays v0.1.1 [3da0fdf6] + MPIPreferences v0.1.11 [1914dd2f] + MacroTools v0.5.16 [e1d29d7a] + Missings v1.2.0 [4744a3fa] + ModelParameters v0.4.6 [85f8d34a] + NCDatasets v0.14.9 [6fe1bfb0] + OffsetArrays v1.17.0 [bac558e1] + OrderedCollections v1.8.1 [90014a1f] + PDMats v0.11.36 [aea7be01] + PrecompileTools v1.3.3 [21216c6a] + Preferences v1.5.0 [08abe8d2] + PrettyTables v3.1.0 [27ebfcd6] + Primes v0.5.7 [92933f4c] + ProgressMeter v1.11.0 [43287f4e] + PtrArrays v1.3.0 [1fd47b50] + QuadGK v2.11.2 [189a3867] + Reexport v1.2.2 [ae029012] + Requires v1.3.1 [d1845624] + RingGrids v0.1.1 [79098fc4] + Rmath v0.9.0 [431bcebd] + SciMLPublic v1.0.0 [7e506255] + ScopedValues v1.5.0 [efcf1570] + Setfield v1.1.2 [a2af1166] + SortingAlgorithms v1.2.2 [276daf66] + SpecialFunctions v2.6.1 [ed023a3f] + SpeedyTransforms v0.1.1 [9e226e20] + SpeedyWeather v0.17.3 [34489162] + SpeedyWeatherInternals v0.1.2 [aedffcd0] + Static v1.3.1 [0d7ed370] + StaticArrayInterface v1.8.0 [90137ffa] + StaticArrays v1.9.15 [1e83bf80] + StaticArraysCore v1.4.4 [10745b16] + Statistics v1.11.1 [82ae8749] + StatsAPI v1.7.1 [2913bbd2] + StatsBase v0.34.7 [4c63d2b9] + StatsFuns v1.5.2 [892a3eda] + StringManipulation v0.4.1 [3783bdb8] + TableTraits v1.0.1 [bd369af6] + Tables v1.12.1 [3bb67fe8] + TranscodingStreams v0.11.3 [013be700] + UnsafeAtomics v0.3.0 [0b7ba130] + Blosc_jll v1.21.7+0 [6e34b625] + Bzip2_jll v1.0.9+0 [f5851436] + FFTW_jll v3.3.11+0 [0234f1f7] + HDF5_jll v1.14.6+0 [e33a78d0] + Hwloc_jll v2.12.2+0 [1d5cc7b8] + IntelOpenMP_jll v2025.2.0+0 [dad2f222] + LLVMExtra_jll v0.0.38+0 [94ce4f54] + Libiconv_jll v1.18.0+0 [5ced341a] + Lz4_jll v1.10.1+0 [856f044c] + MKL_jll v2025.2.0+0 [7cb0a576] + MPICH_jll v4.3.2+0 [f1f71cc9] + MPItrampoline_jll v5.5.4+0 [9237b28f] + MicrosoftMPI_jll v10.1.4+3 [7243133f] + NetCDF_jll v401.900.300+0 [fe0851c0] + OpenMPI_jll v5.0.8+0 [efe28fd5] + OpenSpecFun_jll v0.5.6+0 [f50d1b31] + Rmath_jll v0.5.1+0 ⌅ [02c8fc9c] + XML2_jll v2.13.9+0 [ffd25f8a] + XZ_jll v5.8.1+0 [a65dc6b1] + Xorg_libpciaccess_jll v0.18.1+0 [477f73a3] + libaec_jll v1.1.4+0 [337d8026] + libzip_jll v1.11.3+0 [1317d2d5] + oneTBB_jll v2022.0.0+1 [0dad84c5] + ArgTools v1.1.2 [56f22d72] + Artifacts v1.11.0 [2a0f44e3] + Base64 v1.11.0 [ade2ca70] + Dates v1.11.0 [8ba89e20] + Distributed v1.11.0 [f43a241f] + Downloads v1.7.0 [7b1f6079] + FileWatching v1.11.0 [9fa8497b] + Future v1.11.0 [b77e0a4c] + InteractiveUtils v1.11.0 [ac6e5ff7] + JuliaSyntaxHighlighting v1.12.0 [4af54fe1] + LazyArtifacts v1.11.0 [b27032c2] + LibCURL v1.0.0 [76f85450] + LibGit2 v1.11.0 [8f399da3] + Libdl v1.11.0 [37e2e46d] + LinearAlgebra v1.13.0 [56ddb016] + Logging v1.11.0 [d6f4376e] + Markdown v1.11.0 [a63ad114] + Mmap v1.11.0 [ca575930] + NetworkOptions v1.3.0 [44cfe95a] + Pkg v1.13.0 [de0858da] + Printf v1.11.0 [3fa0cd96] + REPL v1.11.0 [9a3f8284] + Random v1.11.0 [ea8e919c] + SHA v1.0.0 [9e88b42a] + Serialization v1.11.0 [6462fe0b] + Sockets v1.11.0 [2f01184e] + SparseArrays v1.13.0 [f489334b] + StyledStrings v1.11.0 [4607b0f0] + SuiteSparse [fa267f1f] + TOML v1.0.3 [a4e569a6] + Tar v1.10.0 [cf7118a7] + UUIDs v1.11.0 [4ec0a83e] + Unicode v1.11.0 [e66e0078] + CompilerSupportLibraries_jll v1.3.0+1 [deac9b47] + LibCURL_jll v8.16.0+0 [e37daf67] + LibGit2_jll v1.9.1+0 [29816b5a] + LibSSH2_jll v1.11.3+1 [14a3606d] + MozillaCACerts_jll v2025.9.9 [4536629a] + OpenBLAS_jll v0.3.29+0 [05823500] + OpenLibm_jll v0.8.7+0 [458c3c95] + OpenSSL_jll v3.5.4+0 [efcefdf7] + PCRE2_jll v10.47.0+0 [bea87d4a] + SuiteSparse_jll v7.10.1+0 [83775a58] + Zlib_jll v1.3.1+2 [3161d3a3] + Zstd_jll v1.5.7+1 [8e850b90] + libblastrampoline_jll v5.15.0+0 [8e850ede] + nghttp2_jll v1.67.1+0 [3f19e933] + p7zip_jll v17.6.0+0 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 11.79s ################################################################################ # Precompilation # Precompiling PkgEval dependencies... ┌ Error: Failed to use TestEnv.jl; test dependencies will not be precompiled │ exception = │ UndefVarError: `project_rel_path` not defined in `TestEnv` │ Suggestion: this global was defined as `Pkg.Operations.project_rel_path` but not assigned a value. │ Stacktrace: │ [1] get_test_dir(ctx::Pkg.Types.Context, pkgspec::PackageSpec) │ @ TestEnv ~/.julia/packages/TestEnv/nGMfF/src/julia-1.11/common.jl:75 │ [2] test_dir_has_project_file │ @ ~/.julia/packages/TestEnv/nGMfF/src/julia-1.11/common.jl:52 [inlined] │ [3] maybe_gen_project_override! │ @ ~/.julia/packages/TestEnv/nGMfF/src/julia-1.11/common.jl:83 [inlined] │ [4] activate(pkg::String; allow_reresolve::Bool) │ @ TestEnv ~/.julia/packages/TestEnv/nGMfF/src/julia-1.11/activate_set.jl:12 │ [5] activate(pkg::String) │ @ TestEnv ~/.julia/packages/TestEnv/nGMfF/src/julia-1.11/activate_set.jl:9 │ [6] top-level scope │ @ /PkgEval.jl/scripts/precompile.jl:24 │ [7] include(mod::Module, _path::String) │ @ Base ./Base.jl:309 │ [8] exec_options(opts::Base.JLOptions) │ @ Base ./client.jl:344 │ [9] _start() │ @ Base ./client.jl:577 └ @ Main /PkgEval.jl/scripts/precompile.jl:26 Precompiling package dependencies... Precompiling packages... 2716.2 ms ✓ AbstractNumbers 3675.8 ms ✓ BitInformation 7849.4 ms ✓ ComponentArrays → ComponentArraysGPUArraysExt 8086.4 ms ✓ ModelParameters 9839.3 ms ✓ SpeedyWeatherInternals 12887.7 ms ✓ LowerTriangularArrays 19636.6 ms ✓ RingGrids 18221.0 ms ✓ SpeedyTransforms 30009.7 ms ✓ SpeedyWeather 9 dependencies successfully precompiled in 115 seconds. 183 already precompiled. Precompilation completed after 133.35s ################################################################################ # Testing # Testing SpeedyWeather Status `/tmp/jl_LOecFV/Project.toml` [621f4979] AbstractFFTs v1.5.0 [79e6a3ab] Adapt v4.4.0 [052768ef] CUDA v5.9.2 [13f3f980] CairoMakie v0.15.6 [b0b7db55] ComponentArrays v0.15.30 [5b8099bc] DomainSets v0.7.16 [7da242da] Enzyme v0.13.96 [12d8515a] EnzymeTestUtils v0.2.5 [26cc04aa] FiniteDifferences v0.12.33 [db073c08] GeoMakie v0.7.15 ⌃ [27aeb0d3] JLArrays v0.2.0 [033835bb] JLD2 v0.6.2 [63c18a36] KernelAbstractions v0.9.39 [ee78f7c6] Makie v0.24.6 [4744a3fa] ModelParameters v0.4.6 [85f8d34a] NCDatasets v0.14.9 [9e226e20] SpeedyWeather v0.17.3 [10745b16] Statistics v1.11.1 [2913bbd2] StatsBase v0.34.7 [ade2ca70] Dates v1.11.0 [9a3f8284] Random v1.11.0 [8dfed614] Test v1.11.0 Status `/tmp/jl_LOecFV/Manifest.toml` [621f4979] AbstractFFTs v1.5.0 [85c772de] AbstractNumbers v0.2.5 [1520ce14] AbstractTrees v0.4.5 [79e6a3ab] Adapt v4.4.0 [35492f91] AdaptivePredicates v1.2.0 [66dad0bd] AliasTables v1.1.3 [27a7e980] Animations v0.4.2 [4fba245c] ArrayInterface v7.22.0 [2119f1ac] AssociatedLegendrePolynomials v1.0.2 [a9b6321e] Atomix v1.1.2 [67c07d97] Automa v1.1.0 [13072b0f] AxisAlgorithms v1.1.0 [39de3d68] AxisArrays v0.4.8 [ab4f0b2a] BFloat16s v0.6.0 [18cc8868] BaseDirs v1.3.2 [de688a37] BitInformation v0.6.3 [fa961155] CEnum v0.5.0 [179af706] CFTime v0.2.4 [96374032] CRlibm v1.0.2 [052768ef] CUDA v5.9.2 [1af6417a] CUDA_Runtime_Discovery v1.0.0 [159f3aea] Cairo v1.1.1 [13f3f980] CairoMakie v0.15.6 [d360d2e6] ChainRulesCore v1.26.0 [0b6fb165] ChunkCodecCore v1.0.0 [4c0bbee4] ChunkCodecLibZlib v1.0.0 [55437552] ChunkCodecLibZstd v1.0.0 [944b1d66] CodecZlib v0.7.8 [a2cac450] ColorBrewer v0.4.2 [35d6a980] ColorSchemes v3.31.0 [3da002f7] ColorTypes v0.12.1 [c3611d14] ColorVectorSpace v0.11.0 [5ae59095] Colors v0.13.1 [1fbeeb36] CommonDataModel v0.4.1 [f70d9fcc] CommonWorldInvalidations v1.0.0 [34da2185] Compat v4.18.1 [b0b7db55] ComponentArrays v0.15.30 [b152e2b5] CompositeTypes v0.1.4 [95dc2771] ComputePipeline v0.1.4 [187b0558] ConstructionBase v1.6.0 [d38c429a] Contour v0.6.3 [150eb455] CoordinateTransformations v0.6.4 [a8cc5b0e] Crayons v4.1.1 [9a962f9c] DataAPI v1.16.0 [a93c6f00] DataFrames v1.8.1 [864edb3b] DataStructures v0.19.2 [e2d170a0] DataValueInterfaces v1.0.0 [927a84f5] DelaunayTriangulation v1.6.5 [3c3547ce] DiskArrays v0.4.18 [31c24e10] Distributions v0.25.122 [ffbed154] DocStringExtensions v0.9.5 [5b8099bc] DomainSets v0.7.16 [4e289a0a] EnumX v1.0.5 [7da242da] Enzyme v0.13.96 [f151be2c] EnzymeCore v0.8.15 [12d8515a] EnzymeTestUtils v0.2.5 [429591f6] ExactPredicates v2.2.9 [e2ba6199] ExprTools v0.1.10 [411431e0] Extents v0.1.6 [7a1cc6ca] FFTW v1.10.0 [442a2c76] FastGaussQuadrature v1.1.0 [bf96fef3] FieldMetadata v0.3.1 [5789e2e9] FileIO v1.17.1 ⌅ [8fc22ac5] FilePaths v0.8.3 [48062228] FilePathsBase v0.9.24 [1a297f60] FillArrays v1.14.0 [26cc04aa] FiniteDifferences v0.12.33 [53c48c17] FixedPointNumbers v0.8.5 [4c728ea3] Flatten v0.4.3 [1fa38f19] Format v1.3.7 [b38be410] FreeType v4.1.1 [663a7486] FreeTypeAbstraction v0.10.8 [d9f16b24] Functors v0.5.2 [0c68f7d7] GPUArrays v11.2.6 [46192b85] GPUArraysCore v0.2.0 [61eb1bfa] GPUCompiler v1.7.2 [096a3bc2] GPUToolbox v1.0.0 [a8297547] GenericFFT v0.1.6 [68eda718] GeoFormatTypes v0.4.4 [cf35fbd7] GeoInterface v1.6.0 [61d90e0f] GeoJSON v0.8.4 [db073c08] GeoMakie v0.7.15 [0ef565a4] Geodesy v1.2.0 [5c1252a2] GeometryBasics v0.5.10 [3251bfac] GeometryOps v0.1.30 [05efe853] GeometryOpsCore v0.1.7 [a2bd30eb] Graphics v1.1.3 [3955a311] GridLayoutBase v0.11.2 [42e2da0e] Grisu v1.0.2 [076d061b] HashArrayMappedTries v0.2.0 [34004b35] HypergeometricFunctions v0.3.28 [615f187c] IfElse v0.1.1 [2803e5a7] ImageAxes v0.6.12 [c817782e] ImageBase v0.1.7 [a09fc81d] ImageCore v0.10.5 [82e4d734] ImageIO v0.6.9 [bc367c6b] ImageMetadata v0.9.10 [9b13fd28] IndirectArrays v1.0.0 [d25df0c9] Inflate v0.1.5 [842dd82b] InlineStrings v1.4.5 [18e54dd8] IntegerMathUtils v0.1.3 [a98d9a8b] Interpolations v0.16.2 [d1acc4aa] IntervalArithmetic v1.0.1 [8197267c] IntervalSets v0.7.11 [3587e190] InverseFunctions v0.1.17 [41ab1584] InvertedIndices v1.3.1 [92d709cd] IrrationalConstants v0.2.6 [f1662d9f] Isoband v0.1.1 [c8e1da08] IterTools v1.10.0 [82899510] IteratorInterfaceExtensions v1.0.0 ⌃ [27aeb0d3] JLArrays v0.2.0 [033835bb] JLD2 v0.6.2 [692b3bcd] JLLWrappers v1.7.1 [682c06a0] JSON v1.2.0 [0f8b85d8] JSON3 v1.14.3 [b835a17e] JpegTurbo v0.1.6 [63c18a36] KernelAbstractions v0.9.39 [5ab0869b] KernelDensity v0.6.10 [929cbde3] LLVM v9.4.4 [8b046642] LLVMLoopInfo v1.0.0 [8ac3fa9e] LRUCache v1.6.2 [b964fa9f] LaTeXStrings v1.4.0 [8cdb02fc] LazyModules v0.3.1 [2ab3a3ac] LogExpFunctions v0.3.29 [ed20b33f] LowerTriangularArrays v0.1.1 [3da0fdf6] MPIPreferences v0.1.11 [1914dd2f] MacroTools v0.5.16 [ee78f7c6] Makie v0.24.6 [dbb5928d] MappedArrays v0.4.2 [0a4f8689] MathTeXEngine v0.6.7 [e1d29d7a] Missings v1.2.0 [4744a3fa] ModelParameters v0.4.6 [e94cdb99] MosaicViews v0.3.4 [85f8d34a] NCDatasets v0.14.9 [5da4648a] NVTX v1.0.1 [77ba4419] NaNMath v1.1.3 [436b0209] NaturalEarth v0.1.0 [f09324ee] Netpbm v1.1.1 [d8793406] ObjectFile v0.5.0 [510215fc] Observables v0.5.5 [6fe1bfb0] OffsetArrays v1.17.0 [52e1d378] OpenEXR v0.3.3 [bac558e1] OrderedCollections v1.8.1 [90014a1f] PDMats v0.11.36 [f57f5aa1] PNGFiles v0.4.4 [19eb6ba3] Packing v0.5.1 [5432bcbf] PaddedViews v0.5.12 [69de0a69] Parsers v2.8.3 [eebad327] PkgVersion v0.3.3 [995b91a9] PlotUtils v1.4.3 [647866c9] PolygonOps v0.1.2 [2dfb63ee] PooledArrays v1.4.3 [aea7be01] PrecompileTools v1.3.3 [21216c6a] Preferences v1.5.0 [08abe8d2] PrettyTables v3.1.0 [27ebfcd6] Primes v0.5.7 [92933f4c] ProgressMeter v1.11.0 [c94c279d] Proj v1.9.0 [43287f4e] PtrArrays v1.3.0 [4b34888f] QOI v1.0.1 [1fd47b50] QuadGK v2.11.2 [74087812] Random123 v1.7.1 [e6cf234a] RandomNumbers v1.6.0 [b3c3ace0] RangeArrays v0.3.2 [c84ed2f1] Ratios v0.4.5 [189a3867] Reexport v1.2.2 [05181044] RelocatableFolders v1.0.1 [ae029012] Requires v1.3.1 [708f8203] Richardson v1.4.2 [d1845624] RingGrids v0.1.1 [79098fc4] Rmath v0.9.0 [5eaf0fd0] RoundingEmulator v0.2.1 [fdea26ae] SIMD v3.7.2 [431bcebd] SciMLPublic v1.0.0 [7e506255] ScopedValues v1.5.0 [6c6a2e73] Scratch v1.3.0 [91c51154] SentinelArrays v1.4.8 [efcf1570] Setfield v1.1.2 [65257c39] ShaderAbstractions v0.5.0 [992d4aef] Showoff v1.0.3 [73760f76] SignedDistanceFields v0.4.0 [699a6c99] SimpleTraits v0.9.5 [45858cf5] Sixel v0.1.5 [746ee33f] SortTileRecursiveTree v0.1.4 [a2af1166] SortingAlgorithms v1.2.2 [276daf66] SpecialFunctions v2.6.1 [ed023a3f] SpeedyTransforms v0.1.1 [9e226e20] SpeedyWeather v0.17.3 [34489162] SpeedyWeatherInternals v0.1.2 [860ef19b] StableRNGs v1.0.3 [91464d47] StableTasks v0.1.7 [cae243ae] StackViews v0.1.2 [aedffcd0] Static v1.3.1 [0d7ed370] StaticArrayInterface v1.8.0 [90137ffa] StaticArrays v1.9.15 [1e83bf80] StaticArraysCore v1.4.4 [10745b16] Statistics v1.11.1 [82ae8749] StatsAPI v1.7.1 [2913bbd2] StatsBase v0.34.7 [4c63d2b9] StatsFuns v1.5.2 [892a3eda] StringManipulation v0.4.1 [09ab397b] StructArrays v0.7.2 [53d494c1] StructIO v0.3.1 [856f2bd8] StructTypes v1.11.0 [ec057cc2] StructUtils v2.5.1 [3783bdb8] TableTraits v1.0.1 [bd369af6] Tables v1.12.1 [62fd8b95] TensorCore v0.1.1 [731e570b] TiffImages v0.11.6 [e689c965] Tracy v0.1.6 [3bb67fe8] TranscodingStreams v0.11.3 [981d1d27] TriplotBase v0.1.0 [1cfade01] UnicodeFun v0.4.1 [1986cc42] Unitful v1.25.1 [013be700] UnsafeAtomics v0.3.0 [e3aaa7dc] WebP v0.1.3 [efce3f68] WoodburyMatrices v1.0.0 [0b7ba130] Blosc_jll v1.21.7+0 [6e34b625] Bzip2_jll v1.0.9+0 [4e9b3aee] CRlibm_jll v1.0.1+0 [d1e2174e] CUDA_Compiler_jll v0.3.0+0 [4ee394cb] CUDA_Driver_jll v13.0.2+0 [76a88914] CUDA_Runtime_jll v0.19.2+0 [83423d85] Cairo_jll v1.18.5+0 [5ae413db] EarCut_jll v2.2.4+0 [7cc45869] Enzyme_jll v0.0.207+0 [2e619515] Expat_jll v2.7.3+0 ⌅ [b22a6f82] FFMPEG_jll v6.1.3+0 [f5851436] FFTW_jll v3.3.11+0 [a3f928ae] Fontconfig_jll v2.17.1+0 [d7e528f0] FreeType2_jll v2.13.4+0 [559328eb] FriBidi_jll v1.0.17+0 [b0724c58] GettextRuntime_jll v0.22.4+0 [59f7168a] Giflib_jll v5.2.3+0 [7746bdde] Glib_jll v2.86.0+0 [3b182d85] Graphite2_jll v1.3.15+0 [0234f1f7] HDF5_jll v1.14.6+0 [2e76f6c2] HarfBuzz_jll v8.5.1+0 [e33a78d0] Hwloc_jll v2.12.2+0 [905a6f67] Imath_jll v3.1.11+0 [1d5cc7b8] IntelOpenMP_jll v2025.2.0+0 [aacddb02] JpegTurbo_jll v3.1.3+0 [9c1d0b0a] JuliaNVTXCallbacks_jll v0.2.1+0 [c1c5ebd0] LAME_jll v3.100.3+0 [88015f11] LERC_jll v4.0.1+0 [dad2f222] LLVMExtra_jll v0.0.38+0 [1d63c593] LLVMOpenMP_jll v18.1.8+0 [dd4b983a] LZO_jll v2.10.3+0 [ad6e5548] LibTracyClient_jll v0.9.1+6 [e9f186c6] Libffi_jll v3.4.7+0 [7e76a0d4] Libglvnd_jll v1.7.1+1 [94ce4f54] Libiconv_jll v1.18.0+0 [4b2f31a3] Libmount_jll v2.41.2+0 [89763e89] Libtiff_jll v4.7.2+0 [38a345b3] Libuuid_jll v2.41.2+0 [5ced341a] Lz4_jll v1.10.1+0 [856f044c] MKL_jll v2025.2.0+0 [7cb0a576] MPICH_jll v4.3.2+0 [f1f71cc9] MPItrampoline_jll v5.5.4+0 [9237b28f] MicrosoftMPI_jll v10.1.4+3 [e98f9f5b] NVTX_jll v3.2.2+0 [7243133f] NetCDF_jll v401.900.300+0 [e7412a2a] Ogg_jll v1.3.6+0 [6cdc7f73] OpenBLASConsistentFPCSR_jll v0.3.29+0 [18a262bb] OpenEXR_jll v3.2.4+0 [fe0851c0] OpenMPI_jll v5.0.8+0 [efe28fd5] OpenSpecFun_jll v0.5.6+0 [91d4177d] Opus_jll v1.5.2+0 [58948b4f] PROJ_jll v902.700.0+0 [36c8627f] Pango_jll v1.56.4+0 ⌅ [30392449] Pixman_jll v0.44.2+0 [f50d1b31] Rmath_jll v0.5.1+0 [76ed43ae] SQLite_jll v3.48.0+0 ⌅ [02c8fc9c] XML2_jll v2.13.9+0 [ffd25f8a] XZ_jll v5.8.1+0 [4f6342f7] Xorg_libX11_jll v1.8.12+0 [0c0b7dd1] Xorg_libXau_jll v1.0.13+0 [a3789734] Xorg_libXdmcp_jll v1.1.6+0 [1082639a] Xorg_libXext_jll v1.3.7+0 [ea2f1a96] Xorg_libXrender_jll v0.9.12+0 [a65dc6b1] Xorg_libpciaccess_jll v0.18.1+0 [c7cfdc94] Xorg_libxcb_jll v1.17.1+0 [c5fb5394] Xorg_xtrans_jll v1.6.0+0 [1e29f10c] demumble_jll v1.3.0+0 [9a68df92] isoband_jll v0.2.3+0 [477f73a3] libaec_jll v1.1.4+0 [a4ae2306] libaom_jll v3.13.1+0 [0ac62f75] libass_jll v0.17.4+0 [f638f0a6] libfdk_aac_jll v2.0.4+0 [b53b4c65] libpng_jll v1.6.50+0 [075b6546] libsixel_jll v1.10.5+0 [f27f6e37] libvorbis_jll v1.3.8+0 [c5f90fcd] libwebp_jll v1.6.0+0 [337d8026] libzip_jll v1.11.3+0 [1317d2d5] oneTBB_jll v2022.0.0+1 [1270edf5] x264_jll v10164.0.1+0 [dfaa095f] x265_jll v4.1.0+0 [0dad84c5] ArgTools v1.1.2 [56f22d72] Artifacts v1.11.0 [2a0f44e3] Base64 v1.11.0 [8bf52ea8] CRC32c v1.11.0 [ade2ca70] Dates v1.11.0 [8ba89e20] Distributed v1.11.0 [f43a241f] Downloads v1.7.0 [7b1f6079] FileWatching v1.11.0 [9fa8497b] Future v1.11.0 [b77e0a4c] InteractiveUtils v1.11.0 [ac6e5ff7] JuliaSyntaxHighlighting v1.12.0 [4af54fe1] LazyArtifacts v1.11.0 [b27032c2] LibCURL v1.0.0 [76f85450] LibGit2 v1.11.0 [8f399da3] Libdl v1.11.0 [37e2e46d] LinearAlgebra v1.13.0 [56ddb016] Logging v1.11.0 [d6f4376e] Markdown v1.11.0 [a63ad114] Mmap v1.11.0 [ca575930] NetworkOptions v1.3.0 [44cfe95a] Pkg v1.13.0 [de0858da] Printf v1.11.0 [3fa0cd96] REPL v1.11.0 [9a3f8284] Random v1.11.0 [ea8e919c] SHA v1.0.0 [9e88b42a] Serialization v1.11.0 [1a1011a3] SharedArrays v1.11.0 [6462fe0b] Sockets v1.11.0 [2f01184e] SparseArrays v1.13.0 [f489334b] StyledStrings v1.11.0 [4607b0f0] SuiteSparse [fa267f1f] TOML v1.0.3 [a4e569a6] Tar v1.10.0 [8dfed614] Test v1.11.0 [cf7118a7] UUIDs v1.11.0 [4ec0a83e] Unicode v1.11.0 [e66e0078] CompilerSupportLibraries_jll v1.3.0+1 [deac9b47] LibCURL_jll v8.16.0+0 [e37daf67] LibGit2_jll v1.9.1+0 [29816b5a] LibSSH2_jll v1.11.3+1 [14a3606d] MozillaCACerts_jll v2025.9.9 [4536629a] OpenBLAS_jll v0.3.29+0 [05823500] OpenLibm_jll v0.8.7+0 [458c3c95] OpenSSL_jll v3.5.4+0 [efcefdf7] PCRE2_jll v10.47.0+0 [bea87d4a] SuiteSparse_jll v7.10.1+0 [83775a58] Zlib_jll v1.3.1+2 [3161d3a3] Zstd_jll v1.5.7+1 [8e850b90] libblastrampoline_jll v5.15.0+0 [8e850ede] nghttp2_jll v1.67.1+0 [3f19e933] p7zip_jll v17.6.0+0 Info Packages marked with ⌃ and ⌅ have new versions available. Those with ⌃ may be upgradable, but those with ⌅ are restricted by compatibility constraints from upgrading. Testing Running tests... [ Info: Running general test suite Test Summary: | Pass Total Time Increasing/decresing vectors | 4 4 5.7s Test Summary: | Pass Total Time clip negatives | 3 3 2.3s Test Summary: | Pass Total Time flip sign | 3 3 4.5s Test Summary: | Pass Total Time roundup nlon for FFT | 40 40 0.0s Test Summary: | Pass Total Time readable secs feedback | 7 7 1.2s Test Summary: | Pass Total Time nans | 309 309 1.1s Test Summary: | Pass Total Time SpectralGrid | 6 6 0.1s Test Summary: | Pass Total Time SpeedyParam | 8 8 1.7s Test Summary: | Pass Total Time parameters | 17 17 47.4s Test Summary: | Pass Total Time @parameterized | 16 16 5.4s Test Summary: | Pass Total Time Grid types | 41 41 0.0s Test Summary: | Pass Total Time Field types | 41 41 0.2s Test Summary: | Pass Total Time Grid indexing | 360 360 21.2s Test Summary: | Pass Total Time Field generators | 450 450 45.7s Test Summary: | Pass Total Time Field generators: ones | 72 72 5.1s Test Summary: | Pass Total Time Field generators: rand, randn | 72 72 5.2s Test Summary: | Pass Total Time Field generators: undef | 36 36 1.1s Test Summary: | Pass Total Time FullGrids conversions to/from Arrays | 12 12 3.2s Test Summary: | Pass Total Time Grid indices | 1049 1049 3.5s Test Summary: | Pass Total Time Ring indices | 36 36 1.2s Test Summary: | Pass Total Time Ring indices from fields | 9 9 1.5s Test Summary: | Pass Total Time Ring indices from grids | 6 6 0.1s Test Summary: | Pass Total Time Field broadcasting | 212 212 1m35.1s Test Summary: | Pass Total Time N-dimensional indexing | 81 81 3.9s Test Summary: | Pass Total Time Loop indexing | 36 36 29.9s Test Summary: | Pass Total Time AbstractField: GPU (JLArrays) | 56 56 57.0s Test Summary: | Pass Total Time Zonal mean | 330 330 1.8s Test Summary: | Pass Total Time nonparametric types | 8 8 0.0s Test Summary: | Pass Total Time ColumnField types | 4 4 0.0s Test Summary: | Pass Total Time ColumnField constructors | 162 162 2.7s Test Summary: | Pass Total Time ColumnField undef constructors | 90 90 2.1s Test Summary: | Pass Total Time ColumnField indexing | 126 126 5.4s Test Summary: | Pass Total Time ColumnField transpose operations | 40 40 1.2s Test Summary: | Pass Total Time ColumnField similar operations | 36 36 0.9s Test Summary: | Pass Total Time ColumnField broadcasting | 44 44 16.5s Test Summary: | Pass Total Time ColumnField arithmetic with Field | 16 16 5.3s Test Summary: | Pass Total Time ColumnField: GPU (JLArrays) | 24 24 13.2s Test Summary: | Pass Total Time ColumnField type utilities | 5 5 0.0s Test Summary: | Pass Total Time ColumnField error handling | 2 2 0.0s Test Summary: | Pass Total Time Spherical distance on Earth | 8 8 0.2s Test Summary: | Pass Total Time Spherical distance degrees -180:180 or 0:360 | 1 1 0.0s Test Summary: | Pass Total Time Spherical distance invariants | 700 700 0.2s Test Summary: | Pass Total Time Spherical distance with custom radius | 8 8 0.0s Test Summary: | Pass Total Time Spherical distance type stability | 15 15 0.8s Test Summary: | Pass Total Time Haversine: Rounding errors | 1 1 0.1s Test Summary: | Pass Total Time Interpolate constant field | 1200 1200 17.5s Test Summary: | Pass Total Time Interpolate zonally-constant field | 12000 12000 13.2s Test Summary: | Pass Total Time Interpolate meridionally-constant field | 24000 24000 1.5s Test Summary: | Pass Total Time Find latitude rings and weights | 690 690 6.0s Test Summary: | Pass Total Time Interpolate between grids | 14 14 2m34.6s Test Summary: | Pass Total Time 3/4D interpolation interfaces | 2 2 9.5s Test Summary: | Total Time Grid cell average | 0 1m25.0s Test Summary: | Pass Total Time Reverse grids | 756 756 24.4s Test Summary: | Pass Total Time Rotate grids | 648 648 2.7s Test Summary: | Pass Total Time KernelAbstractions tests | 3 3 8.5s Test Summary: | Pass Total Time LowerTriangularMatrix | 4208 4208 5.8s Test Summary: | Pass Total Time LowerTriangularArray: N-dim | 12768 12768 19.5s Test Summary: | Pass Total Time LowerTriangularArray: OneBased vs ZeroBased | 12 12 0.4s Test Summary: | Pass Total Time LowerTriangularMatrix: @inbounds | 12 12 0.3s Test Summary: | Pass Total Time LowerTriangularArray: @inbounds | 18 18 0.5s Test Summary: | Pass Total Time 4D LowerTriangularArray: @inbounds | 8 8 0.3s Test Summary: | Pass Total Time Zeros, ones, rand, and randn constructors | 128 128 14.9s Test Summary: | Pass Total Time LowerTriangularArray: fill, copy, randn, convert, repeat | 13116 13116 9.3s Test Summary: | Pass Total Time LowerTriangularMatrix: fill, copy, randn, convert | 4364 4364 0.7s Test Summary: | Pass Total Time LowerTriangularMatrix: *, +, eachindex, similar | 42 42 5.7s Test Summary: | Pass Total Time LowerTriangularArray: *, +, eachindex, similar | 126 126 25.6s Test Summary: | Pass Total Time LowerTriangularArray: sum | 4 4 0.0s Test Summary: | Pass Total Time LowerTriangularMatrix: copyto! | 15 15 1.2s Test Summary: | Pass Total Time LowerTriangularArray: copyto! | 81 81 30.0s Test Summary: | Pass Total Time LowerTriangularMatrix: broadcast | 9 9 5.6s Test Summary: | Pass Total Time LowerTriangularArray: GPU (JLArrays) | 185 185 16.8s Test Summary: | Pass Total Time LowerTriangularArray: broadcast | 108 108 2m30.6s Test Summary: | Pass Total Time Rotate LowerTriangularArray | 324 324 6.5s Test Summary: | Pass Total Time Reverse LowerTriangularArray | 180 180 2.9s Test Summary: | Pass Total Time Spectrum | 33 33 0.1s Test Summary: | Pass Total Time LTA view | 8 8 0.4s Test Summary: | Pass Total Time FullGaussianGrid: Test grid and spectral resolution match | 36 36 0.6s Test Summary: | Pass Total Time Transform: l=0, m=0 is constant > 0 | 1253856 1253856 1m11.7s Test Summary: | Pass Total Time Transform: Individual Legendre polynomials | 532224 532224 27.5s Test Summary: | Pass Total Time Transform: Singleton dimensions | 4866048 4866048 58.8s Test Summary: | Pass Total Time Transform: Real to real transform | 6336 6336 3.7s Test Summary: | Pass Total Time Transform: NF flexibility spectral inputs | 3168 3168 2.0s Test Summary: | Pass Total Time Transform: NF flexibility for spectral outputs | 560 560 1.6s Test Summary: | Pass Total Time Transform: Individual Legendre polynomials (inexact transforms) | 2492160 2492160 56.8s Test Summary: | Pass Total Time Transform: Orography (exact grids) | 139112 139112 30.7s Test Summary: | Pass Total Time Divergence of a non-divergent flow zero? | 1124 1124 1m07.8s Test Summary: | Pass Total Time Curl of an irrotational flow zero? | 1124 1124 5.7s Test Summary: | Pass Total Time Scale, unscale coslat | 20 20 13.2s Test Summary: | Pass Total Time Flipsign in divergence!, curl! | 4 4 8.3s Test Summary: | Pass Total Time Add in divergence!, curl! | 8 8 7.6s Test Summary: | Pass Total Time D, ζ -> u, v -> D, ζ | 4484 4484 1m17.8s Test Summary: | Pass Total Time (Inverse) Laplace operator | 14 14 3.9s Test Summary: | Pass Total Time ∇×∇=0 and ∇⋅∇=∇² | 5600 5600 54.5s Test Summary: | Pass Total Time Power spectrum | 36 36 3.5s test_reverse: _fourier! with return activity Const on (::Array{ComplexF32, 3}, Duplicated), (::Array{ComplexF32, 3}, Duplicated), (::Field{Float32, 2, Matrix{Float32}, FullGaussianGrid{CPU{KernelAbstractions.CPU}, Vector{UnitRange{Int64}}, Vector{Int64}}}, Duplicated), (::SpectralTransform{Float32, CPU{KernelAbstractions.CPU}, Array, Spectrum{CPU{KernelAbstractions.CPU}, Vector{UnitRange{Int64}}, Vector{Int64}}, FullGaussianGrid{CPU{KernelAbstractions.CPU}, Vector{UnitRange{Int64}}, Vector{Int64}}, Vector{Float32}, Matrix{Int64}, Vector{ComplexF32}, Matrix{ComplexF32}, Array{ComplexF32, 3}, LowerTriangularMatrix{Float32, Vector{Float32}, Spectrum{CPU{KernelAbstractions.CPU}, Vector{UnitRange{Int64}}, Vector{Int64}}}, LowerTriangularArray{Float32, 2, Matrix{Float32}, Spectrum{CPU{KernelAbstractions.CPU}, Vector{UnitRange{Int64}}, Vector{Int64}}}}, Const): Error During Test at /home/pkgeval/.julia/packages/EnzymeTestUtils/JZTWO/src/test_reverse.jl:86 Got exception outside of a @test AssertionError: Enzyme Internal Error (expectLen != length(parameters(f))) define internal void @julia_copyto_unaliased__173664(ptr noalias nocapture noundef nonnull sret({ ptr addrspace(10), { [2 x i64], [2 x i64], i64 }, i64, i64 }) align 8 dereferenceable(64) %sret_return, ptr noalias nocapture noundef nonnull align 8 dereferenceable(8) "enzymejl_returnRoots" %return_roots, ptr addrspace(11) nocapture noundef nonnull readonly align 8 dereferenceable(64) %"dest::SubArray", ptr nocapture noundef nonnull readonly align 8 dereferenceable(8) %.roots.dest, ptr addrspace(11) nocapture noundef nonnull readonly align 8 dereferenceable(56) %"src::ReshapedArray", ptr nocapture noundef nonnull readonly align 8 dereferenceable(8) %.roots.src) #13 !dbg !340 { top: %"new::LinearIndices" = alloca [1 x [2 x [1 x i64]]], align 8 %"new::Tuple" = alloca [2 x i8], align 1 %"new::Tuple38" = alloca [1 x i64], align 8 %"new::Tuple42" = alloca [1 x i64], align 8 %.size = alloca i64, align 8 %0 = alloca [2 x i32], align 4 %"new::Tuple51" = alloca [2 x i64], align 8 %"new::Tuple62" = alloca [3 x i64], align 8 %.size64 = alloca [3 x i64], align 8 %.size70 = alloca [3 x i64], align 8 %1 = alloca ptr addrspace(10), align 8 %"new::Tuple131" = alloca [1 x i64], align 8 %2 = alloca ptr addrspace(10), align 8 %3 = alloca ptr addrspace(10), align 8 %pgcstack = call ptr @julia.get_pgcstack() call void @llvm.memset.p0.i64(ptr align 8 %3, i8 0, i64 8, i1 false), !tbaa !60, !alias.scope !341, !noalias !342 call void @llvm.memset.p0.i64(ptr align 8 %2, i8 0, i64 8, i1 false), !tbaa !60, !alias.scope !341, !noalias !342 call void @llvm.memset.p0.i64(ptr align 8 %1, i8 0, i64 8, i1 false), !tbaa !60, !alias.scope !341, !noalias !342 %current_task = getelementptr inbounds i8, ptr %pgcstack, i32 -152 %ptls_field = getelementptr inbounds i8, ptr %current_task, i32 168 %ptls_load = load ptr, ptr %ptls_field, align 8, !tbaa !60 %4 = getelementptr inbounds i8, ptr %ptls_load, i32 16 %safepoint = load atomic ptr, ptr %4 monotonic, align 8, !tbaa !64 fence syncscope("singlethread") seq_cst call void @julia.safepoint(ptr %safepoint) fence syncscope("singlethread") seq_cst %5 = getelementptr inbounds i8, ptr %.roots.dest, i32 0 %6 = load ptr addrspace(10), ptr %5, align 8, !tbaa !64, !alias.scope !113, !noalias !116 %7 = getelementptr inbounds i8, ptr %.roots.src, i32 0 %8 = load ptr addrspace(10), ptr %7, align 8, !tbaa !64, !alias.scope !113, !noalias !116 %9 = getelementptr inbounds i8, ptr addrspace(11) %"src::ReshapedArray", i32 8, !dbg !343 %.stop_ptr = getelementptr inbounds i8, ptr addrspace(11) %9, i32 8, !dbg !359 %.stop_ptr.unbox = load i64, ptr addrspace(11) %.stop_ptr, align 8, !dbg !371, !tbaa !64, !alias.scope !113, !noalias !116 %.unbox = load i64, ptr addrspace(11) %9, align 8, !dbg !371, !tbaa !64, !alias.scope !113, !noalias !116 %10 = sub i64 %.stop_ptr.unbox, %.unbox, !dbg !371 %11 = add i64 1, %10, !dbg !374 %12 = icmp eq i64 %11, 0, !dbg !376 %13 = xor i1 %12, true, !dbg !358 br i1 %13, label %L11, label %L10, !dbg !358 L10: ; preds = %top call void @llvm.memcpy.p0.p11.i64(ptr align 8 %sret_return, ptr addrspace(11) align 8 %"dest::SubArray", i64 64, i1 false), !dbg !358, !tbaa !277, !alias.scope !378, !noalias !379 %14 = getelementptr inbounds i8, ptr %return_roots, i32 0, !dbg !358 store ptr addrspace(10) %6, ptr %14, align 8, !dbg !358, !tbaa !60, !alias.scope !341, !noalias !342 ret void, !dbg !358 L11: ; preds = %top %15 = getelementptr inbounds i8, ptr addrspace(11) %"dest::SubArray", i32 8, !dbg !380 %"[2]_ptr" = getelementptr inbounds i8, ptr addrspace(11) %15, i32 16, !dbg !381 %.stop_ptr1 = getelementptr inbounds i8, ptr addrspace(11) %15, i32 8, !dbg !386 %.stop_ptr1.unbox = load i64, ptr addrspace(11) %.stop_ptr1, align 8, !dbg !392, !tbaa !64, !alias.scope !113, !noalias !116 %.unbox2 = load i64, ptr addrspace(11) %15, align 8, !dbg !392, !tbaa !64, !alias.scope !113, !noalias !116 %16 = sub i64 %.stop_ptr1.unbox, %.unbox2, !dbg !392 %17 = add i64 1, %16, !dbg !394 %"[2]_ptr.stop_ptr" = getelementptr inbounds i8, ptr addrspace(11) %"[2]_ptr", i32 8, !dbg !395 %"[2]_ptr.stop_ptr.unbox" = load i64, ptr addrspace(11) %"[2]_ptr.stop_ptr", align 8, !dbg !401, !tbaa !64, !alias.scope !113, !noalias !116 %"[2]_ptr.unbox" = load i64, ptr addrspace(11) %"[2]_ptr", align 8, !dbg !401, !tbaa !64, !alias.scope !113, !noalias !116 %18 = sub i64 %"[2]_ptr.stop_ptr.unbox", %"[2]_ptr.unbox", !dbg !401 %19 = add i64 1, %18, !dbg !403 %20 = getelementptr inbounds i8, ptr addrspace(11) %"src::ReshapedArray", i32 40, !dbg !404 %21 = getelementptr inbounds i8, ptr %"new::LinearIndices", i32 0, !dbg !408 %22 = getelementptr inbounds i8, ptr %21, i32 0, !dbg !408 %23 = getelementptr inbounds i8, ptr %22, i32 0, !dbg !408 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %23, ptr addrspace(11) align 8 %20, i64 8, i1 false), !dbg !408, !tbaa !277, !alias.scope !378, !noalias !379 %"[2]_ptr3" = getelementptr inbounds i8, ptr addrspace(11) %20, i32 8, !dbg !413 %24 = getelementptr inbounds i8, ptr %21, i32 8, !dbg !408 %25 = getelementptr inbounds i8, ptr %24, i32 0, !dbg !408 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %25, ptr addrspace(11) align 8 %"[2]_ptr3", i64 8, i1 false), !dbg !408, !tbaa !277, !alias.scope !378, !noalias !379 %26 = mul i64 %17, %19, !dbg !415 %27 = icmp slt i64 %26, 0, !dbg !425 %ifelse_cond = xor i1 %27, true, !dbg !434 %28 = select i1 %ifelse_cond, i64 %26, i64 0, !dbg !434 %29 = icmp ult i64 0, %28, !dbg !436 %.unbox5 = load i64, ptr addrspace(11) %20, align 8, !dbg !439, !tbaa !64, !alias.scope !113, !noalias !116 %"[2]_ptr3.unbox" = load i64, ptr addrspace(11) %"[2]_ptr3", align 8, !dbg !439, !tbaa !64, !alias.scope !113, !noalias !116 %30 = mul i64 %.unbox5, %"[2]_ptr3.unbox", !dbg !439 %31 = add i64 %30, 0, !dbg !444 %32 = mul i64 %17, %19, !dbg !415 %33 = icmp slt i64 %32, 0, !dbg !425 %ifelse_cond6 = xor i1 %33, true, !dbg !434 %34 = select i1 %ifelse_cond6, i64 %32, i64 0, !dbg !434 %35 = sub i64 %31, 1, !dbg !445 %36 = icmp ult i64 %35, %34, !dbg !436 %37 = and i1 %29, %36, !dbg !446 %38 = xor i1 %37, true, !dbg !424 br i1 %38, label %L409, label %L47, !dbg !424 L47: ; preds = %L11 %39 = getelementptr inbounds i8, ptr addrspace(11) %"dest::SubArray", i32 8, !dbg !449 %"[2]_ptr7" = getelementptr inbounds i8, ptr addrspace(11) %39, i32 16, !dbg !450 %.stop_ptr8 = getelementptr inbounds i8, ptr addrspace(11) %39, i32 8, !dbg !456 %.stop_ptr8.unbox = load i64, ptr addrspace(11) %.stop_ptr8, align 8, !dbg !462, !tbaa !64, !alias.scope !113, !noalias !116 %.unbox9 = load i64, ptr addrspace(11) %39, align 8, !dbg !462, !tbaa !64, !alias.scope !113, !noalias !116 %40 = sub i64 %.stop_ptr8.unbox, %.unbox9, !dbg !462 %41 = add i64 1, %40, !dbg !464 %"[2]_ptr7.stop_ptr" = getelementptr inbounds i8, ptr addrspace(11) %"[2]_ptr7", i32 8, !dbg !465 %"[2]_ptr7.stop_ptr.unbox" = load i64, ptr addrspace(11) %"[2]_ptr7.stop_ptr", align 8, !dbg !471, !tbaa !64, !alias.scope !113, !noalias !116 %"[2]_ptr7.unbox" = load i64, ptr addrspace(11) %"[2]_ptr7", align 8, !dbg !471, !tbaa !64, !alias.scope !113, !noalias !116 %42 = sub i64 %"[2]_ptr7.stop_ptr.unbox", %"[2]_ptr7.unbox", !dbg !471 %43 = add i64 1, %42, !dbg !473 %44 = getelementptr inbounds i8, ptr addrspace(11) %"src::ReshapedArray", i32 8, !dbg !474 %.stop_ptr10 = getelementptr inbounds i8, ptr addrspace(11) %44, i32 8, !dbg !480 %.stop_ptr10.unbox = load i64, ptr addrspace(11) %.stop_ptr10, align 8, !dbg !486, !tbaa !64, !alias.scope !113, !noalias !116 %.unbox11 = load i64, ptr addrspace(11) %44, align 8, !dbg !486, !tbaa !64, !alias.scope !113, !noalias !116 %45 = sub i64 %.stop_ptr10.unbox, %.unbox11, !dbg !486 %46 = add i64 1, %45, !dbg !488 %47 = icmp slt i64 %46, 0, !dbg !489 %ifelse_cond12 = xor i1 %47, true, !dbg !494 %48 = select i1 %ifelse_cond12, i64 %46, i64 0, !dbg !494 %49 = icmp sle i64 1, %41, !dbg !495 %50 = and i1 true, %49, !dbg !510 %51 = icmp sle i64 1, %43, !dbg !495 %52 = and i1 true, %51, !dbg !510 %53 = getelementptr inbounds i8, ptr %"new::Tuple", i32 0, !dbg !499 %54 = zext i1 %50 to i8, !dbg !499 store i8 %54, ptr %53, align 1, !dbg !499, !tbaa !280, !alias.scope !282, !noalias !283 %55 = getelementptr inbounds i8, ptr %"new::Tuple", i32 1, !dbg !499 %56 = zext i1 %52 to i8, !dbg !499 store i8 %56, ptr %55, align 1, !dbg !499, !tbaa !280, !alias.scope !282, !noalias !283 br label %L74, !dbg !499 L74: ; preds = %L89, %L47 %value_phi = phi i64 [ 1, %L47 ], [ %value_phi16, %L89 ] %value_phi13 = phi i64 [ 1, %L47 ], [ %value_phi17, %L89 ] %value_phi14 = phi i8 [ 1, %L47 ], [ %62, %L89 ] %57 = sub i64 %value_phi, 1, !dbg !511 %boundscheck = icmp ult i64 %57, 2, !dbg !511 br i1 %boundscheck, label %pass, label %fail, !dbg !511 L81: ; preds = %pass br label %L84, !dbg !517 L82: ; preds = %pass %58 = add i64 %value_phi13, 1, !dbg !520 br label %L84, !dbg !517 L84: ; preds = %L82, %L81 %value_phi16 = phi i64 [ %58, %L82 ], [ undef, %L81 ] %value_phi17 = phi i64 [ %58, %L82 ], [ undef, %L81 ] %value_phi18 = phi i8 [ 1, %L81 ], [ 0, %L82 ] %59 = trunc i8 %value_phi18 to i1, !dbg !519 %60 = xor i1 %59, true, !dbg !519 %61 = xor i1 %60, true, !dbg !519 br i1 %61, label %L90, label %L89, !dbg !519 L89: ; preds = %L84 %62 = zext i1 %244 to i8 br label %L74, !dbg !519 L90: ; preds = %L84 br label %L91, !dbg !519 L91: ; preds = %L90 br label %L92, !dbg !514 L92: ; preds = %L91 br label %L93, !dbg !514 L93: ; preds = %L92 %63 = xor i1 %244, true, !dbg !522 %64 = xor i1 %63, true, !dbg !500 br i1 %64, label %L96, label %L95, !dbg !500 L95: ; preds = %L93 br label %L97, !dbg !517 L96: ; preds = %L93 br label %L97, !dbg !517 L97: ; preds = %L96, %L95 %value_phi19 = phi i8 [ 1, %L95 ], [ 0, %L96 ] %65 = trunc i8 %value_phi19 to i1, !dbg !524 %66 = xor i1 %65, true, !dbg !524 br i1 %66, label %L100, label %L99, !dbg !524 L99: ; preds = %L97 br label %L112, !dbg !517 L100: ; preds = %L97 %67 = icmp slt i64 %48, 1, !dbg !525 %68 = xor i1 %67, true, !dbg !530 br i1 %68, label %L103, label %L102, !dbg !530 L102: ; preds = %L100 br label %L104, !dbg !533 L103: ; preds = %L100 br label %L104, !dbg !533 L104: ; preds = %L103, %L102 %value_phi138 = phi i8 [ 1, %L102 ], [ 0, %L103 ] %69 = trunc i8 %value_phi138 to i1, !dbg !536 %70 = xor i1 %69, true, !dbg !536 br i1 %70, label %L107, label %L106, !dbg !536 L106: ; preds = %L104 br label %L108, !dbg !533 L107: ; preds = %L104 br label %L108, !dbg !533 L108: ; preds = %L107, %L106 %value_phi139 = phi i8 [ 1, %L106 ], [ 0, %L107 ] %71 = trunc i8 %value_phi139 to i1, !dbg !537 %72 = xor i1 %71, true, !dbg !537 br i1 %72, label %L111, label %L110, !dbg !537 L110: ; preds = %L108 br label %L112, !dbg !517 L111: ; preds = %L108 br label %L112, !dbg !517 L112: ; preds = %L111, %L110, %L99 %value_phi20 = phi i8 [ 1, %L99 ], [ 1, %L110 ], [ 0, %L111 ] %73 = trunc i8 %value_phi20 to i1, !dbg !538 %74 = xor i1 %73, true, !dbg !538 br i1 %74, label %L115, label %L114, !dbg !538 L114: ; preds = %L112 br label %L116, !dbg !517 L115: ; preds = %L112 br label %L116, !dbg !517 L116: ; preds = %L115, %L114 %value_phi21 = phi i8 [ 1, %L114 ], [ 0, %L115 ] %value_phi22 = phi i64 [ 1, %L115 ], [ undef, %L114 ] %value_phi23 = phi i64 [ 1, %L115 ], [ undef, %L114 ] %value_phi24 = phi i64 [ 1, %L115 ], [ undef, %L114 ] %value_phi25 = phi i64 [ 1, %L115 ], [ undef, %L114 ] %value_phi26 = phi i64 [ 1, %L115 ], [ undef, %L114 ] %value_phi27 = phi i64 [ 1, %L115 ], [ undef, %L114 ] %value_phi28 = phi i64 [ 1, %L115 ], [ undef, %L114 ] %value_phi29 = phi i64 [ 1, %L115 ], [ undef, %L114 ] br label %L126, !dbg !507 L126: ; preds = %L116 %75 = trunc i8 %value_phi21 to i1, !dbg !509 %76 = xor i1 %75, true, !dbg !509 %77 = xor i1 %76, true, !dbg !509 br i1 %77, label %L408, label %L126.L128_crit_edge, !dbg !509 L126.L128_crit_edge: ; preds = %L126 br label %L128, !dbg !517 L128: ; preds = %L126.L128_crit_edge, %L407 %value_phi30 = phi i64 [ %value_phi22, %L126.L128_crit_edge ], [ %value_phi117, %L407 ] %value_phi31 = phi i64 [ %value_phi23, %L126.L128_crit_edge ], [ %value_phi113, %L407 ] %value_phi32 = phi i64 [ %value_phi24, %L126.L128_crit_edge ], [ %value_phi116, %L407 ] %value_phi33 = phi i64 [ %value_phi25, %L126.L128_crit_edge ], [ %value_phi114, %L407 ] %value_phi34 = phi i64 [ %value_phi26, %L126.L128_crit_edge ], [ %value_phi112, %L407 ] %value_phi35 = phi i64 [ %value_phi27, %L126.L128_crit_edge ], [ %value_phi119, %L407 ] %value_phi36 = phi i64 [ %value_phi28, %L126.L128_crit_edge ], [ %value_phi118, %L407 ] %value_phi37 = phi i64 [ %value_phi29, %L126.L128_crit_edge ], [ %value_phi115, %L407 ] br i1 false, label %L157, label %L138, !dbg !539 L138: ; preds = %L128 %78 = getelementptr inbounds i8, ptr %"new::Tuple38", i32 0, !dbg !539 store i64 %value_phi30, ptr %78, align 8, !dbg !539, !tbaa !280, !alias.scope !282, !noalias !283 %79 = getelementptr inbounds i8, ptr addrspace(11) %"src::ReshapedArray", i32 8, !dbg !542 %.stop_ptr39 = getelementptr inbounds i8, ptr addrspace(11) %79, i32 8, !dbg !550 %.stop_ptr39.unbox = load i64, ptr addrspace(11) %.stop_ptr39, align 8, !dbg !556, !tbaa !64, !alias.scope !113, !noalias !116 %.unbox40 = load i64, ptr addrspace(11) %79, align 8, !dbg !556, !tbaa !64, !alias.scope !113, !noalias !116 %80 = sub i64 %.stop_ptr39.unbox, %.unbox40, !dbg !556 %81 = add i64 1, %80, !dbg !558 %82 = icmp slt i64 %81, 0, !dbg !559 %ifelse_cond41 = xor i1 %82, true, !dbg !564 %83 = select i1 %ifelse_cond41, i64 %81, i64 0, !dbg !564 %84 = sub i64 %value_phi30, 1, !dbg !565 %85 = icmp ult i64 %84, %83, !dbg !567 %86 = xor i1 %85, true, !dbg !549 br i1 %86, label %L154, label %L153, !dbg !549 L153: ; preds = %L138 br label %L156, !dbg !549 L154: ; preds = %L138 %87 = getelementptr inbounds i8, ptr %3, i32 0, !dbg !549 store ptr addrspace(10) %8, ptr %87, align 8, !dbg !549 %88 = addrspacecast ptr %"new::Tuple38" to ptr addrspace(11), !dbg !549 call void @julia_throw_boundserror_173655(ptr addrspace(11) nocapture readonly %"src::ReshapedArray", ptr nocapture readonly %3, ptr addrspace(11) nocapture readonly %88) #67, !dbg !549 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____1_4), !dbg !549 unreachable, !dbg !549 L156: ; preds = %L153 br label %L157, !dbg !549 L157: ; preds = %L156, %L128 %89 = sub i64 %value_phi30, 1, !dbg !568 %90 = add i64 %89, 1, !dbg !570 br i1 false, label %L178, label %L162, !dbg !571 L162: ; preds = %L157 %91 = getelementptr inbounds i8, ptr %"new::Tuple42", i32 0, !dbg !571 store i64 %90, ptr %91, align 8, !dbg !571, !tbaa !280, !alias.scope !282, !noalias !283 %92 = getelementptr inbounds i8, ptr addrspace(11) %"src::ReshapedArray", i32 8, !dbg !574 %.stop_ptr43 = getelementptr inbounds i8, ptr addrspace(11) %92, i32 8, !dbg !580 %.stop_ptr43.unbox = load i64, ptr addrspace(11) %.stop_ptr43, align 8, !dbg !589, !tbaa !64, !alias.scope !113, !noalias !116 %.unbox44 = load i64, ptr addrspace(11) %92, align 8, !dbg !589, !tbaa !64, !alias.scope !113, !noalias !116 %93 = sub i64 %.stop_ptr43.unbox, %.unbox44, !dbg !589 %94 = add i64 1, %93, !dbg !591 %95 = sub i64 %90, 1, !dbg !592 %96 = icmp ult i64 %95, %94, !dbg !594 %97 = xor i1 %96, true, !dbg !579 br i1 %97, label %L175, label %L174, !dbg !579 L174: ; preds = %L162 br label %L177, !dbg !579 L175: ; preds = %L162 %98 = getelementptr inbounds i8, ptr %2, i32 0, !dbg !579 store ptr addrspace(10) %8, ptr %98, align 8, !dbg !579 %99 = addrspacecast ptr %"new::Tuple42" to ptr addrspace(11), !dbg !579 call void @julia_throw_boundserror_173456(ptr addrspace(11) nocapture readonly %"src::ReshapedArray", ptr nocapture readonly %2, ptr addrspace(11) nocapture readonly %99) #67, !dbg !579 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____1_4), !dbg !579 unreachable, !dbg !579 L177: ; preds = %L174 br label %L178, !dbg !579 L178: ; preds = %L177, %L157 %100 = getelementptr inbounds i8, ptr addrspace(11) %"src::ReshapedArray", i32 24, !dbg !595 %.unbox45 = load i64, ptr addrspace(11) %100, align 8, !dbg !599, !tbaa !64, !alias.scope !113, !noalias !116 %101 = add i64 %.unbox45, %90, !dbg !599 br i1 false, label %L195, label %L183, !dbg !600 L183: ; preds = %L178 %102 = sub i64 %101, 1, !dbg !602 %103 = addrspacecast ptr addrspace(10) %8 to ptr addrspace(11), !dbg !605 %.size_ptr = getelementptr inbounds i8, ptr addrspace(11) %103, i32 16, !dbg !605 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %.size, ptr addrspace(11) align 8 %.size_ptr, i64 8, i1 false), !dbg !605, !tbaa !277, !alias.scope !278, !noalias !279 %bitcast = load i64, ptr %.size, align 8, !dbg !602, !tbaa !280, !alias.scope !282, !noalias !283 %104 = icmp ult i64 %102, %bitcast, !dbg !602 %105 = xor i1 %104, true, !dbg !604 br i1 %105, label %L191, label %L190, !dbg !604 L190: ; preds = %L183 br label %L194, !dbg !604 L191: ; preds = %L183 %106 = getelementptr inbounds i8, ptr %"new::Tuple131", i32 0, !dbg !604 store i64 %101, ptr %106, align 8, !dbg !604, !tbaa !280, !alias.scope !282, !noalias !283 %107 = addrspacecast ptr %"new::Tuple131" to ptr addrspace(11), !dbg !604 call void @julia_throw_boundserror_173452(ptr addrspace(10) %8, ptr addrspace(11) nocapture readonly %107) #67, !dbg !604 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____1_4), !dbg !604 unreachable, !dbg !604 L194: ; preds = %L190 br label %L195, !dbg !604 L195: ; preds = %L194, %L178 %108 = addrspacecast ptr addrspace(10) %8 to ptr addrspace(11), !dbg !608 %109 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %108, i32 0, i32 0, !dbg !608 %memoryref_data = load ptr, ptr addrspace(11) %109, align 8, !dbg !608, !tbaa !285, !alias.scope !161, !noalias !162 %110 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %108, i32 0, i32 1, !dbg !608 %memoryref_mem = load ptr addrspace(10), ptr addrspace(11) %110, align 8, !dbg !608, !tbaa !285, !alias.scope !161, !noalias !162, !dereferenceable_or_null !124, !align !122 %111 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data, 0, !dbg !608 %.ref = insertvalue { ptr, ptr addrspace(10) } %111, ptr addrspace(10) %memoryref_mem, 1, !dbg !608 %memoryref_offset = sub i64 %101, 1, !dbg !608 %112 = addrspacecast ptr addrspace(10) %memoryref_mem to ptr addrspace(11), !dbg !608 %113 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %112, i32 0, i32 0, !dbg !608 %memory_len = load i64, ptr addrspace(11) %113, align 8, !dbg !608, !tbaa !163, !range !609, !alias.scope !161, !noalias !162 %114 = add nuw i64 %memory_len, %memory_len, !dbg !608 %115 = add i64 %memoryref_offset, %memory_len, !dbg !608 %memoryref_ovflw = icmp uge i64 %115, %114, !dbg !608 %memoryref_byteoffset = mul i64 %memoryref_offset, 8, !dbg !608 %memoryref_data_byteoffset = getelementptr i8, ptr %memoryref_data, i64 %memoryref_byteoffset, !dbg !608 %116 = addrspacecast ptr addrspace(10) %memoryref_mem to ptr addrspace(11), !dbg !608 %117 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %116, i32 0, i32 0, !dbg !608 %memory_len46 = load i64, ptr addrspace(11) %117, align 8, !dbg !608, !tbaa !163, !range !609, !alias.scope !161, !noalias !162 %118 = addrspacecast ptr addrspace(10) %memoryref_mem to ptr addrspace(11), !dbg !608 %memory_data_ptr = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %118, i32 0, i32 1, !dbg !608 %memory_data = load ptr, ptr addrspace(11) %memory_data_ptr, align 8, !dbg !608, !tbaa !158, !alias.scope !161, !noalias !162, !nonnull !0 %119 = ptrtoint ptr %memory_data to i64, !dbg !608 %120 = ptrtoint ptr %memoryref_data_byteoffset to i64, !dbg !608 %121 = sub i64 %120, %119, !dbg !608 %memoryref_bytelen = mul nuw nsw i64 %memory_len46, 8, !dbg !608 %memoryref_isinbounds = icmp ult i64 %121, %memoryref_bytelen, !dbg !608 %122 = xor i1 %memoryref_ovflw, true, !dbg !608 %"memoryref_isinbounds¬ovflw" = and i1 %122, %memoryref_isinbounds, !dbg !608 br i1 %"memoryref_isinbounds¬ovflw", label %idxend, label %oob, !dbg !608 L199: ; preds = %load br label %L200, !dbg !608 L200: ; preds = %L199 br label %L201, !dbg !608 L201: ; preds = %L200 br i1 false, label %L235, label %L203, !dbg !610 L203: ; preds = %L201 %123 = getelementptr inbounds i8, ptr %"new::Tuple51", i32 0, !dbg !610 store i64 %value_phi31, ptr %123, align 8, !dbg !610, !tbaa !280, !alias.scope !282, !noalias !283 %124 = getelementptr inbounds i8, ptr %"new::Tuple51", i32 8, !dbg !610 store i64 %value_phi32, ptr %124, align 8, !dbg !610, !tbaa !280, !alias.scope !282, !noalias !283 %125 = getelementptr inbounds i8, ptr addrspace(11) %"dest::SubArray", i32 8, !dbg !616 %"[2]_ptr52" = getelementptr inbounds i8, ptr addrspace(11) %125, i32 16, !dbg !617 %.stop_ptr53 = getelementptr inbounds i8, ptr addrspace(11) %125, i32 8, !dbg !620 %.stop_ptr53.unbox = load i64, ptr addrspace(11) %.stop_ptr53, align 8, !dbg !626, !tbaa !64, !alias.scope !113, !noalias !116 %.unbox54 = load i64, ptr addrspace(11) %125, align 8, !dbg !626, !tbaa !64, !alias.scope !113, !noalias !116 %126 = sub i64 %.stop_ptr53.unbox, %.unbox54, !dbg !626 %127 = add i64 1, %126, !dbg !628 %"[2]_ptr52.stop_ptr" = getelementptr inbounds i8, ptr addrspace(11) %"[2]_ptr52", i32 8, !dbg !629 %"[2]_ptr52.stop_ptr.unbox" = load i64, ptr addrspace(11) %"[2]_ptr52.stop_ptr", align 8, !dbg !635, !tbaa !64, !alias.scope !113, !noalias !116 %"[2]_ptr52.unbox" = load i64, ptr addrspace(11) %"[2]_ptr52", align 8, !dbg !635, !tbaa !64, !alias.scope !113, !noalias !116 %128 = sub i64 %"[2]_ptr52.stop_ptr.unbox", %"[2]_ptr52.unbox", !dbg !635 %129 = add i64 1, %128, !dbg !637 br label %L216, !dbg !637 L216: ; preds = %L203 %130 = sub i64 %value_phi31, 1, !dbg !638 %131 = icmp ult i64 %130, %127, !dbg !642 br label %L221, !dbg !642 L221: ; preds = %L216 %132 = sub i64 %value_phi32, 1, !dbg !643 %133 = icmp ult i64 %132, %129, !dbg !646 %134 = and i1 %133, true, !dbg !647 br label %L227, !dbg !645 L227: ; preds = %L221 %135 = and i1 %131, %134, !dbg !648 br label %L229, !dbg !640 L229: ; preds = %L227 br label %L230, !dbg !640 L230: ; preds = %L229 %136 = xor i1 %135, true, !dbg !619 br i1 %136, label %L232, label %L231, !dbg !619 L231: ; preds = %L230 br label %L234, !dbg !619 L232: ; preds = %L230 %137 = getelementptr inbounds i8, ptr %1, i32 0, !dbg !619 store ptr addrspace(10) %6, ptr %137, align 8, !dbg !619 %138 = addrspacecast ptr %"new::Tuple51" to ptr addrspace(11), !dbg !619 call void @julia_throw_boundserror_173651(ptr addrspace(11) nocapture readonly %"dest::SubArray", ptr nocapture readonly %1, ptr addrspace(11) nocapture readonly %138) #67, !dbg !619 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____1_4), !dbg !619 unreachable, !dbg !619 L234: ; preds = %L231 br label %L235, !dbg !619 L235: ; preds = %L234, %L201 %139 = getelementptr inbounds i8, ptr addrspace(11) %"dest::SubArray", i32 8, !dbg !649 %140 = sub i64 %value_phi31, 1, !dbg !651 %.unbox55 = load i64, ptr addrspace(11) %139, align 8, !dbg !659, !tbaa !64, !alias.scope !113, !noalias !116 %141 = add i64 %.unbox55, %140, !dbg !659 br i1 false, label %L258, label %L243, !dbg !660 L243: ; preds = %L235 %142 = icmp slt i64 0, %value_phi31, !dbg !661 %143 = xor i1 %142, true, !dbg !663 br i1 %143, label %L252, label %L245, !dbg !663 L245: ; preds = %L243 %.stop_ptr56 = getelementptr inbounds i8, ptr addrspace(11) %139, i32 8, !dbg !665 %.stop_ptr56.unbox = load i64, ptr addrspace(11) %.stop_ptr56, align 8, !dbg !666, !tbaa !64, !alias.scope !113, !noalias !116 %144 = icmp sle i64 %141, %.stop_ptr56.unbox, !dbg !666 %145 = xor i1 %144, true, !dbg !663 br i1 %145, label %L251, label %L248, !dbg !663 L248: ; preds = %L245 %.unbox57 = load i64, ptr addrspace(11) %139, align 8, !dbg !667, !tbaa !64, !alias.scope !113, !noalias !116 %146 = icmp sle i64 %.unbox57, %141, !dbg !667 %147 = zext i1 %146 to i8, !dbg !517 br label %L253, !dbg !517 L251: ; preds = %L245 br label %L253, !dbg !517 L252: ; preds = %L243 br label %L253, !dbg !517 L253: ; preds = %L252, %L251, %L248 %value_phi58 = phi i8 [ %147, %L248 ], [ 0, %L251 ], [ 0, %L252 ] %148 = trunc i8 %value_phi58 to i1, !dbg !660 %149 = xor i1 %148, true, !dbg !660 br i1 %149, label %L256, label %L255, !dbg !660 L255: ; preds = %L253 br label %L258, !dbg !660 L256: ; preds = %L253 call void @julia_throw_boundserror_173647(ptr addrspace(11) nocapture readonly %139, i64 signext %value_phi31) #67, !dbg !660 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____1_4), !dbg !660 unreachable, !dbg !660 L258: ; preds = %L255, %L235 br label %L259, !dbg !660 L259: ; preds = %L258 br label %L260, !dbg !660 L260: ; preds = %L259 %"[2]_ptr59" = getelementptr inbounds i8, ptr addrspace(11) %139, i32 16, !dbg !670 %"[3]_ptr" = getelementptr inbounds i8, ptr addrspace(11) %139, i32 32, !dbg !670 %150 = sub i64 %value_phi32, 1, !dbg !672 %"[2]_ptr59.unbox" = load i64, ptr addrspace(11) %"[2]_ptr59", align 8, !dbg !676, !tbaa !64, !alias.scope !113, !noalias !116 %151 = add i64 %"[2]_ptr59.unbox", %150, !dbg !676 br i1 false, label %L282, label %L267, !dbg !677 L267: ; preds = %L260 %152 = icmp slt i64 0, %value_phi32, !dbg !678 %153 = xor i1 %152, true, !dbg !680 br i1 %153, label %L276, label %L269, !dbg !680 L269: ; preds = %L267 %"[2]_ptr59.stop_ptr" = getelementptr inbounds i8, ptr addrspace(11) %"[2]_ptr59", i32 8, !dbg !681 %"[2]_ptr59.stop_ptr.unbox" = load i64, ptr addrspace(11) %"[2]_ptr59.stop_ptr", align 8, !dbg !682, !tbaa !64, !alias.scope !113, !noalias !116 %154 = icmp sle i64 %151, %"[2]_ptr59.stop_ptr.unbox", !dbg !682 %155 = xor i1 %154, true, !dbg !680 br i1 %155, label %L275, label %L272, !dbg !680 L272: ; preds = %L269 %"[2]_ptr59.unbox60" = load i64, ptr addrspace(11) %"[2]_ptr59", align 8, !dbg !683, !tbaa !64, !alias.scope !113, !noalias !116 %156 = icmp sle i64 %"[2]_ptr59.unbox60", %151, !dbg !683 %157 = zext i1 %156 to i8, !dbg !517 br label %L277, !dbg !517 L275: ; preds = %L269 br label %L277, !dbg !517 L276: ; preds = %L267 br label %L277, !dbg !517 L277: ; preds = %L276, %L275, %L272 %value_phi61 = phi i8 [ %157, %L272 ], [ 0, %L275 ], [ 0, %L276 ] %158 = trunc i8 %value_phi61 to i1, !dbg !677 %159 = xor i1 %158, true, !dbg !677 br i1 %159, label %L280, label %L279, !dbg !677 L279: ; preds = %L277 br label %L282, !dbg !677 L280: ; preds = %L277 call void @julia_throw_boundserror_173647(ptr addrspace(11) nocapture readonly %"[2]_ptr59", i64 signext %value_phi32) #67, !dbg !677 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____1_4), !dbg !677 unreachable, !dbg !677 L282: ; preds = %L279, %L260 br label %L283, !dbg !677 L283: ; preds = %L282 br label %L284, !dbg !677 L284: ; preds = %L283 br label %L285, !dbg !677 L285: ; preds = %L284 br label %L286, !dbg !677 L286: ; preds = %L285 br i1 false, label %L324, label %L289, !dbg !685 L289: ; preds = %L286 %160 = getelementptr inbounds i8, ptr %"new::Tuple62", i32 0, !dbg !685 store i64 %141, ptr %160, align 8, !dbg !685, !tbaa !280, !alias.scope !282, !noalias !283 %161 = getelementptr inbounds i8, ptr %"new::Tuple62", i32 8, !dbg !685 store i64 %151, ptr %161, align 8, !dbg !685, !tbaa !280, !alias.scope !282, !noalias !283 %162 = getelementptr inbounds i8, ptr %"new::Tuple62", i32 16, !dbg !685 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %162, ptr addrspace(11) align 8 %"[3]_ptr", i64 8, i1 false), !dbg !685, !tbaa !277, !alias.scope !378, !noalias !379 %163 = addrspacecast ptr addrspace(10) %6 to ptr addrspace(11), !dbg !689 %.size_ptr63 = getelementptr inbounds i8, ptr addrspace(11) %163, i32 16, !dbg !689 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %.size64, ptr addrspace(11) align 8 %.size_ptr63, i64 24, i1 false), !dbg !689, !tbaa !277, !alias.scope !278, !noalias !279 %".size64[2]_ptr" = getelementptr inbounds i8, ptr %.size64, i32 8, !dbg !693 %".size64[3]_ptr" = getelementptr inbounds i8, ptr %.size64, i32 16, !dbg !693 br label %L298, !dbg !693 L298: ; preds = %L289 %164 = sub i64 %141, 1, !dbg !695 %bitcast65 = load i64, ptr %.size64, align 8, !dbg !698, !tbaa !280, !alias.scope !282, !noalias !283 %165 = icmp ult i64 %164, %bitcast65, !dbg !702 br label %L303, !dbg !702 L303: ; preds = %L298 %166 = sub i64 %151, 1, !dbg !703 %bitcast66 = load i64, ptr %".size64[2]_ptr", align 8, !dbg !706, !tbaa !280, !alias.scope !282, !noalias !283 %167 = icmp ult i64 %166, %bitcast66, !dbg !708 br label %L308, !dbg !708 L308: ; preds = %L303 %"[3]_ptr.unbox" = load i64, ptr addrspace(11) %"[3]_ptr", align 8, !dbg !709, !tbaa !64, !alias.scope !113, !noalias !116 %168 = sub i64 %"[3]_ptr.unbox", 1, !dbg !709 %bitcast67 = load i64, ptr %".size64[3]_ptr", align 8, !dbg !712, !tbaa !280, !alias.scope !282, !noalias !283 %169 = icmp ult i64 %168, %bitcast67, !dbg !714 %170 = and i1 %169, true, !dbg !715 br label %L314, !dbg !711 L314: ; preds = %L308 %171 = and i1 %167, %170, !dbg !716 br label %L316, !dbg !705 L316: ; preds = %L314 %172 = and i1 %165, %171, !dbg !717 br label %L318, !dbg !697 L318: ; preds = %L316 br label %L319, !dbg !697 L319: ; preds = %L318 %173 = xor i1 %172, true, !dbg !692 br i1 %173, label %L321, label %L320, !dbg !692 L320: ; preds = %L319 br label %L323, !dbg !692 L321: ; preds = %L319 %174 = addrspacecast ptr %"new::Tuple62" to ptr addrspace(11), !dbg !692 call void @julia_throw_boundserror_173448(ptr addrspace(10) %6, ptr addrspace(11) nocapture readonly %174) #67, !dbg !692 call void @ijl_error(ptr @_j_str__INTERNAL_ERROR___IR_Vali____1_4), !dbg !692 unreachable, !dbg !692 L323: ; preds = %L320 br label %L324, !dbg !692 L324: ; preds = %L323, %L286 %175 = addrspacecast ptr addrspace(10) %6 to ptr addrspace(11), !dbg !718 %176 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %175, i32 0, i32 0, !dbg !718 %memoryref_data72 = load ptr, ptr addrspace(11) %176, align 8, !dbg !718, !tbaa !285, !alias.scope !161, !noalias !162 %177 = getelementptr inbounds nuw { ptr, ptr addrspace(10) }, ptr addrspace(11) %175, i32 0, i32 1, !dbg !718 %memoryref_mem92 = load ptr addrspace(10), ptr addrspace(11) %177, align 8, !dbg !718, !tbaa !285, !alias.scope !161, !noalias !162, !dereferenceable_or_null !124, !align !122 %178 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data72, 0, !dbg !718 %.ref68 = insertvalue { ptr, ptr addrspace(10) } %178, ptr addrspace(10) %memoryref_mem92, 1, !dbg !718 %179 = addrspacecast ptr addrspace(10) %6 to ptr addrspace(11), !dbg !720 %.size_ptr69 = getelementptr inbounds i8, ptr addrspace(11) %179, i32 16, !dbg !720 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %.size70, ptr addrspace(11) align 8 %.size_ptr69, i64 24, i1 false), !dbg !720, !tbaa !277, !alias.scope !278, !noalias !279 %".size70[2]_ptr" = getelementptr inbounds i8, ptr %.size70, i32 8, !dbg !726 %.size70.unbox = load i64, ptr %.size70, align 8, !dbg !728, !tbaa !280, !alias.scope !282, !noalias !283 %180 = mul i64 1, %.size70.unbox, !dbg !728 %181 = sub i64 %141, 1, !dbg !734 %182 = mul i64 %181, 1, !dbg !737 %183 = add i64 1, %182, !dbg !738 %".size70[2]_ptr.unbox" = load i64, ptr %".size70[2]_ptr", align 8, !dbg !739, !tbaa !280, !alias.scope !282, !noalias !283 %184 = mul i64 %180, %".size70[2]_ptr.unbox", !dbg !739 %185 = sub i64 %151, 1, !dbg !742 %186 = mul i64 %185, %180, !dbg !744 %187 = add i64 %183, %186, !dbg !745 %"[3]_ptr.unbox71" = load i64, ptr addrspace(11) %"[3]_ptr", align 8, !dbg !746, !tbaa !64, !alias.scope !113, !noalias !116 %188 = sub i64 %"[3]_ptr.unbox71", 1, !dbg !746 %189 = mul i64 %188, %184, !dbg !749 %190 = add i64 %187, %189, !dbg !750 %memoryref_offset74 = sub i64 %190, 1, !dbg !719 %191 = addrspacecast ptr addrspace(10) %memoryref_mem92 to ptr addrspace(11), !dbg !719 %192 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %191, i32 0, i32 0, !dbg !719 %memory_len75 = load i64, ptr addrspace(11) %192, align 8, !dbg !719, !tbaa !163, !range !609, !alias.scope !161, !noalias !162 %193 = add nuw i64 %memory_len75, %memory_len75, !dbg !719 %194 = add i64 %memoryref_offset74, %memory_len75, !dbg !719 %memoryref_ovflw76 = icmp uge i64 %194, %193, !dbg !719 %memoryref_byteoffset77 = mul i64 %memoryref_offset74, 8, !dbg !719 %memoryref_data_byteoffset78 = getelementptr i8, ptr %memoryref_data72, i64 %memoryref_byteoffset77, !dbg !719 %195 = addrspacecast ptr addrspace(10) %memoryref_mem92 to ptr addrspace(11), !dbg !719 %196 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %195, i32 0, i32 0, !dbg !719 %memory_len79 = load i64, ptr addrspace(11) %196, align 8, !dbg !719, !tbaa !163, !range !609, !alias.scope !161, !noalias !162 %197 = addrspacecast ptr addrspace(10) %memoryref_mem92 to ptr addrspace(11), !dbg !719 %memory_data_ptr80 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %197, i32 0, i32 1, !dbg !719 %memory_data81 = load ptr, ptr addrspace(11) %memory_data_ptr80, align 8, !dbg !719, !tbaa !158, !alias.scope !161, !noalias !162, !nonnull !0 %198 = ptrtoint ptr %memory_data81 to i64, !dbg !719 %199 = ptrtoint ptr %memoryref_data_byteoffset78 to i64, !dbg !719 %200 = sub i64 %199, %198, !dbg !719 %memoryref_bytelen82 = mul nuw nsw i64 %memory_len79, 8, !dbg !719 %memoryref_isinbounds83 = icmp ult i64 %200, %memoryref_bytelen82, !dbg !719 %201 = xor i1 %memoryref_ovflw76, true, !dbg !719 %"memoryref_isinbounds¬ovflw84" = and i1 %201, %memoryref_isinbounds83, !dbg !719 br i1 %"memoryref_isinbounds¬ovflw84", label %idxend90, label %oob85, !dbg !719 L344: ; preds = %load95 br label %L345, !dbg !687 L345: ; preds = %L344 br label %L346, !dbg !687 L346: ; preds = %L345 br label %L347, !dbg !687 L347: ; preds = %L346 br label %L348, !dbg !687 L348: ; preds = %L347 %202 = icmp eq i64 %value_phi34, %41, !dbg !751 %203 = xor i1 %202, true, !dbg !759 %204 = xor i1 %203, true, !dbg !754 br i1 %204, label %L353, label %L351, !dbg !754 L351: ; preds = %L348 %205 = add i64 %value_phi35, 1, !dbg !760 br label %L357, !dbg !517 L353: ; preds = %L348 %206 = add i64 %value_phi37, 1, !dbg !762 %207 = icmp eq i64 %value_phi37, %43, !dbg !765 %208 = xor i1 %207, true, !dbg !768 %209 = zext i1 %208 to i8, !dbg !517 br label %L357, !dbg !517 L357: ; preds = %L353, %L351 %value_phi97 = phi i8 [ 1, %L351 ], [ %209, %L353 ] %value_phi98 = phi i64 [ %205, %L351 ], [ 1, %L353 ] %value_phi99 = phi i64 [ %value_phi36, %L351 ], [ %206, %L353 ] %value_phi100 = phi i64 [ %205, %L351 ], [ 1, %L353 ] %value_phi101 = phi i64 [ %value_phi36, %L351 ], [ %206, %L353 ] %210 = trunc i8 %value_phi97 to i1, !dbg !769 %211 = xor i1 %210, true, !dbg !769 br i1 %211, label %L364, label %L363, !dbg !769 L363: ; preds = %L357 br label %L365, !dbg !517 L364: ; preds = %L357 br label %L365, !dbg !517 L365: ; preds = %L364, %L363 %value_phi102 = phi i8 [ 0, %L363 ], [ 1, %L364 ] %value_phi103 = phi i64 [ %value_phi98, %L363 ], [ undef, %L364 ] %value_phi104 = phi i64 [ %value_phi99, %L363 ], [ undef, %L364 ] %value_phi105 = phi i64 [ %value_phi101, %L363 ], [ undef, %L364 ] %value_phi106 = phi i64 [ %value_phi101, %L363 ], [ undef, %L364 ] %value_phi107 = phi i64 [ %value_phi100, %L363 ], [ undef, %L364 ] %value_phi108 = phi i64 [ %value_phi100, %L363 ], [ undef, %L364 ] %212 = trunc i8 %value_phi102 to i1, !dbg !770 %213 = xor i1 %212, true, !dbg !770 br i1 %213, label %L374, label %L373, !dbg !770 L373: ; preds = %L365 br label %L389, !dbg !517 L374: ; preds = %L365 %214 = icmp eq i64 %value_phi33, %48, !dbg !771 %215 = xor i1 %214, true, !dbg !772 br i1 %215, label %L377, label %L376, !dbg !772 L376: ; preds = %L374 br label %L379, !dbg !533 L377: ; preds = %L374 %216 = add i64 %value_phi33, 1, !dbg !775 br label %L379, !dbg !533 L379: ; preds = %L377, %L376 %value_phi121 = phi i8 [ 1, %L376 ], [ 0, %L377 ] %value_phi122 = phi i64 [ %216, %L377 ], [ undef, %L376 ] %value_phi123 = phi i64 [ %216, %L377 ], [ undef, %L376 ] %217 = trunc i8 %value_phi121 to i1, !dbg !777 %218 = xor i1 %217, true, !dbg !777 br i1 %218, label %L384, label %L383, !dbg !777 L383: ; preds = %L379 br label %L385, !dbg !533 L384: ; preds = %L379 br label %L385, !dbg !533 L385: ; preds = %L384, %L383 %value_phi124 = phi i8 [ 1, %L383 ], [ 0, %L384 ] %219 = trunc i8 %value_phi124 to i1, !dbg !778 %220 = xor i1 %219, true, !dbg !778 br i1 %220, label %L388, label %L387, !dbg !778 L387: ; preds = %L385 br label %L389, !dbg !517 L388: ; preds = %L385 br label %L389, !dbg !517 L389: ; preds = %L388, %L387, %L373 %value_phi109 = phi i8 [ 1, %L373 ], [ 1, %L387 ], [ 0, %L388 ] %value_phi110 = phi i64 [ %value_phi122, %L388 ], [ undef, %L387 ], [ undef, %L373 ] %value_phi111 = phi i64 [ %value_phi123, %L388 ], [ undef, %L387 ], [ undef, %L373 ] %221 = trunc i8 %value_phi109 to i1, !dbg !533 %222 = xor i1 %221, true, !dbg !533 br i1 %222, label %L394, label %L393, !dbg !533 L393: ; preds = %L389 br label %L395, !dbg !533 L394: ; preds = %L389 br label %L395, !dbg !533 L395: ; preds = %L394, %L393 %value_phi112 = phi i64 [ %value_phi107, %L394 ], [ undef, %L393 ] %value_phi113 = phi i64 [ %value_phi103, %L394 ], [ undef, %L393 ] %value_phi114 = phi i64 [ %value_phi111, %L394 ], [ undef, %L393 ] %value_phi115 = phi i64 [ %value_phi105, %L394 ], [ undef, %L393 ] %value_phi116 = phi i64 [ %value_phi104, %L394 ], [ undef, %L393 ] %value_phi117 = phi i64 [ %value_phi110, %L394 ], [ undef, %L393 ] %value_phi118 = phi i64 [ %value_phi106, %L394 ], [ undef, %L393 ] %value_phi119 = phi i64 [ %value_phi108, %L394 ], [ undef, %L393 ] %value_phi120 = phi i8 [ 1, %L393 ], [ 0, %L394 ] br label %L405, !dbg !534 L405: ; preds = %L395 %223 = trunc i8 %value_phi120 to i1, !dbg !535 %224 = xor i1 %223, true, !dbg !535 %225 = xor i1 %224, true, !dbg !535 br i1 %225, label %L408, label %L407, !dbg !535 L407: ; preds = %L405 br label %L128, !dbg !517 L408: ; preds = %L405, %L126 call void @llvm.memcpy.p0.p11.i64(ptr align 8 %sret_return, ptr addrspace(11) align 8 %"dest::SubArray", i64 64, i1 false), !dbg !779, !tbaa !277, !alias.scope !378, !noalias !379 %226 = getelementptr inbounds i8, ptr %return_roots, i32 0, !dbg !779 store ptr addrspace(10) %6, ptr %226, align 8, !dbg !779, !tbaa !60, !alias.scope !341, !noalias !342 ret void, !dbg !779 L409: ; preds = %L11 %"-Core.BoundsError#173673" = load ptr, ptr @_Core_BoundsError_173673, align 8, !dbg !424, !tbaa !64, !alias.scope !113, !noalias !116, !nonnull !0, !dereferenceable !121, !align !122 %227 = addrspacecast ptr %"-Core.BoundsError#173673" to ptr addrspace(10), !dbg !424 %"+Core.BoundsError#173451" = load ptr, ptr @_Core_BoundsError_173451, align 8, !dbg !424, !tbaa !64, !alias.scope !113, !noalias !116, !nonnull !0, !dereferenceable !123, !align !124 %228 = addrspacecast ptr %"+Core.BoundsError#173451" to ptr addrspace(10), !dbg !424 %"+Main.Base.SubArray#173618" = load ptr, ptr @_Main_Base_SubArray_173618, align 8, !dbg !424, !tbaa !64, !alias.scope !113, !noalias !116, !nonnull !0, !dereferenceable !123, !align !124 %SubArray = ptrtoint ptr %"+Main.Base.SubArray#173618" to i64, !dbg !424 %229 = inttoptr i64 %SubArray to ptr, !dbg !424 %current_task140 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !424 %230 = addrspacecast ptr %229 to ptr addrspace(10), !dbg !424 %"box::SubArray" = call noalias nonnull align 8 dereferenceable(64) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task140, i64 64, ptr addrspace(10) %230) #68, !dbg !424 %231 = addrspacecast ptr addrspace(10) %"box::SubArray" to ptr addrspace(11), !dbg !424 %232 = getelementptr inbounds i8, ptr addrspace(11) %231, i32 0, !dbg !424 store atomic ptr addrspace(10) %6, ptr addrspace(11) %232 unordered, align 8, !dbg !424, !tbaa !210, !alias.scope !206, !noalias !207 %233 = getelementptr inbounds i8, ptr addrspace(11) %"dest::SubArray", i32 8, !dbg !424 %234 = getelementptr inbounds i8, ptr addrspace(11) %231, i32 8, !dbg !424 call void @llvm.memcpy.p11.p11.i64(ptr addrspace(11) align 8 %234, ptr addrspace(11) align 8 %233, i64 56, i1 false), !dbg !424, !tbaa !277, !alias.scope !338, !noalias !339 %"+Main.Base.LinearIndices#173674" = load ptr, ptr @_Main_Base_LinearIndices_173674, align 8, !dbg !424, !tbaa !64, !alias.scope !113, !noalias !116, !nonnull !0, !dereferenceable !123, !align !124 %LinearIndices = ptrtoint ptr %"+Main.Base.LinearIndices#173674" to i64, !dbg !424 %235 = inttoptr i64 %LinearIndices to ptr, !dbg !424 %current_task141 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !424 %236 = addrspacecast ptr %235 to ptr addrspace(10), !dbg !424 %"box::LinearIndices" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task141, i64 16, ptr addrspace(10) %236) #68, !dbg !424 %237 = addrspacecast ptr addrspace(10) %"box::LinearIndices" to ptr addrspace(11), !dbg !424 call void @llvm.memcpy.p11.p0.i64(ptr addrspace(11) align 8 %237, ptr align 8 %"new::LinearIndices", i64 16, i1 false), !dbg !424, !tbaa !277, !alias.scope !780, !noalias !781 %238 = call nonnull ptr addrspace(10) (ptr, ptr addrspace(10), ptr addrspace(10), ...) @julia.call2(ptr @ijl_invoke, ptr addrspace(10) %227, ptr addrspace(10) %228, ptr addrspace(10) %"box::SubArray", ptr addrspace(10) %"box::LinearIndices"), !dbg !424 %239 = addrspacecast ptr addrspace(10) %238 to ptr addrspace(12), !dbg !424 call void @ijl_throw(ptr addrspace(12) %239), !dbg !424 unreachable, !dbg !424 fail: ; preds = %L74 %240 = addrspacecast ptr %"new::Tuple" to ptr addrspace(11), !dbg !511 %"+Core.Tuple#173666" = load ptr, ptr @_Core_Tuple_173666, align 8, !dbg !511, !tbaa !64, !alias.scope !113, !noalias !116, !nonnull !0, !dereferenceable !123, !align !124 call void @ijl_bounds_error_unboxed_int(ptr addrspace(11) %240, ptr %"+Core.Tuple#173666", i64 %value_phi), !dbg !511 unreachable, !dbg !511 pass: ; preds = %L74 %241 = getelementptr inbounds i8, ptr %"new::Tuple", i64 %57, !dbg !511 %242 = trunc i8 %value_phi14 to i1, !dbg !782 %.unbox15 = load i8, ptr %241, align 1, !dbg !782, !tbaa !280, !range !784, !alias.scope !282, !noalias !283 %243 = trunc i8 %.unbox15 to i1, !dbg !782 %244 = and i1 %242, %243, !dbg !782 %245 = icmp eq i64 %value_phi13, 2, !dbg !785 %246 = xor i1 %245, true, !dbg !517 br i1 %246, label %L82, label %L81, !dbg !517 oob: ; preds = %L195 %"+Core.GenericMemoryRef#173429" = load ptr, ptr @_Core_GenericMemoryRef_173429, align 8, !dbg !608, !tbaa !64, !alias.scope !113, !noalias !116, !nonnull !0, !dereferenceable !123, !align !124 %GenericMemoryRef = ptrtoint ptr %"+Core.GenericMemoryRef#173429" to i64, !dbg !608 %247 = inttoptr i64 %GenericMemoryRef to ptr, !dbg !608 %current_task47 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !608 %248 = addrspacecast ptr %247 to ptr addrspace(10), !dbg !608 %"box::GenericMemoryRef" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task47, i64 16, ptr addrspace(10) %248) #68, !dbg !608 %249 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef" to ptr addrspace(11), !dbg !608 store { ptr, ptr addrspace(10) } %.ref, ptr addrspace(11) %249, align 8, !dbg !608, !tbaa !210, !alias.scope !206, !noalias !207 %250 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef" to ptr addrspace(12), !dbg !608 call void @ijl_bounds_error_int(ptr addrspace(12) %250, i64 %101), !dbg !608 unreachable, !dbg !608 idxend: ; preds = %L195 %251 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data_byteoffset, 0, !dbg !608 %memory_ref = insertvalue { ptr, ptr addrspace(10) } %251, ptr addrspace(10) %memoryref_mem, 1, !dbg !608 %252 = addrspacecast ptr addrspace(10) %memoryref_mem to ptr addrspace(11), !dbg !608 %253 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %252, i32 0, i32 0, !dbg !608 %memory_len48 = load i64, ptr addrspace(11) %253, align 8, !dbg !608, !tbaa !163, !range !609, !alias.scope !161, !noalias !162 %254 = icmp eq i64 %memory_len48, 0, !dbg !608 br i1 %254, label %oob49, label %load, !dbg !608 oob49: ; preds = %idxend %255 = addrspacecast ptr addrspace(10) %memoryref_mem to ptr addrspace(12), !dbg !608 call void @ijl_bounds_error_int(ptr addrspace(12) %255, i64 1), !dbg !608 unreachable, !dbg !608 load: ; preds = %idxend %256 = call ptr addrspace(13) @julia.gc_loaded(ptr addrspace(10) %memoryref_mem, ptr %memoryref_data), !dbg !608 %memoryref_data50 = getelementptr inbounds i8, ptr addrspace(13) %256, i64 %memoryref_byteoffset, !dbg !608 call void @llvm.memcpy.p0.p13.i64(ptr align 4 %0, ptr addrspace(13) align 4 %memoryref_data50, i64 8, i1 false), !dbg !608, !tbaa !277, !alias.scope !786, !noalias !781 br label %L199, !dbg !608 oob85: ; preds = %L324 %"+Core.GenericMemoryRef#17342986" = load ptr, ptr @_Core_GenericMemoryRef_173429, align 8, !dbg !719, !tbaa !64, !alias.scope !113, !noalias !116, !nonnull !0, !dereferenceable !123, !align !124 %GenericMemoryRef87 = ptrtoint ptr %"+Core.GenericMemoryRef#17342986" to i64, !dbg !719 %257 = inttoptr i64 %GenericMemoryRef87 to ptr, !dbg !719 %current_task88 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !719 %258 = addrspacecast ptr %257 to ptr addrspace(10), !dbg !719 %"box::GenericMemoryRef89" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task88, i64 16, ptr addrspace(10) %258) #68, !dbg !719 %259 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef89" to ptr addrspace(11), !dbg !719 store { ptr, ptr addrspace(10) } %.ref68, ptr addrspace(11) %259, align 8, !dbg !719, !tbaa !210, !alias.scope !206, !noalias !207 %260 = addrspacecast ptr addrspace(10) %"box::GenericMemoryRef89" to ptr addrspace(12), !dbg !719 call void @ijl_bounds_error_int(ptr addrspace(12) %260, i64 %190), !dbg !719 unreachable, !dbg !719 idxend90: ; preds = %L324 %261 = insertvalue { ptr, ptr addrspace(10) } zeroinitializer, ptr %memoryref_data_byteoffset78, 0, !dbg !719 %memory_ref91 = insertvalue { ptr, ptr addrspace(10) } %261, ptr addrspace(10) %memoryref_mem92, 1, !dbg !719 %262 = addrspacecast ptr addrspace(10) %memoryref_mem92 to ptr addrspace(11), !dbg !719 %263 = getelementptr inbounds nuw { i64, ptr }, ptr addrspace(11) %262, i32 0, i32 0, !dbg !719 %memory_len93 = load i64, ptr addrspace(11) %263, align 8, !dbg !719, !tbaa !163, !range !609, !alias.scope !161, !noalias !162 %264 = icmp eq i64 %memory_len93, 0, !dbg !719 br i1 %264, label %oob94, label %load95, !dbg !719 oob94: ; preds = %idxend90 %265 = addrspacecast ptr addrspace(10) %memoryref_mem92 to ptr addrspace(12), !dbg !719 call void @ijl_bounds_error_int(ptr addrspace(12) %265, i64 1), !dbg !719 unreachable, !dbg !719 load95: ; preds = %idxend90 %266 = call ptr addrspace(13) @julia.gc_loaded(ptr addrspace(10) %memoryref_mem92, ptr %memoryref_data72), !dbg !719 %memoryref_data96 = getelementptr inbounds i8, ptr addrspace(13) %266, i64 %memoryref_byteoffset77, !dbg !719 call void @llvm.memcpy.p13.p0.i64(ptr addrspace(13) align 4 %memoryref_data96, ptr align 4 %0, i64 8, i1 false), !dbg !719, !tbaa !277, !alias.scope !780, !noalias !781 br label %L344, !dbg !787 after_error: ; No predecessors! call void @llvm.trap(), !dbg !692 unreachable, !dbg !692 after_noret: ; No predecessors! call void @llvm.trap(), !dbg !692 unreachable, !dbg !692 after_error125: ; No predecessors! call void @llvm.trap(), !dbg !677 unreachable, !dbg !677 after_noret126: ; No predecessors! call void @llvm.trap(), !dbg !677 unreachable, !dbg !677 after_error127: ; No predecessors! call void @llvm.trap(), !dbg !660 unreachable, !dbg !660 after_noret128: ; No predecessors! call void @llvm.trap(), !dbg !660 unreachable, !dbg !660 after_error129: ; No predecessors! call void @llvm.trap(), !dbg !619 unreachable, !dbg !619 after_noret130: ; No predecessors! call void @llvm.trap(), !dbg !619 unreachable, !dbg !619 after_error132: ; No predecessors! call void @llvm.trap(), !dbg !604 unreachable, !dbg !604 after_noret133: ; No predecessors! call void @llvm.trap(), !dbg !604 unreachable, !dbg !604 after_error134: ; No predecessors! call void @llvm.trap(), !dbg !579 unreachable, !dbg !579 after_noret135: ; No predecessors! call void @llvm.trap(), !dbg !579 unreachable, !dbg !579 after_error136: ; No predecessors! call void @llvm.trap(), !dbg !549 unreachable, !dbg !549 after_noret137: ; No predecessors! call void @llvm.trap(), !dbg !549 unreachable, !dbg !549 after_throw: ; No predecessors! call void @llvm.trap(), !dbg !424 unreachable, !dbg !424 after_noret142: ; No predecessors! call void @llvm.trap(), !dbg !424 unreachable, !dbg !424 } expectLen=4 swiftself=false sret=Ptr{SubArray{ComplexF32, 2, Array{ComplexF32, 3}, Tuple{UnitRange{Int64}, UnitRange{Int64}, Int64}, false}} returnRoots=Ptr{@NamedTuple{var"1"}} mi.specTypes.parameters=svec(typeof(Base.copyto_unaliased!), IndexCartesian, SubArray{ComplexF32, 2, Array{ComplexF32, 3}, Tuple{UnitRange{Int64}, UnitRange{Int64}, Int64}, false}, IndexLinear, Base.ReshapedArray{ComplexF32, 2, SubArray{ComplexF32, 1, Vector{ComplexF32}, Tuple{UnitRange{Int64}}, true}, Tuple{}}) retRemoved=false parmsRemoved=UInt64[] Stacktrace: [1] julia_activity_rule(f::LLVM.Function) @ Enzyme.Compiler ~/.julia/packages/Enzyme/rsnI8/src/rules/activityrules.jl:48 [2] handle_compiled(state::Enzyme.Compiler.HandlerState, edges::Vector{Any}, run_enzyme::Bool, mode::Enzyme.API.CDerivativeMode, world::UInt64, method_table::Compiler.OverlayMethodTable, custom::Dict{String, LLVM.API.LLVMLinkage}, mod::LLVM.Module, mi::Core.MethodInstance, k_name::String, rettype::Type) @ Enzyme.Compiler ~/.julia/packages/Enzyme/rsnI8/src/compiler.jl:628 [3] set_module_types!(interp::Enzyme.Compiler.Interpreter.EnzymeInterpreter{Nothing}, mod::LLVM.Module, primalf::LLVM.Function, job::GPUCompiler.CompilerJob{Enzyme.Compiler.EnzymeTarget{GPUCompiler.NativeCompilerTarget}, Enzyme.Compiler.EnzymeCompilerParams{Enzyme.Compiler.PrimalCompilerParams}}, edges::Vector{Any}, run_enzyme::Bool, mode::Enzyme.API.CDerivativeMode) @ Enzyme.Compiler ~/.julia/packages/Enzyme/rsnI8/src/compiler.jl:1220 [4] compile_unhooked(output::Symbol, job::GPUCompiler.CompilerJob{Enzyme.Compiler.EnzymeTarget{GPUCompiler.NativeCompilerTarget}, Enzyme.Compiler.EnzymeCompilerParams{Enzyme.Compiler.PrimalCompilerParams}}) @ Enzyme.Compiler ~/.julia/packages/Enzyme/rsnI8/src/compiler.jl:4627 [5] compile(target::Symbol, job::GPUCompiler.CompilerJob; kwargs::@Kwargs{}) @ GPUCompiler ~/.julia/packages/GPUCompiler/Gp8bZ/src/driver.jl:67 [6] compile @ ~/.julia/packages/GPUCompiler/Gp8bZ/src/driver.jl:55 [inlined] [7] _thunk(job::GPUCompiler.CompilerJob{Enzyme.Compiler.EnzymeTarget{GPUCompiler.NativeCompilerTarget}, Enzyme.Compiler.EnzymeCompilerParams{Enzyme.Compiler.PrimalCompilerParams}}, postopt::Bool) @ Enzyme.Compiler ~/.julia/packages/Enzyme/rsnI8/src/compiler.jl:5960 [8] _thunk @ ~/.julia/packages/Enzyme/rsnI8/src/compiler.jl:5958 [inlined] [9] cached_compilation @ ~/.julia/packages/Enzyme/rsnI8/src/compiler.jl:6015 [inlined] [10] thunkbase(mi::Core.MethodInstance, World::UInt64, FA::Type{<:Annotation}, A::Type{<:Annotation}, TT::Type, Mode::Enzyme.API.CDerivativeMode, width::Int64, ModifiedBetween::NTuple{N, Bool} where N, ReturnPrimal::Bool, ShadowInit::Bool, ABI::Type, ErrIfFuncWritten::Bool, RuntimeActivity::Bool, StrongZero::Bool, edges::Vector{Any}) @ Enzyme.Compiler ~/.julia/packages/Enzyme/rsnI8/src/compiler.jl:6131 [11] thunk_generator(world::UInt64, source::Union{LineNumberNode, Method}, FA::Type, A::Type, TT::Type, Mode::Enzyme.API.CDerivativeMode, Width::Int64, ModifiedBetween::NTuple{N, Bool} where N, ReturnPrimal::Bool, ShadowInit::Bool, ABI::Type, ErrIfFuncWritten::Bool, RuntimeActivity::Bool, StrongZero::Bool, self::Any, fakeworld::Any, fa::Type, a::Type, tt::Type, mode::Type, width::Type, modifiedbetween::Type, returnprimal::Type, shadowinit::Type, abi::Type, erriffuncwritten::Type, runtimeactivity::Type, strongzero::Type) @ Enzyme.Compiler ~/.julia/packages/Enzyme/rsnI8/src/compiler.jl:6275 [12] autodiff_thunk(::ReverseModeSplit{true, true, false, false, 0, true, FFIABI, false, false, false}, ::Type{Const{typeof(EnzymeTestUtils.call_with_kwargs)}}, ::Type{Const}, ::Type{Const{@NamedTuple{}}}, ::Type{Const{typeof(SpeedyTransforms._fourier!)}}, ::Type{Duplicated{Array{ComplexF32, 3}}}, ::Type{Duplicated{Array{ComplexF32, 3}}}, ::Type{Duplicated{Field{Float32, 2, Matrix{Float32}, FullGaussianGrid{CPU{KernelAbstractions.CPU}, Vector{UnitRange{Int64}}, Vector{Int64}}}}}, ::Type{Const{SpectralTransform{Float32, CPU{KernelAbstractions.CPU}, Array, Spectrum{CPU{KernelAbstractions.CPU}, Vector{UnitRange{Int64}}, Vector{Int64}}, FullGaussianGrid{CPU{KernelAbstractions.CPU}, Vector{UnitRange{Int64}}, Vector{Int64}}, Vector{Float32}, Matrix{Int64}, Vector{ComplexF32}, Matrix{ComplexF32}, Array{ComplexF32, 3}, LowerTriangularMatrix{Float32, Vector{Float32}, Spectrum{CPU{KernelAbstractions.CPU}, Vector{UnitRange{Int64}}, Vector{Int64}}}, LowerTriangularArray{Float32, 2, Matrix{Float32}, Spectrum{CPU{KernelAbstractions.CPU}, Vector{UnitRange{Int64}}, Vector{Int64}}}}}}) @ Enzyme ~/.julia/packages/Enzyme/rsnI8/src/Enzyme.jl:1001 [13] macro expansion @ ~/.julia/packages/EnzymeTestUtils/JZTWO/src/test_reverse.jl:109 [inlined] [14] macro expansion @ /opt/julia/share/julia/stdlib/v1.14/Test/src/Test.jl:1961 [inlined] [15] test_reverse(::typeof(SpeedyTransforms._fourier!), ::Type, ::Tuple{Array{ComplexF32, 3}, UnionAll}, ::Vararg{Any}; rng::Random.TaskLocalRNG, fdm::FiniteDifferences.AdaptedFiniteDifferenceMethod{5, 1, FiniteDifferences.UnadaptedFiniteDifferenceMethod{7, 5}}, fkwargs::@NamedTuple{}, rtol::Float64, atol::Float64, testset_name::Nothing, runtime_activity::Bool, output_tangent::Nothing) @ EnzymeTestUtils ~/.julia/packages/EnzymeTestUtils/JZTWO/src/test_reverse.jl:88 [16] kwcall(::@NamedTuple{fdm::FiniteDifferences.AdaptedFiniteDifferenceMethod{5, 1, FiniteDifferences.UnadaptedFiniteDifferenceMethod{7, 5}}, rtol::Float64, atol::Float64}, ::typeof(test_reverse), ::Function, ::Type, ::Tuple{Array{ComplexF32, 3}, UnionAll}, ::Vararg{Any}) @ EnzymeTestUtils ~/.julia/packages/EnzymeTestUtils/JZTWO/src/test_reverse.jl:70 [17] macro expansion @ ~/.julia/packages/SpeedyWeather/h8SIJ/test/transforms/spectral_transform_ad_rules.jl:47 [inlined] [18] macro expansion @ /opt/julia/share/julia/stdlib/v1.14/Test/src/Test.jl:1961 [inlined] [19] macro expansion @ ~/.julia/packages/SpeedyWeather/h8SIJ/test/transforms/spectral_transform_ad_rules.jl:34 [inlined] [20] macro expansion @ /opt/julia/share/julia/stdlib/v1.14/Test/src/Test.jl:1961 [inlined] [21] macro expansion @ ~/.julia/packages/SpeedyWeather/h8SIJ/test/transforms/spectral_transform_ad_rules.jl:33 [inlined] [22] macro expansion @ /opt/julia/share/julia/stdlib/v1.14/Test/src/Test.jl:1961 [inlined] [23] top-level scope @ ~/.julia/packages/SpeedyWeather/h8SIJ/test/transforms/spectral_transform_ad_rules.jl:32 [24] include(mapexpr::Function, mod::Module, _path::String) @ Base ./Base.jl:310 [25] top-level scope @ ~/.julia/packages/SpeedyWeather/h8SIJ/test/runtests.jl:41 [26] include(mapexpr::Function, mod::Module, _path::String) @ Base ./Base.jl:310 [27] top-level scope @ none:6 [28] eval(m::Module, e::Any) @ Core ./boot.jl:489 [29] exec_options(opts::Base.JLOptions) @ Base ./client.jl:310 [30] _start() @ Base ./client.jl:577 test_reverse: _fourier! with return activity Const on (::Field{Float32, 2, Matrix{Float32}, FullGaussianGrid{CPU{KernelAbstractions.CPU}, Vector{UnitRange{Int64}}, Vector{Int64}}}, Duplicated), (::Array{ComplexF32, 3}, Duplicated), (::Array{ComplexF32, 3}, Duplicated), (::SpectralTransform{Float32, CPU{KernelAbstractions.CPU}, Array, Spectrum{CPU{KernelAbstractions.CPU}, Vector{UnitRange{Int64}}, Vector{Int64}}, FullGaussianGrid{CPU{KernelAbstractions.CPU}, Vector{UnitRange{Int64}}, Vector{Int64}}, Vector{Float32}, Matrix{Int64}, Vector{ComplexF32}, Matrix{ComplexF32}, Array{ComplexF32, 3}, LowerTriangularMatrix{Float32, Vector{Float32}, Spectrum{CPU{KernelAbstractions.CPU}, Vector{UnitRange{Int64}}, Vector{Int64}}}, LowerTriangularArray{Float32, 2, Matrix{Float32}, Spectrum{CPU{KernelAbstractions.CPU}, Vector{UnitRange{Int64}}, Vector{Int64}}}}, Const): Error During Test at /home/pkgeval/.julia/packages/EnzymeTestUtils/JZTWO/src/test_reverse.jl:86 Got exception outside of a @test AssertionError: Enzyme Internal Error (expectLen != length(parameters(f))) ; Function Attrs: noreturn define internal void @julia_throw_setindex_mismatch_175678(ptr addrspace(11) nocapture noundef nonnull readonly align 8 dereferenceable(56) %"X::ReshapedArray", ptr nocapture noundef nonnull readonly align 8 dereferenceable(8) %.roots.X, ptr addrspace(11) nocapture noundef nonnull readonly align 8 dereferenceable(16) %"I::Tuple") #13 !dbg !282 { top: %pgcstack = call ptr @julia.get_pgcstack() %current_task = getelementptr inbounds i8, ptr %pgcstack, i32 -152 %ptls_field = getelementptr inbounds i8, ptr %current_task, i32 168 %ptls_load = load ptr, ptr %ptls_field, align 8, !tbaa !52 %0 = getelementptr inbounds i8, ptr %ptls_load, i32 16 %safepoint = load atomic ptr, ptr %0 monotonic, align 8, !tbaa !56 fence syncscope("singlethread") seq_cst call void @julia.safepoint(ptr %safepoint) fence syncscope("singlethread") seq_cst %1 = getelementptr inbounds i8, ptr %.roots.X, i32 0 %2 = load ptr addrspace(10), ptr %1, align 8, !tbaa !56, !alias.scope !59, !noalias !62 %3 = getelementptr inbounds i8, ptr addrspace(11) %"X::ReshapedArray", i32 40, !dbg !284 %.unbox = load i64, ptr addrspace(11) %3, align 8, !dbg !291, !tbaa !56, !alias.scope !59, !noalias !62 %4 = call nonnull ptr addrspace(10) @julia_string_175560(i64 signext %.unbox), !dbg !291 %"[2]_ptr" = getelementptr inbounds i8, ptr addrspace(11) %3, i32 8, !dbg !297 %"[2]_ptr.unbox" = load i64, ptr addrspace(11) %"[2]_ptr", align 8, !dbg !291, !tbaa !56, !alias.scope !59, !noalias !62 %5 = call nonnull ptr addrspace(10) @julia_string_175560(i64 signext %"[2]_ptr.unbox"), !dbg !291 %"-Main.Base.#sprint#423#175539" = load ptr, ptr @_Main_Base__sprint_423_175539, align 8, !dbg !299, !tbaa !56, !alias.scope !59, !noalias !62, !nonnull !0, !dereferenceable !67, !align !68 %6 = addrspacecast ptr %"-Main.Base.#sprint#423#175539" to ptr addrspace(10), !dbg !299 %"jl_global#175540" = load ptr, ptr @jl_global_175540, align 8, !dbg !299, !tbaa !56, !alias.scope !59, !noalias !62, !nonnull !0 %7 = addrspacecast ptr %"jl_global#175540" to ptr addrspace(10), !dbg !299 %jl_nothing = load ptr, ptr @jl_nothing, align 8, !dbg !299, !tbaa !56, !alias.scope !59, !noalias !62, !nonnull !0 %8 = addrspacecast ptr %jl_nothing to ptr addrspace(10), !dbg !299 %"jl_global#175541" = load ptr, ptr @jl_global_175541, align 8, !dbg !299, !tbaa !56, !alias.scope !59, !noalias !62, !nonnull !0, !dereferenceable !68, !align !68 %9 = addrspacecast ptr %"jl_global#175541" to ptr addrspace(10), !dbg !299 %"jl_global#175542" = load ptr, ptr @jl_global_175542, align 8, !dbg !299, !tbaa !56, !alias.scope !59, !noalias !62, !nonnull !0 %10 = addrspacecast ptr %"jl_global#175542" to ptr addrspace(10), !dbg !299 %"jl_global#175543" = load ptr, ptr @jl_global_175543, align 8, !dbg !299, !tbaa !56, !alias.scope !59, !noalias !62, !nonnull !0 %11 = addrspacecast ptr %"jl_global#175543" to ptr addrspace(10), !dbg !299 %"+Core.Tuple#175544" = load ptr, ptr @_Core_Tuple_175544, align 8, !dbg !299, !tbaa !56, !alias.scope !59, !noalias !62, !nonnull !0, !dereferenceable !69, !align !70 %Tuple = ptrtoint ptr %"+Core.Tuple#175544" to i64, !dbg !299 %12 = inttoptr i64 %Tuple to ptr, !dbg !299 %current_task1 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !299 %13 = addrspacecast ptr %12 to ptr addrspace(10), !dbg !299 %"box::Tuple" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task1, i64 16, ptr addrspace(10) %13) #58, !dbg !299 %14 = addrspacecast ptr addrspace(10) %"box::Tuple" to ptr addrspace(11), !dbg !299 %15 = getelementptr inbounds i8, ptr addrspace(11) %14, i32 0, !dbg !299 store atomic ptr addrspace(10) %4, ptr addrspace(11) %15 unordered, align 8, !dbg !299, !tbaa !242, !alias.scope !238, !noalias !239 %16 = getelementptr inbounds i8, ptr addrspace(11) %14, i32 8, !dbg !299 store atomic ptr addrspace(10) %5, ptr addrspace(11) %16 unordered, align 8, !dbg !299, !tbaa !242, !alias.scope !238, !noalias !239 %"jl_global#175681" = load ptr, ptr @jl_global_175545, align 8, !dbg !299, !tbaa !56, !alias.scope !59, !noalias !62, !nonnull !0, !dereferenceable !306, !align !306 %17 = addrspacecast ptr %"jl_global#175681" to ptr addrspace(10), !dbg !299 %18 = call nonnull ptr addrspace(10) (ptr, ptr addrspace(10), ptr addrspace(10), ...) @julia.call2(ptr @ijl_invoke, ptr addrspace(10) %6, ptr addrspace(10) %7, ptr addrspace(10) %8, ptr addrspace(10) %9, ptr addrspace(10) %10, ptr addrspace(10) %11, ptr addrspace(10) %"box::Tuple", ptr addrspace(10) %17), !dbg !299 %"I::Tuple.unbox" = load i64, ptr addrspace(11) %"I::Tuple", align 8, !dbg !291, !tbaa !56, !alias.scope !59, !noalias !62 %19 = call nonnull ptr addrspace(10) @julia_string_175560(i64 signext %"I::Tuple.unbox"), !dbg !291 %"I::Tuple[2]_ptr" = getelementptr inbounds i8, ptr addrspace(11) %"I::Tuple", i32 8, !dbg !297 %"I::Tuple[2]_ptr.unbox" = load i64, ptr addrspace(11) %"I::Tuple[2]_ptr", align 8, !dbg !291, !tbaa !56, !alias.scope !59, !noalias !62 %20 = call nonnull ptr addrspace(10) @julia_string_175560(i64 signext %"I::Tuple[2]_ptr.unbox"), !dbg !291 %"-Main.Base.#sprint#423#1755392" = load ptr, ptr @_Main_Base__sprint_423_175539, align 8, !dbg !299, !tbaa !56, !alias.scope !59, !noalias !62, !nonnull !0, !dereferenceable !67, !align !68 %21 = addrspacecast ptr %"-Main.Base.#sprint#423#1755392" to ptr addrspace(10), !dbg !299 %"jl_global#1755403" = load ptr, ptr @jl_global_175540, align 8, !dbg !299, !tbaa !56, !alias.scope !59, !noalias !62, !nonnull !0 %22 = addrspacecast ptr %"jl_global#1755403" to ptr addrspace(10), !dbg !299 %jl_nothing4 = load ptr, ptr @jl_nothing, align 8, !dbg !299, !tbaa !56, !alias.scope !59, !noalias !62, !nonnull !0 %23 = addrspacecast ptr %jl_nothing4 to ptr addrspace(10), !dbg !299 %"jl_global#1755415" = load ptr, ptr @jl_global_175541, align 8, !dbg !299, !tbaa !56, !alias.scope !59, !noalias !62, !nonnull !0, !dereferenceable !68, !align !68 %24 = addrspacecast ptr %"jl_global#1755415" to ptr addrspace(10), !dbg !299 %"jl_global#1755426" = load ptr, ptr @jl_global_175542, align 8, !dbg !299, !tbaa !56, !alias.scope !59, !noalias !62, !nonnull !0 %25 = addrspacecast ptr %"jl_global#1755426" to ptr addrspace(10), !dbg !299 %"jl_global#1755437" = load ptr, ptr @jl_global_175543, align 8, !dbg !299, !tbaa !56, !alias.scope !59, !noalias !62, !nonnull !0 %26 = addrspacecast ptr %"jl_global#1755437" to ptr addrspace(10), !dbg !299 %"+Core.Tuple#1755448" = load ptr, ptr @_Core_Tuple_175544, align 8, !dbg !299, !tbaa !56, !alias.scope !59, !noalias !62, !nonnull !0, !dereferenceable !69, !align !70 %Tuple9 = ptrtoint ptr %"+Core.Tuple#1755448" to i64, !dbg !299 %27 = inttoptr i64 %Tuple9 to ptr, !dbg !299 %current_task10 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !299 %28 = addrspacecast ptr %27 to ptr addrspace(10), !dbg !299 %"box::Tuple11" = call noalias nonnull align 8 dereferenceable(16) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task10, i64 16, ptr addrspace(10) %28) #58, !dbg !299 %29 = addrspacecast ptr addrspace(10) %"box::Tuple11" to ptr addrspace(11), !dbg !299 %30 = getelementptr inbounds i8, ptr addrspace(11) %29, i32 0, !dbg !299 store atomic ptr addrspace(10) %19, ptr addrspace(11) %30 unordered, align 8, !dbg !299, !tbaa !242, !alias.scope !238, !noalias !239 %31 = getelementptr inbounds i8, ptr addrspace(11) %29, i32 8, !dbg !299 store atomic ptr addrspace(10) %20, ptr addrspace(11) %31 unordered, align 8, !dbg !299, !tbaa !242, !alias.scope !238, !noalias !239 %"jl_global#175682" = load ptr, ptr @jl_global_175545, align 8, !dbg !299, !tbaa !56, !alias.scope !59, !noalias !62, !nonnull !0, !dereferenceable !306, !align !306 %32 = addrspacecast ptr %"jl_global#175682" to ptr addrspace(10), !dbg !299 %33 = call nonnull ptr addrspace(10) (ptr, ptr addrspace(10), ptr addrspace(10), ...) @julia.call2(ptr @ijl_invoke, ptr addrspace(10) %21, ptr addrspace(10) %22, ptr addrspace(10) %23, ptr addrspace(10) %24, ptr addrspace(10) %25, ptr addrspace(10) %26, ptr addrspace(10) %"box::Tuple11", ptr addrspace(10) %32), !dbg !299 %"-Main.Base.string#175683" = load ptr, ptr @_Main_Base_string_175683, align 8, !dbg !290, !tbaa !56, !alias.scope !59, !noalias !62, !nonnull !0, !dereferenceable !67, !align !68 %34 = addrspacecast ptr %"-Main.Base.string#175683" to ptr addrspace(10), !dbg !290 %"jl_global#175547" = load ptr, ptr @jl_global_175547, align 8, !dbg !290, !tbaa !56, !alias.scope !59, !noalias !62, !nonnull !0 %35 = addrspacecast ptr %"jl_global#175547" to ptr addrspace(10), !dbg !290 %"jl_global#175684" = load ptr, ptr @jl_global_175684, align 8, !dbg !290, !tbaa !56, !alias.scope !59, !noalias !62, !nonnull !0 %36 = addrspacecast ptr %"jl_global#175684" to ptr addrspace(10), !dbg !290 %"jl_global#175685" = load ptr, ptr @jl_global_175685, align 8, !dbg !290, !tbaa !56, !alias.scope !59, !noalias !62, !nonnull !0 %37 = addrspacecast ptr %"jl_global#175685" to ptr addrspace(10), !dbg !290 %"jl_global#175686" = load ptr, ptr @jl_global_175686, align 8, !dbg !290, !tbaa !56, !alias.scope !59, !noalias !62, !nonnull !0 %38 = addrspacecast ptr %"jl_global#175686" to ptr addrspace(10), !dbg !290 %39 = call nonnull ptr addrspace(10) (ptr, ptr addrspace(10), ptr addrspace(10), ...) @julia.call2(ptr @ijl_invoke, ptr addrspace(10) %34, ptr addrspace(10) %35, ptr addrspace(10) %36, ptr addrspace(10) %18, ptr addrspace(10) %37, ptr addrspace(10) %33, ptr addrspace(10) %38) #59, !dbg !290 %"+Main.Base.DimensionMismatch#175501" = load ptr, ptr @_Main_Base_DimensionMismatch_175501, align 8, !dbg !290, !tbaa !56, !alias.scope !59, !noalias !62, !nonnull !0, !dereferenceable !69, !align !70 %DimensionMismatch = ptrtoint ptr %"+Main.Base.DimensionMismatch#175501" to i64, !dbg !290 %40 = inttoptr i64 %DimensionMismatch to ptr, !dbg !290 %current_task12 = getelementptr inbounds i8, ptr %pgcstack, i32 -152, !dbg !290 %41 = addrspacecast ptr %40 to ptr addrspace(10), !dbg !290 %"box::DimensionMismatch" = call noalias nonnull align 8 dereferenceable(8) ptr addrspace(10) @julia.gc_alloc_obj(ptr %current_task12, i64 8, ptr addrspace(10) %41) #58, !dbg !290 %42 = addrspacecast ptr addrspace(10) %"box::DimensionMismatch" to ptr addrspace(11), !dbg !290 %43 = getelementptr inbounds i8, ptr addrspace(11) %42, i32 0, !dbg !290 store atomic ptr addrspace(10) %39, ptr addrspace(11) %43 unordered, align 8, !dbg !290, !tbaa !242, !alias.scope !238, !noalias !239 %44 = addrspacecast ptr addrspace(10) %"box::DimensionMismatch" to ptr addrspace(12), !dbg !290 call void @ijl_throw(ptr addrspace(12) %44), !dbg !290 unreachable, !dbg !290 after_throw: ; No predecessors! call void @llvm.trap(), !dbg !290 unreachable, !dbg !290 after_noret: ; No predecessors! call void @llvm.trap(), !dbg !290 unreachable, !dbg !290 } expectLen=2 swiftself=false sret=nothing returnRoots=nothing mi.specTypes.parameters=svec(typeof(Base.throw_setindex_mismatch), Base.ReshapedArray{Float32, 2, SubArray{Float32, 1, Vector{Float32}, Tuple{UnitRange{Int64}}, true}, Tuple{}}, Tuple{Int64, Int64}) retRemoved=false parmsRemoved=UInt64[] Stacktrace: [1] julia_activity_rule(f::LLVM.Function) @ Enzyme.Compiler ~/.julia/packages/Enzyme/rsnI8/src/rules/activityrules.jl:48 [2] handle_compiled(state::Enzyme.Compiler.HandlerState, edges::Vector{Any}, run_enzyme::Bool, mode::Enzyme.API.CDerivativeMode, world::UInt64, method_table::Compiler.OverlayMethodTable, custom::Dict{String, LLVM.API.LLVMLinkage}, mod::LLVM.Module, mi::Core.MethodInstance, k_name::String, rettype::Type) @ Enzyme.Compiler ~/.julia/packages/Enzyme/rsnI8/src/compiler.jl:628 [3] set_module_types!(interp::Enzyme.Compiler.Interpreter.EnzymeInterpreter{Nothing}, mod::LLVM.Module, primalf::LLVM.Function, job::GPUCompiler.CompilerJob{Enzyme.Compiler.EnzymeTarget{GPUCompiler.NativeCompilerTarget}, Enzyme.Compiler.EnzymeCompilerParams{Enzyme.Compiler.PrimalCompilerParams}}, edges::Vector{Any}, run_enzyme::Bool, mode::Enzyme.API.CDerivativeMode) @ Enzyme.Compiler ~/.julia/packages/Enzyme/rsnI8/src/compiler.jl:1220 [4] compile_unhooked(output::Symbol, job::GPUCompiler.CompilerJob{Enzyme.Compiler.EnzymeTarget{GPUCompiler.NativeCompilerTarget}, Enzyme.Compiler.EnzymeCompilerParams{Enzyme.Compiler.PrimalCompilerParams}}) @ Enzyme.Compiler ~/.julia/packages/Enzyme/rsnI8/src/compiler.jl:4627 [5] compile(target::Symbol, job::GPUCompiler.CompilerJob; kwargs::@Kwargs{}) @ GPUCompiler ~/.julia/packages/GPUCompiler/Gp8bZ/src/driver.jl:67 [6] compile @ ~/.julia/packages/GPUCompiler/Gp8bZ/src/driver.jl:55 [inlined] [7] _thunk(job::GPUCompiler.CompilerJob{Enzyme.Compiler.EnzymeTarget{GPUCompiler.NativeCompilerTarget}, Enzyme.Compiler.EnzymeCompilerParams{Enzyme.Compiler.PrimalCompilerParams}}, postopt::Bool) @ Enzyme.Compiler ~/.julia/packages/Enzyme/rsnI8/src/compiler.jl:5960 [8] _thunk @ ~/.julia/packages/Enzyme/rsnI8/src/compiler.jl:5958 [inlined] [9] cached_compilation @ ~/.julia/packages/Enzyme/rsnI8/src/compiler.jl:6015 [inlined] [10] thunkbase(mi::Core.MethodInstance, World::UInt64, FA::Type{<:Annotation}, A::Type{<:Annotation}, TT::Type, Mode::Enzyme.API.CDerivativeMode, width::Int64, ModifiedBetween::NTuple{N, Bool} where N, ReturnPrimal::Bool, ShadowInit::Bool, ABI::Type, ErrIfFuncWritten::Bool, RuntimeActivity::Bool, StrongZero::Bool, edges::Vector{Any}) @ Enzyme.Compiler ~/.julia/packages/Enzyme/rsnI8/src/compiler.jl:6131 [11] thunk_generator(world::UInt64, source::Union{LineNumberNode, Method}, FA::Type, A::Type, TT::Type, Mode::Enzyme.API.CDerivativeMode, Width::Int64, ModifiedBetween::NTuple{N, Bool} where N, ReturnPrimal::Bool, ShadowInit::Bool, ABI::Type, ErrIfFuncWritten::Bool, RuntimeActivity::Bool, StrongZero::Bool, self::Any, fakeworld::Any, fa::Type, a::Type, tt::Type, mode::Type, width::Type, modifiedbetween::Type, returnprimal::Type, shadowinit::Type, abi::Type, erriffuncwritten::Type, runtimeactivity::Type, strongzero::Type) @ Enzyme.Compiler ~/.julia/packages/Enzyme/rsnI8/src/compiler.jl:6275 [12] autodiff_thunk(::ReverseModeSplit{true, true, false, false, 0, true, FFIABI, false, false, false}, ::Type{Const{typeof(EnzymeTestUtils.call_with_kwargs)}}, ::Type{Const}, ::Type{Const{@NamedTuple{}}}, ::Type{Const{typeof(SpeedyTransforms._fourier!)}}, ::Type{Duplicated{Field{Float32, 2, Matrix{Float32}, FullGaussianGrid{CPU{KernelAbstractions.CPU}, Vector{UnitRange{Int64}}, Vector{Int64}}}}}, ::Type{Duplicated{Array{ComplexF32, 3}}}, ::Type{Duplicated{Array{ComplexF32, 3}}}, ::Type{Const{SpectralTransform{Float32, CPU{KernelAbstractions.CPU}, Array, Spectrum{CPU{KernelAbstractions.CPU}, Vector{UnitRange{Int64}}, Vector{Int64}}, FullGaussianGrid{CPU{KernelAbstractions.CPU}, Vector{UnitRange{Int64}}, Vector{Int64}}, Vector{Float32}, Matrix{Int64}, Vector{ComplexF32}, Matrix{ComplexF32}, Array{ComplexF32, 3}, LowerTriangularMatrix{Float32, Vector{Float32}, Spectrum{CPU{KernelAbstractions.CPU}, Vector{UnitRange{Int64}}, Vector{Int64}}}, LowerTriangularArray{Float32, 2, Matrix{Float32}, Spectrum{CPU{KernelAbstractions.CPU}, Vector{UnitRange{Int64}}, Vector{Int64}}}}}}) @ Enzyme ~/.julia/packages/Enzyme/rsnI8/src/Enzyme.jl:1001 [13] macro expansion @ ~/.julia/packages/EnzymeTestUtils/JZTWO/src/test_reverse.jl:109 [inlined] [14] macro expansion @ /opt/julia/share/julia/stdlib/v1.14/Test/src/Test.jl:1961 [inlined] [15] test_reverse(::typeof(SpeedyTransforms._fourier!), ::Type, ::Tuple{Field{Float32, 2, Matrix{Float32}, FullGaussianGrid{CPU{KernelAbstractions.CPU}, Vector{UnitRange{Int64}}, Vector{Int64}}}, UnionAll}, ::Vararg{Any}; rng::Random.TaskLocalRNG, fdm::FiniteDifferences.AdaptedFiniteDifferenceMethod{5, 1, FiniteDifferences.UnadaptedFiniteDifferenceMethod{7, 5}}, fkwargs::@NamedTuple{}, rtol::Float64, atol::Float64, testset_name::Nothing, runtime_activity::Bool, output_tangent::Nothing) @ EnzymeTestUtils ~/.julia/packages/EnzymeTestUtils/JZTWO/src/test_reverse.jl:88 [16] kwcall(::@NamedTuple{fdm::FiniteDifferences.AdaptedFiniteDifferenceMethod{5, 1, FiniteDifferences.UnadaptedFiniteDifferenceMethod{7, 5}}, rtol::Float64, atol::Float64}, ::typeof(test_reverse), ::Function, ::Type, ::Tuple{Field{Float32, 2, Matrix{Float32}, FullGaussianGrid{CPU{KernelAbstractions.CPU}, Vector{UnitRange{Int64}}, Vector{Int64}}}, UnionAll}, ::Vararg{Any}) @ EnzymeTestUtils ~/.julia/packages/EnzymeTestUtils/JZTWO/src/test_reverse.jl:70 [17] macro expansion @ ~/.julia/packages/SpeedyWeather/h8SIJ/test/transforms/spectral_transform_ad_rules.jl:51 [inlined] [18] macro expansion @ /opt/julia/share/julia/stdlib/v1.14/Test/src/Test.jl:1961 [inlined] [19] macro expansion @ ~/.julia/packages/SpeedyWeather/h8SIJ/test/transforms/spectral_transform_ad_rules.jl:34 [inlined] [20] macro expansion @ /opt/julia/share/julia/stdlib/v1.14/Test/src/Test.jl:1961 [inlined] [21] macro expansion @ ~/.julia/packages/SpeedyWeather/h8SIJ/test/transforms/spectral_transform_ad_rules.jl:33 [inlined] [22] macro expansion @ /opt/julia/share/julia/stdlib/v1.14/Test/src/Test.jl:1961 [inlined] [23] top-level scope @ ~/.julia/packages/SpeedyWeather/h8SIJ/test/transforms/spectral_transform_ad_rules.jl:32 [24] include(mapexpr::Function, mod::Module, _path::String) @ Base ./Base.jl:310 [25] top-level scope @ ~/.julia/packages/SpeedyWeather/h8SIJ/test/runtests.jl:41 [26] include(mapexpr::Function, mod::Module, _path::String) @ Base ./Base.jl:310 [27] top-level scope @ none:6 [28] eval(m::Module, e::Any) @ Core ./boot.jl:489 [29] exec_options(opts::Base.JLOptions) @ Base ./client.jl:310 [30] _start() @ Base ./client.jl:577 Test Summary: | Error Total Time SpeedyTransforms: AD Rules | 2 2 4m41.1s _fourier! Enzyme rules | 2 2 4m41.1s EnzymeTestUtils reverse rule test | 2 2 4m41.1s test_reverse: _fourier! with return activity Const on (::Array{ComplexF32, 3}, Duplicated), (::Array{ComplexF32, 3}, Duplicated), (::Field{Float32, 2, Matrix{Float32}, FullGaussianGrid{CPU{KernelAbstractions.CPU}, Vector{UnitRange{Int64}}, Vector{Int64}}}, Duplicated), (::SpectralTransform{Float32, CPU{KernelAbstractions.CPU}, Array, Spectrum{CPU{KernelAbstractions.CPU}, Vector{UnitRange{Int64}}, Vector{Int64}}, FullGaussianGrid{CPU{KernelAbstractions.CPU}, Vector{UnitRange{Int64}}, Vector{Int64}}, Vector{Float32}, Matrix{Int64}, Vector{ComplexF32}, Matrix{ComplexF32}, Array{ComplexF32, 3}, LowerTriangularMatrix{Float32, Vector{Float32}, Spectrum{CPU{KernelAbstractions.CPU}, Vector{UnitRange{Int64}}, Vector{Int64}}}, LowerTriangularArray{Float32, 2, Matrix{Float32}, Spectrum{CPU{KernelAbstractions.CPU}, Vector{UnitRange{Int64}}, Vector{Int64}}}}, Const) | 1 1 4m02.8s test_reverse: _fourier! with return activity Const on (::Field{Float32, 2, Matrix{Float32}, FullGaussianGrid{CPU{KernelAbstractions.CPU}, Vector{UnitRange{Int64}}, Vector{Int64}}}, Duplicated), (::Array{ComplexF32, 3}, Duplicated), (::Array{ComplexF32, 3}, Duplicated), (::SpectralTransform{Float32, CPU{KernelAbstractions.CPU}, Array, Spectrum{CPU{KernelAbstractions.CPU}, Vector{UnitRange{Int64}}, Vector{Int64}}, FullGaussianGrid{CPU{KernelAbstractions.CPU}, Vector{UnitRange{Int64}}, Vector{Int64}}, Vector{Float32}, Matrix{Int64}, Vector{ComplexF32}, Matrix{ComplexF32}, Array{ComplexF32, 3}, LowerTriangularMatrix{Float32, Vector{Float32}, Spectrum{CPU{KernelAbstractions.CPU}, Vector{UnitRange{Int64}}, Vector{Int64}}}, LowerTriangularArray{Float32, 2, Matrix{Float32}, Spectrum{CPU{KernelAbstractions.CPU}, Vector{UnitRange{Int64}}, Vector{Int64}}}}, Const) | 1 1 11.3s Complete Transform ChainRules | 0 0.0s RNG of the outermost testset: Random.Xoshiro(0x2022da490e4a863d, 0xe2281b4bdc2936a8, 0x072d8d7c52645a87, 0x5b10d23cc7249834, 0x67f4af43b0bc1844) ERROR: LoadError: Some tests did not pass: 0 passed, 0 failed, 2 errored, 0 broken. in expression starting at /home/pkgeval/.julia/packages/SpeedyWeather/h8SIJ/test/transforms/spectral_transform_ad_rules.jl:31 in expression starting at /home/pkgeval/.julia/packages/SpeedyWeather/h8SIJ/test/runtests.jl:17 Testing failed after 2227.78s ERROR: LoadError: Package SpeedyWeather errored during testing Stacktrace: [1] pkgerror(msg::String) @ Pkg.Types /opt/julia/share/julia/stdlib/v1.14/Pkg/src/Types.jl:68 [2] test(ctx::Pkg.Types.Context, pkgs::Vector{PackageSpec}; coverage::Bool, julia_args::Cmd, test_args::Cmd, test_fn::Nothing, force_latest_compatible_version::Bool, allow_earlier_backwards_compatible_versions::Bool, allow_reresolve::Bool) @ Pkg.Operations /opt/julia/share/julia/stdlib/v1.14/Pkg/src/Operations.jl:2946 [3] test @ /opt/julia/share/julia/stdlib/v1.14/Pkg/src/Operations.jl:2795 [inlined] [4] test(ctx::Pkg.Types.Context, pkgs::Vector{PackageSpec}; coverage::Bool, test_fn::Nothing, julia_args::Cmd, test_args::Cmd, force_latest_compatible_version::Bool, allow_earlier_backwards_compatible_versions::Bool, allow_reresolve::Bool, kwargs::@Kwargs{io::IOContext{IO}}) @ Pkg.API /opt/julia/share/julia/stdlib/v1.14/Pkg/src/API.jl:572 [5] kwcall(::@NamedTuple{julia_args::Cmd, io::IOContext{IO}}, ::typeof(Pkg.API.test), ctx::Pkg.Types.Context, pkgs::Vector{PackageSpec}) @ Pkg.API /opt/julia/share/julia/stdlib/v1.14/Pkg/src/API.jl:548 [6] test(pkgs::Vector{PackageSpec}; io::IOContext{IO}, kwargs::@Kwargs{julia_args::Cmd}) @ Pkg.API /opt/julia/share/julia/stdlib/v1.14/Pkg/src/API.jl:172 [7] kwcall(::@NamedTuple{julia_args::Cmd}, ::typeof(Pkg.API.test), pkgs::Vector{PackageSpec}) @ Pkg.API /opt/julia/share/julia/stdlib/v1.14/Pkg/src/API.jl:161 [8] test(pkgs::Vector{String}; kwargs::@Kwargs{julia_args::Cmd}) @ Pkg.API /opt/julia/share/julia/stdlib/v1.14/Pkg/src/API.jl:160 [9] test @ /opt/julia/share/julia/stdlib/v1.14/Pkg/src/API.jl:160 [inlined] [10] kwcall(::@NamedTuple{julia_args::Cmd}, ::typeof(Pkg.API.test), pkg::String) @ Pkg.API /opt/julia/share/julia/stdlib/v1.14/Pkg/src/API.jl:159 [11] top-level scope @ /PkgEval.jl/scripts/evaluate.jl:219 [12] include(mod::Module, _path::String) @ Base ./Base.jl:309 [13] exec_options(opts::Base.JLOptions) @ Base ./client.jl:344 [14] _start() @ Base ./client.jl:577 in expression starting at /PkgEval.jl/scripts/evaluate.jl:210 PkgEval failed after 2402.64s: package tests unexpectedly errored