ITADN

Remove some unnecessary methods that cause invalidations

#694Pull RequestJamesWrigley 创建于 2026-04-06
backport 1.13
J
JamesWrigleycommented
- A `axes(::AbstractQ)` already exists in LinearAlgebra that does the same thing. - Julia already has a generic `Base.size(x, dim)` method that uses `Base.size(x)`. Should fix these invalidations seen when loading CUDA.jl on 1.13: ```julia inserting size(FC::SparseArrays.CHOLMOD.FactorComponent, i::Integer) @ SparseArrays.CHOLMOD ~/.julia/juliaup/julia-1.13.0-beta3+0.x64.linux.gnu/share/julia/stdlib/v1.13/SparseArrays/src/solvers/cholmod.jl:1363 invalidated: backedges: 1: superseding size(t::AbstractArray, dim) @ Base abstractarray.jl:42 with MethodInstance for size(::AbstractVecOrMat, ::Int64) (9 children) 2: superseding size(t::AbstractArray, dim) @ Base abstractarray.jl:42 with MethodInstance for size(::AbstractMatrix, ::Int64) (21 children) 3: superseding size(t::AbstractArray, dim) @ Base abstractarray.jl:42 with MethodInstance for size(::AbstractArray, ::Int64) (21 children) inserting axes(Q::SparseArrays.SPQR.QRSparseQ) @ SparseArrays.SPQR ~/.julia/juliaup/julia-1.13.0-beta3+0.x64.linux.gnu/share/julia/stdlib/v1.13/SparseArrays/src/solvers/spqr.jl:143 invalidated: backedges: 1: superseding axes(Q::LinearAlgebra.AbstractQ) @ LinearAlgebra ~/.julia/juliaup/julia-1.13.0-beta3+0.x64.linux.gnu/share/julia/stdlib/v1.13/LinearAlgebra/src/abstractq.jl:78 with MethodInstance for axes(::LinearAlgebra.AbstractQ) (81 children) 1 mt_cache ``` Could we backport this to 1.13?
合并状态:未合并 关闭于 2026-04-17 4 条评论