https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93721
Andrew Pinski changed:
What|Removed |Added
Resolution|--- |DUPLICATE
Status|NEW
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93721
Nikita Kniazev changed:
What|Removed |Added
CC||nok.raven at gmail dot com
--- Comment
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93721
Dávid Bolvanský changed:
What|Removed |Added
CC||david.bolvansky at gmail dot
com
---
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93721
--- Comment #5 from Richard Biener ---
Store merging and bswap should be merged - there's PRs for bswap not working
for "stores" (because those are not seeds it works from). And bswap would
need to be enhanced to detect more permutation patterns
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93721
--- Comment #4 from Andrew Pinski ---
(In reply to Andrew Pinski from comment #3)
> Note I will file f0 not producing rolq soon.
Filed as PR 93722.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93721
--- Comment #3 from Andrew Pinski ---
For unsigned long:
void f(unsigned long *a)
{
unsigned long t0 = a[0];
unsigned long t1 = a[1];
a[1] = t0;
a[0] = t1;
}
void f0(unsigned long *a)
{
__uint128_t t0 = ((__uint128_t *)a)[0];
__uint12
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93721
--- Comment #2 from Andrew Pinski ---
A simple testcase:
void f(unsigned short *a)
{
unsigned short t0 = a[0];
unsigned short t1 = a[1];
a[1] = t0;
a[0] = t1;
}
CUT
Should produce the same as:
void f0(unsigned short *a)
{
uns
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93721
Andrew Pinski changed:
What|Removed |Added
Status|UNCONFIRMED |NEW
Last reconfirmed|