diff options
| author | Rich Felker <dalias@aerifal.cx> | 2011-05-26 20:59:02 -0400 | 
|---|---|---|
| committer | Rich Felker <dalias@aerifal.cx> | 2011-05-26 20:59:02 -0400 | 
| commit | 3a17f757a80816961cd1fbf4664a5cbb02563b2d (patch) | |
| tree | b2f86acd964c9c26c15e8793476f5f8b3760b36e | |
| parent | 86339bc4ba69ca5c88fd5570875cf17a275bd019 (diff) | |
| download | musl-3a17f757a80816961cd1fbf4664a5cbb02563b2d.tar.gz | |
modernize coding style in sjlj asm
| -rw-r--r-- | src/setjmp/i386/longjmp.s | 26 | ||||
| -rw-r--r-- | src/setjmp/i386/setjmp.s | 20 | ||||
| -rw-r--r-- | src/setjmp/x86_64/longjmp.s | 20 | ||||
| -rw-r--r-- | src/setjmp/x86_64/setjmp.s | 4 | 
4 files changed, 35 insertions, 35 deletions
| diff --git a/src/setjmp/i386/longjmp.s b/src/setjmp/i386/longjmp.s index c1a956c3..249d7b4d 100644 --- a/src/setjmp/i386/longjmp.s +++ b/src/setjmp/i386/longjmp.s @@ -4,19 +4,19 @@  .type longjmp,%function  _longjmp:  longjmp: -	movl  4(%esp),%edx -	movl  8(%esp),%eax -	testl    %eax,%eax -	jnz .L0 -	incl     %eax -.L0: -	movl   (%edx),%ebx -	movl  4(%edx),%esi -	movl  8(%edx),%edi -	movl 12(%edx),%ebp -	movl 16(%edx),%ecx -	movl     %ecx,%esp -	movl 20(%edx),%ecx +	mov  4(%esp),%edx +	mov  8(%esp),%eax +	test    %eax,%eax +	jnz 1f +	inc     %eax +1: +	mov   (%edx),%ebx +	mov  4(%edx),%esi +	mov  8(%edx),%edi +	mov 12(%edx),%ebp +	mov 16(%edx),%ecx +	mov     %ecx,%esp +	mov 20(%edx),%ecx  	jmp *%ecx  .size _longjmp,.-_longjmp  .size longjmp,.-longjmp diff --git a/src/setjmp/i386/setjmp.s b/src/setjmp/i386/setjmp.s index 6c078b10..89e614fa 100644 --- a/src/setjmp/i386/setjmp.s +++ b/src/setjmp/i386/setjmp.s @@ -7,16 +7,16 @@  __setjmp:  _setjmp:  setjmp: -	movl 4(%esp), %eax -	movl    %ebx, (%eax) -	movl    %esi, 4(%eax) -	movl    %edi, 8(%eax) -	movl    %ebp, 12(%eax) -	leal 4(%esp), %ecx -	movl    %ecx, 16(%eax) -	movl  (%esp), %ecx -	movl    %ecx, 20(%eax) -	xorl    %eax, %eax +	mov 4(%esp), %eax +	mov    %ebx, (%eax) +	mov    %esi, 4(%eax) +	mov    %edi, 8(%eax) +	mov    %ebp, 12(%eax) +	lea 4(%esp), %ecx +	mov    %ecx, 16(%eax) +	mov  (%esp), %ecx +	mov    %ecx, 20(%eax) +	xor    %eax, %eax  	ret  .size __setjmp,.-__setjmp  .size _setjmp,.-_setjmp 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 diff --git a/src/setjmp/x86_64/setjmp.s b/src/setjmp/x86_64/setjmp.s index 8f29fa81..faecd353 100644 --- a/src/setjmp/x86_64/setjmp.s +++ b/src/setjmp/x86_64/setjmp.s @@ -14,9 +14,9 @@ setjmp:  	mov %r13,24(%rdi)  	mov %r14,32(%rdi)  	mov %r15,40(%rdi) -	leaq 8(%rsp),%rdx       /* this is our rsp WITHOUT current ret addr */ +	lea 8(%rsp),%rdx        /* this is our rsp WITHOUT current ret addr */  	mov %rdx,48(%rdi) -	movq (%rsp),%rdx        /* save return addr ptr for new rip */ +	mov (%rsp),%rdx         /* save return addr ptr for new rip */  	mov %rdx,56(%rdi)  	xor %rax,%rax           /* always return 0 */  	ret | 
