diff options
Diffstat (limited to 'libc/ports/sysdeps/tile/__tls_get_addr.S')
-rw-r--r-- | libc/ports/sysdeps/tile/__tls_get_addr.S | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/libc/ports/sysdeps/tile/__tls_get_addr.S b/libc/ports/sysdeps/tile/__tls_get_addr.S index 74e4fa2c2..6de79ba53 100644 --- a/libc/ports/sysdeps/tile/__tls_get_addr.S +++ b/libc/ports/sysdeps/tile/__tls_get_addr.S @@ -76,6 +76,8 @@ ENTRY (__tls_get_addr) ADD_PTR r28, r28, r27 /* pointer into module array */ } 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 jrp lr |