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

Subversion Repositories openrisc_me

[/] [openrisc/] [trunk/] [gnu-src/] [binutils-2.20.1/] [gas/] [testsuite/] [gas/] [mips/] [mips-abi32-pic2.s] - Blame information for rev 205

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 205 julius
 
2
        .text
3
        .ent    func1
4
func1:
5
        .frame $sp,0,$31
6
        .set noreorder
7
        .cpload $25             # 0000 lui      gp,hi(_gp_disp)
8
                                # 0004 addiu    gp,gp,lo(_gp_disp)
9
                                # 0008 addu     gp,gp,t9
10
        .set reorder
11
        .cprestore 8            # 000c sw       gp,8(sp)
12
 
13
        jal     end             # 0010 lw       t9,got(.text)(gp)
14
                                # 0014 nop
15
                                # 0018 addiu    t9,t9,lo(end)
16
                                # 001c jalr     t9
17
                                # 0020 nop
18
                                # 0024 lw       gp,8(sp)
19
 
20
        # Avoid confusion: avoid the 'lw' above being put into the delay
21
        # slot for the jalr below!
22
        .set noreorder
23
        nop                     # 0028 nop
24
        .set reorder
25
 
26
        jal     $25             # 002c jalr     t9
27
                                # 0030 nop
28
                                # 0034 lw       gp,8(sp)
29
        .end    func1
30
 
31
 
32
        .text
33
        .ent    func2
34
func2:
35
        .frame $sp,0,$31
36
        .set noreorder
37
        .cpload $25             # 0038 lui      gp,hi(_gp_disp)
38
                                # 003c addiu    gp,gp,lo(_gp_disp)
39
                                # 0040 addu     gp,gp,t9
40
        .set reorder
41
        .cprestore 32768        # 0044 lui      at,0x1
42
                                # 0048 addu     at,at,sp
43
                                # 004c sw       gp,-32768(at)
44
 
45
        jal     end             # 0050 lw       t9,got(.text)(gp)
46
                                # 0054 nop
47
                                # 0058 addiu    t9,t9,lo(end)
48
                                # 005c jalr     t9
49
                                # 0060 nop
50
                                # 0064 lui      at,0x1
51
                                # 0068 addu     at,at,sp
52
                                # 006c lw       gp,-32768(at)
53
 
54
        # Avoid confusion: avoid the 'lw' above being put into the delay
55
        # slot for the jalr below!
56
        .set noreorder
57
        nop                     # 0070 nop
58
        .set reorder
59
 
60
        jal     $25             # 0074 jalr     t9
61
                                # 0078 nop
62
                                # 007c lui      at,0x1
63
                                # 0080 addu     at,at,sp
64
                                # 0084 lw       gp,-32768(at)
65
        .end    func2
66
 
67
 
68
        .text
69
        .ent    func3
70
func3:
71
        .frame $sp,0,$31
72
        .set noreorder
73
        .cpload $25             # 0088 lui      gp,hi(_gp_disp)
74
                                # 008c addiu    gp,gp,lo(_gp_disp)
75
                                # 0090 addu     gp,gp,t9
76
        .set reorder
77
        .cprestore 65536        # 0094 lui      at,0x1
78
                                # 0098 addu     at,at,sp
79
                                # 009c sw       gp,0(at)
80
 
81
        jal     end             # 00a0 lw       t9,got(.text)(gp)
82
                                # 00a4 nop
83
                                # 00a8 addiu    t9,t9,lo(end)
84
                                # 00ac jalr     t9
85
                                # 00b0 nop
86
                                # 00b4 lui      at,0x1
87
                                # 00b8 addu     at,at,sp
88
                                # 00bc lw       gp,0(at)
89
 
90
        # Avoid confusion: avoid the 'lw' above being put into the delay
91
        # slot for the jalr below!
92
        .set noreorder
93
        nop                     # 00c0 nop
94
        .set reorder
95
 
96
        jal     $25             # 00c4 jalr     t9
97
                                # 00c8 nop
98
                                # 00cc lui      at,0x1
99
                                # 00d0 addu     at,at,sp
100
                                # 00d4 lw       gp,0(at)
101
 
102
        .end    func3
103
 
104
end:
105
 
106
# Force at least 8 (non-delay-slot) zero bytes, to make 'objdump' print ...
107
        .space  8

powered by: WebSVN 2.1.0

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