[Bug target/41021] [ARM] Suboptimal code generated to store a struct
--- Comment #4 from jamborm at gcc dot gnu dot org 2009-09-01 14:01 --- Indeed. SRA should not trigger here, that would make it too eager in other cases (thus I'm removing myself from the CC, feel free to add me again if there's any discussion that might concern me or SRA again). -- jamborm at gcc dot gnu dot org changed: What|Removed |Added CC|jamborm at gcc dot gnu dot | |org | http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41021
[Bug target/41021] [ARM] Suboptimal code generated to store a struct
--- Comment #2 from steven at gcc dot gnu dot org 2009-08-10 07:16 --- SRA expert - CC -- steven at gcc dot gnu dot org changed: What|Removed |Added CC||jamborm at gcc dot gnu dot ||org Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Last reconfirmed|-00-00 00:00:00 |2009-08-10 07:16:06 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41021
[Bug target/41021] [ARM] Suboptimal code generated to store a struct
--- Comment #3 from rguenth at gcc dot gnu dot org 2009-08-10 09:07 --- There is only one struct copy, so it isn't SRAs business to optimize anything here. Instead the burden is put on expand and the backend to figure out the most efficient way to do this block copy. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41021
[Bug target/41021] [ARM] Suboptimal code generated to store a struct
--- Comment #1 from wiml at dot org 2009-08-10 05:18 --- Workaround notes: Changing the structure assignment to multiple assignments, one for each field, produces noticeably better code; and changing the argument list to pass the structure fields individually produces code that looks good to me (even though the same values are passed in the same registers). So I guess this is a missed opportunity for SRA. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41021