summaryrefslogtreecommitdiff
path: root/src/setjmp/x86_64/longjmp.s
diff options
context:
space:
mode:
authorRich Felker <dalias@aerifal.cx>2011-05-26 20:59:02 -0400
committerRich Felker <dalias@aerifal.cx>2011-05-26 20:59:02 -0400
commit3a17f757a80816961cd1fbf4664a5cbb02563b2d (patch)
treeb2f86acd964c9c26c15e8793476f5f8b3760b36e /src/setjmp/x86_64/longjmp.s
parent86339bc4ba69ca5c88fd5570875cf17a275bd019 (diff)
downloadmusl-3a17f757a80816961cd1fbf4664a5cbb02563b2d.tar.gz
modernize coding style in sjlj asm
Diffstat (limited to 'src/setjmp/x86_64/longjmp.s')
-rw-r--r--src/setjmp/x86_64/longjmp.s20
1 files changed, 10 insertions, 10 deletions
diff --git a/src/setjmp/x86_64/longjmp.s b/src/setjmp/x86_64/longjmp.s
index c63b0c95..dd893512 100644
--- a/src/setjmp/x86_64/longjmp.s
+++ b/src/setjmp/x86_64/longjmp.s
@@ -7,18 +7,18 @@ _longjmp:
longjmp:
mov %rsi,%rax /* val will be longjmp return */
test %rax,%rax
- jnz .L0
+ jnz 1f
inc %rax /* if val==0, val=1 per longjmp semantics */
-.L0:
- movq (%rdi),%rbx /* rdi is the jmp_buf, restore regs from it */
- movq 8(%rdi),%rbp
- movq 16(%rdi),%r12
- movq 24(%rdi),%r13
- movq 32(%rdi),%r14
- movq 40(%rdi),%r15
- movq 48(%rdi),%rdx /* this ends up being the stack pointer */
+1:
+ mov (%rdi),%rbx /* rdi is the jmp_buf, restore regs from it */
+ mov 8(%rdi),%rbp
+ mov 16(%rdi),%r12
+ mov 24(%rdi),%r13
+ mov 32(%rdi),%r14
+ mov 40(%rdi),%r15
+ mov 48(%rdi),%rdx /* this ends up being the stack pointer */
mov %rdx,%rsp
- movq 56(%rdi),%rdx /* this is the instruction pointer */
+ mov 56(%rdi),%rdx /* this is the instruction pointer */
jmp *%rdx /* goto saved address without altering rsp */
.size _longjmp,.-_longjmp
.size longjmp,.-longjmp