X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=src%2Fsignal%2Fmips%2Fsigsetjmp.s;h=74b65ff68f2593cb7f4c0c2143f7813ecbd04db6;hb=0847902ab99065a48f9bd3729b6e676288dfd69e;hp=133ca777acf406e2ea0a00f5396f6c4311f2cfdf;hpb=b9b2db2f374bce907fa5015c9cf63205054f2356;p=musl diff --git a/src/signal/mips/sigsetjmp.s b/src/signal/mips/sigsetjmp.s index 133ca777..74b65ff6 100644 --- a/src/signal/mips/sigsetjmp.s +++ b/src/signal/mips/sigsetjmp.s @@ -9,22 +9,25 @@ __sigsetjmp: lui $gp, %hi(_gp_disp) addiu $gp, %lo(_gp_disp) beq $5, $0, 1f - addu $gp, $gp, $25 - subu $sp, $sp, 32 - sw $4, 20($sp) - sw $ra, 24($sp) - sw $gp, 28($sp) - addu $6, $4, 108 - li $5, 0 - li $4, 1 - sw $4, -4($6) - lw $25, %call16(sigprocmask)($gp) + addu $gp, $gp, $25 + + sw $ra, 104($4) + sw $16, 104+4+16($4) + + lw $25, %call16(setjmp)($gp) jalr $25 - nop - lw $gp, 28($sp) - lw $ra, 24($sp) - lw $4, 20($sp) - addu $sp, $sp, 32 + 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 + nop