public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* [google/main][RFA] backport trunk morestack changes (issue4465045)
@ 2011-05-04 19:51 Chris Demetriou
  2011-05-04 22:13 ` Diego Novillo
  0 siblings, 1 reply; 2+ messages in thread
From: Chris Demetriou @ 2011-05-04 19:51 UTC (permalink / raw)
  To: reply, dnovillo, gcc-patches

Diego,

Testing w/ ubuntu lucid native bootstrap + check (C/C++), with --with-pic
and numerous other flags, looking good.

OK for google/main (assuming tests succeed)?


chris
--
[libgcc/ChangeLog.google-main]
2011-05-04  Chris Demetriou  <cgd@google.com>

	Backport from trunk r173391:
	2011-05-04  Chris Demetriou  <cgd@google.com>

	* config/i386/morestack.S (__i686.get_pc_thunk.bx): Rename to...
	(__x86.get_pc_thunk.bx): ...this.
	(__morestack): Adjust for rename, remove undef of __i686.

	Backport from trunk r173345:
	2011-05-03  Chris Demetriou  <cgd@google.com>

	* config/i386/morestack.S (__i686.get_pc_thunk.bx): New.

Index: libgcc/config/i386/morestack.S
===================================================================
--- libgcc/config/i386/morestack.S	(revision 173353)
+++ libgcc/config/i386/morestack.S	(working copy)
@@ -278,8 +278,7 @@
 	movl	4(%esp),%eax		# Function argument.
 	movl	%eax,(%esp)
 #ifdef __PIC__
-#undef __i686
-	call	__i686.get_pc_thunk.bx	# %ebx may not be set up for us.
+	call	__x86.get_pc_thunk.bx	# %ebx may not be set up for us.
 	addl	$_GLOBAL_OFFSET_TABLE_, %ebx
 	call	_Unwind_Resume@PLT	# Resume unwinding.
 #else
@@ -449,6 +448,23 @@
 	.size	__morestack, . - __morestack
 #endif
 
+#if !defined(__x86_64__) && defined(__PIC__)
+# Output the thunk to get PC into bx, since we use it above.
+	.section	.text.__x86.get_pc_thunk.bx,"axG",@progbits,__x86.get_pc_thunk.bx,comdat
+	.globl	__x86.get_pc_thunk.bx
+	.hidden	__x86.get_pc_thunk.bx
+#ifdef __ELF__
+	.type	__x86.get_pc_thunk.bx, @function
+#endif
+__x86.get_pc_thunk.bx:
+	.cfi_startproc
+	movl	(%esp), %ebx
+	ret
+	.cfi_endproc
+#ifdef __ELF__
+	.size	__x86.get_pc_thunk.bx, . - __x86.get_pc_thunk.bx
+#endif
+#endif
 
 # The exception table.  This tells the personality routine to execute
 # the exception handler.

--
This patch is available for review at http://codereview.appspot.com/4465045

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [google/main][RFA] backport trunk morestack changes (issue4465045)
  2011-05-04 19:51 [google/main][RFA] backport trunk morestack changes (issue4465045) Chris Demetriou
@ 2011-05-04 22:13 ` Diego Novillo
  0 siblings, 0 replies; 2+ messages in thread
From: Diego Novillo @ 2011-05-04 22:13 UTC (permalink / raw)
  To: Chris Demetriou; +Cc: reply, gcc-patches

On Wed, May 4, 2011 at 15:50, Chris Demetriou <cgd@google.com> wrote:

> 2011-05-04  Chris Demetriou  <cgd@google.com>
>
>        Backport from trunk r173391:
>        2011-05-04  Chris Demetriou  <cgd@google.com>
>
>        * config/i386/morestack.S (__i686.get_pc_thunk.bx): Rename to...
>        (__x86.get_pc_thunk.bx): ...this.
>        (__morestack): Adjust for rename, remove undef of __i686.
>
>        Backport from trunk r173345:
>        2011-05-03  Chris Demetriou  <cgd@google.com>
>
>        * config/i386/morestack.S (__i686.get_pc_thunk.bx): New.

OK.


Diego.

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2011-05-04 22:10 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-05-04 19:51 [google/main][RFA] backport trunk morestack changes (issue4465045) Chris Demetriou
2011-05-04 22:13 ` Diego Novillo

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).