13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
|
* file.
*/
#include "config.h"
#include "platform.h"
.globl of_forward
.globl of_forward_stret
#ifdef OF_PIC
.macro j_pic symbol
lw $t9, %call16(\symbol)($gp)
jr $t9
.endm
.macro jal_pic symbol
lw $t9, %call16(\symbol)($gp)
jalr $t9
.endm
#else
.macro j_pic symbol
j \symbol
.endm
.macro jal_pic symbol
jal \symbol
.endm
#endif
.section .text
of_forward:
#ifdef OF_PIC
lui $gp, %hi(_gp_disp)
addiu $gp, $gp, %lo(_gp_disp)
addu $gp, $gp, $t9
#endif
addiu $sp, $sp, -96
|
|
|
|
|
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
|
* file.
*/
#include "config.h"
#include "platform.h"
.globl OFForward
.globl OFForward_stret
#ifdef OF_PIC
.macro j_pic symbol
lw $t9, %call16(\symbol)($gp)
jr $t9
.endm
.macro jal_pic symbol
lw $t9, %call16(\symbol)($gp)
jalr $t9
.endm
#else
.macro j_pic symbol
j \symbol
.endm
.macro jal_pic symbol
jal \symbol
.endm
#endif
.section .text
OFForward:
#ifdef OF_PIC
lui $gp, %hi(_gp_disp)
addiu $gp, $gp, %lo(_gp_disp)
addu $gp, $gp, $t9
#endif
addiu $sp, $sp, -96
|
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
|
lw $s1, 24($sp)
lw $s0, 20($sp)
lw $ra, 16($sp)
addiu $sp, $sp, 96
j_pic of_method_not_found
.type of_forward, %function
.size of_forward, .-of_forward
of_forward_stret:
#ifdef OF_PIC
lui $gp, %hi(_gp_disp)
addiu $gp, $gp, %lo(_gp_disp)
addu $gp, $gp, $t9
#endif
addiu $sp, $sp, -96
|
|
|
|
|
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
|
lw $s1, 24($sp)
lw $s0, 20($sp)
lw $ra, 16($sp)
addiu $sp, $sp, 96
j_pic of_method_not_found
.type OFForward, %function
.size OFForward, .-OFForward
OFForward_stret:
#ifdef OF_PIC
lui $gp, %hi(_gp_disp)
addiu $gp, $gp, %lo(_gp_disp)
addu $gp, $gp, $t9
#endif
addiu $sp, $sp, -96
|
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
|
lw $s1, 24($sp)
lw $s0, 20($sp)
lw $ra, 16($sp)
addiu $sp, $sp, 96
j_pic of_method_not_found_stret
.type of_forward_stret, %function
.size of_forward_stret, .-of_forward_stret
init:
#ifdef OF_PIC
lui $gp, %hi(_gp_disp)
addiu $gp, $gp, %lo(_gp_disp)
addu $gp, $gp, $t9
|
|
|
|
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
|
lw $s1, 24($sp)
lw $s0, 20($sp)
lw $ra, 16($sp)
addiu $sp, $sp, 96
j_pic of_method_not_found_stret
.type OFForward_stret, %function
.size OFForward_stret, .-OFForward_stret
init:
#ifdef OF_PIC
lui $gp, %hi(_gp_disp)
addiu $gp, $gp, %lo(_gp_disp)
addu $gp, $gp, $t9
|