aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHariharan Sandanagobalane <hariharan@picochip.com>2009-02-16 13:46:51 +0000
committerHariharan Sandanagobalane <hariharans@gcc.gnu.org>2009-02-16 13:46:51 +0000
commit68e53db04b301d894017b85a3a34d80e87bec66e (patch)
tree933303f89eb8f4f03d1b6d47ae3f1686b9843acc
parent09e361bbde5b4f9c74e846ff49360a42d25ec2d5 (diff)
downloadgcc-68e53db04b301d894017b85a3a34d80e87bec66e.zip
gcc-68e53db04b301d894017b85a3a34d80e87bec66e.tar.gz
gcc-68e53db04b301d894017b85a3a34d80e87bec66e.tar.bz2
picochip.md (lea_add): Allow any nonimmediate in the lea_add.
* config/picochip/picochip.md (lea_add): Allow any nonimmediate in the lea_add. Reload eventually constraints it properly. * config/picochip/constraints.md : Remove the target constraint "b", since it is not needed anymore. From-SVN: r144202
-rw-r--r--gcc/ChangeLog7
-rw-r--r--gcc/config/picochip/constraints.md4
-rw-r--r--gcc/config/picochip/picochip.md6
3 files changed, 10 insertions, 7 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index d4b7860..a881d27 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,10 @@
+2009-02-16 Hariharan Sandanagobalane <hariharan@picochip.com>
+
+ * config/picochip/picochip.md (lea_add): Allow any nonimmediate
+ in the lea_add. Reload eventually constraints it properly.
+ * config/picochip/constraints.md : Remove the target constraint
+ "b", since it is not needed anymore.
+
2009-02-16 Jakub Jelinek <jakub@redhat.com>
* gthr-dce.h: Uglify function parameter and local variable names.
diff --git a/gcc/config/picochip/constraints.md b/gcc/config/picochip/constraints.md
index 2b100b6..8178bc2 100644
--- a/gcc/config/picochip/constraints.md
+++ b/gcc/config/picochip/constraints.md
@@ -55,10 +55,6 @@
(and (match_code "mem")
(match_test "picochip_absolute_memory_operand(op,mode) == 1")))
-(define_constraint "b"
- "See if this is an address in memory, non-strict version"
- (match_test "picochip_legitimate_address_p(mode,op,0) == 1"))
-
(define_register_constraint "k" "FRAME_REGS"
"Frame regs")
(define_register_constraint "f" "PTR_REGS"
diff --git a/gcc/config/picochip/picochip.md b/gcc/config/picochip/picochip.md
index fbe2280..b1c6432 100644
--- a/gcc/config/picochip/picochip.md
+++ b/gcc/config/picochip/picochip.md
@@ -1154,7 +1154,7 @@
;; ALU 1 where it cannot modify CC.
(define_insn "*lea_add"
- [(set (match_operand:HI 0 "register_operand" "=r")
+ [(set (match_operand:HI 0 "nonimmediate_operand" "=r")
(plus:HI (match_operand:HI 1 "register_operand" "r")
(match_operand:HI 2 "immediate_operand" "i")))]
""
@@ -1164,8 +1164,8 @@
;; "p" constraint cannot be specified for operands other than
;; address_operand, hence the extra pattern below.
(define_insn "*lea_move"
- [(set (match_operand:HI 0 "nonimmediate_operand" "=r,r")
- (match_operand:HI 1 "address_operand" "p,b"))]
+ [(set (match_operand:HI 0 "nonimmediate_operand" "=r")
+ (match_operand:HI 1 "address_operand" "p"))]
""
{
if (REG == GET_CODE(operands[1]))