Call SYS_exit on return from fn in __clone. This is the expected
behavior of this function. Without this the child task will crash on
return from fn, since it will return to nowhere.
nop
1: lw $25, 0($sp)
lw $4, 4($sp)
- jr $25
+ jalr $25
nop
+ move $4, $2
+ li $2, 4001
+ syscall
nop
1: ld $25, 0($sp) # function pointer
ld $4, 8($sp) # argument pointer
- jr $25 # call the user's function
+ jalr $25 # call the user's function
nop
+ move $4, $2
+ li $2, 5058
+ syscall
nop
1: lw $25, 0($sp) # function pointer
lw $4, 4($sp) # argument pointer
- jr $25 # call the user's function
+ jalr $25 # call the user's function
nop
+ move $4, $2
+ li $2, 6058
+ syscall