Skip to content

Commit e77eef3

Browse files
committed
Remove temporary circshift direction workaround (#272)
1 parent f7dc713 commit e77eef3

File tree

3 files changed

+6
-10
lines changed

3 files changed

+6
-10
lines changed

src/SparseArrays.jl

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,6 @@ using Base.Sort: Forward
1111
using LinearAlgebra
1212
using LinearAlgebra: AdjOrTrans, matprod
1313

14-
# Temporary workaround for simplifying SparseArrays.jl upgrade in JuliaLang/julia
15-
# to workaround circshift! bug, see https://github.com/JuliaLang/julia/pull/46759
16-
const CIRCSHIFT_WRONG_DIRECTION = circshift!([1, 2, 3], 1) != circshift([1, 2, 3], 1)
17-
1814

1915
import Base: +, -, *, \, /, &, |, xor, ==, zero
2016
import LinearAlgebra: mul!, ldiv!, rdiv!, cholesky, adjoint!, diag, eigen, dot,

src/sparsematrix.jl

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3938,16 +3938,16 @@ function Base.swaprows!(A::AbstractSparseMatrixCSC, i, j)
39383938
rows[rr[iidx]] = j
39393939
jidx == 0 && continue
39403940
rotate_range = rr[iidx]:jrange[jidx]
3941-
circshift!(@view(vals[rotate_range]), CIRCSHIFT_WRONG_DIRECTION ? -1 : 1)
3942-
circshift!(@view(rows[rotate_range]), CIRCSHIFT_WRONG_DIRECTION ? -1 : 1)
3941+
circshift!(@view(vals[rotate_range]), 1)
3942+
circshift!(@view(rows[rotate_range]), 1)
39433943
else
39443944
# Same as i, but in the opposite direction
39453945
@assert has_j
39463946
rows[jrange[jidx]] = i
39473947
iidx > length(rr) && continue
39483948
rotate_range = rr[iidx]:jrange[jidx]
3949-
circshift!(@view(vals[rotate_range]), CIRCSHIFT_WRONG_DIRECTION ? 1 : -1)
3950-
circshift!(@view(rows[rotate_range]), CIRCSHIFT_WRONG_DIRECTION ? 1 : -1)
3949+
circshift!(@view(vals[rotate_range]), -1)
3950+
circshift!(@view(rows[rotate_range]), -1)
39513951
end
39523952
end
39533953
return nothing

src/sparsevector.jl

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2133,8 +2133,8 @@ function subvector_shifter!(R::AbstractVector, V::AbstractVector, start::Integer
21332133
end
21342134
end
21352135
# ...but rowval should be sorted within columns
2136-
circshift!(@view(R[start:fin]), (CIRCSHIFT_WRONG_DIRECTION ? (+) : (-))(split-start+1))
2137-
circshift!(@view(V[start:fin]), (CIRCSHIFT_WRONG_DIRECTION ? (+) : (-))(split-start+1))
2136+
circshift!(@view(R[start:fin]), -split+start-1)
2137+
circshift!(@view(V[start:fin]), -split+start-1)
21382138
end
21392139

21402140
function circshift!(O::SparseVector, X::SparseVector, (r,)::Base.DimsInteger{1})

0 commit comments

Comments
 (0)