Hi, Please find attached the patch "rx_bit_insn.patch" which supports bit operations on memory operand. Please review the same and let me know if there should be any modifications in it.
Tested with rx-elf. No new Regressions. ChangeLog 2012-11-06 Naveen H.S <navee...@kpitcummins.com> * config/rx/constraints.md (Uint03, Intu1, Intu0, Intsz, Intso): New Constraints. * config/rx/predicates.md (rx_constbit_operand): New Predicates that allows value from 0 to 7. * gcc/config/rx/rx.c (print_operand): Add %D and %E operand codes for bit manipulations. * gcc/config/rx/rx.md (iorbset_mem, iorbset_reg, bset): New instructions for setting a memory bit. (xorbnot_mem, xorbnot_reg): New instructions for inverting a memory bit. (andbclr_mem, andbclr_reg, bclr, insv_mem_imm): New instructions for clearing a memory bit. (insv): Modify to support bit manipulation operations on memory directly. Thanks & Regards, Naveen
rx_bit_insn.patch
Description: rx_bit_insn.patch