Hello, My last change that converted some of the SH patterns to use iterators introduced a problem on SH2A, where I missed to pass '<MODE>mode' instead of 'QImode' in one of the patterns. Committed as obvious.
Cheers, Oleg ChangeLog: * config/sh/sh.md (*extend<mode>si2_compact_mem_disp): Pass iterated mode to sh_legitimate_index_p instead of QImode.
Index: gcc/config/sh/sh.md =================================================================== --- gcc/config/sh/sh.md (revision 190840) +++ gcc/config/sh/sh.md (working copy) @@ -5576,7 +5576,7 @@ (plus:SI (match_operand:SI 1 "arith_reg_operand" "%r,r,r") (match_operand:SI 2 "const_int_operand" "<disp04>,N,<disp12>")))))] - "TARGET_SH2A && sh_legitimate_index_p (QImode, operands[2], true, true)" + "TARGET_SH2A && sh_legitimate_index_p (<MODE>mode, operands[2], true, true)" "@ mov.<bw> @(%O2,%1),%0 mov.<bw> @%1,%0