int qqq (int a) { int result; result = bar (a); return result;} is gimplified to:
qqq (a) { int D.2147; int D.2148; int result; D.2147 = bar (a); result = D.2147; D.2148 = result; return D.2148; } The D.2147 variable is redundant, the result of "bar" can be directly assigned to "result". Doing this just increases the memory footprint... (PR27800 is about the fact that D.2148 is also redundant) -- Summary: inefficient gimplification of function calls Product: gcc Version: unknown Status: UNCONFIRMED Severity: normal Priority: P3 Component: tree-optimization AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: dann at godzilla dot ics dot uci dot edu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27810