[Bug rtl-optimization/84101] [7/8 Regression] -O3 and -ftree-vectorize trying too hard for function returning trivial pair-of-uint64_t-structure
rguenth at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Tue Jan 30 09:03:00 GMT 2018
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84101
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |ASSIGNED
Assignee|unassigned at gcc dot gnu.org |rguenth at gcc dot gnu.org
--- Comment #2 from Richard Biener <rguenth at gcc dot gnu.org> ---
Created attachment 43287
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=43287&action=edit
prototype patch
So the following would be a hack to avoid vectorizing this. Hack because it
would be confused by intermediate aggregate copies before returning (that
will eventually be elided). Hack because for CONCATs we _might_ be able to
undo this at expansion, avoiding the spill dance. Likewise for PARALLELs.
Likewise properly sized integer regs could be handled with a reg-reg move or be
aliased to vector regs.
Thus some RTL foo is needed here to sanitize the hard_function_value usage.
Anybody?
More information about the Gcc-bugs
mailing list