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

Subversion Repositories open8_urisc

[/] [open8_urisc/] [trunk/] [gnu/] [binutils/] [ld/] [testsuite/] [ld-ia64/] [tlspic1.s] - Blame information for rev 68

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 68 khays
        /* Force .data aligned to 4K, so .got very likely gets at 0x13190
2
           (0x60 bytes .tdata and 0x130 bytes .dynamic)  */
3
        .data
4
        .balign 4096
5
        .section ".tdata", "awT", @progbits
6
        .globl sg1, sg2, sg3, sg4, sg5, sg6, sg7, sg8
7
        .globl sh1, sh2, sh3, sh4, sh5, sh6, sh7, sh8
8
        .hidden sh1, sh2, sh3, sh4, sh5, sh6, sh7, sh8
9
sg1:    .long 17
10
sg2:    .long 18
11
sg3:    .long 19
12
sg4:    .long 20
13
sg5:    .long 21
14
sg6:    .long 22
15
sg7:    .long 23
16
sg8:    .long 24
17
sl1:    .long 65
18
sl2:    .long 66
19
sl3:    .long 67
20
sl4:    .long 68
21
sl5:    .long 69
22
sl6:    .long 70
23
sl7:    .long 71
24
sl8:    .long 72
25
sh1:    .long 257
26
sh2:    .long 258
27
sh3:    .long 259
28
sh4:    .long 260
29
sh5:    .long 261
30
sh6:    .long 262
31
sh7:    .long 263
32
sh8:    .long 264
33
        .explicit
34
        .pred.safe_across_calls p1-p5,p16-p63
35
        /* Force .text aligned to 4K, so it very likely gets at 0x1000.  */
36
        .text
37
        .balign 4096
38
        .globl  fn1#
39
        .proc   fn1#
40
fn1:
41
        .prologue 12, 33
42
        .mib
43
        .save   ar.pfs, r34
44
        alloc   r34 = ar.pfs, 0, 3, 2, 0
45
        .save   rp, r33
46
        mov     r33 = b0
47
 
48
        /* GD */
49
        addl    r14 = @ltoff(@dtpmod(sg1#)), gp
50
        addl    r15 = @ltoff(@dtprel(sg1#)), gp
51
        ;;
52
        ld8     out0 = [r14]
53
        ld8     out1 = [r15]
54
        br.call.sptk.many b0 = __tls_get_addr#
55
        ;;
56
 
57
        /* GD against hidden symbol */
58
        addl    r14 = @ltoff(@dtpmod(sh2#)), gp
59
        addl    r15 = @ltoff(@dtprel(sh2#)), gp
60
        ;;
61
        ld8     out0 = [r14]
62
        ld8     out1 = [r15]
63
        br.call.sptk.many b0 = __tls_get_addr#
64
        ;;
65
 
66
        /* LD */
67
        addl    r14 = @ltoff(@dtpmod(sl1#)), gp
68
        addl    out1 = @dtprel(sl1#) + 1, r0
69
        ;;
70
        ld8     out0 = [r14]
71
        br.call.sptk.many b0 = __tls_get_addr#
72
        ;;
73
 
74
        /* LD with 4 variables variables */
75
        addl    r14 = @ltoff(@dtpmod(sh1#)), gp
76
        mov     out1 = r0
77
        ;;
78
        ld8     out0 = [r14]
79
        br.call.sptk.many b0 = __tls_get_addr#
80
        ;;
81
        mov     r2 = r8
82
        ;;
83
        addl    r14 = @dtprel(sh1#), r2
84
        addl    r15 = @dtprel(sH1#) + 2, r2
85
        ;;
86
        adds    r14 = @dtprel(sh5#) + 3, r8
87
        movl    r15 = @dtprel(sH5#) + 1
88
        ;;
89
        add     r15 = r15, r8
90
        ;;
91
 
92
        /* IE against global */
93
        addl    r14 = @ltoff(@tprel(sg2#)), gp
94
        ;;
95
        ld8     r15 = [r14]
96
        ;;
97
        add     r14 = r15, r13
98
        ;;
99
 
100
        /* IE against local and hidden */
101
        addl    r14 = @ltoff(@tprel(sl2#)), gp
102
        addl    r15 = @ltoff(@tprel(sh2#)), gp
103
        ;;
104
        ld8     r14 = [r14]
105
        ld8     r15 = [r15]
106
        ;;
107
        add     r14 = r14, r13
108
        add     r15 = r15, r13
109
        ;;
110
 
111
        mov     ar.pfs = r34
112
        mov     b0 = r33
113
        br.ret.sptk.many b0
114
        .endp   fn1#

powered by: WebSVN 2.1.0

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