This is the mail archive of the newlib@sourceware.org mailing list for the newlib project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: libgloss/v850/crt0.S missing copy of .data from ROM to RAM?


Hi Josef,

> Since the V850 architecture is quite
> special, perhaps a comment or two in the source code would suffice,
> notifying the user that the copying from ROM to RAM has to be done manually?

Something like the patch below ?

I will check it in shortly.

Cheers
  Nick

diff --git a/libgloss/v850/crt0.S b/libgloss/v850/crt0.S
index c9c93e7..8d44f88 100644
--- a/libgloss/v850/crt0.S
+++ b/libgloss/v850/crt0.S
@@ -24,6 +24,12 @@ _start:
 	movhi	2,		r0,	r6
 	ldsr    r6, 	    	fpsr
 #endif
+	// FIXME: We currently assume that the data sections
+	// are loaded in place - ie that they do not need to
+	// moved from eg ROM into RAM.  If that is not true
+	// then extra code needs to be added here.
+	
+	// Initialise the .bss section.
 	mov     hilo(_edata),	r6
 	mov     hilo(_end),	r7
 .L0:
@@ -52,6 +58,9 @@ _start:
 	movhi   hi(__gp),	r0,	gp
 	movea   lo(__gp),	gp,	gp
 
+	// FIXME: See note about not moving the data sections above.
+	
+	// Initialise the .bss section.
 	movhi   hi(_edata),	r0,	r6
 	movea   lo(_edata),	r6,	r6
 	movhi   hi(_end),	r0,	r7


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]