diff options
author | Hariharan Sandanagobalane <hariharan@picochip.com> | 2009-02-16 13:46:51 +0000 |
---|---|---|
committer | Hariharan Sandanagobalane <hariharans@gcc.gnu.org> | 2009-02-16 13:46:51 +0000 |
commit | 68e53db04b301d894017b85a3a34d80e87bec66e (patch) | |
tree | 933303f89eb8f4f03d1b6d47ae3f1686b9843acc /gcc/config/picochip | |
parent | 09e361bbde5b4f9c74e846ff49360a42d25ec2d5 (diff) | |
download | gcc-68e53db04b301d894017b85a3a34d80e87bec66e.tar.gz |
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
Diffstat (limited to 'gcc/config/picochip')
-rw-r--r-- | gcc/config/picochip/constraints.md | 4 | ||||
-rw-r--r-- | gcc/config/picochip/picochip.md | 6 |
2 files changed, 3 insertions, 7 deletions
diff --git a/gcc/config/picochip/constraints.md b/gcc/config/picochip/constraints.md index 2b100b6c79e..8178bc211a8 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 fbe2280e123..b1c643216fc 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])) |