summaryrefslogtreecommitdiff
path: root/libc/sysdeps/linux/sparc
diff options
context:
space:
mode:
Diffstat (limited to 'libc/sysdeps/linux/sparc')
-rw-r--r--libc/sysdeps/linux/sparc/__longjmp.S24
-rw-r--r--libc/sysdeps/linux/sparc/clone.S27
-rw-r--r--libc/sysdeps/linux/sparc/crti.S7
-rw-r--r--libc/sysdeps/linux/sparc/crtn.S6
-rw-r--r--libc/sysdeps/linux/sparc/setjmp.S35
5 files changed, 46 insertions, 53 deletions
diff --git a/libc/sysdeps/linux/sparc/__longjmp.S b/libc/sysdeps/linux/sparc/__longjmp.S
index d6e04bd1e..06828e61e 100644
--- a/libc/sysdeps/linux/sparc/__longjmp.S
+++ b/libc/sysdeps/linux/sparc/__longjmp.S
@@ -25,29 +25,29 @@
#define ST_FLUSH_WINDOWS 3
#define RW_FP [%fp + 0x48]
-.global __longjmp;
-.align 4;
-__longjmp: ;
-.type __longjmp ,@function;
+.global __longjmp
+.type __longjmp,%function
+.align 4
+__longjmp:
/* Store our arguments in global registers so we can still
- use them while unwinding frames and their register windows. */
+ * use them while unwinding frames and their register windows. */
ld ENV(o0,JB_FP), %g3 /* Cache target FP in register %g3. */
mov %o0, %g1 /* ENV in %g1 */
- orcc %o1, %g0, %g2 /* VAL in %g2 */
- be,a 0f /* Branch if zero; else skip delay slot. */
- mov 1, %g2 /* Delay slot only hit if zero: VAL = 1. */
+ orcc %o1, %g0, %g2 /* VAL in %g2 */
+ be,a 0f /* Branch if zero; else skip delay slot. */
+ mov 1, %g2 /* Delay slot only hit if zero: VAL = 1. */
0:
xor %fp, %g3, %o0
add %fp, 512, %o1
andncc %o0, 4095, %o0
bne .Lthread
- cmp %o1, %g3
+ cmp %o1, %g3
bl .Lthread
/* Now we will loop, unwinding the register windows up the stack
- until the restored %fp value matches the target value in %g3. */
+ * until the restored %fp value matches the target value in %g3. */
.Lloop:
cmp %fp, %g3 /* Have we reached the target frame? */
@@ -71,7 +71,7 @@ __longjmp: ;
sub %fp, 64, %sp /* Allocate a register frame. */
st %g3, RW_FP /* Set saved FP on restore below. */
retl
- restore %g2, 0, %o0 /* Restore values from above register frame. */
+ restore %g2, 0, %o0 /* Restore values from above register frame. */
.Lfound:
/* We have unwound register windows so %fp matches the target. */
@@ -82,4 +82,4 @@ __longjmp: ;
jmp %o0 + 8 /* Return there. */
mov %g2, %o0 /* Delay slot: set return value. */
-.size __longjmp , . - __longjmp
+.size __longjmp,.-__longjmp
diff --git a/libc/sysdeps/linux/sparc/clone.S b/libc/sysdeps/linux/sparc/clone.S
index 06638570c..1bd10561a 100644
--- a/libc/sysdeps/linux/sparc/clone.S
+++ b/libc/sysdeps/linux/sparc/clone.S
@@ -36,37 +36,38 @@ __clone:
/* sanity check arguments */
tst %i0
be .Lerror
- orcc %i1,%g0,%o1
+ orcc %i1,%g0,%o1
be .Lerror
- mov %i2,%o0
+ mov %i2,%o0
/* Do the system call */
set __NR_clone,%g1
ta 0x10
bcs .Lerror
- tst %o1
+ tst %o1
bne __thread_start
- nop
+ nop
ret
- restore %o0,%g0,%o0
+ restore %o0,%g0,%o0
.Lerror:
call __errno_location
- or %g0,EINVAL,%i0
+ or %g0,EINVAL,%i0
st %i0,[%o0]
ret
- restore %g0,-1,%o0
+ restore %g0,-1,%o0
- .size __clone, .-__clone
+.size __clone,.-__clone
- .type __thread_start,@function
+.type __thread_start,%function
__thread_start:
call %i0
- mov %i3,%o0
+ mov %i3,%o0
call _exit,0
- nop
+ nop
- .size __thread_start, .-__thread_start
+.size __thread_start,.-__thread_start
-.weak clone ; clone = __clone
+.weak clone
+ clone = __clone
diff --git a/libc/sysdeps/linux/sparc/crti.S b/libc/sysdeps/linux/sparc/crti.S
index 9dff14858..6dfc6c61e 100644
--- a/libc/sysdeps/linux/sparc/crti.S
+++ b/libc/sysdeps/linux/sparc/crti.S
@@ -3,7 +3,7 @@
.section .init
.align 4
.global _init
- .type _init, #function
+ .type _init, %function
.proc 020
_init:
!#PROLOGUE# 0
@@ -15,12 +15,9 @@ _init:
.section .fini
.align 4
.global _fini
- .type _fini, #function
+ .type _fini, %function
.proc 020
_fini:
!#PROLOGUE# 0
save %sp, -104, %sp
.align 4
-
-
- .ident "GCC: (GNU) 3.3.2"
diff --git a/libc/sysdeps/linux/sparc/crtn.S b/libc/sysdeps/linux/sparc/crtn.S
index 345638f67..24b4bf43c 100644
--- a/libc/sysdeps/linux/sparc/crtn.S
+++ b/libc/sysdeps/linux/sparc/crtn.S
@@ -3,7 +3,7 @@
.section .init
.align 4
.global _init
- .type _init, #function
+ .type _init, %function
.proc 020
ret
restore
@@ -12,10 +12,8 @@
.section .fini
.align 4
.global _fini
- .type _fini, #function
+ .type _fini, %function
.proc 020
ret
restore
.size _fini, .-_fini
-
- .ident "GCC: (GNU) 3.3.2"
diff --git a/libc/sysdeps/linux/sparc/setjmp.S b/libc/sysdeps/linux/sparc/setjmp.S
index e01e73b04..796abc763 100644
--- a/libc/sysdeps/linux/sparc/setjmp.S
+++ b/libc/sysdeps/linux/sparc/setjmp.S
@@ -23,35 +23,32 @@
#include <bits/setjmp.h>
#define ST_FLUSH_WINDOWS 3
-.global _setjmp;
-.align 4;
-.type _setjmp ,@function;
-
+.global _setjmp
+.type _setjmp,%function
+.align 4
_setjmp:
b 1f
- set 0, %o1
-.size _setjmp,.-_setjmp;
-
-
+ set 0, %o1
+.size _setjmp,.-_setjmp
-.global setjmp;
-.align 4;
-.type setjmp ,@function;
+.global setjmp
+.type setjmp,%function
+.align 4
setjmp:
set 1, %o1
-.size setjmp,.-setjmp;
+.size setjmp,.-setjmp
-.global __sigsetjmp;
-.align 4;
-.type __sigsetjmp ,@function;
+.global __sigsetjmp
+.type __sigsetjmp,%function
+.align 4
__sigsetjmp:
1:
/* Save our PC, SP and FP. Save the signal mask if requested with
@@ -64,10 +61,10 @@ __sigsetjmp:
mov %o7, %g1
call __sigjmp_save
- mov %g1, %o7
-.size __sigsetjmp,.-__sigsetjmp;
+ mov %g1, %o7
+.size __sigsetjmp,.-__sigsetjmp
-.weak _setjmp
-.weak setjmp
+.weak _setjmp
+.weak setjmp