[newlib-cygwin] move ILP32 sanity check on heap base code under ARM_RDI_MONITOR

Corinna Vinschen corinna@sourceware.org
Thu Aug 24 12:41:00 GMT 2017


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

commit 3ec9892f5dd6240d8b21c8cad7874ea856040626
Author: Alexander Fedotov-B55613 <b55613@freescale.com>
Date:   Tue Aug 22 17:06:54 2017 +0300

    move ILP32 sanity check on heap base code under ARM_RDI_MONITOR

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

diff --git a/libgloss/aarch64/crt0.S b/libgloss/aarch64/crt0.S
index 4ad435e..f670e03 100644
--- a/libgloss/aarch64/crt0.S
+++ b/libgloss/aarch64/crt0.S
@@ -101,10 +101,7 @@
 	   exposed here in the HeapInfo Angel call.  */
 	ldr	x0, .LC0		/* point at returned values */
 	ldr	x1, [x0, #8]		/* get heap_limit */
-#else
-	/* Set up the stack pointer to a fixed value.  */
-	ldr     x1, .Lstack
-#endif
+
 #ifdef __ILP32__
 	/* Sanity check on the heap base.  */
 	ldr	x0, [x0]		/* get heap_base */
@@ -128,6 +125,10 @@
 	tst	x1, #0xffffffff00000000
 	csinv	w1, w1, wzr, eq
 #endif
+#else
+	/* Set up the stack pointer to a fixed value.  */
+	ldr     x1, .Lstack
+#endif
 
 	/* Ensure quad-word stack alignment.  */
 	and	x0, x1, #~15



More information about the Newlib-cvs mailing list