[Bug target/114513] [11/12/13/14 Regression] [aarch64] floating-point registers are used when GPRs are preferred
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114513 Bug 114513 depends on bug 114741, which changed state. Bug 114741 Summary: [14 regression] aarch64 sve: unnecessary fmov for scalar int bit operations https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114741 What|Removed |Added Status|ASSIGNED|RESOLVED Resolution|--- |FIXED
[Bug target/114513] [11/12/13/14 Regression] [aarch64] floating-point registers are used when GPRs are preferred
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114513 Jeffrey A. Law changed: What|Removed |Added Priority|P3 |P2 CC||law at gcc dot gnu.org
[Bug target/114513] [11/12/13/14 Regression] [aarch64] floating-point registers are used when GPRs are preferred
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114513 --- Comment #3 from Andrew Pinski --- Looks like r9-332-g43d0a8ee88460a added the ? there and caused the regression I do think it should be ^ since the reload (spill) case should use w while normally it try both, w and r. But I could be wrong.
[Bug target/114513] [11/12/13/14 Regression] [aarch64] floating-point registers are used when GPRs are preferred
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114513 Andrew Pinski changed: What|Removed |Added Known to work||8.5.0 Status|UNCONFIRMED |NEW Known to fail||9.3.0 Target Milestone|--- |11.5 Ever confirmed|0 |1 Summary|[aarch64] floating-point|[11/12/13/14 Regression] |registers are used when |[aarch64] floating-point |GPRs are preferred |registers are used when ||GPRs are preferred Last reconfirmed||2024-03-28 --- Comment #2 from Andrew Pinski --- So we have: ``` ;; Equal width integer to fp conversion. (define_insn "2" [(set (match_operand:GPF 0 "register_operand") (FLOATUORS:GPF (match_operand: 1 "register_operand")))] "TARGET_FLOAT" {@ [ cons: =0 , 1 ; attrs: type , arch ] [ w, w ; neon_int_to_fp_ , simd ] cvtf\t%0, %1 [ w, ?r ; f_cvti2f, fp] cvtf\t%0, %1 } ) ``` Notice the ? in there for r. Reading https://gcc.gnu.org/onlinedocs/gccint/Multi-Alternative.html maybe this should be ^ instead of ?. ^ is new as of GCC 5