Hi, This patch fixes ~230 internal compiler errors that showed up after the fix for PR 69764. After the patch, target backends need to explicitly specify mode for operand 2 of shift and rotate patterns - see md.texi mod at https://gcc.gnu.org/viewcvs/gcc/trunk/gcc/doc/md.texi?r1=233358&r2=233613&pathrev=233613.
The avr backend had VOIDmode as the mode for rotl SPN, and this patch sets it to the mode of the insn to fix the problem. Reg testing shows ICE fixes and no new failures. If this is ok, could someone commit please? I don't have commit access. Regards Senthil 2016-03-10 Senthil Kumar Selvaraj <senthil_kumar.selva...@atmel.com> * config/avr/avr.md (rotl<mode>3): Set mode for operand 2. diff --git gcc/config/avr/avr.md gcc/config/avr/avr.md index ff26f2e..c988446 100644 --- gcc/config/avr/avr.md +++ gcc/config/avr/avr.md @@ -3351,7 +3351,7 @@ (define_expand "rotl<mode>3" [(parallel [(set (match_operand:HISI 0 "register_operand" "") (rotate:HISI (match_operand:HISI 1 "register_operand" "") - (match_operand:VOID 2 "const_int_operand" ""))) + (match_operand:HISI 2 "const_int_operand" ""))) (clobber (match_dup 3))])] "" {