Created
May 16, 2014 02:20
-
-
Save scalone/8ce2be3d34b2a9697aad to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
.set noreorder | |
.global pipe | |
.type pipe,@function | |
pipe: | |
lui $gp, %hi(_gp_disp) | |
addiu $gp, %lo(_gp_disp) | |
addu $gp, $gp, $25 | |
li $2, 4042 | |
syscall | |
beq $7, $0, 1f | |
nop | |
lw $25, %call16(__syscall_ret)($gp) | |
jr $25 | |
subu $4, $0, $2 | |
1: sw $2, 0($4) | |
sw $3, 4($4) | |
move $2, $0 | |
jr $ra | |
nop | |
/* | |
00000000 <pipe>: | |
0: 3c1c0000 lui gp,0x0 | |
0: R_MIPS_HI16 _gp_disp | |
4: 279c0000 addiu gp,gp,0 | |
4: R_MIPS_LO16 _gp_disp | |
8: 0399e021 addu gp,gp,t9 | |
c: 24020fca li v0,4042 | |
10: 0000000c syscall | |
14: 10e00004 beqz a3,28 <pipe+0x28> | |
18: 00000000 nop | |
1c: 8f990000 lw t9,0(gp) | |
1c: R_MIPS_CALL16 __syscall_ret | |
20: 03200008 jr t9 | |
24: 00022023 negu a0,v0 | |
28: ac820000 sw v0,0(a0) | |
2c: ac830004 sw v1,4(a0) | |
30: 00001021 move v0,zero | |
34: 03e00008 jr ra | |
38: 00000000 nop | |
*/ | |
/* lib8c funfa */ | |
.global pipe | |
.type pipe,@function | |
pipe: | |
.set noreorder | |
.cpload $25 | |
li $2, 4042 | |
syscall | |
beq $7, $0, 1f | |
nop | |
sw $2, 0($4) | |
sw $3, 4($4) | |
j $ra | |
move $2, $zero | |
1: | |
move $4, $2 | |
nop | |
/* | |
00000000 <pipe>: | |
0: 24020fca li v0,4042 | |
4: 0000000c syscall | |
8: 10e00005 beqz a3,20 <pipe+0x20> | |
c: 00000000 nop | |
10: ac820000 sw v0,0(a0) | |
14: ac830004 sw v1,4(a0) | |
18: 03e00008 jr ra | |
1c: 00001021 move v0,zero | |
20: 00402021 move a0,v0 | |
24: 00000000 nop | |
*/ | |
/* lib9c */ | |
.global pipe | |
.type pipe,@function | |
pipe: | |
.set noreorder | |
lw $gp, ($25) | |
li $2, 4042 | |
syscall | |
beq $7, $0, 1f | |
nop | |
lw $25, __syscall_ret($gp) | |
jr $25 | |
1: | |
move $4, $2 | |
nop | |
/* lib10c */ | |
.set noreorder | |
.global pipe | |
.type pipe,@function | |
pipe: | |
.cpload $25 | |
li $2, 4042 | |
syscall | |
beq $7, $0, 1f | |
nop | |
lw $25, __syscall_ret($gp) | |
jr $25 | |
1: | |
move $4, $2 | |
nop | |
/* lib11c */ | |
.set noreorder | |
.global pipe | |
.type pipe,@function | |
pipe: | |
lui $gp, %hi(_gp_disp) | |
addiu $gp, %lo(_gp_disp) | |
addu $gp, $gp, $25 | |
li $2, 4042 | |
syscall | |
beq $7, $0, 1f | |
nop | |
lw $25, __syscall_ret($gp) | |
jr $25 | |
subu $4, $0, $2 | |
1: sw $2, 0($4) | |
sw $3, 4($4) | |
move $2, $0 | |
jr $ra | |
nop | |
/* | |
00000000 <pipe>: | |
0: 3c1c0000 lui gp,0x0 | |
0: R_MIPS_HI16 _gp_disp | |
4: 279c0000 addiu gp,gp,0 | |
4: R_MIPS_LO16 _gp_disp | |
8: 0399e021 addu gp,gp,t9 | |
c: 24020fca li v0,4042 | |
10: 0000000c syscall | |
14: 10e00006 beqz a3,30 <pipe+0x30> | |
18: 00000000 nop | |
1c: 3c190000 lui t9,0x0 | |
1c: R_MIPS_HI16 __syscall_ret | |
20: 033cc821 addu t9,t9,gp | |
24: 8f390000 lw t9,0(t9) | |
24: R_MIPS_LO16 __syscall_ret | |
28: 03200008 jr t9 | |
2c: 00022023 negu a0,v0 | |
30: ac820000 sw v0,0(a0) | |
34: ac830004 sw v1,4(a0) | |
38: 00001021 move v0,zero | |
3c: 03e00008 jr ra | |
40: 00000000 nop | |
*/ | |
/* libc12.c */ | |
.set noreorder | |
.global pipe | |
.type pipe,@function | |
pipe: | |
lui $gp, (_gp_disp) | |
addu $gp, $gp, $25 | |
li $2, 4042 | |
syscall | |
beq $7, $0, 1f | |
nop | |
lw $25, __syscall_ret($gp) | |
jr $25 | |
subu $4, $0, $2 | |
1: sw $2, 0($4) | |
sw $3, 4($4) | |
move $2, $0 | |
jr $ra | |
nop | |
/* | |
00000000 <pipe>: | |
0: 3c1c0000 lui gp,0x0 | |
4: 0399e021 addu gp,gp,t9 | |
8: 24020fca li v0,4042 | |
c: 0000000c syscall | |
10: 10e00006 beqz a3,2c <pipe+0x2c> | |
14: 00000000 nop | |
18: 3c190000 lui t9,0x0 | |
18: R_MIPS_HI16 __syscall_ret | |
1c: 033cc821 addu t9,t9,gp | |
20: 8f390000 lw t9,0(t9) | |
20: R_MIPS_LO16 __syscall_ret | |
24: 03200008 jr t9 | |
28: 00022023 negu a0,v0 | |
2c: ac820000 sw v0,0(a0) | |
30: ac830004 sw v1,4(a0) | |
34: 00001021 move v0,zero | |
38: 03e00008 jr ra | |
3c: 00000000 nop | |
*/ | |
/*libc13*/ | |
.set noreorder | |
.global pipe | |
.type pipe,@function | |
pipe: | |
lw $gp, (_gp_disp) | |
addu $gp, $gp, $25 | |
li $2, 4042 | |
syscall | |
beq $7, $0, 1f | |
nop | |
lw $25, __syscall_ret($gp) | |
jr $25 | |
subu $4, $0, $2 | |
1: sw $2, 0($4) | |
sw $3, 4($4) | |
move $2, $0 | |
jr $ra | |
nop | |
/* | |
00000000 <pipe>: | |
0: 3c1c0000 lui gp,0x0 | |
0: R_MIPS_HI16 _gp_disp | |
4: 8f9c0000 lw gp,0(gp) | |
4: R_MIPS_LO16 _gp_disp | |
8: 0399e021 addu gp,gp,t9 | |
c: 24020fca li v0,4042 | |
10: 0000000c syscall | |
14: 10e00006 beqz a3,30 <pipe+0x30> | |
18: 00000000 nop | |
1c: 3c190000 lui t9,0x0 | |
1c: R_MIPS_HI16 __syscall_ret | |
20: 033cc821 addu t9,t9,gp | |
24: 8f390000 lw t9,0(t9) | |
24: R_MIPS_LO16 __syscall_ret | |
28: 03200008 jr t9 | |
2c: 00022023 negu a0,v0 | |
30: ac820000 sw v0,0(a0) | |
34: ac830004 sw v1,4(a0) | |
38: 00001021 move v0,zero | |
3c: 03e00008 jr ra | |
40: 00000000 nop | |
*/ | |
/*lib14.c*/ | |
.set noreorder | |
.global pipe | |
.type pipe,@function | |
pipe: | |
lw $gp, %hi(_gp_disp) | |
addiu $gp, %lo(_gp_disp) | |
addu $gp, $gp, $25 | |
li $2, 4042 | |
syscall | |
bne $7, $0, 1f | |
nop | |
sw $2, 0($4) | |
sw $3, 4($4) | |
li $2, 0 | |
j $ra | |
1: | |
li $2, -1 | |
nop | |
/* | |
00000000 <pipe>: | |
0: 8c1c0000 lw gp,0(zero) | |
0: R_MIPS_HI16 _gp_disp | |
4: 279c0000 addiu gp,gp,0 | |
4: R_MIPS_LO16 _gp_disp | |
8: 0399e021 addu gp,gp,t9 | |
c: 24020fca li v0,4042 | |
10: 0000000c syscall | |
14: 14e00005 bnez a3,2c <pipe+0x2c> | |
18: 00000000 nop | |
1c: ac820000 sw v0,0(a0) | |
20: ac830004 sw v1,4(a0) | |
24: 24020000 li v0,0 | |
28: 03e00008 jr ra | |
2c: 2402ffff li v0,-1 | |
30: 00000000 nop | |
*/ | |
/*lib15.c*/ | |
.set noreorder | |
.global pipe | |
.type pipe,@function | |
pipe: | |
.cpload $25 | |
li $2, 4042 | |
syscall | |
bne $7, $0, 1f | |
nop | |
sw $2, 0($4) | |
sw $3, 4($4) | |
j $ra | |
li $2, 0 | |
1: | |
li $2, -1 | |
nop | |
/*libc16*/ | |
.set noreorder | |
.global pipe | |
.type pipe,@function | |
pipe: | |
.cpload $25 | |
li $2, 4042 | |
syscall | |
bne $7, $0, 1f | |
nop | |
sw $2, 0($4) | |
sw $3, 4($4) | |
j $ra | |
li $2, 0 | |
1: | |
lw $25, __syscall_ret($gp) | |
jr $25 | |
subu $4, $0, $2 | |
nop | |
/* | |
00000000 <pipe>: | |
0: 24020fca li v0,4042 | |
4: 0000000c syscall | |
8: 14e00005 bnez a3,20 <pipe+0x20> | |
c: 00000000 nop | |
10: ac820000 sw v0,0(a0) | |
14: ac830004 sw v1,4(a0) | |
18: 03e00008 jr ra | |
1c: 24020000 li v0,0 | |
20: 3c190000 lui t9,0x0 | |
20: R_MIPS_HI16 __syscall_ret | |
24: 033cc821 addu t9,t9,gp | |
28: 8f390000 lw t9,0(t9) | |
28: R_MIPS_LO16 __syscall_ret | |
2c: 03200008 jr t9 | |
30: 00022023 negu a0,v0 | |
34: 00000000 nop | |
*/ | |
/*libc17*/ | |
.set noreorder | |
.global pipe | |
.type pipe,@function | |
pipe: | |
lui $gp, %hi(_gp_disp) | |
addiu $gp, %lo(_gp_disp) | |
addu $gp, $gp, $25 | |
li $2, 4042 | |
syscall | |
beq $7, $0, 1f | |
nop | |
lw $25, __syscall_ret($gp) | |
jr $25 | |
subu $4, $0, $2 | |
1: sw $2, 0($4) | |
sw $3, 4($4) | |
move $2, $0 | |
jr $ra | |
nop | |
/* | |
00000000 <pipe>: | |
0: 3c1c0000 lui gp,0x0 | |
0: R_MIPS_HI16 _gp_disp | |
4: 279c0000 addiu gp,gp,0 | |
4: R_MIPS_LO16 _gp_disp | |
8: 0399e021 addu gp,gp,t9 | |
c: 24020fca li v0,4042 | |
10: 0000000c syscall | |
14: 10e00006 beqz a3,30 <pipe+0x30> | |
18: 00000000 nop | |
1c: 3c190000 lui t9,0x0 | |
1c: R_MIPS_HI16 __syscall_ret | |
20: 033cc821 addu t9,t9,gp | |
24: 8f390000 lw t9,0(t9) | |
24: R_MIPS_LO16 __syscall_ret | |
28: 03200008 jr t9 | |
2c: 00022023 negu a0,v0 | |
30: ac820000 sw v0,0(a0) | |
34: ac830004 sw v1,4(a0) | |
38: 00001021 move v0,zero | |
3c: 03e00008 jr ra | |
40: 00000000 nop | |
*/ |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment