[Bug target/116145] Suboptimal SVE immediate synthesis
pinskia at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Tue Jul 30 18:17:27 GMT 2024
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=116145
Andrew Pinski <pinskia at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Keywords| |easyhack
--- Comment #2 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
```
/* We're duplicating a single value, but can't do better than
force it to memory and load from there. This handles things
like symbolic constants. */
elt_value = CONST_VECTOR_ENCODED_ELT (src, 0);
if (elt_value)
{
/* Load the element from memory if we can, otherwise move it into
a register and use a DUP. */
rtx op = force_const_mem (elt_mode, elt_value);
if (!op)
op = force_reg (elt_mode, elt_value);
return expand_vector_broadcast (mode, op);
}
```
Seems like we are forcing to constant memory too early ...
More information about the Gcc-bugs
mailing list