[Bug target/82887] ICE: in extract_insn, at recog.c:2287 (unrecognizable insn) with _mm512_extracti64x4_epi64
peter at cordes dot ca
gcc-bugzilla@gcc.gnu.org
Sun Oct 13 13:43:00 GMT 2019
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82887
Peter Cordes <peter at cordes dot ca> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |peter at cordes dot ca
--- Comment #4 from Peter Cordes <peter at cordes dot ca> ---
Since some code is apparently still avoiding this because of old broken GCC
(e.g.
https://github.com/pmem/pmdk/blob/a6031710f7c102c6b8b6b19dc9708a3b7d43e87b/src/libpmem/x86_64/memset/memset_nt_avx512f.h#L193
)
Perhaps a workaround of _mm512_castsi512_si256 would be useful? Or does that
ICE as well? I can't repro the bug on Godbolt so IDK.
Doing _mm512_set1_epi8(c) and a separate _mm256_set1_epi8(c) doesn't CSE with
GCC, only clang. https://godbolt.org/z/uZ4lv- And if you leave out
-march=skylake-avx512 you get even worse asm from GCC.
More information about the Gcc-bugs
mailing list