Home | History | Annotate | Download | only in ld-mips-elf
      1 	.file	1 "tlsbin-o32.s"
      2 	.abicalls
      3 	.text
      4 	.align	2
      5 	.globl	__start
      6 	.ent	__start
      7 	.type	__start,@function
      8 __start:
      9 	.frame	$fp,16,$31
     10 	.mask	0x40000000,-8
     11 	.fmask	0x00000000,0
     12 	.set	noreorder
     13 	.cpload $25
     14 	.set	reorder
     15 	addiu	$sp,$sp,-16
     16 	sw	$fp,8($sp)
     17 	move	$fp,$sp
     18 	.cprestore	0
     19 
     20 	# General Dynamic
     21 	lw	$25,%call16(__tls_get_addr)($28)
     22 	addiu	$4,$28,%tlsgd(tlsvar_gd)
     23 	jal	$25
     24 
     25 	# Local Dynamic
     26 	lw	$25,%call16(__tls_get_addr)($28)
     27 	addiu	$4,$28,%tlsldm(tlsvar_ld)
     28 	jal	$25
     29 
     30 	move	$2,$2		# Arbitrary instructions
     31 
     32 	lui	$3,%dtprel_hi(tlsvar_ld)
     33 	addiu	$3,$3,%dtprel_lo(tlsvar_ld)
     34 	addu	$3,$3,$2
     35 
     36 	# Initial Exec
     37 	.set	push
     38 	.set	mips32r2
     39 	rdhwr	$2, $5
     40 	.set	pop
     41 	lw	$3,%gottprel(tlsvar_ie)($28)
     42 	addu	$3,$3,$2
     43 
     44 	# Local Exec
     45 	.set	push
     46 	.set	mips32r2
     47 	rdhwr	$2, $5
     48 	.set	pop
     49 	lui	$3,%tprel_hi(tlsvar_le)
     50 	addiu	$3,$3,%tprel_lo(tlsvar_le)
     51 	addu	$3,$3,$2
     52 
     53 	move	$sp,$fp
     54 	lw	$fp,8($sp)
     55 	addiu	$sp,$sp,16
     56 	j	$31
     57 	.end	__start
     58 
     59 	.globl __tls_get_addr
     60 __tls_get_addr:
     61 	j $31
     62 
     63 	.section		.tbss,"awT",@nobits
     64 	.align	2
     65 	.global	tlsvar_gd
     66 	.type	tlsvar_gd,@object
     67 	.size	tlsvar_gd,4
     68 tlsvar_gd:
     69 	.space	4
     70 	.global	tlsvar_ie
     71 	.type	tlsvar_ie,@object
     72 	.size	tlsvar_ie,4
     73 tlsvar_ie:
     74 	.space	4
     75 
     76 	.section		.tdata,"awT"
     77 	.align	2
     78 	.global	tlsvar_ld
     79 	.hidden	tlsvar_ld
     80 	.type	tlsvar_ld,@object
     81 	.size	tlsvar_ld,4
     82 tlsvar_ld:
     83 	.word	1
     84 	.global	tlsvar_le
     85 	.hidden	tlsvar_le
     86 	.type	tlsvar_le,@object
     87 	.size	tlsvar_le,4
     88 tlsvar_le:
     89 	.word	1
     90