diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 637241fbf56..9c490d28e44 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -2,6 +2,9 @@ * config/rx/rx.md: Add peephole to remove redundant extensions after loads. + (bitset_in_memory): Use rx_restricted_mem_operand. + (bitinvert_in_memory): Likewise. + (bitclr_in_memory): Likewise. 2011-05-17 Kazuhio Inaoka Nick Clifton diff --git a/gcc/config/rx/rx.md b/gcc/config/rx/rx.md index 227fe310059..070f248bbdf 100644 --- a/gcc/config/rx/rx.md +++ b/gcc/config/rx/rx.md @@ -1831,7 +1831,7 @@ ) (define_insn "*bitset_in_memory" - [(set (match_operand:QI 0 "memory_operand" "+Q") + [(set (match_operand:QI 0 "rx_restricted_mem_operand" "+Q") (ior:QI (ashift:QI (const_int 1) (match_operand:QI 1 "nonmemory_operand" "ri")) (match_dup 0)))] @@ -1852,7 +1852,7 @@ ) (define_insn "*bitinvert_in_memory" - [(set (match_operand:QI 0 "memory_operand" "+Q") + [(set (match_operand:QI 0 "rx_restricted_mem_operand" "+Q") (xor:QI (ashift:QI (const_int 1) (match_operand:QI 1 "nonmemory_operand" "ri")) (match_dup 0)))] @@ -1875,7 +1875,7 @@ ) (define_insn "*bitclr_in_memory" - [(set (match_operand:QI 0 "memory_operand" "+Q") + [(set (match_operand:QI 0 "rx_restricted_mem_operand" "+Q") (and:QI (not:QI (ashift:QI (const_int 1)