ARM crt0.o: Add NULL to end of argv[]

Richard Earnshaw rearnsha@arm.com
Mon Nov 18 07:53:00 GMT 2002


> 
> > + 	/* Push a NULL argument onto the end of the list.  */
> > + 	mov	r2, #0
> > + #ifdef __thumb__
> > + 	push	{r2}
> > + #else
> > + 	stmfd	sp!, {r1}
> > + #endif
> >   #endif
> 
> That can't be right.  The arm and thumb code push different registers!!!!
> 
> R.
> 

And even if you change that I'm not convinced.  Surely you need to push 
this extra value *before* you reverse the list.  Otherwise the first 
argument will be null, not the last.

R.



More information about the Newlib mailing list