mips: Avoid out-of-bounds access in mips_symbol_insns [PR98491]
An invalid use of MSA_SUPPORTED_MODE_P was causing an ICE on mips64el with -mmsa. The detailed analysis is posted on bugzilla. gcc/ChangeLog: 2021-02-17 Xi Ruoyao <xry111@mengyan1223.wang> PR target/98491 * config/mips/mips.c (mips_symbol_insns): Do not use MSA_SUPPORTED_MODE_P if mode is MAX_MACHINE_MODE.
This commit is contained in:
parent
78a6d0e30d
commit
06505e701d
@ -2381,7 +2381,7 @@ mips_symbol_insns (enum mips_symbol_type type, machine_mode mode)
|
|||||||
{
|
{
|
||||||
/* MSA LD.* and ST.* cannot support loading symbols via an immediate
|
/* MSA LD.* and ST.* cannot support loading symbols via an immediate
|
||||||
operand. */
|
operand. */
|
||||||
if (MSA_SUPPORTED_MODE_P (mode))
|
if (mode != MAX_MACHINE_MODE && MSA_SUPPORTED_MODE_P (mode))
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
return mips_symbol_insns_1 (type, mode) * (TARGET_MIPS16 ? 2 : 1);
|
return mips_symbol_insns_1 (type, mode) * (TARGET_MIPS16 ? 2 : 1);
|
||||||
|
Loading…
Reference in New Issue
Block a user