diff options
Diffstat (limited to 'sysdeps/sparc/sparc64/elf')
-rw-r--r-- | sysdeps/sparc/sparc64/elf/crtbegin.S | 3 | ||||
-rw-r--r-- | sysdeps/sparc/sparc64/elf/crtend.S | 3 | ||||
-rw-r--r-- | sysdeps/sparc/sparc64/elf/start.S | 24 |
3 files changed, 8 insertions, 22 deletions
diff --git a/sysdeps/sparc/sparc64/elf/crtbegin.S b/sysdeps/sparc/sparc64/elf/crtbegin.S index 318e7a6a3f..c2fe01f6b0 100644 --- a/sysdeps/sparc/sparc64/elf/crtbegin.S +++ b/sysdeps/sparc/sparc64/elf/crtbegin.S @@ -40,7 +40,7 @@ __DTOR_LIST__: .align 4 .type __do_global_dtors_aux,#function __do_global_dtors_aux: - save %sp,-160,%sp + save %sp,-192,%sp #ifdef PIC 1: call 11f @@ -53,7 +53,6 @@ __do_global_dtors_aux: #else sethi %hi(__DTOR_LIST__), %l0 or %l0, %lo(__DTOR_LIST__), %l0 - add %l0, %g4, %l0 #endif ba 3f diff --git a/sysdeps/sparc/sparc64/elf/crtend.S b/sysdeps/sparc/sparc64/elf/crtend.S index 7a5c067b07..db0ac87ecd 100644 --- a/sysdeps/sparc/sparc64/elf/crtend.S +++ b/sysdeps/sparc/sparc64/elf/crtend.S @@ -40,7 +40,7 @@ __DTOR_END__: .align 4 .type __do_global_ctors_aux,#function __do_global_ctors_aux: - save %sp,-160,%sp + save %sp,-192,%sp #ifdef PIC 1: call 11f @@ -53,7 +53,6 @@ __do_global_ctors_aux: #else sethi %hi(__CTOR_END__), %l0 or %l0, %lo(__CTOR_END__), %l0 - add %l0, %g4, %l0 #endif ba 3f diff --git a/sysdeps/sparc/sparc64/elf/start.S b/sysdeps/sparc/sparc64/elf/start.S index 140cd366e5..1fc24619cf 100644 --- a/sysdeps/sparc/sparc64/elf/start.S +++ b/sysdeps/sparc/sparc64/elf/start.S @@ -38,24 +38,12 @@ _start: add %sp, STACK_BIAS+23*8, %o2 /* Load the addresses of the user entry points. */ - sethi %uhi(main), %o0 - sethi %uhi(_init), %o3 - sethi %uhi(_fini), %o4 - or %o0, %ulo(main), %o0 - or %o3, %ulo(_init), %o3 - or %o4, %ulo(_fini), %o4 - sethi %hi(main), %i0 - sethi %hi(_init), %i3 - sethi %hi(_fini), %i4 - sllx %o0, 32, %o0 - or %i0, %lo(main), %i0 - sllx %o3, 32, %o3 - or %i3, %lo(_init), %i3 - sllx %o4, 32, %o4 - or %i4, %lo(_fini), %i4 - or %o0, %i0, %o0 - or %o3, %i3, %o3 - or %o4, %i4, %o4 + sethi %hi(main), %o0 + sethi %hi(_init), %o3 + sethi %hi(_fini), %o4 + or %o0, %lo(main), %o0 + or %o3, %lo(_init), %o3 + or %o4, %lo(_fini), %o4 /* When starting a binary via the dynamic linker, %g1 contains the address of the shared library termination function, which will be |