17 .hidden _GLOBAL_OFFSET_TABLE_
18 sethi
%hi
(_GLOBAL_OFFSET_TABLE_
), %l1
19 or %l1
, %lo
(_GLOBAL_OFFSET_TABLE_
), %l1
22 /* IE against global var */
23 sethi
%tie_hi22
(sg1
), %o3
24 add %o3
, %tie_lo10
(sg1
), %o3
25 ld [%l1
+ %o3
], %o2
, %tie_ld
(sg1
)
26 add %g7
, %o2
, %o4
, %tie_add
(sg1
)
29 /* direct %g7 access IE against global var */
30 sethi
%tie_hi22
(sg2
), %o0
31 add %o0
, %tie_lo10
(sg2
), %o0
32 ld [%l1
+ %o0
], %o0
, %tie_ld
(sg2
)
33 ld [%g7
+ %o0
], %o0
, %tie_add
(sg2
)
36 /* IE against hidden var */
37 sethi
%tie_hi22
(sh1
), %o0
38 add %o0
, %tie_lo10
(sh1
), %o0
39 ld [%l1
+ %o0
], %o0
, %tie_ld
(sh1
)
40 add %g7
, %o0
, %o0
, %tie_add
(sh1
)
43 /* direct %g7 access IE against hidden var */
44 sethi
%tie_hi22
(sh2
), %o5
45 add %o5
, %tie_lo10
(sh2
), %o1
46 ld [%l1
+ %o1
], %o2
, %tie_ld
(sh2
)
47 stb %o3
, [%g7
+ %o2
], %tie_add
(sh2
)
50 /* IE against local var */
51 sethi
%tie_hi22
(bl1
), %o0
52 add %o0
, %tie_lo10
(bl1
), %o0
53 ld [%l1
+ %o0
], %o0
, %tie_ld
(bl1
)
54 add %g7
, %o0
, %o0
, %tie_add
(bl1
)
57 /* direct %g7 access IE against local var */
58 sethi
%tie_hi22
(bl2
), %o5
59 add %o5
, %tie_lo10
(bl2
), %o1
60 ld [%l1
+ %o1
], %o2
, %tie_ld
(bl2
)
61 stb %o3
, [%g7
+ %o2
], %tie_add
(bl2
)
65 sethi
%tle_hix22
(bl3+
1), %o2
66 xor %o2
, %tle_lox10
(bl3+
1), %o4
70 /* LE, hidden var, direct %g7 access */
71 sethi
%tle_hix22
(sh3
), %o2
72 xor %o2
, %tle_lox10
(sh3
), %o2