@@ -263,6 +263,7 @@ DummyZeros(dims...) = DummyZeros{Float64}(dims...)
263263Base. size (x:: DummyZeros ) = x. dims
264264Base. getindex (:: DummyZeros{T} , inds... ) where {T} = zero (T)
265265
266+ using OffsetArrays
266267@testset " Memory Layout" begin
267268 A = zeros (3 ,4 ,5 );
268269 D1 = view (A, 1 : 2 : 3 , :, :) # first dimension is discontiguous
@@ -272,12 +273,12 @@ Base.getindex(::DummyZeros{T}, inds...) where {T} = zero(T)
272273 @test @inferred (device (PermutedDimsArray (A,(3 ,1 ,2 )))) === ArrayInterface. CPUPointer ()
273274 @test @inferred (device (view (A, 1 , :, 2 : 4 ))) === ArrayInterface. CPUPointer ()
274275 @test @inferred (device (view (A, 1 , :, 2 : 4 )' )) === ArrayInterface. CPUPointer ()
275- @test @inferred (device (view (PermutedDimsArray (A, (3 ,1 ,2 )), 1 , :, 2 : 4 )' )) === ArrayInterface. CPUPointer ()
276- @test @inferred (device (view (A, 1 , :, [ 2 , 3 , 4 ] ))) === ArrayInterface. CPUIndex ()
277- @test @inferred (device (view (A, 1 , :, [2 , 3 , 4 ])' )) === ArrayInterface. CPUIndex ()
278- @test @inferred (device (@SArray (zeros (2 ,2 ,2 )))) === ArrayInterface. CPUIndex ()
279- @test @inferred (device (@view (@SArray (zeros (2 ,2 ,2 ))[1 ,1 : 2 ,:]))) === ArrayInterface. CPUIndex ()
280- @test @inferred (device (@MArray (zeros (2 ,2 ,2 )))) === ArrayInterface. CPUPointer ()
276+ @test @inferred (device (OffsetArray ( view (PermutedDimsArray (A, (3 ,1 ,2 )), 1 , :, 2 : 4 )' , 3 , - 173 ) )) === ArrayInterface. CPUPointer ()
277+ @test @inferred (device (view (OffsetArray (A, 2 , 3 , - 12 ), 4 , :, - 11 : - 9 ))) === ArrayInterface. CPUPointer ()
278+ @test @inferred (device (view (OffsetArray (A, 2 , 3 , - 12 ), 3 , :, [- 11 , - 10 , - 9 ])' )) === ArrayInterface. CPUIndex ()
279+ @test @inferred (device (OffsetArray ( @SArray (zeros (2 ,2 ,2 )), - 123 , 29 , 3231 ))) === ArrayInterface. CPUIndex ()
280+ @test @inferred (device (OffsetArray ( @view (@SArray (zeros (2 ,2 ,2 ))[1 ,1 : 2 ,:]), - 3 , 4 ))) === ArrayInterface. CPUIndex ()
281+ @test @inferred (device (OffsetArray ( @MArray (zeros (2 ,2 ,2 )), 8 , - 2 , - 5 ))) === ArrayInterface. CPUPointer ()
281282 @test isnothing (device (" Hello, world!" ))
282283
283284 @test @inferred (contiguous_axis (@SArray (zeros (2 ,2 ,2 )))) === ArrayInterface. Contiguous (1 )
@@ -360,7 +361,6 @@ Base.getindex(::DummyZeros{T}, inds...) where {T} = zero(T)
360361 @test collect (strides (B))[collect (stride_rank (doubleperm))] == collect (strides (doubleperm))
361362end
362363
363- using OffsetArrays
364364@testset " Static-Dynamic Size, Strides, and Offsets" begin
365365 A = zeros (3 ,4 ,5 ); Ap = @view (PermutedDimsArray (A,(3 ,1 ,2 ))[:,1 : 2 ,1 ])' ;
366366 S = @SArray zeros (2 ,3 ,4 ); Sp = @view (PermutedDimsArray (S,(3 ,1 ,2 ))[2 : 3 ,1 : 2 ,:]);
0 commit comments