OSDN Git Service
(root)
/
android-x86
/
bionic.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
6807af7
)
Always use v1 for MIPS TLS access.
author
Elliott Hughes
<enh@google.com>
Tue, 18 Jun 2013 20:26:22 +0000
(13:26 -0700)
committer
Elliott Hughes
<enh@google.com>
Tue, 18 Jun 2013 20:26:22 +0000
(13:26 -0700)
Change-Id: Ic2850b90185cfbc5b0eff804c8b74a1c553c0852
libc/private/bionic_tls.h
patch
|
blob
|
history
diff --git
a/libc/private/bionic_tls.h
b/libc/private/bionic_tls.h
index
225a617
..
61b894f
100644
(file)
--- a/
libc/private/bionic_tls.h
+++ b/
libc/private/bionic_tls.h
@@
-89,7
+89,8
@@
extern int __set_tls(void* ptr);
(volatile void*) __val; })
#elif defined(__mips__)
# define __get_tls() \
- ({ register unsigned int __val; \
+ /* On mips32r1, this goes via a kernel illegal instruction trap that's optimized for v1. */ \
+ ({ register unsigned int __val asm("v1"); \
asm (" .set push\n" \
" .set mips32r2\n" \
" rdhwr %0,$29\n" \