summaryrefslogtreecommitdiff
path: root/gcc/config/mips/predicates.md
diff options
context:
space:
mode:
authorrsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4>2007-08-08 15:40:27 +0000
committerrsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4>2007-08-08 15:40:27 +0000
commit0b14f86aab71ae9c3e73f308372d19f17d156c01 (patch)
tree3316463566d687eaeaa605c042e7ff6cca105e65 /gcc/config/mips/predicates.md
parent87a97e78b066b0fba668334bc0b259a77038a1f5 (diff)
downloadgcc-0b14f86aab71ae9c3e73f308372d19f17d156c01.tar.gz
gcc/
* config/mips/mips-protos.h (mips_split_symbol): Add a mode and an "rtx *" argument. Return a bool. * config/mips/mips.c (mips_split_symbol): Accept arbitrary source values and return true if they can be split. Take the same kind of mode argument as mips_symbol_insns. Add a "lo_sum_out" parameter and store the lo_sum there if nonnull. Use the symbol type to determine whether a $gp or HIGH is needed. (mips_legitimize_address): Update call to mips_split_symbol and simplify accordingly. (mips_legitimize_const_move): Likewise. * config/mips/mips.md: In the combine define_split, check mips_split_symbol instead of splittable_symbolic_operand. Update use of mips_split_symbol in the generator code. * config/mips/predicates.md (splittable_symbolic_operand): Delete. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127298 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/mips/predicates.md')
-rw-r--r--gcc/config/mips/predicates.md10
1 files changed, 0 insertions, 10 deletions
diff --git a/gcc/config/mips/predicates.md b/gcc/config/mips/predicates.md
index 1171291f508..308dd636f57 100644
--- a/gcc/config/mips/predicates.md
+++ b/gcc/config/mips/predicates.md
@@ -154,16 +154,6 @@
return !LUI_INT (op) && !SMALL_INT (op) && !SMALL_INT_UNSIGNED (op);
})
-;; A legitimate symbolic operand that takes more than one instruction
-;; to load.
-(define_predicate "splittable_symbolic_operand"
- (match_code "const,symbol_ref,label_ref")
-{
- enum mips_symbol_type symbol_type;
- return (mips_symbolic_constant_p (op, SYMBOL_CONTEXT_LEA, &symbol_type)
- && mips_split_p[symbol_type]);
-})
-
(define_predicate "move_operand"
(match_operand 0 "general_operand")
{