old-cross-binutils/ld/testsuite/ld-sh/tlsbin.s
Kaz Kojima 6c381eeb71 * ld-sh/rd-sh.exp: If the test matches *-dso.d, copy the output
of linker to the file tmpdir/*-dso.so.
	* ld-sh/tlsbin.s, ld-sh/tlsbinpic.s, ld-sh/tlslib.s: New.
	* ld-sh/tlsbin-0-dso.d: New.
	* ld-sh/tlsbin-1.d: New.
	* ld-sh/tlsbin-2.d: New.
	* ld-sh/tlsbin-3.d: New.
	* ld-sh/tlsbin-4.d: New.
	* ld-sh/tlspic1.s, ld-sh/tlspic2.s: New.
	* ld-sh/tlspic-1.d: New.
	* ld-sh/tlspic-2.d: New.
	* ld-sh/tlspic-3.d: New.
	* ld-sh/tlspic-4.d: New.
2002-10-11 14:44:55 +00:00

90 lines
1.4 KiB
ArmAsm

.section ".tbss", "awT", @nobits
.globl bg1, bg2
bg1: .space 4
bg2: .space 4
bl1: .space 4
bl2: .space 4
.text
.globl _start
.type _start,@function
_start:
mov.l r12,@-r15
mov.l r14,@-r15
mov r15,r14
! Set up .GOT pointer for non-pic @gottpoff sequences
mova .L3,r0
mov.l .L3,r12
add r0,r12
nop;nop;nop;nop
! @GOTTPOFF IE against global var
mov.l 1f,r0
stc gbr,r1
mov.l @(r0,r12),r0
bra 2f
add r0,r1
.align 2
1: .long sG3@GOTTPOFF
2:
nop;nop;nop;nop
! @GOTTPOFF IE -> LE against global var defined in exec
mov.l 1f,r0
stc gbr,r1
mov.l @(r0,r12),r0
bra 2f
add r0,r1
.align 2
1: .long bg1@GOTTPOFF
2:
nop;nop;nop;nop
! @GOTTPOFF IE -> LE against local var
mov.l 1f,r0
stc gbr,r1
mov.l @(r0,r12),r0
bra 2f
add r0,r1
.align 2
1: .long bl2@GOTTPOFF
2:
nop;nop;nop;nop
! @GOTTPOFF IE -> LE against hidden but not local var
mov.l 1f,r0
stc gbr,r1
mov.l @(r0,r12),r0
bra 2f
add r0,r1
.align 2
1: .long sh2@GOTTPOFF
2:
nop;nop;nop;nop
! LE @TPOFF, global var defined in exec
stc gbr,r1
mov.l .L4,r0
add r1,r0
nop;nop;nop;nop
! LE @TPOFF, local var
stc gbr,r1
mov.l .L5,r0
add r1,r0
nop;nop;nop;nop
! LE @TPOFF, hidden var defined in exec
stc gbr,r1
mov.l .L6,r0
add r1,r0
nop;nop;nop;nop
mov r14,r15
rts
mov.l @r15+,r14
.align 2
.L3: .long _GLOBAL_OFFSET_TABLE_
.L4: .long sg1@TPOFF
.L5: .long bl1@TPOFF
.L6: .long sh1@TPOFF