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(tlsbin_gd)
     23 	jal	$25
     24 
     25 	lw	$25,%call16(__tls_get_addr)($28)
     26 	addiu	$4,$28,%tlsgd(tlsvar_gd)
     27 	jal	$25
     28 
     29 	# Local Dynamic
     30 	lw	$25,%call16(__tls_get_addr)($28)
     31 	addiu	$4,$28,%tlsldm(tlsbin_ld)
     32 	jal	$25
     33 
     34 	move	$2,$2		# Arbitrary instructions
     35 
     36 	lui	$3,%dtprel_hi(tlsbin_ld)
     37 	addiu	$3,$3,%dtprel_lo(tlsbin_ld)
     38 	addu	$3,$3,$2
     39 
     40 	# Initial Exec
     41 	.set	push
     42 	.set	mips32r2
     43 	rdhwr	$2, $5
     44 	.set	pop
     45 	lw	$3,%gottprel(tlsbin_ie)($28)
     46 	addu	$3,$3,$2
     47 
     48 	lw	$3,%gottprel(tlsvar_ie)($28)
     49 	addu	$3,$3,$2
     50 
     51 	# Local Exec
     52 	.set	push
     53 	.set	mips32r2
     54 	rdhwr	$2, $5
     55 	.set	pop
     56 	lui	$3,%tprel_hi(tlsbin_le)
     57 	addiu	$3,$3,%tprel_lo(tlsbin_le)
     58 	addu	$3,$3,$2
     59 
     60 	move	$sp,$fp
     61 	lw	$fp,8($sp)
     62 	addiu	$sp,$sp,16
     63 	j	$31
     64 	.end	__start
     65 
     66 	.globl __tls_get_addr
     67 __tls_get_addr:
     68 	j $31
     69 
     70 	.section		.tbss,"awT",@nobits
     71 	.align	2
     72 	.global	tlsbin_gd
     73 	.type	tlsbin_gd,@object
     74 	.size	tlsbin_gd,4
     75 tlsbin_gd:
     76 	.space	4
     77 	.global	tlsbin_ie
     78 	.type	tlsbin_ie,@object
     79 	.size	tlsbin_ie,4
     80 tlsbin_ie:
     81 	.space	4
     82 
     83 	.section		.tdata,"awT"
     84 	.align	2
     85 	.global	tlsbin_ld
     86 	.hidden	tlsbin_ld
     87 	.type	tlsbin_ld,@object
     88 	.size	tlsbin_ld,4
     89 tlsbin_ld:
     90 	.word	1
     91 	.global	tlsbin_le
     92 	.hidden	tlsbin_le
     93 	.type	tlsbin_le,@object
     94 	.size	tlsbin_le,4
     95 tlsbin_le:
     96 	.word	1
     97