re PR target/50751 (SH Target: Displacement addressing does not work for QImode and...
authorOleg Endo <olegendo@gcc.gnu.org>
Thu, 5 Apr 2012 18:43:45 +0000 (18:43 +0000)
committerOleg Endo <olegendo@gcc.gnu.org>
Thu, 5 Apr 2012 18:43:45 +0000 (18:43 +0000)
commit9b9ad23f888c646982731e8c9c797885559bdb4f
treeee5004d6ad7de25c4591a8c0bcbc8a8e817248bb
parent14f986ed7a69f4f21b7312328fbef1747b12b6db
re PR target/50751 (SH Target: Displacement addressing does not work for QImode and HImode)

PR target/50751
* config/sh/sh.c (sh_find_mov_disp_adjust): Take machine_mode as the
first argument instead of mode size.  Move displacement calculations
to ...
(mov_insn_size, max_mov_insn_displacement, mov_insn_alignment_mask):
... these new functions.
(disp_adjust): Remove max_mov_disp field.
(sh_legitimate_index_p): Use max_mov_insn_displacement and
mov_insn_alignment_mask.
(sh_address_cost): Use max_mov_insn_displacement.

From-SVN: r186169
gcc/ChangeLog
gcc/config/sh/sh.c