Skip to content

Commit

Permalink
update
Browse files Browse the repository at this point in the history
  • Loading branch information
chriselrod committed Apr 29, 2024
1 parent 34437df commit a3e8081
Show file tree
Hide file tree
Showing 7 changed files with 138 additions and 255 deletions.
4 changes: 2 additions & 2 deletions Project.toml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
name = "LoopVectorization"
uuid = "bdcacae8-1622-11e9-2a5c-532679323890"
authors = ["Chris Elrod <[email protected]>"]
version = "0.12.169"
version = "0.12.170"

[deps]
ArrayInterface = "4fba245c-0d91-5ea0-9b3e-6abc04ee57a9"
Expand Down Expand Up @@ -56,5 +56,5 @@ Static = "0.8.4"
StaticArrayInterface = "1"
ThreadingUtilities = "0.5"
UnPack = "1"
VectorizationBase = "0.21.63"
VectorizationBase = "0.21.67"
julia = "1.6"
8 changes: 4 additions & 4 deletions src/condense_loopset.jl
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ function _append_fields!(t::Expr, body::Expr, sym::Symbol, ::Type{T}) where {T}
TF = fieldtype(T, f)
Base.issingletontype(TF) && continue
gfcall = Expr(:call, getfield, sym, f)
if fieldcount(TF) 0
if fieldcount(TF) 0 || TF <: Array
push!(t.args, gfcall)
elseif TF <: DataType
push!(t.args, Expr(:call, Expr(:curly, lv(:StaticType), gfcall)))
Expand All @@ -26,7 +26,7 @@ end
t = Expr(:tuple)
if Base.issingletontype(T)
nothing
elseif fieldcount(T) 0
elseif fieldcount(T) 0 || T <: Array
push!(t.args, :r)
elseif T <: DataType
push!(t.args, Expr(:call, Expr(:curly, lv(:StaticType), :r)))
Expand All @@ -42,7 +42,7 @@ function rebuild_fields(offset::Int, ::Type{T}) where {T}
TF = fieldtype(T, f)
if Base.issingletontype(TF)
push!(call.args, TF.instance)
elseif fieldcount(TF) 0
elseif fieldcount(TF) 0 || TF <: Array
push!(call.args, Expr(:call, getfield, :t, (offset += 1)))
elseif TF <: DataType
push!(
Expand All @@ -59,7 +59,7 @@ end
@generated function reassemble_tuple(::Type{T}, t::Tuple) where {T}
if Base.issingletontype(T)
return T.instance
elseif fieldcount(T) 0
elseif fieldcount(T) 0 || T <: Array
call = Expr(:call, getfield, :t, 1)
elseif T <: DataType
call = Expr(:call, lv(:gettype), Expr(:call, getfield, :t, 1))
Expand Down
3 changes: 3 additions & 0 deletions test/Project.toml
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
[compat]
Aqua = "0.8.7"

[deps]
Aqua = "4c88cf16-eb10-579e-8560-4a9242c79595"
ArrayInterface = "4fba245c-0d91-5ea0-9b3e-6abc04ee57a9"
Expand Down
2 changes: 1 addition & 1 deletion test/grouptests.jl
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ const START_TIME = time()
@time if LOOPVECTORIZATION_TEST == "all" || LOOPVECTORIZATION_TEST == "part2"
if VERSION >= v"1.9"
using Aqua
@time Aqua.test_all(LoopVectorization, ambiguities = false, piracy = false)
@time Aqua.test_all(LoopVectorization, ambiguities = false, piracies = false)
end
@test isempty(detect_unbound_args(LoopVectorization))

Expand Down
Loading

0 comments on commit a3e8081

Please sign in to comment.