[ECOS] powerpc-eabi-gdb backtrace problem

Nick Garnett nickg@ecoscentric.com
Tue Feb 18 21:06:00 GMT 2003


Jonathan Larmour <jifl@eCosCentric.com> writes:

> Well if there's a problem it's with the HAL. HAL_THREAD_INIT_CONTEXT
> is called _after_ all the padding is added, and it's that which should
> add any relevant space. For the powerpc, it already leaves
> CYGARC_PPC_STACK_FRAME_SIZE which is a whole 56 bytes (which looking
> at the eABI I saw, looks like overkill).

If I recall correctly the EABI needs 7 words -- 4 argument save
locations, return link, frame pointer, TOC pointer. I chose to allow
twice that just to give us a safety buffer at the top of the stack.

> However I also note that area
> isn't initialized to anything. But then we'd see it without the stack
> frame checking enabled either.
> 

In the absence of stack checking these locations will mostly be zero,
so GDB terminates. I guess that at least the frame pointer and return
link need to be zeroed.

-- 
Nick Garnett                    eCos Kernel Architect
http://www.ecoscentric.com/     The eCos and RedBoot experts


-- 
Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
and search the list archive: http://sources.redhat.com/ml/ecos-discuss



More information about the Ecos-discuss mailing list