Home | History | Annotate | Download | only in ld-sh
      1 	.section ".tbss", "awT", @nobits
      2 	.globl bg1, bg2
      3 bg1:	.space 4
      4 bg2:	.space 4
      5 bl1:	.space 4
      6 bl2:	.space 4
      7 	.text
      8 	.globl	_start
      9 	.type	_start,@function
     10 _start:
     11 	mov.l	r12,@-r15
     12 	mov.l	r14,@-r15
     13 	mov	r15,r14
     14 	! Set up .GOT pointer for non-pic @gottpoff sequences
     15 	mova	.L3,r0
     16 	mov.l	.L3,r12
     17 	add	r0,r12
     18 	nop;nop;nop;nop
     19 
     20 	! @GOTTPOFF IE against global var
     21 	mov.l	1f,r0
     22 	stc	gbr,r1
     23 	mov.l	@(r0,r12),r0
     24 	bra	2f
     25 	add	r0,r1
     26 	.align	2
     27 1:	.long	sG3@GOTTPOFF
     28 2:
     29 	nop;nop;nop;nop
     30 
     31 	! @GOTTPOFF IE -> LE against global var defined in exec
     32 	mov.l	1f,r0
     33 	stc	gbr,r1
     34 	mov.l	@(r0,r12),r0
     35 	bra	2f
     36 	add	r0,r1
     37 	.align	2
     38 1:	.long	bg1@GOTTPOFF
     39 2:
     40 	nop;nop;nop;nop
     41 
     42 	! @GOTTPOFF IE -> LE against local var
     43 	mov.l	1f,r0
     44 	stc	gbr,r1
     45 	mov.l	@(r0,r12),r0
     46 	bra	2f
     47 	add	r0,r1
     48 	.align	2
     49 1:	.long	bl2@GOTTPOFF
     50 2:
     51 	nop;nop;nop;nop
     52 
     53 	! @GOTTPOFF IE -> LE against hidden but not local var
     54 	mov.l	1f,r0
     55 	stc	gbr,r1
     56 	mov.l	@(r0,r12),r0
     57 	bra	2f
     58 	add	r0,r1
     59 	.align	2
     60 1:	.long	sh2@GOTTPOFF
     61 2:
     62 	nop;nop;nop;nop
     63 
     64 	! LE @TPOFF, global var defined in exec
     65 	stc	gbr,r1
     66 	mov.l	.L4,r0
     67 	add	r1,r0
     68 	nop;nop;nop;nop
     69 
     70 	! LE @TPOFF, local var
     71 	stc	gbr,r1
     72 	mov.l	.L5,r0
     73 	add	r1,r0
     74 	nop;nop;nop;nop
     75 
     76 	! LE @TPOFF, hidden var defined in exec
     77 	stc	gbr,r1
     78 	mov.l	.L6,r0
     79 	add	r1,r0
     80 	nop;nop;nop;nop
     81 
     82 	mov	r14,r15
     83 	rts
     84 	mov.l	@r15+,r14
     85 
     86 	.align	2
     87 .L3:	.long	_GLOBAL_OFFSET_TABLE_
     88 .L4:	.long	sg1@TPOFF
     89 .L5:	.long	bl1@TPOFF
     90 .L6:	.long	sh1@TPOFF
     91