~ubuntu-branches/ubuntu/utopic/binutils-arm64-cross/utopic

« back to all changes in this revision

Viewing changes to binutils-2.23.52.20130611/gas/testsuite/gas/mips/mips-gp32-fp32-pic.s

  • Committer: Package Import Robot
  • Author(s): Matthias Klose
  • Date: 2013-06-20 17:38:09 UTC
  • Revision ID: package-import@ubuntu.com-20130620173809-app8lzgvymy5fg6c
Tags: 0.7
Build-depend on binutils-source (>= 2.23.52.20130620-1~).

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
 
 
2
        .sdata
 
3
shared: .word   11
 
4
 
 
5
        .data
 
6
unshared:
 
7
        .word   1
 
8
        .word   2
 
9
        .word   3
 
10
        .word   4
 
11
 
 
12
        .text
 
13
        .ent    func
 
14
func:
 
15
        .frame $sp,0,$31
 
16
        .set noreorder
 
17
        .cpload $25             # 0000 lui      gp,hi(_gp_disp)
 
18
                                # 0004 addiu    gp,gp,lo(_gp_disp)
 
19
                                # 0008 addu     gp,gp,t9
 
20
        .set reorder
 
21
        .cprestore 8            # 000c sw       gp,8(sp)
 
22
        .cpadd $4               # 0010 addu     a0,a0,gp
 
23
        li      $4, 0x12345678  # 0014 lui      a0,0x1234
 
24
                                # 0018 ori      a0,a0,0x5678
 
25
        la      $4, shared      # 001c lw       a0,got(.sdata)(gp)
 
26
                                # 0020 nop
 
27
                                # 0024 addiu    a0,a0,lo(shared)
 
28
        la      $4, unshared    # 0028 lw       a0,got(.data)(gp)
 
29
                                # 002c nop
 
30
                                # 0030 addiu    a0,a0,lo(unshared)
 
31
        la      $4, end         # 0034 lw       a0,got(.text)(gp)
 
32
                                # 0038 nop
 
33
                                # 003c addiu    a0,a0,lo(end)
 
34
        j       end             # 0040 b        end
 
35
                                # 0044 nop
 
36
        jal     end             # 0048 lw       t9,got(.text)(gp)
 
37
                                # 004c nop
 
38
                                # 0050 addiu    t9,t9,lo(end)
 
39
                                # 0054 jalr     t9
 
40
                                # 0058 nop
 
41
                                # 005c lw       gp,8(sp)
 
42
        lw      $4, shared      # 0060 lw       a0,got(.sdata)(gp)
 
43
                                # 0064 nop
 
44
                                # 0068 addiu    a0,a0,lo(shared)
 
45
                                # 006c lw       a0,(a0)
 
46
        lw      $4, unshared    # 0070 lw       a0,got(.data)(gp)
 
47
                                # 0074 nop
 
48
                                # 0078 addiu    a0,a0,lo(unshared)
 
49
                                # 007c lw       a0,(a0)
 
50
        lw      $4, end         # 0080 lw       a0,got(.text)(gp)
 
51
                                # 0084 nop
 
52
                                # 0088 addiu    a0,a0,lo(end)
 
53
                                # 008c lw       a0,(a0)
 
54
        ld      $4, shared      # 0090 lw       at,got(.sdata)(gp)
 
55
                                # 0094 nop
 
56
                                # 0098 lw       a0,lo(shared)(at)
 
57
                                # 009c lw       a1,lo(shared)+4(at)
 
58
        ld      $4, unshared    # 00a0 lw       at,got(.data)(gp)
 
59
                                # 00a4 nop
 
60
                                # 00a8 lw       a0,lo(unshared)(at)
 
61
                                # 00ac lw       a1,lo(unshared)+4(at)
 
62
        ld      $4, end         # 00b0 lw       at,got(.text)(gp)
 
63
                                # 00b4 nop
 
64
                                # 00b8 lw       a0,lo(end)(at)
 
65
                                # 00bc lw       a1,lo(end)+4(at)
 
66
        sw      $4, shared      # 00c0 lw       at,got(.sdata)(gp)
 
67
                                # 00c4 nop
 
68
                                # 00c8 addiu    at,at,lo(shared)
 
69
                                # 00cc sw       a0,0(at)
 
70
        sw      $4, unshared    # 00d0 lw       at,got(.data)(gp)
 
71
                                # 00d4 nop
 
72
                                # 00d8 addiu    at,at,lo(unshared)
 
73
                                # 00dc sw       a0,0(at)
 
74
        sd      $4, shared      # 00e0 lw       at,got(.sdata)(gp)
 
75
                                # 00e4 nop
 
76
                                # 00e8 sw       a0,lo(shared)(at)
 
77
                                # 00ec sw       a1,lo(shared)+4(at)
 
78
        sd      $4, unshared    # 00f0 lw       at,got(.data)(gp)
 
79
                                # 00f4 nop
 
80
                                # 00f8 sw       a0,lo(unshared)(at)
 
81
                                # 00fc sw       a1,lo(unshared)+4(at)
 
82
        ulh     $4, unshared    # 0100 lw       at,got(.data)(gp)
 
83
                                # 0104 nop
 
84
                                # 0108 addiu    at,at,lo(unshared)
 
85
                                # 010c lb       a0,0(at)
 
86
                                # 0110 lbu      at,1(at)
 
87
                                # 0114 sll      a0,a0,8
 
88
                                # 0118 or       a0,a0,at
 
89
        ush     $4, unshared    # 011c lw       at,got(.data)(gp)
 
90
                                # 0120 nop
 
91
                                # 0124 addiu    at,at,lo(unshared)
 
92
                                # 0128 sb       a0,0(at)
 
93
                                # 012c srl      a0,a0,8
 
94
                                # 0130 sb       a0,1(at)
 
95
                                # 0134 lbu      at,0(at)
 
96
                                # 0138 sll      a0,a0,8
 
97
                                # 013c or       a0,a0,at
 
98
        ulw     $4, unshared    # 0140 lw       at,got(.data)(gp)
 
99
                                # 0144 nop
 
100
                                # 0148 addiu    at,at,lo(unshared)
 
101
                                # 014c lwl      a0,0(at)
 
102
                                # 0150 lwr      a0,3(at)
 
103
        usw     $4, unshared    # 0154 lw       at,got(.data)(gp)
 
104
                                # 0158 nop
 
105
                                # 015c addiu    at,at,lo(unshared)
 
106
                                # 0160 swl      a0,0(at)
 
107
                                # 0164 swr      a0,3(at)
 
108
        li.d    $4, 1.0         # 0168 lui      a0,0x3ff0
 
109
                                # 016c move     a1,zero
 
110
        li.d    $4, 1.9         # 0170 lw       at,got(.rodata)(gp)
 
111
                                # 0174 lw       a0,lo(F1.9)(at)
 
112
                                # 0178 lw       a1,lo(F1.9)+4(at)
 
113
        li.d    $f0, 1.0        # 017c lui      at,0x3ff0
 
114
                                # 0180 mtc1     at,$f1
 
115
                                # 0184 mtc1     zero,$f0
 
116
        li.d    $f0, 1.9        # 0188 lw       at,got(.rodata)(gp)
 
117
                                # 018c ldc1     $f0,lo(L1.9)(at)
 
118
        seq     $4, $5, -100    # 0190 addiu    a0,a1,100
 
119
                                # 0194 sltiu    a0,a0,1
 
120
        sne     $4, $5, -100    # 0198 addiu    a0,a1,100
 
121
                                # 019c sltu     a0,zero,a0
 
122
        move    $4, $5          # 01a0 move     a0,a1
 
123
 
 
124
# Not available in 32-bit mode
 
125
#       dla     $4, shared
 
126
#       dla     $4, unshared
 
127
#       uld     $4, unshared
 
128
#       usd     $4, unshared
 
129
 
 
130
# Should produce warnings given -mgp32
 
131
#       bgt     $4, 0x7fffffff, end
 
132
#       bgtu    $4, 0xffffffff, end
 
133
#       ble     $4, 0x7fffffff, end
 
134
#       bleu    $4, 0xffffffff, end
 
135
 
 
136
# Should produce warnings given -mfp32
 
137
#       add.d   $f1, $f2, $f3
 
138
 
 
139
        .end    func
 
140
 
 
141
end:
 
142
 
 
143
# Force at least 8 (non-delay-slot) zero bytes, to make 'objdump' print ...
 
144
      .space  8