]> git.ipfire.org Git - thirdparty/gcc.git/commit
hppa: Add LRA support
authorJohn David Anglin <danglin@gcc.gnu.org>
Fri, 18 Oct 2024 15:28:23 +0000 (11:28 -0400)
committerJohn David Anglin <danglin@gcc.gnu.org>
Fri, 18 Oct 2024 15:28:23 +0000 (11:28 -0400)
commit44a81aaf73f795e6992cbfb98ec48480e5ca94ec
tree7cb4fd17e0ec98e5c6f19decb4b8d1f2717cab27
parentb039d06c9a810a3fab4c5eb9d50b0c7aff94b2d8
hppa: Add LRA support

LRA is not enabled as default since there are some new test fails
remaining to resolve.

2024-10-18  John David Anglin  <danglin@gcc.gnu.org>

gcc/ChangeLog:

PR target/113933
* config/pa/pa.cc (pa_use_lra_p): Declare.
(TARGET_LRA_P): Change define to pa_use_lra_p.
(pa_use_lra_p): New function.
(legitimize_pic_address): Also check lra_in_progress.
(pa_emit_move_sequence): Likewise.
(pa_legitimate_constant_p): Likewise.
(pa_legitimate_address_p): Likewise.
(pa_secondary_reload): For floating-point loads and stores,
return NO_REGS for REG and SUBREG operands.  Return
GENERAL_REGS for some shift register spills.
* config/pa/pa.opt: Add mlra option.
* config/pa/predicates.md (integer_store_memory_operand):
Also check lra_in_progress.
(floating_point_store_memory_operand): Likewise.
(reg_before_reload_operand): Likewise.
gcc/config/pa/pa.cc
gcc/config/pa/pa.opt
gcc/config/pa/predicates.md