http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28831
--- Comment #16 from Chip Salzenberg <chip at pobox dot com> 2012-08-06 00:57:13 UTC --- Addendum: In cut down test cases where I only pass by value or only return by value, but not both, I find no extra stores, which is good; but I still find a lot of unnecessary frame allocation (either $24 or $40, depending), and tail call is still missing.