caller-save.c (init_caller_save): If we were unable to find a simple insn which meets all its constraints to save...

* caller-save.c (init_caller_save): If we were unable to
	find a simple insn which meets all its constraints to save
	and restore with a single insn in a mode, then set
	regno_save_mode to VOIDmode to insure that this mode is never
	used to caller-save the	current register.

From-SVN: r2038
This commit is contained in:
Jeff Law 1992-09-02 17:08:44 -06:00
parent c07c29b98c
commit c515799cd1

View File

@ -223,11 +223,15 @@ init_caller_save ()
ok &= constrain_operands (reg_restore_code[i][j], 1);
}
if (! ok && j == 1)
{
call_fixed_regs[i] = 1;
SET_HARD_REG_BIT (call_fixed_reg_set, i);
}
if (! ok)
{
regno_save_mode[i][j] = VOIDmode;
if (j == 1)
{
call_fixed_regs[i] = 1;
SET_HARD_REG_BIT (call_fixed_reg_set, i);
}
}
}
end_sequence ();