Fix ICE on sh

gcc/
	PR target/103722
	* config/sh/sh.cc (sh_register_move_cost): Avoid cost "2" (which
	is special) for various scenarios.
This commit is contained in:
Vladimir Makarov 2022-05-28 12:08:38 -06:00 committed by Jeff Law
parent ad8f6e2392
commit ce1580252e
1 changed files with 6 additions and 0 deletions

View File

@ -10762,6 +10762,12 @@ sh_register_move_cost (machine_mode mode,
&& ! REGCLASS_HAS_GENERAL_REG (dstclass))
return 2 * ((GET_MODE_SIZE (mode) + 7) / 8U);
if (((dstclass == FP_REGS || dstclass == DF_REGS)
&& (srcclass == PR_REGS))
|| ((srcclass == FP_REGS || srcclass == DF_REGS)
&& (dstclass == PR_REGS)))
return 7;
return 2 * ((GET_MODE_SIZE (mode) + 3) / 4U);
}