aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorUros Bizjak <ubizjak@gmail.com>2015-05-15 07:04:32 +0200
committerUros Bizjak <uros@gcc.gnu.org>2015-05-15 07:04:32 +0200
commit944ce67865dc2a15dd2eded977935cbe3545f2b4 (patch)
tree24e0ef038c835d8451c829aeb6bb99cd02034cf6
parent7eb05850a844a5e24f1bb66718324596c034ae8e (diff)
downloadgcc-944ce67865dc2a15dd2eded977935cbe3545f2b4.zip
gcc-944ce67865dc2a15dd2eded977935cbe3545f2b4.tar.gz
gcc-944ce67865dc2a15dd2eded977935cbe3545f2b4.tar.bz2
alpha.md (extendqidi2): Use general_operand instead of some_operand for operand[1] predicate.
* config/alpha/alpha.md (extendqidi2): Use general_operand instead of some_operand for operand[1] predicate. (extendhidi2): Ditto. (cbranchdi4): Use general_operand instead of some_operand for operand[1] and operands[2] predicates. (cstoredi4): Ditto. * config/alpha/predicates.md (some_operand): Remove unused predicate. (some_ni_operand): Ditto. From-SVN: r223211
-rw-r--r--gcc/ChangeLog11
-rw-r--r--gcc/config/alpha/alpha.md12
-rw-r--r--gcc/config/alpha/predicates.md14
3 files changed, 17 insertions, 20 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 9b6e112..d621d03 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,16 @@
2015-05-15 Uros Bizjak <ubizjak@gmail.com>
+ * config/alpha/alpha.md (extendqidi2): Use general_operand
+ instead of some_operand for operand[1] predicate.
+ (extendhidi2): Ditto.
+ (cbranchdi4): Use general_operand instead of some_operand
+ for operand[1] and operands[2] predicates.
+ (cstoredi4): Ditto.
+ * config/alpha/predicates.md (some_operand): Remove unused predicate.
+ (some_ni_operand): Ditto.
+
+2015-05-15 Uros Bizjak <ubizjak@gmail.com>
+
* config/alpha/alpha.c (alpha_extract_integer): Do not handle
CONST_WIDE_INT and CONST_DOUBLE. Assert CONST_INT_P (x).
(alpha_legitimate_constant_p) <case CONST_WIDE_INT>: Check high and
diff --git a/gcc/config/alpha/alpha.md b/gcc/config/alpha/alpha.md
index 762080b..81c2d4f 100644
--- a/gcc/config/alpha/alpha.md
+++ b/gcc/config/alpha/alpha.md
@@ -1235,7 +1235,7 @@
(define_expand "extendqidi2"
[(set (match_operand:DI 0 "register_operand")
- (sign_extend:DI (match_operand:QI 1 "some_operand")))]
+ (sign_extend:DI (match_operand:QI 1 "general_operand")))]
""
{
if (TARGET_BWX)
@@ -1280,7 +1280,7 @@
(define_expand "extendhidi2"
[(set (match_operand:DI 0 "register_operand")
- (sign_extend:DI (match_operand:HI 1 "some_operand")))]
+ (sign_extend:DI (match_operand:HI 1 "general_operand")))]
""
{
if (TARGET_BWX)
@@ -2902,8 +2902,8 @@
(define_expand "cbranchdi4"
[(use (match_operator 0 "alpha_cbranch_operator"
- [(match_operand:DI 1 "some_operand")
- (match_operand:DI 2 "some_operand")]))
+ [(match_operand:DI 1 "general_operand")
+ (match_operand:DI 2 "general_operand")]))
(use (match_operand 3))]
""
"alpha_emit_conditional_branch (operands, DImode); DONE;")
@@ -2936,8 +2936,8 @@
(define_expand "cstoredi4"
[(use (match_operator:DI 1 "alpha_cbranch_operator"
- [(match_operand:DI 2 "some_operand")
- (match_operand:DI 3 "some_operand")]))
+ [(match_operand:DI 2 "general_operand")
+ (match_operand:DI 3 "general_operand")]))
(clobber (match_operand:DI 0 "register_operand"))]
""
{
diff --git a/gcc/config/alpha/predicates.md b/gcc/config/alpha/predicates.md
index b33044d..2a76710 100644
--- a/gcc/config/alpha/predicates.md
+++ b/gcc/config/alpha/predicates.md
@@ -148,20 +148,6 @@
return REGNO_REG_CLASS (REGNO (op)) == GENERAL_REGS;
})
-;; Return 1 if OP is something that can be reloaded into a register;
-;; if it is a MEM, it need not be valid.
-(define_predicate "some_operand"
- (ior (match_code "reg,mem,const_int,const_wide_int,const_double,const_vector,
- label_ref,symbol_ref,const,high")
- (and (match_code "subreg")
- (match_test "some_operand (SUBREG_REG (op), VOIDmode)"))))
-
-;; Likewise, but don't accept constants.
-(define_predicate "some_ni_operand"
- (ior (match_code "reg,mem")
- (and (match_code "subreg")
- (match_test "some_ni_operand (SUBREG_REG (op), VOIDmode)"))))
-
;; Return 1 if OP is a valid operand for the source of a move insn.
(define_predicate "input_operand"
(match_code "label_ref,symbol_ref,const,high,reg,subreg,mem,