projects
/
oweals
/
musl.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
e1e4d6b
)
sigsetjmp asm for mips
author
Rich Felker
<dalias@aerifal.cx>
Fri, 13 Jul 2012 02:20:36 +0000
(22:20 -0400)
committer
Rich Felker
<dalias@aerifal.cx>
Fri, 13 Jul 2012 02:20:36 +0000
(22:20 -0400)
src/signal/mips/sigsetjmp.s
[new file with mode: 0644]
patch
|
blob
diff --git a/src/signal/mips/sigsetjmp.s
b/src/signal/mips/sigsetjmp.s
new file mode 100644
(file)
index 0000000..
ae9c542
--- /dev/null
+++ b/
src/signal/mips/sigsetjmp.s
@@ -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