You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
stdsimd fails to build with target_cpu=skylake-avx512 #157
@alexcrichton re #146 (comment) , one motivation is to have SSE2/AVX2 code written using intrinsics be able to use the extra registers xmm16..xmm31, ymm16..ymm31 that AVX512VL provides. Is this possible using feature detection?
Oh yeah definitely makes sense to fix this! I tested a snippet which I think may have been a reduction of this? It looks like this is fixed in LLVM 5 so this may be blocked on rust-lang/rust#43370
Activity
hdevalence commentedon Oct 27, 2017
Discussion moved from comments here: #146 (comment) and here #146 (comment)
hdevalence commentedon Oct 27, 2017
@alexcrichton re #146 (comment) , one motivation is to have SSE2/AVX2 code written using intrinsics be able to use the extra registers
xmm16..xmm31,ymm16..ymm31that AVX512VL provides. Is this possible using feature detection?alexcrichton commentedon Oct 30, 2017
Oh yeah definitely makes sense to fix this! I tested a snippet which I think may have been a reduction of this? It looks like this is fixed in LLVM 5 so this may be blocked on rust-lang/rust#43370
hdevalence commentedon Oct 30, 2017
Building the branch mentioned in that issue and using that as the local Rust toolchain fixed the issue for me.
hdevalence commentedon Dec 12, 2017
Update: using the current nightly Rust and the current
stdsimdhas stopped working onskylake-avx512.gnzlbg commentedon Dec 12, 2017
Does it work with a previous
stdsimdversion but the current nightly Rust?Do you have a reproducer? Does it fail to compile, at run-time, etc?
EDIT: I get the following error:
hdevalence commentedon Dec 15, 2017
Oops, sorry, I missed this. I guess you reproduced it; my test case is this AVX2 code: https://github.com/isislovecruft/curve25519-dalek/pull/94
It doesn't use any 512-bit vectors, but there's a mild performance increase when using AVX512VL since the increase in registers avoids spills.
gnzlbg commentedon Dec 15, 2017
rustc: Upgrade to LLVM 6
Auto merge of #47828 - alexcrichton:llvm-6, r=<try>
Auto merge of #47828 - alexcrichton:llvm-6, r=nikomatsakis
16 remaining items
rustc: Upgrade to LLVM 6
Auto merge of #47828 - alexcrichton:llvm-6, r=<try>
rustc: Upgrade to LLVM 6
Auto merge of #47828 - alexcrichton:llvm-6, r=nikomatsakis
alexcrichton commentedon Feb 11, 2018
I believe this was fixed by rust-lang/rust#47828