Sebastian Perta <sebastian.pe...@renesas.com> writes: > * config/rl78/rl78.c (rl78_note_reg_set): fixed dead reg check > for non-QImode registers
This is OK. Thanks! Note: in the future; ChangeLog entries should be provided separate from the patch; they rarely apply cleanly anyway. > Index: config/rl78/rl78.c > =================================================================== > --- config/rl78/rl78.c(revision 256590) > +++ config/rl78/rl78.c(working copy) > @@ -3792,7 +3792,7 @@ > rl78_note_reg_set (char *dead, rtx d, rtx insn) > { > int r, i; > - > + bool is_dead; > if (GET_CODE (d) == MEM) > rl78_note_reg_uses (dead, XEXP (d, 0), insn); > > @@ -3799,9 +3799,15 @@ > if (GET_CODE (d) != REG) > return; > > + /* Do not mark the reg unused unless all QImode parts of it are dead. */ > r = REGNO (d); > - if (dead [r]) > - add_reg_note (insn, REG_UNUSED, gen_rtx_REG (GET_MODE (d), r)); > + is_dead = true; > + for (i = 0; i < GET_MODE_SIZE (GET_MODE (d)); i ++) > + if (!dead [r + i]) > + is_dead = false; > + if(is_dead) > +add_reg_note (insn, REG_UNUSED, gen_rtx_REG (GET_MODE (d), r)); > if (dump_file) > fprintf (dump_file, "note set reg %d size %d\n", r, GET_MODE_SIZE > (GET_MODE (d))); > for (i = 0; i < GET_MODE_SIZE (GET_MODE (d)); i ++)