Home | History | Annotate | Download | only in ld-mips-elf
      1 	.file	1 "tlsbin-o32.s"
      2 	.abicalls
      3 	.text
      4 	.align	2
      5 	.globl	other
      6 	.ent	other
      7 	.type	other,@function
      8 other:
      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	other
     65