aboutsummaryrefslogtreecommitdiff
path: root/gcc/config
diff options
context:
space:
mode:
authorPeter Bergner <bergner@vnet.ibm.com>2006-12-13 13:19:03 -0600
committerPeter Bergner <bergner@gcc.gnu.org>2006-12-13 13:19:03 -0600
commit8c1249f9652e78aa0dd94f9548e4675ebf3e600f (patch)
treea3f908a3433ea8a7b7170937c4987b77ea227176 /gcc/config
parentc53fa1740ae95a29c87a0cff19641657d85eb894 (diff)
downloadgcc-8c1249f9652e78aa0dd94f9548e4675ebf3e600f.zip
gcc-8c1249f9652e78aa0dd94f9548e4675ebf3e600f.tar.gz
gcc-8c1249f9652e78aa0dd94f9548e4675ebf3e600f.tar.bz2
re PR middle-end/30191 (GCC error: in eliminate_regs_in_insn, at reload1.c:3126)
PR middle-end/30191 Revert: * reload1.c (eliminate_regs_in_insn): Merge the plus_src "else" and the offset == 0 "then" clauses. * config/rs6000/predicates.md (gpc_reg_operand): Check for reload_in_progress. From-SVN: r119844
Diffstat (limited to 'gcc/config')
-rw-r--r--gcc/config/rs6000/predicates.md7
1 files changed, 2 insertions, 5 deletions
diff --git a/gcc/config/rs6000/predicates.md b/gcc/config/rs6000/predicates.md
index 0b4f7df..6aefe2d 100644
--- a/gcc/config/rs6000/predicates.md
+++ b/gcc/config/rs6000/predicates.md
@@ -81,13 +81,10 @@
(and (match_code "const_int")
(match_test "INTVAL (op) > 0 && exact_log2 (INTVAL (op)) >= 0")))
-;; Return 1 if op is a register that is not special. We accept anything
-;; during reload_in_progress since eliminate_regs_in_insn() sometimes
-;; creates invalid insns which will be fixed up later in reload.
+;; Return 1 if op is a register that is not special.
(define_predicate "gpc_reg_operand"
(and (match_operand 0 "register_operand")
- (match_test "(reload_in_progress
- || GET_CODE (op) != REG
+ (match_test "(GET_CODE (op) != REG
|| (REGNO (op) >= ARG_POINTER_REGNUM
&& !XER_REGNO_P (REGNO (op)))
|| REGNO (op) < MQ_REGNO)