binutils-gdb/ld/testsuite/ld-mips-elf/tlsdyn-o32.s
Daniel Jacobowitz f4e584bd00 * ld-mips-elf/tlsbin-o32.s, ld-mips-elf/mips-dyn.ld,
ld-mips-elf/tlslib-o32.got, ld-mips-elf/tlslib-o32.d,
	ld-mips-elf/tlslib-o32.s, ld-mips-elf/mips-lib.ld,
	ld-mips-elf/tlsbin-o32.got, ld-mips-elf/tlsdyn-o32.d,
	ld-mips-elf/tlsdyn-o32.got, ld-mips-elf/tlsbin-o32.d,
	ld-mips-elf/tlsdyn-o32.s, ld-mips-elf/tls-multi-got-1.got,
	ld-mips-elf/tls-multi-got-1-1.s, ld-mips-elf/tls-multi-got-1.d,
	ld-mips-elf/tls-multi-got-1.r, ld-mips-elf/tls-multi-got-1-2.s,
	ld-mips-elf/tlslib-o32-ver.got, ld-mips-elf/tlslib.ver,
	ld-mips-elf/tlslib-o32-hidden.got, ld-mips-elf/tlslib-hidden.ver,
	ld-mips-elf/tlsdyn-o32-1.d, ld-mips-elf/tlsdyn-o32-3.got,
	ld-mips-elf/tlsdyn-o32-2.d, ld-mips-elf/tlsdyn-o32-2.s,
	ld-mips-elf/tlsdyn-o32-3.d, ld-mips-elf/tlsdyn-o32-1.got,
	ld-mips-elf/tlsdyn-o32-2.got: New files.
	* ld-mips-elf/mips-elf.exp: Run the new tests.
2005-03-02 21:22:57 +00:00

97 lines
1.5 KiB
ArmAsm

.file 1 "tlsbin-o32.s"
.abicalls
.text
.align 2
.globl __start
.ent __start
.type __start,@function
__start:
.frame $fp,16,$31
.mask 0x40000000,-8
.fmask 0x00000000,0
.set noreorder
.cpload $25
.set reorder
addiu $sp,$sp,-16
sw $fp,8($sp)
move $fp,$sp
.cprestore 0
# General Dynamic
lw $25,%call16(__tls_get_addr)($28)
addiu $4,$28,%tlsgd(tlsbin_gd)
jal $25
lw $25,%call16(__tls_get_addr)($28)
addiu $4,$28,%tlsgd(tlsvar_gd)
jal $25
# Local Dynamic
lw $25,%call16(__tls_get_addr)($28)
addiu $4,$28,%tlsldm(tlsbin_ld)
jal $25
move $2,$2 # Arbitrary instructions
lui $3,%dtprel_hi(tlsbin_ld)
addiu $3,$3,%dtprel_lo(tlsbin_ld)
addu $3,$3,$2
# Initial Exec
.set push
.set mips32r2
rdhwr $2, $5
.set pop
lw $3,%gottprel(tlsbin_ie)($28)
addu $3,$3,$2
lw $3,%gottprel(tlsvar_ie)($28)
addu $3,$3,$2
# Local Exec
.set push
.set mips32r2
rdhwr $2, $5
.set pop
lui $3,%tprel_hi(tlsbin_le)
addiu $3,$3,%tprel_lo(tlsbin_le)
addu $3,$3,$2
move $sp,$fp
lw $fp,8($sp)
addiu $sp,$sp,16
j $31
.end __start
.globl __tls_get_addr
__tls_get_addr:
j $31
.section .tbss,"awT",@nobits
.align 2
.global tlsbin_gd
.type tlsbin_gd,@object
.size tlsbin_gd,4
tlsbin_gd:
.space 4
.global tlsbin_ie
.type tlsbin_ie,@object
.size tlsbin_ie,4
tlsbin_ie:
.space 4
.section .tdata,"awT"
.align 2
.global tlsbin_ld
.hidden tlsbin_ld
.type tlsbin_ld,@object
.size tlsbin_ld,4
tlsbin_ld:
.word 1
.global tlsbin_le
.hidden tlsbin_le
.type tlsbin_le,@object
.size tlsbin_le,4
tlsbin_le:
.word 1