diff options
author | cgd <cgd@138bc75d-0d04-0410-961f-82ee72b054a4> | 2011-05-03 23:22:03 +0000 |
---|---|---|
committer | cgd <cgd@138bc75d-0d04-0410-961f-82ee72b054a4> | 2011-05-03 23:22:03 +0000 |
commit | 0bb50d0427c8939e57ef01a81134e28359473701 (patch) | |
tree | c77ac9f8eee6e6a00f4ac69e456e0e26bd7fb086 /libgcc | |
parent | 30620c71d35eba5aed924aac95d0af67857cda87 (diff) | |
download | ppe42-gcc-0bb50d0427c8939e57ef01a81134e28359473701.tar.gz ppe42-gcc-0bb50d0427c8939e57ef01a81134e28359473701.zip |
2011-05-03 Chris Demetriou <cgd@google.com>
* config/i386/morestack.S (__i686.get_pc_thunk.bx): New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173345 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libgcc')
-rw-r--r-- | libgcc/ChangeLog | 4 | ||||
-rw-r--r-- | libgcc/config/i386/morestack.S | 18 |
2 files changed, 22 insertions, 0 deletions
diff --git a/libgcc/ChangeLog b/libgcc/ChangeLog index 0892085c05f..ac99ddb7d34 100644 --- a/libgcc/ChangeLog +++ b/libgcc/ChangeLog @@ -1,3 +1,7 @@ +2011-05-03 Chris Demetriou <cgd@google.com> + + * config/i386/morestack.S (__i686.get_pc_thunk.bx): New. + 2011-03-22 Joseph Myers <joseph@codesourcery.com> * config.host (alpha*-*-gnu*, arc-*-elf*, arm*-*-netbsd*, diff --git a/libgcc/config/i386/morestack.S b/libgcc/config/i386/morestack.S index 10fa1fdf73a..5db5e502848 100644 --- a/libgcc/config/i386/morestack.S +++ b/libgcc/config/i386/morestack.S @@ -449,6 +449,24 @@ __morestack: .size __morestack, . - __morestack #endif +#if !defined(__x86_64__) && defined(__PIC__) +# Output the thunk to get PC into bx, since we use it above. +# (__i686 was already undef'd above; don't need to worry about it here.) + .section .text.__i686.get_pc_thunk.bx,"axG",@progbits,__i686.get_pc_thunk.bx,comdat + .globl __i686.get_pc_thunk.bx + .hidden __i686.get_pc_thunk.bx +#ifdef __ELF__ + .type __i686.get_pc_thunk.bx, @function +#endif +__i686.get_pc_thunk.bx: + .cfi_startproc + movl (%esp), %ebx + ret + .cfi_endproc +#ifdef __ELF__ + .size __i686.get_pc_thunk.bx, . - __i686.get_pc_thunk.bx +#endif +#endif # The exception table. This tells the personality routine to execute # the exception handler. |