Debugging info for commercial linkers?

Jason Zions jazz@softway.com
Fri Aug 8 15:41:00 GMT 1997


Variables are completely hosed. Line numbers for functions are partly
hosed; here's a quote from one of my engineers which talks about the
problem.

> [gcc] generates line number information in the "COFF standard"
> way: One particular opcode says "this is the beginning line number
> of the function" and all others are relative.  (At least I assume
> it's coff standard, given that that's how gcc works, and there
> aren't any options in that regard.)  There's another debug opcode
> that says "end of function", and in COFF standard, it's relative
> to the beginning of the function.
> 
> However, MS generates the end line number as an absolute (w.r.t. the
> file) line number. [ ... ]  Now, however, it turns out that MS
> ALSO changed whether the relative lines are 0 or 1 based, so MS
> generated objects are off by 1.

There isn't a *really* good reference for the NT PE format. Chunks of it
are discussed in various MSDN articles; some of it can be derived from
various public headers in the SDK. Some of it, though, requires heavy
duty bit-grovelling detective work.

Jason


-
For help on using this list (especially unsubscribing), send a message to
"gnu-win32-request@cygnus.com" with one line of text: "help".



More information about the Cygwin mailing list