diff options
author | Will Schmidt <will_schmidt@vnet.ibm.com> | 2011-12-17 15:07:31 -0500 |
---|---|---|
committer | Ulrich Drepper <drepper@gmail.com> | 2011-12-17 15:07:31 -0500 |
commit | 91d2a8453f501c4fc6cadde9cf00e6cced17a40c (patch) | |
tree | 512de598cd4294aa681266dad0dfea09f9ca8570 /sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext-common.S | |
parent | a1267ba1c6967afdc9ed9af16e3b42f5a240988e (diff) | |
download | glibc-91d2a8453f501c4fc6cadde9cf00e6cced17a40c.tar glibc-91d2a8453f501c4fc6cadde9cf00e6cced17a40c.tar.gz glibc-91d2a8453f501c4fc6cadde9cf00e6cced17a40c.tar.bz2 glibc-91d2a8453f501c4fc6cadde9cf00e6cced17a40c.zip |
Simplify code for accessing powerpc GOT
Diffstat (limited to 'sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext-common.S')
-rw-r--r-- | sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext-common.S | 16 |
1 files changed, 7 insertions, 9 deletions
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext-common.S b/sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext-common.S index 62efee2dce..19dfcf8402 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext-common.S +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext-common.S @@ -1,5 +1,5 @@ /* Save current context and jump to a new context. - Copyright (C) 2005, 2006, 2008, 2009 Free Software Foundation, Inc. + Copyright (C) 2005, 2006, 2008, 2009, 2011 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -146,10 +146,9 @@ ENTRY(__CONTEXT_FUNC_NAME) # ifdef PIC mflr r8 - bcl 20,31,1f -1: mflr r7 - addis r7,r7,_GLOBAL_OFFSET_TABLE_-1b@ha - addi r7,r7,_GLOBAL_OFFSET_TABLE_-1b@l + SETUP_GOT_ACCESS(r7,got_label) + addis r7,r7,_GLOBAL_OFFSET_TABLE_-got_label@ha + addi r7,r7,_GLOBAL_OFFSET_TABLE_-got_label@l # ifdef SHARED lwz r7,_rtld_global_ro@got(r7) mtlr r8 @@ -299,10 +298,9 @@ ENTRY(__CONTEXT_FUNC_NAME) # ifdef PIC mflr r8 # ifdef HAVE_ASM_PPC_REL16 - bcl 20,31,5f -5: mflr r7 - addis r7,r7,_GLOBAL_OFFSET_TABLE_-5b@ha - addi r7,r7,_GLOBAL_OFFSET_TABLE_-5b@l + SETUP_GOT_ACCESS(r7,got_label) + addis r7,r7,_GLOBAL_OFFSET_TABLE_-got_label@ha + addi r7,r7,_GLOBAL_OFFSET_TABLE_-got_label@l # else bl _GLOBAL_OFFSET_TABLE_@local-4 mflr r7 |