[Bug target/70321] [6 Regression] STV generates less optimized code

2016-03-23 Thread hjl.tools at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70321 --- Comment #11 from H.J. Lu --- (In reply to Jakub Jelinek from comment #10) > Are the changes I've made sufficient enough that we can postpone the rest of > this for stage1? Now we got [hjl@gnu-6 pr70321]$ cat z.i void foo (long long ixi) {

[Bug target/70321] [6 Regression] STV generates less optimized code

2016-03-23 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70321 --- Comment #10 from Jakub Jelinek --- Are the changes I've made sufficient enough that we can postpone the rest of this for stage1?

[Bug target/70321] [6 Regression] STV generates less optimized code

2016-03-23 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70321 --- Comment #9 from Jakub Jelinek --- Author: jakub Date: Wed Mar 23 09:49:12 2016 New Revision: 234416 URL: https://gcc.gnu.org/viewcvs?rev=234416&root=gcc&view=rev Log: PR target/70321 * config/i386/i386.md (*anddi3_doubleword,

[Bug target/70321] [6 Regression] STV generates less optimized code

2016-03-22 Thread hjl.tools at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70321 --- Comment #8 from H.J. Lu --- (In reply to Ilya Enkovich from comment #7) > (In reply to Jakub Jelinek from comment #6) > > Why couldn't STV just "vectorize" AND and NOT patterns and let the combiner > > combine that in the vectorized code? >

[Bug target/70321] [6 Regression] STV generates less optimized code

2016-03-22 Thread ienkovich at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70321 --- Comment #7 from Ilya Enkovich --- (In reply to Jakub Jelinek from comment #6) > Why couldn't STV just "vectorize" AND and NOT patterns and let the combiner > combine that in the vectorized code? I think the only thing we miss for that is cor

[Bug target/70321] [6 Regression] STV generates less optimized code

2016-03-22 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70321 --- Comment #6 from Jakub Jelinek --- (In reply to Ilya Enkovich from comment #5) > (In reply to Jakub Jelinek from comment #4) > > For stage1, I wonder if it can't move earlier, say before the combiner. If > > it could, then we could split the

[Bug target/70321] [6 Regression] STV generates less optimized code

2016-03-22 Thread ienkovich at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70321 Ilya Enkovich changed: What|Removed |Added CC||ienkovich at gcc dot gnu.org --- Comment

[Bug target/70321] [6 Regression] STV generates less optimized code

2016-03-22 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70321 Jakub Jelinek changed: What|Removed |Added CC||jakub at gcc dot gnu.org --- Comment #4

[Bug target/70321] [6 Regression] STV generates less optimized code

2016-03-20 Thread hjl.tools at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70321 --- Comment #3 from H.J. Lu --- Should STV split DImode early if STV is known to not profitable?

[Bug target/70321] [6 Regression] STV generates less optimized code

2016-03-20 Thread hjl.tools at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70321 --- Comment #2 from H.J. Lu --- or and xor have the same issue: [hjl@gnu-tools-1 bitwise-1]$ cat or.i extern long long x; void foo (long long ixi) { x = ixi | 14348907; } [hjl@gnu-tools-1 bitwise-1]$ make or.s /export/build/gnu/gcc/build-x86

[Bug target/70321] [6 Regression] STV generates less optimized code

2016-03-20 Thread hjl.tools at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70321 --- Comment #1 from H.J. Lu --- "and" is also less optimized: [hjl@gnu-tools-1 bitwise-1]$ cat and.i extern long long x; void foo (long long ixi) { x = ixi & 14348907; } [hjl@gnu-tools-1 bitwise-1]$ make and.s /export/build/gnu/gcc/build-x86

[Bug target/70321] [6 Regression] STV generates less optimized code

2016-03-20 Thread hjl.tools at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70321 H.J. Lu changed: What|Removed |Added Status|UNCONFIRMED |NEW Last reconfirmed|