| Index: fusl/src/signal/mips/sigsetjmp.s
|
| diff --git a/fusl/src/signal/mips/sigsetjmp.s b/fusl/src/signal/mips/sigsetjmp.s
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..74b65ff68f2593cb7f4c0c2143f7813ecbd04db6
|
| --- /dev/null
|
| +++ b/fusl/src/signal/mips/sigsetjmp.s
|
| @@ -0,0 +1,33 @@
|
| +.set noreorder
|
| +
|
| +.global sigsetjmp
|
| +.global __sigsetjmp
|
| +.type sigsetjmp,@function
|
| +.type __sigsetjmp,@function
|
| +sigsetjmp:
|
| +__sigsetjmp:
|
| + lui $gp, %hi(_gp_disp)
|
| + addiu $gp, %lo(_gp_disp)
|
| + beq $5, $0, 1f
|
| + addu $gp, $gp, $25
|
| +
|
| + sw $ra, 104($4)
|
| + sw $16, 104+4+16($4)
|
| +
|
| + lw $25, %call16(setjmp)($gp)
|
| + jalr $25
|
| + move $16, $4
|
| +
|
| + move $5,$2
|
| + move $4,$16
|
| + lw $ra, 104($4)
|
| + lw $16, 104+4+16($4)
|
| +
|
| +.hidden __sigsetjmp_tail
|
| + lw $25, %call16(__sigsetjmp_tail)($gp)
|
| + jr $25
|
| + nop
|
| +
|
| +1: lw $25, %call16(setjmp)($gp)
|
| + jr $25
|
| + nop
|
|
|