pa.c (emit_move_sequence): Use cint_ok_for_move to check whether a constant can be...
authorJohn David Anglin <dave@hiauly1.hia.nrc.ca>
Sat, 10 Nov 2001 00:22:52 +0000 (00:22 +0000)
committerJeff Law <law@gcc.gnu.org>
Sat, 10 Nov 2001 00:22:52 +0000 (17:22 -0700)
commitb8e42321fb18771c9b259b8c21d683cd9acafa21
tree79a5af00c32d7c55a013dc57aa81ba569b45c19b
parent5d69f816bcfd32f2171b31e09249a8e03acedd5e
pa.c (emit_move_sequence): Use cint_ok_for_move to check whether a constant can be loaded in a single...

* pa.c (emit_move_sequence): Use cint_ok_for_move to check whether a
constant can be loaded in a single instruction to a register.  When
loading immediate constants, use PLUS instead of HIGH/LO_SUM.  Use
depdi for insertion of most significant 32-bits on 64-bit hosts.
* pa.h (LEGITIMATE_CONSTANT_P): Accept constants that can be built
with ldil/ldo/depdi instruction sequence on 64-bit hosts.
* pa.md: New addmove pattern for adding constant_int to HImode
register and moving result to HImode register.  Remove HImode HIGH
and LO_SUM patterns.

From-SVN: r46908
gcc/ChangeLog
gcc/config/pa/pa.c
gcc/config/pa/pa.h
gcc/config/pa/pa.md