[Bug target/94037] Runtime varies 2x just by order of two int assignments

2020-03-05 Thread ncm at cantrip dot org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94037 --- Comment #10 from ncm at cantrip dot org --- (In reply to Uroš Bizjak from comment #9) > (In reply to ncm from comment #8) > > It seems worth mentioning that the round trip through > > L1 cache is just a workaround for the optimizer refusing

[Bug target/94037] Runtime varies 2x just by order of two int assignments

2020-03-05 Thread ubizjak at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94037 --- Comment #9 from Uroš Bizjak --- (In reply to ncm from comment #8) > It seems worth mentioning that the round trip through > L1 cache is just a workaround for the optimizer refusing > to ever emit two CMOV instructions in a basic block. > >

[Bug target/94037] Runtime varies 2x just by order of two int assignments

2020-03-05 Thread ncm at cantrip dot org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94037 --- Comment #8 from ncm at cantrip dot org --- It seems worth mentioning that the round trip through L1 cache is just a workaround for the optimizer refusing to ever emit two CMOV instructions in a basic block. Recognizing and replacing the con

[Bug target/94037] Runtime varies 2x just by order of two int assignments

2020-03-05 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94037 --- Comment #7 from Richard Biener --- (In reply to Uroš Bizjak from comment #5) > (In reply to Richard Biener from comment #4) > > (In reply to Uroš Bizjak from comment #3) > > > (In reply to Jakub Jelinek from comment #2) > > > > The > > > >

[Bug target/94037] Runtime varies 2x just by order of two int assignments

2020-03-05 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94037 --- Comment #6 from Richard Biener --- (In reply to Jakub Jelinek from comment #2) > The > setge %sil > movzbl %sil, %esi > to > xorl%esi, %esi > setge %sil > transformation is something GCC does too with

[Bug target/94037] Runtime varies 2x just by order of two int assignments

2020-03-05 Thread ubizjak at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94037 --- Comment #5 from Uroš Bizjak --- (In reply to Richard Biener from comment #4) > (In reply to Uroš Bizjak from comment #3) > > (In reply to Jakub Jelinek from comment #2) > > > The > > > setge %sil > > > movzbl %sil, %esi > >

[Bug target/94037] Runtime varies 2x just by order of two int assignments

2020-03-05 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94037 --- Comment #4 from Richard Biener --- (In reply to Uroš Bizjak from comment #3) > (In reply to Jakub Jelinek from comment #2) > > The > > setge %sil > > movzbl %sil, %esi > > to > > xorl%esi, %esi > > setge

[Bug target/94037] Runtime varies 2x just by order of two int assignments

2020-03-05 Thread ubizjak at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94037 --- Comment #3 from Uroš Bizjak --- (In reply to Jakub Jelinek from comment #2) > The > setge %sil > movzbl %sil, %esi > to > xorl%esi, %esi > setge %sil This is quite important conversion, as the later a

[Bug target/94037] Runtime varies 2x just by order of two int assignments

2020-03-05 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94037 Jakub Jelinek changed: What|Removed |Added CC||jakub at gcc dot gnu.org,

[Bug target/94037] Runtime varies 2x just by order of two int assignments

2020-03-05 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94037 Richard Biener changed: What|Removed |Added Keywords||missed-optimization Target|