OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-old/] [binutils-2.18.50/] [ld/] [testsuite/] [ld-sparc/] [tlssunbin32.s] - Blame information for rev 816

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 38 julius
        .section ".tbss"
2
        .align  4
3
        .globl bg1, bg2, bg3, bg4, bg5, bg6, bg7, bg8
4
bg1:    .word 0
5
bg2:    .word 0
6
bg3:    .word 0
7
bg4:    .word 0
8
bg5:    .word 0
9
bg6:    .word 0
10
bg7:    .word 0
11
bg8:    .word 0
12
bl1:    .word 0
13
bl2:    .word 0
14
bl3:    .word 0
15
bl4:    .word 0
16
bl5:    .word 0
17
bl6:    .word 0
18
bl7:    .word 0
19
bl8:    .word 0
20
        .text
21
        .globl  _start
22
        .type   _start,#function
23
        .proc   04
24
_start:
25
        save    %sp, -104, %sp
26
        .hidden _GLOBAL_OFFSET_TABLE_
27
        sethi   %hi(_GLOBAL_OFFSET_TABLE_), %l4
28
        or      %l4, %lo(_GLOBAL_OFFSET_TABLE_), %l4
29
        nop;nop;nop;nop
30
 
31
        /* IE against global var  */
32
        sethi   %tie_hi22(sG6), %o3
33
        add     %o3, %tie_lo10(sG6), %o3
34
        ld      [%l4 + %o3], %o2, %tie_ld(sG6)
35
        add     %g7, %o2, %o4, %tie_add(sG6)
36
        nop;nop;nop;nop
37
 
38
        /* IE -> LE against global var defined in exec  */
39
        sethi   %tie_hi22(bg6), %o3
40
        add     %o3, %tie_lo10(bg6), %o5
41
        ld      [%l4 + %o5], %o2, %tie_ld(bg6)
42
        add     %g7, %o2, %o4, %tie_add(bg6)
43
        nop;nop;nop;nop
44
 
45
        /* IE -> LE against local var  */
46
        sethi   %tie_hi22(bl6), %o3
47
        add     %o3, %tie_lo10(bl6), %o5
48
        ld      [%l4 + %o5], %l2, %tie_ld(bl6)
49
        add     %g7, %l2, %l2, %tie_add(bl6)
50
        nop;nop;nop;nop
51
 
52
        /* direct %g7 access IE -> LE against local var  */
53
        sethi   %tie_hi22(bl8), %o3
54
        add     %o3, %tie_lo10(bl8), %o5
55
        ld      [%l4 + %o5], %l2, %tie_ld(bl8)
56
        ld      [%g7 + %l2], %l2, %tie_add(bl8)
57
        nop;nop;nop;nop
58
 
59
        /* IE -> LE against hidden but not local var  */
60
        sethi   %tie_hi22(sh6), %o3
61
        add     %o3, %tie_lo10(sh6), %o5
62
        ld      [%l4 + %o5], %l2, %tie_ld(sh6)
63
        add     %g7, %l2, %l2, %tie_add(sh6)
64
        nop;nop;nop;nop
65
 
66
        /* direct %g7 access IE -> LE against hidden but not local var  */
67
        sethi   %tie_hi22(bl8), %o3
68
        add     %o3, %tie_lo10(bl8), %o5
69
        ld      [%l4 + %o5], %l2, %tie_ld(bl8)
70
        stb     %l1, [%g7 + %l2], %tie_add(bl8)
71
        nop;nop;nop;nop
72
 
73
        /* LE, global var defined in exec  */
74
        sethi   %tle_hix22(sg2), %l1
75
        nop
76
        xor     %l1, %tle_lox10(sg2), %l2
77
        nop
78
        add     %g7, %l2, %l3
79
        nop;nop;nop;nop
80
 
81
        /* LE, local var  */
82
        sethi   %tle_hix22(bl2+2), %o0
83
        xor     %o0, %tle_lox10(bl2+2), %o0
84
        add     %g7, %o0, %o0
85
        nop;nop;nop;nop
86
 
87
        /* LE, hidden var defined in exec */
88
        sethi   %tle_hix22(sh2+1), %l1
89
        xor     %l1, %tle_lox10(sh2+1), %o5
90
        add     %g7, %o5, %o1
91
        nop;nop;nop;nop
92
 
93
        /* Direct %g7 access  */
94
 
95
        /* LE, global var defined in exec  */
96
        sethi   %tle_hix22(sg3), %l1
97
        xor     %l1, %tle_lox10(sg3), %o5
98
        ld      [%g7 + %o5], %o1
99
        nop;nop;nop;nop
100
 
101
        /* LE, local var  */
102
        sethi   %tle_hix22(bl3 + 3), %o0
103
        xor     %o0, %tle_lox10(bl3 + 3), %o0
104
        stb     %o1, [%g7 + %o0]
105
        nop;nop;nop;nop
106
 
107
        /* LE, hidden var defined in exec  */
108
        sethi   %tle_hix22(sh3 + 3), %o2
109
        xor     %o2, %tle_lox10(sh3 + 3), %o4
110
        ldstub  [%g7 + %o4], %o5
111
        nop;nop;nop;nop
112
 
113
        ret
114
        restore

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.