Re[2]: [cc65] Debug info question

Date view Thread view Subject view

From: groepaz (groepaz_at_gmx.net)
Date: 2001-05-23 16:39:07


Hello Ullrich,

Wednesday, May 23, 2001, 4:09:38 PM, you wrote:

UvB> At that time I wrote that having source level debugging information is rather
UvB> difficult with the current compiler, since it does not have an abstract
UvB> intermediate code, so the optimizer would mess up the debug infos. I've used
UvB> the last two weeks to rewrite the compiler backend, so this argument is no
UvB> longer valid.

ehrm.... most compilers DO mess up the debug info when optimization is
enabled ;) (well, some compilers manage to even fuck it up entirely
;D)

UvB> Regarding the debug info format: I've searched the web for more information on
UvB> the AD2500 and WD formats and found some interesting links. One is NoICE, a
UvB> shareware remote debugger that supports lots of different compilers:

UvB>         http://www.noicedebugger.com/

UvB> It is interesting to note that almost *any* compiler for embedded systems out
UvB> there supports it's own debug information format. See

UvB>         http://www.noicedebugger.com/tools.html

mmmh, this page is obviously not listing the "object files that
contain debugging info" (most compilers there seem not to output that)
but its listing how to convert the map and symbol files produced by
them to some other map/sym file the debugger understands.

but you are right, most "small" compilers and assemblers dont produce
any output except for the actual binary, and with some luck you get a
map and/or sym file ;)


UvB> This is what they say about COFF: "Unfortunately, there is not real standard
UvB> for COFF: every compiler and assembler seems to produce a slightly different
UvB> format."

thats not enterily true.... infact the only non-standard COFF format
that exists in real life environments is the one produced by microshit
compilers. (VC++ that is)

UvB> There seems to be a file format named IEEE-695 which is very well supported by
UvB> NoICE and "IEEE" sounds very standard:-) So I will have a closer look at it.
UvB> There are several IEEE-695 resources listed on

UvB>         http://www.eskimo.com/~dalus/ieee-695.html

UvB> Among other things, they mention that the GNU binutils come with a library to
UvB> read and parse this format - this should be helpful for VICE since VICE is
UvB> also GPL licensed and may therefore use other GPL code without problems.

infact, there is a library that supports all kinda object-formats with
debug info, thats why i said it would be easy for the emulator-authors
to add support for them.


however..... if you are going to implement whatever debug-stuff that
is understood by whatever sourcelevel debugger (like the one above)
i'd be more than happy to create a rom-monitor program for use with it
(done that various times on different systems before, and i think i
can say that it'll be more or less an easy job once there are object
files to play with ;))

thats another reason why i suggested ELF.... a lot of tools one could
use already exist.... and a lot would automagically work without
modification .... think of profilers, resource browsers,
remote-debuggers (ok they'd need a 6510 module for disassembly, i bet
you can get c-source-level debug/stepping for free without disassembly
though)

-- 
Best regards,
 groepaz                            mailto:groepaz_at_gmx.net


----------------------------------------------------------------------
To unsubscribe from the list send mail to majordomo_at_musoftware.de with
the string "unsubscribe cc65" in the body(!) of the mail.


Date view Thread view Subject view

This archive was generated by hypermail 2.1.3 : 2001-12-14 22:05:40 CET