mirror of
https://sourceware.org/git/glibc.git
synced 2024-11-14 01:00:07 +00:00
PowerPC LE _dl_hwcap access
http://sourceware.org/ml/libc-alpha/2013-08/msg00091.html More LE support, correcting word accesses to _dl_hwcap. * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext-common.S: Use HIWORD/LOWORD. * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext-common.S: Ditto. * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext-common.S: Ditto.
This commit is contained in:
parent
9b874b2f1e
commit
02f04a6c7f
@ -1,3 +1,10 @@
|
|||||||
|
2013-10-04 Alan Modra <amodra@gmail.com>
|
||||||
|
|
||||||
|
* sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext-common.S: Use
|
||||||
|
HIWORD/LOWORD.
|
||||||
|
* sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext-common.S: Ditto.
|
||||||
|
* sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext-common.S: Ditto.
|
||||||
|
|
||||||
2013-10-04 Alan Modra <amodra@gmail.com>
|
2013-10-04 Alan Modra <amodra@gmail.com>
|
||||||
|
|
||||||
* sysdeps/powerpc/longjmp.c: Use proper symbol versioning macros.
|
* sysdeps/powerpc/longjmp.c: Use proper symbol versioning macros.
|
||||||
|
@ -151,15 +151,15 @@ ENTRY(__CONTEXT_FUNC_NAME)
|
|||||||
# ifdef SHARED
|
# ifdef SHARED
|
||||||
lwz r7,_rtld_global_ro@got(r7)
|
lwz r7,_rtld_global_ro@got(r7)
|
||||||
mtlr r8
|
mtlr r8
|
||||||
lwz r7,RTLD_GLOBAL_RO_DL_HWCAP_OFFSET+4(r7)
|
lwz r7,RTLD_GLOBAL_RO_DL_HWCAP_OFFSET+LOWORD(r7)
|
||||||
# else
|
# else
|
||||||
lwz r7,_dl_hwcap@got(r7)
|
lwz r7,_dl_hwcap@got(r7)
|
||||||
mtlr r8
|
mtlr r8
|
||||||
lwz r7,4(r7)
|
lwz r7,LOWORD(r7)
|
||||||
# endif
|
# endif
|
||||||
# else
|
# else
|
||||||
lis r7,(_dl_hwcap+4)@ha
|
lis r7,(_dl_hwcap+LOWORD)@ha
|
||||||
lwz r7,(_dl_hwcap+4)@l(r7)
|
lwz r7,(_dl_hwcap+LOWORD)@l(r7)
|
||||||
# endif
|
# endif
|
||||||
andis. r7,r7,(PPC_FEATURE_HAS_ALTIVEC >> 16)
|
andis. r7,r7,(PPC_FEATURE_HAS_ALTIVEC >> 16)
|
||||||
|
|
||||||
|
@ -79,15 +79,15 @@ ENTRY(__CONTEXT_FUNC_NAME)
|
|||||||
# ifdef SHARED
|
# ifdef SHARED
|
||||||
lwz r7,_rtld_global_ro@got(r7)
|
lwz r7,_rtld_global_ro@got(r7)
|
||||||
mtlr r8
|
mtlr r8
|
||||||
lwz r7,RTLD_GLOBAL_RO_DL_HWCAP_OFFSET+4(r7)
|
lwz r7,RTLD_GLOBAL_RO_DL_HWCAP_OFFSET+LOWORD(r7)
|
||||||
# else
|
# else
|
||||||
lwz r7,_dl_hwcap@got(r7)
|
lwz r7,_dl_hwcap@got(r7)
|
||||||
mtlr r8
|
mtlr r8
|
||||||
lwz r7,4(r7)
|
lwz r7,LOWORD(r7)
|
||||||
# endif
|
# endif
|
||||||
#else
|
#else
|
||||||
lis r7,(_dl_hwcap+4)@ha
|
lis r7,(_dl_hwcap+LOWORD)@ha
|
||||||
lwz r7,(_dl_hwcap+4)@l(r7)
|
lwz r7,(_dl_hwcap+LOWORD)@l(r7)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef __CONTEXT_ENABLE_FPRS
|
#ifdef __CONTEXT_ENABLE_FPRS
|
||||||
|
@ -152,15 +152,15 @@ ENTRY(__CONTEXT_FUNC_NAME)
|
|||||||
# ifdef SHARED
|
# ifdef SHARED
|
||||||
lwz r7,_rtld_global_ro@got(r7)
|
lwz r7,_rtld_global_ro@got(r7)
|
||||||
mtlr r8
|
mtlr r8
|
||||||
lwz r7,RTLD_GLOBAL_RO_DL_HWCAP_OFFSET+4(r7)
|
lwz r7,RTLD_GLOBAL_RO_DL_HWCAP_OFFSET+LOWORD(r7)
|
||||||
# else
|
# else
|
||||||
lwz r7,_dl_hwcap@got(r7)
|
lwz r7,_dl_hwcap@got(r7)
|
||||||
mtlr r8
|
mtlr r8
|
||||||
lwz r7,4(r7)
|
lwz r7,LOWORD(r7)
|
||||||
# endif
|
# endif
|
||||||
# else
|
# else
|
||||||
lis r7,(_dl_hwcap+4)@ha
|
lis r7,(_dl_hwcap+LOWORD)@ha
|
||||||
lwz r7,(_dl_hwcap+4)@l(r7)
|
lwz r7,(_dl_hwcap+LOWORD)@l(r7)
|
||||||
# endif
|
# endif
|
||||||
|
|
||||||
# ifdef __CONTEXT_ENABLE_VRS
|
# ifdef __CONTEXT_ENABLE_VRS
|
||||||
@ -308,14 +308,14 @@ ENTRY(__CONTEXT_FUNC_NAME)
|
|||||||
mtlr r8
|
mtlr r8
|
||||||
# ifdef SHARED
|
# ifdef SHARED
|
||||||
lwz r7,_rtld_global_ro@got(r7)
|
lwz r7,_rtld_global_ro@got(r7)
|
||||||
lwz r7,RTLD_GLOBAL_RO_DL_HWCAP_OFFSET+4(r7)
|
lwz r7,RTLD_GLOBAL_RO_DL_HWCAP_OFFSET+LOWORD(r7)
|
||||||
# else
|
# else
|
||||||
lwz r7,_dl_hwcap@got(r7)
|
lwz r7,_dl_hwcap@got(r7)
|
||||||
lwz r7,4(r7)
|
lwz r7,LOWORD(r7)
|
||||||
# endif
|
# endif
|
||||||
# else
|
# else
|
||||||
lis r7,(_dl_hwcap+4)@ha
|
lis r7,(_dl_hwcap+LOWORD)@ha
|
||||||
lwz r7,(_dl_hwcap+4)@l(r7)
|
lwz r7,(_dl_hwcap+LOWORD)@l(r7)
|
||||||
# endif
|
# endif
|
||||||
andis. r7,r7,(PPC_FEATURE_HAS_ALTIVEC >> 16)
|
andis. r7,r7,(PPC_FEATURE_HAS_ALTIVEC >> 16)
|
||||||
la r10,(_UC_VREGS)(r31)
|
la r10,(_UC_VREGS)(r31)
|
||||||
|
Loading…
Reference in New Issue
Block a user