mirror of git://sourceware.org/git/glibc.git
tile: BZ#14237: fix __tls_get_addr bug initializing new modules
We were missing a check for TLS_DTV_UNALLOCATED; if set, we need to go to the slow path.
This commit is contained in:
parent
14c996c83b
commit
053406fa70
|
@ -1,3 +1,7 @@
|
||||||
|
2012-09-06 Chris Metcalf <cmetcalf@tilera.com>
|
||||||
|
|
||||||
|
* sysdeps/tile/__tls_get_addr.S: Fix TLS module initialization bug.
|
||||||
|
|
||||||
2012-08-27 Joseph Myers <joseph@codesourcery.com>
|
2012-08-27 Joseph Myers <joseph@codesourcery.com>
|
||||||
|
|
||||||
* sysdeps/unix/sysv/linux/tile/kernel-features.h
|
* sysdeps/unix/sysv/linux/tile/kernel-features.h
|
||||||
|
|
|
@ -76,6 +76,8 @@ ENTRY (__tls_get_addr)
|
||||||
ADD_PTR r28, r28, r27 /* pointer into module array */
|
ADD_PTR r28, r28, r27 /* pointer into module array */
|
||||||
}
|
}
|
||||||
LD_PTR r26, r28 /* r26 = module TLS pointer */
|
LD_PTR r26, r28 /* r26 = module TLS pointer */
|
||||||
|
CMPEQI r25, r26, -1 /* check r26 == TLS_DTV_UNALLOCATED */
|
||||||
|
BNEZ r25, .Lslowpath
|
||||||
{
|
{
|
||||||
ADD_PTR r0, r26, r29
|
ADD_PTR r0, r26, r29
|
||||||
jrp lr
|
jrp lr
|
||||||
|
|
Loading…
Reference in New Issue