mips.md: Use move_operand in splitters for 64-bit moves.
authorRichard Sandiford <rsandifo@redhat.com>
Thu, 11 Mar 2004 08:25:27 +0000 (08:25 +0000)
committerRichard Sandiford <rsandifo@gcc.gnu.org>
Thu, 11 Mar 2004 08:25:27 +0000 (08:25 +0000)
commitfc31c7cacf38acd2182b45251d27f667e3747af3
tree7a46d8921f8baabb0d774cc567dfe9b475aa428a
parent81f2eadbedaf8048f749b2a6c7f550740ece94a4
mips.md: Use move_operand in splitters for 64-bit moves.

* config/mips/mips.md: Use move_operand in splitters for 64-bit moves.
(movdi, movsi, movhi, movqi, movsf, movdf): Remove predicates.
(*movdi_32bit_mips16, *movsi_mips16, *movhi_mips16, *movqi_mips16)
(*movsf_mips16, *movdf_mips16):  Name unnamed patterns.  Use
move_operand as source predicate in all cases.
(*movdi_32bit): Renamed from movdi_internal.  Remove 'F' constraint.
Test reg_or_0_operand.  Use move_operand as source predicate.
(*movdi_64bit): Renamed from movdi_internal2.  Test reg_or_0_operand.
(*movdi_64bit_mips16): Renamed from movdi_internal2_mips16.
(*movsi_internal): Renamed from movsi_internal.  Test reg_or_0_operand.
(movhi, movqi, movsf, movdf): Use mips_legitimize_move.
(*movhi_internal): Renamed from movhi_internal.  Test reg_or_0_operand.
Use move_operand as source predicate.  Remove 'K' constraint.
(*movqi_internal): Likewise movqi_internal.
(*movsf_hardfloat): Renamed from movsf_internal1.  Test
reg_or_0_operand.  Use move_operand as source predicate.
(*movsf_softfloat): Likewise movsf_internal2.
(*movdf_hardfloat_64bit): Likewise movsf_internal1a.
(*movdf_hardfloat_32bit): Likewise movsf_internal1b.
(*movdf_softfloat): Likewise movdf_internal2.
* config/mips/mips.c (move_operand): Match arbitrary CONST_INTs
for DImode if !TARGET_64BIT.
(mips_legitimize_move): Simplify accordingly.

From-SVN: r79309
gcc/ChangeLog
gcc/config/mips/mips.c
gcc/config/mips/mips.md