[Bug target/82580] Optimize comparisons for __int128 on x86-64

2024-02-01 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82580 Uroš Bizjak changed: What|Removed |Added Status|REOPENED|RESOLVED Resolution|---

[Bug target/82580] Optimize comparisons for __int128 on x86-64

2024-01-22 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82580 Uroš Bizjak changed: What|Removed |Added Status|RESOLVED|REOPENED Resolution|FIXED

[Bug target/82580] Optimize comparisons for __int128 on x86-64

2023-07-07 Thread roger at nextmovesoftware dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82580 Roger Sayle changed: What|Removed |Added CC||roger at nextmovesoftware dot com ---

[Bug target/82580] Optimize comparisons for __int128 on x86-64

2017-10-19 Thread morwenn29 at hotmail dot fr
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82580 --- Comment #15 from Morwenn --- That was insanely fast, thanks a lot! :)

[Bug target/82580] Optimize comparisons for __int128 on x86-64

2017-10-19 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82580 Jakub Jelinek changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution|---

[Bug target/82580] Optimize comparisons for __int128 on x86-64

2017-10-19 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82580 --- Comment #13 from Jakub Jelinek --- Author: jakub Date: Thu Oct 19 08:37:04 2017 New Revision: 253884 URL: https://gcc.gnu.org/viewcvs?rev=253884=gcc=rev Log: PR target/82580 * config/i386/i386.md (setcc + movzbl to xor +

[Bug target/82580] Optimize comparisons for __int128 on x86-64

2017-10-18 Thread uros at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82580 --- Comment #12 from uros at gcc dot gnu.org --- Author: uros Date: Wed Oct 18 20:19:05 2017 New Revision: 253867 URL: https://gcc.gnu.org/viewcvs?rev=253867=gcc=rev Log: PR target/82580 * config/i386/i386-modes.def (CCGZ): New

[Bug target/82580] Optimize comparisons for __int128 on x86-64

2017-10-18 Thread ubizjak at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82580 Uroš Bizjak changed: What|Removed |Added Attachment #42393|0 |1 is obsolete|

[Bug target/82580] Optimize comparisons for __int128 on x86-64

2017-10-18 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82580 --- Comment #10 from Jakub Jelinek --- BTW, perhaps powerpc64, aarch64 or other targets could benefit from similar approach. Shall we clone this PR for those?

[Bug target/82580] Optimize comparisons for __int128 on x86-64

2017-10-18 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82580 --- Comment #9 from Jakub Jelinek --- Created attachment 42394 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=42394=edit gcc8-pr82580-peephole2.patch Untested incremental patch with the 2 peepholes.

[Bug target/82580] Optimize comparisons for __int128 on x86-64

2017-10-18 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82580 --- Comment #8 from Jakub Jelinek --- The fact that flags is live is the reason why the (define_peephole2 [(parallel [(set (reg FLAGS_REG) (match_operand 0)) (match_operand 4)]) (set (match_operand:QI 1 "register_operand")

[Bug target/82580] Optimize comparisons for __int128 on x86-64

2017-10-18 Thread ubizjak at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82580 --- Comment #7 from Uroš Bizjak --- (In reply to Jakub Jelinek from comment #6) > i.e. for the flags we first clear %eax and then setX %al, but for f2 > cmpq%rdi, %rdx > sbbq%rsi, %rcx > setb%al >

[Bug target/82580] Optimize comparisons for __int128 on x86-64

2017-10-18 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82580 --- Comment #6 from Jakub Jelinek --- Nice. I wonder about one further thing. With your patch, we generate e.g. in f0: xorq%rdx, %rdi xorq%rcx, %rsi xorl%eax, %eax orq %rsi, %rdi sete

[Bug target/82580] Optimize comparisons for __int128 on x86-64

2017-10-18 Thread ubizjak at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82580 Uroš Bizjak changed: What|Removed |Added Assignee|uros at gcc dot gnu.org|ubizjak at gmail dot com ---

[Bug target/82580] Optimize comparisons for __int128 on x86-64

2017-10-18 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82580 Jakub Jelinek changed: What|Removed |Added Assignee|jakub at gcc dot gnu.org |uros at gcc dot gnu.org ---

[Bug target/82580] Optimize comparisons for __int128 on x86-64

2017-10-18 Thread ubizjak at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82580 --- Comment #3 from Uroš Bizjak --- Created attachment 42393 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=42393=edit Prototype patch Attached patch generates: foobar: cmpq%rdx, %rdi sbbq%rcx, %rsi setb

[Bug target/82580] Optimize comparisons for __int128 on x86-64

2017-10-18 Thread ubizjak at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82580 --- Comment #2 from Uroš Bizjak --- (In reply to Jakub Jelinek from comment #1) > I'll have a look. Oh, I already have a patch...

[Bug target/82580] Optimize comparisons for __int128 on x86-64

2017-10-18 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82580 Jakub Jelinek changed: What|Removed |Added Status|UNCONFIRMED |ASSIGNED Last reconfirmed|