Thanks Peter,
yet too complex.
And more - it is not necesary to load r1 with stack value in a reset vector.
When compiling C code, r1 can be initialized in in main().
So, I'll leave this unchanged.
I'll also put a dot in a label. Thanks.
One more - I would prefer rather ignore 'reserve' attribute in c++ code than
define new var (which can be mangelen some way in c++ output.).
Are there any other suggestions ?
And actually... does anybody use reserve() attribute?
~d
On Monday 14 April 2003 02:54, Peter Jansen wrote:
> Hi Dmitry,
>
> Yes its getting complex :-). By renaming the variables and changing the
> linker script to define __stack = ${STACK} - __reserve_ram its a bit
> simpler and easier to understand. Attached are the patches to do this.
>
> Is their some reason that you define ${STACK} in
> binutils/ld/emulparams/msp.... and don't just use ${RAM_START} +
> ${RAM_END} ?
>
> The attached patch also has a minor fix to the constructors (the label
> L__ctors_end should have been .L__ctors_end in the function
> _do_global_ctors).
>
> I guess some of the problem is the RESERVE_RAM attribute of a function,
> I have not seen this in any other gcc port, is it the best way of doing
> this with gcc?
>
> Dmitry wrote:
> > Hi Peter,
> >
> > this becomes toooo complex.
> > should be a simpler solution.
> >
> > Lets find it.
>
> Regards,
--
/********************************************************************
("`-''-/").___..--''"`-._ (\ Dimmy the Wild UA1ACZ
`6_ 6 ) `-. ( ).`-.__.`) Enterprise Information Sys
(_Y_.)' ._ ) `._ `. ``-..-' Nevsky prospekt, 20 / 44
_..`--'_..-_/ /--'_.' ,' Saint Petersburg, Russia
(il),-'' (li),' ((!.-' +7 (812) 3468202, 5585314
********************************************************************/