[PATCH] Create the *logue in the same order as before (PR77962)

Jeff Law law@redhat.com
Thu Oct 13 18:13:00 GMT 2016

On 10/13/2016 09:15 AM, Segher Boessenkool wrote:
> PR77962 shows Go failing on 32-bit x86.  This happens because the i386
> port requires the split stack prologue to be created before the normal
> prologue, and my previous patch changed it to be the other way around.
> This patch changes it back.  Things will be exactly as before for targets
> that do not do shrink-wrapping for separate components.  For targets
> that *do* support it, all three prologue/epilogue creation functions
> will now be called twice for functions that have anything wrapped
> separately (instead of just the prologue created twice).
> Bootstrapping+testing on powerpc64-linux {-m64,-m32}, all languages;
> and on x86_64-linux all,go,obj-c++ (i.e. no ada).
> Is this okay for trunk if testing succeeds?  And sorry for the breakage.
> Segher
> 2016-10-13  Segher Boessenkool  <segher@kernel.crashing.org>
> 	PR bootstrap/77962
> 	* function.c (thread_prologue_and_epilogue_insns): Call all
> 	make_*logue_seq in the same order as traditional.  Call them
> 	all a second time if shrink_wrapped-separate.

More information about the Gcc-patches mailing list