2010/8/26 Greg Chicares <gchicares@...>:
> On 2010-08-26 21:03Z, Victor T. wrote:
>> Brian Dessent wrote:
>>> Besides, it wouldn't be of use anyway since debug information is somewhat
>>> tied to
>>> the internals of the compiler and it's likely that the Microsoft
>>> debugger would not be able to make sense of gcc's debug data even if gcc
>>> could write it in PDB format -- at least for C++ where the mangling and
>>> ABIs are totally different.
>> Can someone elaborate on this last point? I'm looking to write a tool for
>> debug format conversion for interoperability but what Brian mentioned here
>> has me concerned.
> C++ name-mangling and ABIs differ...see:
Well, I spent some time on this subject and you can find the results
for libmangle (it got a cygwin package already) and
for some work on PDB file format.
The libmangle can already decode MS encoded names back to human
readable names, and it would be possible to extend it so, that it can
transform mangled names (not complete but as far as possible) to gcc's
encoding. I simply didn't found any time here to continue on it. For
symbol aliasing in import-libraries I've added to gcc the thiscall
convention support (4.6) and to binutils dlltool/ld the feature of
'==' statement in .def files for this.
The PDB library is able to interprete some of the content of PDB file
formats (there are two AFAIK), but needs for sure extensions to. But
it can be used as base for a PDB/dwarf2 converted. The bad point about
PDB file format is, that it is pretty less documented, so a lot of
things are guess-works with verification by testing (as usual).
If you have interest on improving these libraries, feel free to contact me.
| (\_/) This is Bunny. Copy and paste
| (='.'=) Bunny into your signature to help
| (")_(") him gain world domination