https://gcc.gnu.org/bugzilla/show_bug.cgi?id=122327
Bug ID: 122327
Summary: early sra vs normal sra
Product: gcc
Version: 16.0
Status: UNCONFIRMED
Keywords: internal-improvement
Severity: enhancement
Priority: P3
Component: tree-optimization
Assignee: unassigned at gcc dot gnu.org
Reporter: pinskia at gcc dot gnu.org
Target Milestone: ---
So the only difference between early and late SRA is the check on
is_va_list_type (PR 41089). But r6-91-gf8e89441bc5518, changed it such that
VA_ARG is NOT expanded until after stadarg so there is NO direct references to
the fields of the va_list struct.
The only thing is there can be a copies of the struct in some cases. But I
doubt that will cause any issues for SRA. Plus we should do copy prop on
va_lists in some cases ...
So maybe we should remove ESRA and just change it to SRA.