]> git.ipfire.org Git - thirdparty/gcc.git/commit
predicates.md (splittable_const_int_operand): New, split from move_operand.
authorRichard Sandiford <richard@codesourcery.com>
Thu, 16 Mar 2006 20:24:42 +0000 (20:24 +0000)
committerRichard Sandiford <rsandifo@gcc.gnu.org>
Thu, 16 Mar 2006 20:24:42 +0000 (20:24 +0000)
commitea462dd06fa40bc09069b7d9f72951708a3700a2
tree0d9e288be90577a8c05e18e72391446f59072ca7
parent5d2a73d520f9b0dbad52954eed380c45e72044f0
predicates.md (splittable_const_int_operand): New, split from move_operand.

* config/mips/predicates.md (splittable_const_int_operand): New,
split from move_operand.
(splittable_symbolic_operand): New.
(move_operand): Add commentary.  Use splittable_const_int_operand.
Inline mips_atomic_symbolic_constant_p.
* config/mips/mips.md: Add combine splitters for handling moves
of splittable_const_int_operands and splittable_symbolic_operands.
* config/mips/mips-protos.h (mips_atomic_symbolic_constant_p): Delete.
(mips_split_symbol): Declare.
(mips_move_integer): Declare.
* config/mips/mips.c (mips_split_p): Make global.
(TARGET_MIN_ANCHOR_OFFSET): Override default.
(TARGET_MAX_ANCHOR_OFFSET): Likewise.
(TARGET_USE_BLOCKS_FOR_CONSTANT_P): Likewise.
(TARGET_USE_ANCHORS_FOR_SYMBOL_P): Likewise.
(mips_offset_within_object_p): Handle block symbols.
(mips_atomic_symbolic_constant_p): Delete.
(mips_cannot_force_const_mem): Return false for constants that
mips_legitimize_move can handle.
(mips_use_blocks_for_constant_p): New function.
(mips_split_symbol): Make global.
(mips_move_integer): Likewise.  Add a temporary register argument.
(mips_legitimize_const_move): Use splittable_const_int_operand and
splittable_symbolic_operand.
(mips_use_anchors_for_symbol_p): New function.
* config/mips/mips.h: Protect externs with !USED_FOR_TARGET.
(mips_split_p): Declare.

From-SVN: r112150
gcc/ChangeLog
gcc/config/mips/mips-protos.h
gcc/config/mips/mips.c
gcc/config/mips/mips.h
gcc/config/mips/mips.md
gcc/config/mips/predicates.md