[newlib-cygwin] Fix crt0 init fini code

Corinna Vinschen corinna@sourceware.org
Thu Aug 17 11:52:00 GMT 2017


https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;h=cfa64a86d16ceca38fa4af75f8fde27cbef55012

commit cfa64a86d16ceca38fa4af75f8fde27cbef55012
Author: Szabolcs Nagy <szabolcs.nagy@arm.com>
Date:   Thu Aug 17 11:42:59 2017 +0100

    Fix crt0 init fini code
    
    __USES_INITFINI__ ifdef was incorrectly copied from arm
    (it's an arm backend thing in gcc, not meaningful on aarch64)

Diff:
---
 libgloss/aarch64/crt0.S | 4 ----
 1 file changed, 4 deletions(-)

diff --git a/libgloss/aarch64/crt0.S b/libgloss/aarch64/crt0.S
index cc7e84d..4ad435e 100644
--- a/libgloss/aarch64/crt0.S
+++ b/libgloss/aarch64/crt0.S
@@ -153,12 +153,10 @@
 	bl	FUNCTION (initialise_monitor_handles)
 #endif
 
-#ifdef __USES_INITFINI__
 	/* .init and .fini sections are used to create constructors
 	   and destructors.  Here we call the _init function and arrange
 	   for _fini to be called at program exit.  */
 	ldr	x0, .Lfini
-#endif
 	bl	FUNCTION (atexit)
 
 	bl	FUNCTION (_init)
@@ -256,10 +254,8 @@ FUNCTION (_cpu_init_hook):
 	GEN_DWORD __bss_start__
 .LC2:
 	GEN_DWORD __bss_end__
-#ifdef __USES_INITFINI__
 .Lfini:
 	GEN_DWORD FUNCTION(_fini)
-#endif
 #ifdef ARM_RDI_MONITOR
 .Lenvp:
 	GEN_DWORD env



More information about the Newlib-cvs mailing list