4
4
# RUN: llvm-mc -triple mips-unknown-linux -target-abi o32 %s | \
5
5
# RUN: FileCheck -check-prefixes=ASM,ASM-O32 %s
6
6
7
- # FIXME: Now we check .cpsetup expansion for `-mno-shared` case only.
8
- # We also need to implement/check the `-mshared` case.
9
7
# RUN: llvm-mc -triple mips64-unknown-linux -target-abi n32 -filetype=obj -o - %s | \
10
8
# RUN: llvm-objdump --no-print-imm-hex -d -r -z - | \
11
9
# RUN: FileCheck -check-prefixes=ALL,NXX,N32 %s
35
33
36
34
# NXX-NEXT: sd $gp, 8($sp)
37
35
# NXX-NEXT: lui $gp, 0
38
- # N32-NEXT: R_MIPS_HI16 __gnu_local_gp
39
- # N64-NEXT: R_MIPS_GPREL16/R_MIPS_SUB/R_MIPS_HI16 __cerror
36
+ # NXX-NEXT: R_MIPS_GPREL16/R_MIPS_SUB/R_MIPS_HI16 __cerror
40
37
# NXX-NEXT: addiu $gp, $gp, 0
41
- # N32 -NEXT: R_MIPS_LO16 __gnu_local_gp
42
- # N64 -NEXT: R_MIPS_GPREL16/R_MIPS_SUB/R_MIPS_LO16 __cerror
38
+ # NXX -NEXT: R_MIPS_GPREL16/R_MIPS_SUB/ R_MIPS_LO16 __cerror
39
+ # N32 -NEXT: addu $gp, $gp, $25
43
40
# N64-NEXT: daddu $gp, $gp, $25
44
41
45
42
# ASM-NEXT: .cpsetup $25, 8, __cerror
64
61
65
62
# NXX-NEXT: move $2, $gp
66
63
# NXX-NEXT: lui $gp, 0
67
- # N32-NEXT: R_MIPS_HI16 __gnu_local_gp
68
- # N64-NEXT: R_MIPS_GPREL16/R_MIPS_SUB/R_MIPS_HI16 __cerror
64
+ # NXX-NEXT: R_MIPS_GPREL16/R_MIPS_SUB/R_MIPS_HI16 __cerror
69
65
# NXX-NEXT: addiu $gp, $gp, 0
70
- # N32 -NEXT: R_MIPS_LO16 __gnu_local_gp
71
- # N64 -NEXT: R_MIPS_GPREL16/R_MIPS_SUB/R_MIPS_LO16 __cerror
66
+ # NXX -NEXT: R_MIPS_GPREL16/R_MIPS_SUB/ R_MIPS_LO16 __cerror
67
+ # N32 -NEXT: addu $gp, $gp, $25
72
68
# N64-NEXT: daddu $gp, $gp, $25
73
69
74
70
# ASM-NEXT: .cpsetup $25, $2, __cerror
101
97
102
98
# NXX-NEXT: move $2, $gp
103
99
# NXX-NEXT: lui $gp, 0
104
- # N32-NEXT: {{^ *0+}}38: R_MIPS_HI16 __gnu_local_gp
105
- # N64-NEXT: {{^ *0+}}40: R_MIPS_GPREL16/R_MIPS_SUB/R_MIPS_HI16 .text
100
+ # NXX-NEXT: {{^ *0+}}40: R_MIPS_GPREL16/R_MIPS_SUB/R_MIPS_HI16 .text
106
101
# NXX-NEXT: addiu $gp, $gp, 0
107
- # N32 -NEXT: {{^ *0+}}3c: R_MIPS_LO16 __gnu_local_gp
108
- # N64 -NEXT: {{^ *0+}}44: R_MIPS_GPREL16/R_MIPS_SUB/R_MIPS_LO16 .text
102
+ # NXX -NEXT: {{^ *0+}}44: R_MIPS_GPREL16/R_MIPS_SUB/ R_MIPS_LO16 .text
103
+ # N32 -NEXT: addu $gp, $gp, $25
109
104
# N64-NEXT: daddu $gp, $gp, $25
110
105
# NXX-NEXT: nop
111
106
# NXX-NEXT: sub $3, $3, $2
@@ -158,11 +153,10 @@ t5:
158
153
159
154
# NXX-NEXT: sd $gp, 8($sp)
160
155
# NXX-NEXT: lui $gp, 0
161
- # N32-NEXT: R_MIPS_HI16 __gnu_local_gp
162
- # N64-NEXT: R_MIPS_GPREL16/R_MIPS_SUB/R_MIPS_HI16 __cerror
156
+ # NXX-NEXT: R_MIPS_GPREL16/R_MIPS_SUB/R_MIPS_HI16 __cerror
163
157
# NXX-NEXT: addiu $gp, $gp, 0
164
- # N32 -NEXT: R_MIPS_LO16 __gnu_local_gp
165
- # N64-NEXT: R_MIPS_GPREL16/R_MIPS_SUB/R_MIPS_LO16 __cerror
158
+ # NXX -NEXT: R_MIPS_GPREL16/R_MIPS_SUB/ R_MIPS_LO16 __cerror
159
+ # N64-NEXT: addu $gp, $gp, $25
166
160
# N64-NEXT: daddu $gp, $gp, $25
167
161
168
162
# ASM-NEXT: .cpsetup $25, 8, __cerror
@@ -184,11 +178,10 @@ IMM_8 = 8
184
178
185
179
# NXX-NEXT: sd $gp, 8($sp)
186
180
# NXX-NEXT: lui $gp, 0
187
- # N32-NEXT: R_MIPS_HI16 __gnu_local_gp
188
- # N64-NEXT: R_MIPS_GPREL16/R_MIPS_SUB/R_MIPS_HI16 __cerror
181
+ # NXX-NEXT: R_MIPS_GPREL16/R_MIPS_SUB/R_MIPS_HI16 __cerror
189
182
# NXX-NEXT: addiu $gp, $gp, 0
190
- # N32 -NEXT: R_MIPS_LO16 __gnu_local_gp
191
- # N64 -NEXT: R_MIPS_GPREL16/R_MIPS_SUB/R_MIPS_LO16 __cerror
183
+ # NXX -NEXT: R_MIPS_GPREL16/R_MIPS_SUB/ R_MIPS_LO16 __cerror
184
+ # N32 -NEXT: addu $gp, $gp, $25
192
185
# N64-NEXT: daddu $gp, $gp, $25
193
186
194
187
# ASM-NEXT: .cpsetup $25, 8, __cerror
0 commit comments