http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51323

--- Comment #6 from Jakub Jelinek <jakub at gcc dot gnu.org> 2011-11-28 
20:38:59 UTC ---
That would be too big hammer approach.  While the fix is in arch independent
code, on most architectures you could hit it only with > 6 resp. > 8 arguments
and with similar scenario earlier callee argument stack slot initialized from
later caller's argument stack slot.  Furthermore I don't think you could hit it
before 4.6 because MEM_REF wasn't supported there, so the address would be
expanded without a temporary pseudo and the checking routine would see it right
away.
Using this testcase and perhaps a modified one additionally too which will have
in both the caller and tail callee say 16 extra dummy integer arguments passed
through should be more than enough.  Not to mention that having workarounds for
such compiler bugs in packages is just weird, if the compiler is buggy, the
user should just upgrade it to a fixed version.

Reply via email to