sigsetjmp asm for mips
This commit is contained in:
parent
e1e4d6b269
commit
532cd3a717
1 changed files with 27 additions and 0 deletions
27
src/signal/mips/sigsetjmp.s
Normal file
27
src/signal/mips/sigsetjmp.s
Normal file
|
|
@ -0,0 +1,27 @@
|
|||
.set noreorder
|
||||
|
||||
.global sigsetjmp
|
||||
.type sigsetjmp,@function
|
||||
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, 124
|
||||
li $5, 0
|
||||
li $4, 1
|
||||
sw $4, -4($6)
|
||||
lw $25, %call16(sigprocmask)($gp)
|
||||
jalr $25
|
||||
nop
|
||||
lw $gp, 28($sp)
|
||||
lw $ra, 24($sp)
|
||||
lw $4, 20($sp)
|
||||
addu $sp, $sp, 32
|
||||
1: lw $25, %call16(setjmp)($gp)
|
||||
jr $25
|
||||
nop
|
||||
Loading…
Add table
Add a link
Reference in a new issue