Home | History | Annotate | Download | only in ld-s390
      1 	.section ".tdata", "awT", @progbits
      2 	.balign 32
      3 	.globl sg1, sg2, sg3, sg4, sg5, sg6, sg7, sg8
      4 	.globl sh1, sh2, sh3, sh4, sh5, sh6, sh7, sh8
      5 	.hidden sh1, sh2, sh3, sh4, sh5, sh6, sh7, sh8
      6 sg1:	.long 17
      7 sg2:	.long 18
      8 sg3:	.long 19
      9 sg4:	.long 20
     10 sg5:	.long 21
     11 sg6:	.long 22
     12 sg7:	.long 23
     13 sg8:	.long 24
     14 sl1:	.long 65
     15 sl2:	.long 66
     16 sl3:	.long 67
     17 sl4:	.long 68
     18 sl5:	.long 69
     19 sl6:	.long 70
     20 sl7:	.long 71
     21 sl8:	.long 72
     22 sh1:	.long 257
     23 sh2:	.long 258
     24 sh3:	.long 259
     25 sh4:	.long 260
     26 sh5:	.long 261
     27 sh6:	.long 262
     28 sh7:	.long 263
     29 sh8:	.long 264
     30 	.text
     31 	.globl	fn1
     32 	.type	fn1,@function
     33 	.balign 64
     34 fn1:
     35 	/* Funtion prolog */
     36 	stm	%r6,%r14,24(%r15)
     37 	bras	%r13,.LTN1
     38 	/* Literal pool */
     39 .LT1:
     40 .LC0:
     41 	.long	_GLOBAL_OFFSET_TABLE_-.LT1
     42 .LC1:
     43 	.long	__tls_get_offset@plt-.LT1
     44 .LC2:
     45 	.long	sg1@tlsgd
     46 .LC3:
     47 	.long	sg2@tlsgd
     48 .LC4:
     49 	.long	sl1@tlsgd
     50 .LC5:
     51 	.long	sl2@tlsgd
     52 .LC6:
     53 	.long	sh1@tlsgd
     54 .LC7:
     55 	.long	sh2@tlsgd
     56 .LC8:
     57 	.long	sH1@tlsgd
     58 .LC9:
     59 	.long	sH2@tlsgd
     60 .LC10:
     61 	.long	sl1@tlsldm
     62 .LC11:
     63 	.long	sl1@dtpoff
     64 .LC12:
     65 	.long	sl2@dtpoff
     66 .LC13:
     67 	.long	sh1@tlsldm
     68 .LC14:
     69 	.long	sh1@dtpoff
     70 .LC15:
     71 	.long	sh2@dtpoff
     72 .LC16:
     73 	.long	sH1@tlsldm
     74 .LC17:
     75 	.long	sH1@dtpoff
     76 .LC18:
     77 	.long	sH2@dtpoff
     78 .LC19:
     79 	.long	sg2@gotntpoff
     80 .LC20:
     81 	.long	sl2@gotntpoff
     82 .LC21:
     83 	.long	sh2@gotntpoff
     84 .LC22:
     85 	.long	sH2@gotntpoff
     86 .LTN1:
     87 	/* Funtion prolog */
     88 	lr	%r14,%r15
     89 	l	%r12,.LC0-.LT1(%r13)
     90 	ahi	%r15,-96
     91 	la	%r12,0(%r12,%r13)
     92 	st	%r14,0(%r14)
     93 
     94 	/* Extract TCB and load branch offset */
     95 	ear	%r9,%a0
     96 	l	%r7,.LC1-.LT1(%r13)
     97 
     98 	/* GD */
     99 	l	%r2,.LC2-.LT1(%r13)
    100 	bas	%r14,0(%r7,%r13):tls_gdcall:sg1
    101 	la	%r2,0(%r2,%r9)
    102 
    103 	/* GD -> IE because variable is referenced through IE too */
    104 	l	%r2,.LC3-.LT1(%r13)
    105 	bas	%r14,0(%r7,%r13):tls_gdcall:sg2
    106 	la	%r2,0(%r2,%r9)
    107 
    108 	/* GD against local variable */
    109 	l	%r2,.LC4-.LT1(%r13)
    110 	bas	%r14,0(%r7,%r13):tls_gdcall:sl1
    111 	la	%r2,0(%r2,%r9)
    112 
    113 	/* GD -> IE against local variable referenced through IE too */
    114 	l	%r2,.LC5-.LT1(%r13)
    115 	bas	%r14,0(%r7,%r13):tls_gdcall:sl2
    116 	la	%r2,0(%r2,%r9)
    117 
    118 	/* GD against hidden and local variable */
    119 	l	%r2,.LC6-.LT1(%r13)
    120 	bas	%r14,0(%r7,%r13):tls_gdcall:sh1
    121 	la	%r2,0(%r2,%r9)
    122 
    123 	/* GD -> IE against hidden and local variable referenced through
    124 	   IE too */
    125 	l	%r2,.LC7-.LT1(%r13)
    126 	bas	%r14,0(%r7,%r13):tls_gdcall:sh2
    127 	la	%r2,0(%r2,%r9)
    128 
    129 	/* GD against hidden but not local variable */
    130 	l	%r2,.LC8-.LT1(%r13)
    131 	bas	%r14,0(%r7,%r13):tls_gdcall:sH1
    132 	la	%r2,0(%r2,%r9)
    133 
    134 	/* GD -> IE against hidden but not local variable referenced through
    135 	   IE too */
    136 	l	%r2,.LC9-.LT1(%r13)
    137 	bas	%r14,0(%r7,%r13):tls_gdcall:sH2
    138 	la	%r2,0(%r2,%r9)
    139 
    140 	/* LD */
    141 	l	%r2,.LC10-.LT1(%r13)
    142 	bas	%r14,0(%r7,%r13):tls_ldcall:sl1
    143 	la	%r3,0(%r2,%r9)
    144 	l	%r4,.LC11-.LT1(%r13)
    145 	la	%r5,0(%r4,%r3)
    146 	l	%r4,.LC12-.LT1(%r13)
    147 	la	%r5,0(%r4,%r3)
    148 
    149 	/* LD against hidden and local variables */
    150 	l	%r2,.LC13-.LT1(%r13)
    151 	bas	%r14,0(%r7,%r13):tls_ldcall:sh1
    152 	la	%r3,0(%r2,%r9)
    153 	l	%r4,.LC14-.LT1(%r13)
    154 	la	%r5,0(%r4,%r3)
    155 	l	%r4,.LC13-.LT1(%r13)
    156 	la	%r5,0(%r5,%r3)
    157 
    158 	/* LD against hidden but not local variables */
    159 	l	%r2,.LC16-.LT1(%r13)
    160 	bas	%r14,0(%r7,%r13):tls_ldcall:sH1
    161 	la	%r3,0(%r2,%r9)
    162 	l	%r3,.LC17-.LT1(%r13)
    163 	la	%r5,0(%r4,%r3)
    164 	l	%r4,.LC18-.LT1(%r13)
    165 	la	%r5,0(%r4,%r3)
    166 
    167 	/* IE against global var  */
    168 	l	%r3,.LC19-.LT1(%r13)
    169 	l	%r3,0(%r3,%r12):tls_load:sg2
    170 	la	%r3,0(%r3,%r3)
    171 
    172 	/* IE against local var  */
    173 	l	%r3,.LC20-.LT1(%r13)
    174 	l	%r4,0(%r3,%r12):tls_load:sl2
    175 	la	%r5,0(%r4,%r3)
    176 
    177 	/* IE against hidden and local var  */
    178 	l	%r3,.LC21-.LT1(%r13)
    179 	l	%r4,0(%r3,%r12):tls_load:sh2
    180 	la	%r5,0(%r4,%r3)
    181 
    182 	/* IE against hidden but not local var  */
    183 	l	%r3,.LC22-.LT1(%r13)
    184 	l	%r4,0(%r3,%r12):tls_load:sH2
    185 	la	%r5,0(%r4,%r3)
    186 
    187 	/* IE against global var with small got access (no optimization) */
    188 	l	%r3,sg5@gotntpoff(%r12)
    189 	la	%r3,0(%r3,%r9)
    190 
    191 	/* IE against local var with small got access (no optimization) */
    192 	l	%r3,sl5@gotntpoff(%r12)
    193 	la	%r3,0(%r3,%r9)
    194 
    195 	/* IE against hidden and local var with small got access
    196 	   (no optimization) */
    197 	l	%r3,sh5@gotntpoff(%r12)
    198 	la	%r3,0(%r3,%r9)
    199 
    200 	/* IE against hidden but not local var with small got access
    201 	   (no optimization) */
    202 	l	%r3,sH5@gotntpoff(%r12)
    203 	la	%r3,0(%r3,%r9)
    204 
    205 	/* Function epilog */
    206 	lm	%r6,%r14,120(%r15)
    207 	br	%r14
    208 
    209