Related articles |
---|
A question about symbol tables and debuggers Jones_Julian/nmpca@nmp.nokia.com (1996-01-12) |
From: | Jones_Julian/nmpca@nmp.nokia.com |
Newsgroups: | comp.compilers |
Date: | 12 Jan 1996 17:24:16 -0500 |
Organization: | Compilers Central |
Keywords: | linker, debug, question, comment |
Hi,
I have been reading the O'Reilly book "Understanding and Using
COFF". This describes a method for passing symbol information from the
compiler to the debugger (when -g is enabled) using COFF files. The
compiler generates lots of directives in the assembler output to
represent each symbol. The assembler must process these directives and
place output symbols in the COFF file. These symbols must also be
processed by the linker in some way, and placed in the executable
file. The debugger must reconstruct the symbol information by reading
the COFF symbol table.
This seems to me like a lot of effort. I was wondering if any
modern compilers use a more efficient way of transferring debugging
information to the debugger ? I have tried running gcc and using -S to
get the assembler listing. It doesn't seem to use any directives in
its assembler output if I use -g. In that case, how does it place
debug information in the COFF file ?
Thanks in advance.
---------------------------------------------------------
Julian Jones Phone: +44 1276 419577
Software Engineer Fax: +44 1276 677151
Nokia Mobile Phones UK Email: Julian.Jones@nmp.nokia.com
[Some compilers produce separate symbol files, but GCC still sent everything
through the assembler and linker the last time I looked. -John]
--
Return to the
comp.compilers page.
Search the
comp.compilers archives again.