[Bug target/115974] sat_add, etc. vector patterns not done for aarch64 (non-sve)

2024-07-31 Thread tnfchris at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115974 Tamar Christina changed: What|Removed |Added CC||tnfchris at gcc dot gnu.org

[Bug target/115974] sat_add, etc. vector patterns not done for aarch64 (non-sve)

2024-07-31 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115974 Andrew Pinski changed: What|Removed |Added Assignee|pinskia at gcc dot gnu.org |unassigned at gcc dot gnu.org

[Bug target/115974] sat_add, etc. vector patterns not done for aarch64 (non-sve)

2024-07-17 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115974 --- Comment #3 from Andrew Pinski --- here is testcase for ustrunc at least (note llvm does not use uqxtn here even though it could): ``` void ustrunc0(unsigned long long *__restrict__ a, unsigned * __restrict__ b) { int i = 0;

[Bug target/115974] sat_add, etc. vector patterns not done for aarch64 (non-sve)

2024-07-17 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115974 --- Comment #2 from Andrew Pinski --- ssadd_optab -> SQADD usadd_optab -> UQADD sssub_optab -> SQSUB ussub_optab -> UQSUB (q) ustrunc_optab -> UQXTN sstrunc_optab -> SQXTN (aarch64_qmovn)