https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65492
Andrew Pinski changed:
What|Removed |Added
Target Milestone|--- |6.0
Resolution|---
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65492
--- Comment #12 from Allan Jensen linux at carewolf dot com ---
I have a very crude fix for this.
First though, according to comments in tree-if-conv.c and earlier bugs on the
issues. If-conversion is suppposed to be conditional. It performed in
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65492
--- Comment #11 from Allan Jensen linux at carewolf dot com ---
Issues with slow cmov has been seen in several bug reports:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=53346
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=54073
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65492
--- Comment #10 from Allan Jensen linux at carewolf dot com ---
Just make things more complicated, I just tried the test on a Haswell, and
surprisingly disabling if-convert or tree-vectorize on -O3 has no effect on
performance, but activating
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65492
--- Comment #8 from Allan Jensen linux at carewolf dot com ---
You can remove the branches in the inner loop and still reproduce the issue.
There were no branches in the original code, I only added them to the reduced
case because I was using a
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65492
--- Comment #7 from Jan Hubicka hubicka at ucw dot cz ---
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65492
Richard Biener rguenth at gcc dot gnu.org changed:
What|Removed |Added
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65492
--- Comment #9 from Allan Jensen linux at carewolf dot com ---
Looking at the assembler, it does indeed appear that the only difference just
loop unrolling and if conversion.
After testing on another machine (and old PhenomII as opposed to the