[Bug target/94343] [10 Regression] invalid AVX512VL vpternlogd instruction emitted for -march=knl

2020-03-30 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94343 Jakub Jelinek changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution|---

[Bug target/94343] [10 Regression] invalid AVX512VL vpternlogd instruction emitted for -march=knl

2020-03-30 Thread cvs-commit at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94343 --- Comment #18 from CVS Commits --- The master branch has been updated by Jakub Jelinek : https://gcc.gnu.org/g:5abbfd3cd36342df530410033844584d8b85e187 commit r10-7460-g5abbfd3cd36342df530410033844584d8b85e187 Author: Jakub Jelinek Date:

[Bug target/94343] [10 Regression] invalid AVX512VL vpternlogd instruction emitted for -march=knl

2020-03-27 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94343 --- Comment #17 from Jakub Jelinek --- The patch I've posted - https://gcc.gnu.org/pipermail/gcc-patches/2020-March/542774.html - solves it by disabling the problematic masked cases in the condition. Or we could just disable the masking on the

[Bug target/94343] [10 Regression] invalid AVX512VL vpternlogd instruction emitted for -march=knl

2020-03-27 Thread jbeulich at suse dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94343 --- Comment #16 from jbeulich at suse dot com --- Oh, right - I didn't pay attention to the insn permitting masking to be used. Then still non-masked uses ought to be permitted, perhaps by having a VI48_AVX512VL one permitting masking and a

[Bug target/94343] [10 Regression] invalid AVX512VL vpternlogd instruction emitted for -march=knl

2020-03-27 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94343 --- Comment #15 from Jakub Jelinek --- (In reply to jbeulich from comment #11) > (In reply to Jakub Jelinek from comment #7) > > Though, there are other issues. There is only vpternlog{d,q}, so for > > V*[QH]Imode we shouldn't pretend we have

[Bug target/94343] [10 Regression] invalid AVX512VL vpternlogd instruction emitted for -march=knl

2020-03-27 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94343 --- Comment #14 from Jakub Jelinek --- (In reply to jbeulich from comment #13) > As to using 512-bit operations even on more narrow input types - is this > correct when e.g. subsequently source code upcasts the vector? I.e. would > such an

[Bug target/94343] [10 Regression] invalid AVX512VL vpternlogd instruction emitted for -march=knl

2020-03-27 Thread jbeulich at suse dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94343 --- Comment #13 from jbeulich at suse dot com --- As to using 512-bit operations even on more narrow input types - is this correct when e.g. subsequently source code upcasts the vector? I.e. would such an upcast be carried out by emitting an insn

[Bug target/94343] [10 Regression] invalid AVX512VL vpternlogd instruction emitted for -march=knl

2020-03-27 Thread jbeulich at suse dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94343 --- Comment #12 from jbeulich at suse dot com --- (In reply to Jakub Jelinek from comment #8) > Created attachment 48128 [details] > gcc10-pr94343.patch > > Updated patch. A variant to that would be 4 separate patterns I guess, not > sure if

[Bug target/94343] [10 Regression] invalid AVX512VL vpternlogd instruction emitted for -march=knl

2020-03-27 Thread jbeulich at suse dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94343 --- Comment #11 from jbeulich at suse dot com --- (In reply to Jakub Jelinek from comment #7) > Though, there are other issues. There is only vpternlog{d,q}, so for > V*[QH]Imode we shouldn't pretend we have masking support. Why would this be?

[Bug target/94343] [10 Regression] invalid AVX512VL vpternlogd instruction emitted for -march=knl

2020-03-26 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94343 --- Comment #10 from Jakub Jelinek --- --- gcc/testsuite/gcc.target/i386/avx512f-pr94343.c.jj 2020-03-26 17:47:40.008654504 +0100 +++ gcc/testsuite/gcc.target/i386/avx512f-pr94343.c 2020-03-26 17:48:37.169811375 +0100 @@ -0,0 +1,12 @@ +/*

[Bug target/94343] [10 Regression] invalid AVX512VL vpternlogd instruction emitted for -march=knl

2020-03-26 Thread kretz at kde dot org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94343 --- Comment #9 from Matthias Kretz (Vir) --- (In reply to Jakub Jelinek from comment #8) > Created attachment 48128 [details] > gcc10-pr94343.patch The avx512vl-pr94343.c test should ideally fail because `_mm_andnot_si128 ((__m128i) (~v ^ a),

[Bug target/94343] [10 Regression] invalid AVX512VL vpternlogd instruction emitted for -march=knl

2020-03-26 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94343 Jakub Jelinek changed: What|Removed |Added Attachment #48127|0 |1 is obsolete|

[Bug target/94343] [10 Regression] invalid AVX512VL vpternlogd instruction emitted for -march=knl

2020-03-26 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94343 --- Comment #7 from Jakub Jelinek --- Though, there are other issues. There is only vpternlog{d,q}, so for V*[QH]Imode we shouldn't pretend we have masking support.

[Bug target/94343] [10 Regression] invalid AVX512VL vpternlogd instruction emitted for -march=knl

2020-03-26 Thread hjl.tools at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94343 --- Comment #6 from H.J. Lu --- (In reply to Jakub Jelinek from comment #5) > Created attachment 48127 [details] > gcc10-pr94343.patch > > That of course doesn't work if the input operand is memory. This should. LGTM. Thanks.

[Bug target/94343] [10 Regression] invalid AVX512VL vpternlogd instruction emitted for -march=knl

2020-03-26 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94343 --- Comment #5 from Jakub Jelinek --- Created attachment 48127 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=48127=edit gcc10-pr94343.patch That of course doesn't work if the input operand is memory. This should.

[Bug target/94343] [10 Regression] invalid AVX512VL vpternlogd instruction emitted for -march=knl

2020-03-26 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94343 --- Comment #4 from Jakub Jelinek --- I was thinking about --- gcc/config/i386/sse.md.jj 2020-03-06 11:35:46.284074858 +0100 +++ gcc/config/i386/sse.md 2020-03-26 17:35:23.690515228 +0100 @@ -12800,10 +12800,18 @@ (xor:VI

[Bug target/94343] [10 Regression] invalid AVX512VL vpternlogd instruction emitted for -march=knl

2020-03-26 Thread hjl.tools at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94343 --- Comment #3 from H.J. Lu --- Created attachment 48126 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=48126=edit A patch Jakub, this is what I have. Feel free to ignore it.

[Bug target/94343] [10 Regression] invalid AVX512VL vpternlogd instruction emitted for -march=knl

2020-03-26 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94343 Jakub Jelinek changed: What|Removed |Added Assignee|unassigned at gcc dot gnu.org |jakub at gcc dot gnu.org

[Bug target/94343] [10 Regression] invalid AVX512VL vpternlogd instruction emitted for -march=knl

2020-03-26 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94343 Martin Liška changed: What|Removed |Added CC||jbeulich at suse dot com,