Skip to content

Commit 068e36b

Browse files
authored
Merge branch 'master' into patch-1
2 parents 54e1974 + ea843c7 commit 068e36b

File tree

4 files changed

+7
-16
lines changed

4 files changed

+7
-16
lines changed

Project.toml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
name = "LoopVectorization"
22
uuid = "bdcacae8-1622-11e9-2a5c-532679323890"
33
authors = ["Chris Elrod <[email protected]>"]
4-
version = "0.12.10"
4+
version = "0.12.11"
55

66
[deps]
77
ArrayInterface = "4fba245c-0d91-5ea0-9b3e-6abc04ee57a9"
@@ -24,11 +24,11 @@ DocStringExtensions = "0.8"
2424
IfElse = "0.1"
2525
OffsetArrays = "1.4.1, 1.5"
2626
Requires = "1"
27-
SLEEFPirates = "0.6.12"
27+
SLEEFPirates = "0.6.14"
2828
Static = "0.2"
2929
ThreadingUtilities = "0.4.1"
3030
UnPack = "1"
31-
VectorizationBase = "0.19.19"
31+
VectorizationBase = "0.19.22"
3232
julia = "1.5"
3333

3434
[extras]

src/codegen/lower_load.jl

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,7 @@ function add_prefetches!(q::Expr, ls::LoopSet, op::Operation, td::UnrollArgs, pr
8181
(ind == u₁loopsym) && (i = j)
8282
end
8383
push!(q.args, Expr(:call, lv(:prefetch0), gptr, copy(inds)))
84+
i == 0 && return
8485
for u 1:u₁-1
8586
# for u ∈ umin:min(umin,U-1)
8687
# (u₁loopsym === vloopsym && !iszero(u & dontskip)) && continue

src/condense_loopset.jl

Lines changed: 2 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -394,20 +394,10 @@ end
394394
Returns true if the element type is supported.
395395
"""
396396
@inline check_type(::Type{T}) where {T <: NativeTypes} = true
397-
function check_type(::Type{T}) where {T}
398-
# @info """`LoopVectorization.check_type` returned `false`, because `LoopVectorization.check_type(::$(T)) == false`.
399-
# `LoopVectorization` currently only supports `T <: $(NativeTypes)`.
400-
# Therefore compiling a probably slow `@inbounds @fastmath` fallback loop.""" maxlog=1
401-
false
402-
end
397+
@inline check_type(::Type{T}) where {T} = false
403398
@inline check_device(::ArrayInterface.CPUPointer) = true
404399
@inline check_device(::ArrayInterface.CPUTuple) = true
405-
function check_device(x)
406-
# @info """`LoopVectorization.check_args` returned `false`, because `ArrayInterface.device(::$(typeof(x))) == $x`
407-
# `LoopVectorization` normally requires `ArrayInterface.CPUPointer` (exceptions include ranges, `BitVector`s, and
408-
# `BitArray`s whose number of rows is a multiple of 8). Therefore compiling a probably slow `@inbounds @fastmath` fallback loop.""" maxlog=1
409-
false
410-
end
400+
@inline check_device(x) = false
411401

412402
function check_args_call(ls::LoopSet)
413403
q = Expr(:call, lv(:check_args))

src/reconstruct_loopset.jl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -623,7 +623,7 @@ Execute an `@avx` block. The block's code is represented via the arguments:
623623
@generated function _avx_!(
624624
::Val{UNROLL}, ::Val{OPS}, ::Val{ARF}, ::Val{AM}, ::Val{LPSYM}, var"#lv#tuple#args#"::Tuple{LB,V}
625625
) where {UNROLL, OPS, ARF, AM, LPSYM, LB, V}
626-
# 1 + 1 # Irrelevant line you can comment out/in to force recompilation...
626+
1 + 1 # Irrelevant line you can comment out/in to force recompilation...
627627
ls = _avx_loopset(OPS, ARF, AM, LPSYM, LB.parameters, V.parameters, UNROLL)
628628
# return @show avx_body(ls, UNROLL)
629629
if last(UNROLL) > 1

0 commit comments

Comments
 (0)