[Bug target/94962] Suboptimal AVX2 code for _mm256_zextsi128_si256(_mm_set1_epi8(-1))

2022-09-25 Thread cvs-commit at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94962 --- Comment #10 from CVS Commits --- The master branch has been updated by hongtao Liu : https://gcc.gnu.org/g:9c9cf4f087f28dc3bf8dfa769380b3b58728a0f7 commit r13-2845-g9c9cf4f087f28dc3bf8dfa769380b3b58728a0f7 Author: Hu, Lin1 Date: Mon Sep

[Bug target/94962] Suboptimal AVX2 code for _mm256_zextsi128_si256(_mm_set1_epi8(-1))

2022-09-22 Thread crazylht at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94962 --- Comment #9 from Hongtao.liu --- Fixed in trunk.

[Bug target/94962] Suboptimal AVX2 code for _mm256_zextsi128_si256(_mm_set1_epi8(-1))

2022-09-22 Thread cvs-commit at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94962 --- Comment #8 from CVS Commits --- The master branch has been updated by hongtao Liu : https://gcc.gnu.org/g:a282f086ef26d90e9785e992cd09a0d118b24695 commit r13-2804-ga282f086ef26d90e9785e992cd09a0d118b24695 Author: Hu, Lin1 Date: Tue Sep

[Bug target/94962] Suboptimal AVX2 code for _mm256_zextsi128_si256(_mm_set1_epi8(-1))

2020-05-19 Thread n...@self-evident.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94962 --- Comment #7 from Nemo --- (In reply to Hongtao.liu from comment #6) > > vmovdqa xmm0, xmm0 is not redundant here, it would clear up 128-256 bit > which is the meaning of `zext`. No, it is redundant because "vpcmpeqd xmm0, xmm0, xmm0" already

[Bug target/94962] Suboptimal AVX2 code for _mm256_zextsi128_si256(_mm_set1_epi8(-1))

2020-05-19 Thread crazylht at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94962 --- Comment #6 from Hongtao.liu --- (In reply to Nemo from comment #5) > (In reply to Jakub Jelinek from comment #2) > > I would be happy if GCC could just emit optimal code (single vcmpeqd > instruction) for this useful constant: > >

[Bug target/94962] Suboptimal AVX2 code for _mm256_zextsi128_si256(_mm_set1_epi8(-1))

2020-05-18 Thread n...@self-evident.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94962 --- Comment #5 from Nemo --- (In reply to Jakub Jelinek from comment #2) I would be happy if GCC could just emit optimal code (single vcmpeqd instruction) for this useful constant: _mm256_set_m128i(_mm_setzero_si128(), _mm_set1_epi8(-1))

[Bug target/94962] Suboptimal AVX2 code for _mm256_zextsi128_si256(_mm_set1_epi8(-1))

2020-05-18 Thread crazylht at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94962 --- Comment #4 from Hongtao.liu --- (In reply to Jakub Jelinek from comment #2) > But such an instruction isn't always redundant, it really depends on what > the previous setter of the register did, whether the upper 128 bit of the > 256-bit

[Bug target/94962] Suboptimal AVX2 code for _mm256_zextsi128_si256(_mm_set1_epi8(-1))

2020-05-18 Thread crazylht at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94962 --- Comment #3 from Hongtao.liu --- You're right, from intel SDM: VEX.128 encoded version: Bits (MAXVL-1:128) of the destination register are zeroed.

[Bug target/94962] Suboptimal AVX2 code for _mm256_zextsi128_si256(_mm_set1_epi8(-1))

2020-05-18 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94962 Jakub Jelinek changed: What|Removed |Added CC||jakub at gcc dot gnu.org --- Comment #2

[Bug target/94962] Suboptimal AVX2 code for _mm256_zextsi128_si256(_mm_set1_epi8(-1))

2020-05-18 Thread crazylht at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94962 Hongtao.liu changed: What|Removed |Added CC||crazylht at gmail dot com --- Comment #1