1 .section .tbss,"awT",@nobits
30 sethi
%hi
(_GLOBAL_OFFSET_TABLE_-
4), %l7
32 add %l7
, %lo
(_GLOBAL_OFFSET_TABLE_+
4), %l7
35 /* GD -> IE with global variable not defined in executable */
36 sethi
%tgd_hi22
(sG1
), %g1
37 add %g1
, %tgd_lo10
(sG1
), %g1
38 add %l7
, %g1
, %o0
, %tgd_add
(sG1
)
39 call __tls_get_addr
, %tgd_call
(sG1
)
43 /* GD -> LE with global variable defined in executable */
44 sethi
%tgd_hi22
(tls_gd
), %g1
45 add %g1
, %tgd_lo10
(tls_gd
), %g1
46 add %l7
, %g1
, %o0
, %tgd_add
(tls_gd
)
47 call __tls_get_addr
, %tgd_call
(tls_gd
)
51 /* LD -> LE with global variable defined in executable */
52 sethi
%tldm_hi22
(tls_ld
), %g1
53 add %g1
, %tldm_lo10
(tls_ld
), %g1
54 add %l7
, %g1
, %o0
, %tldm_add
(tls_ld
)
55 call __tls_get_addr
, %tldm_call
(tls_ld
)
57 sethi
%tldo_hix22
(tls_ld
), %g1
58 xor %g1
, %tldo_lox10
(tls_ld
), %g1
59 add %o0
, %g1
, %g1
, %tldo_add
(tls_ld
)
62 /* IE -> LE with global variable defined in executable */
63 sethi
%tie_hi22
(tls_ie
), %g1
64 add %g1
, %tie_lo10
(tls_ie
), %g1
65 ldx [%l7
+ %g1
], %g1
, %tie_ldx
(tls_ie
)
66 add %g7
, %g1
, %g1
, %tie_add
(tls_ie
)