Re: [hatari-devel] symbols not always loaded when entering debugger ?

[ Thread Index | Date Index | More Archives ]

Le 12/11/2017 à 22:29, Eero Tamminen a écrit :

If I remember correctly, I just wanted to make sure that all symbols
are valid according to their types.  I.e. BSS symbols should really be inside the BSS section, not offset by +1 and overwriting something
from another section (in BSS case, I guess that would be stack).

It wouldn't be the first time I see a problem with that (Atari has
a lot of compilers, and their different versions, some of them
somewhat buggy).

However, I guess marking end of section by a symbol that's just outside
the the section itself is common enough case, that debugger should
accept it.


I confirm that with your latest changes there's no more warning "ignoring symbol xxxx with invalid offset" when symbol is the last of a section.

Still, I see some warning if 2 symbols share the same address, I'm not sure this is meaningful as this can be done on purpose in the source code.

See the attached .s and .prg for an example :



WARNING: symbols 'buf' & 'end_main' have the same 0x128ba address.

In the case where bss section is allocated just after the text section, addresses will be the same.

Also, you can test the case where symbols are not loaded after the crash. run the attached prg and when screen goes "green", press alt+pause to go to debugger and symbols will be loaded. Now go back to emulation (press 'c') and press "space" to create a 3 bombs address error. Debugger is called, but symbols are not loaded. As Thorsten suggested, this might because the prg is not running anymore from TOS point of view, but still if you compare with "monst" for example, it would be good to have symbols anyway from the prg that was running.

Maybe symbols could be loaded once at start, and not later when entering debugger ?


Description: Zip archive

Mail converted by MHonArc 2.6.19+