diff options
| author | John Wilbert M. Villamor <lameguy64@gmail.com> | 2020-11-29 20:19:18 +0800 |
|---|---|---|
| committer | John Wilbert M. Villamor <lameguy64@gmail.com> | 2020-11-29 20:19:18 +0800 |
| commit | 23a0e5e6fcdd31a56a305bd5c67fbd3cd4588b58 (patch) | |
| tree | ae42bccd71315920731f9c95aa0e090ec46dd097 | |
| parent | 3d38a12ca171490e22c7b56cd19c008f2dadfb83 (diff) | |
| parent | b0659ad85b7aa6e74d2c3eac29281636a0c2bc5e (diff) | |
| download | psn00bsdk-23a0e5e6fcdd31a56a305bd5c67fbd3cd4588b58.tar.gz | |
Merge branch 'master' of https://github.com/Lameguy64/PSn00bSDK
| -rw-r--r-- | libpsn00b/libc/memmove.s | 21 |
1 files changed, 17 insertions, 4 deletions
diff --git a/libpsn00b/libc/memmove.s b/libpsn00b/libc/memmove.s index d32e2ca..843ece7 100644 --- a/libpsn00b/libc/memmove.s +++ b/libpsn00b/libc/memmove.s @@ -10,20 +10,33 @@ .type memmove, @function memmove: move $v0, $a0 + sltu $v1, $a0, $a1 + blez $v1, .Linit_backward +.Lloop_forward: + blez $a2, .Lexit + addi $a2, -1 + lbu $v1, 0($a1) + addiu $a1, 1 + sb $v1, 0($a0) + addiu $a0, 1 + b .Lloop_forward + nop +.Linit_backward: addu $a0, $a2 addu $a1, $a2 addiu $a0, -1 addiu $a1, -1 -.Lloop: + b .Lloop_backward + nop +.Lloop_backward: blez $a2, .Lexit addi $a2, -1 lbu $v1, 0($a1) addiu $a1, -1 sb $v1, 0($a0) addiu $a0, -1 - b .Lloop + b .Lloop_backward nop .Lexit: jr $ra - nop -
\ No newline at end of file + nop
\ No newline at end of file |
