<div dir="ltr"><br clear="all"><br>In my recent endeavors into porting ReactOS to the amd64 architecture I have discovered that the the x86_64-pc-mingw32 target uses DWARF debugging symbols by default. <br>The reason for this change was very simple, stabs are strictly 32bit. A stabs record only has 32 bits to represent an address, it represents less information, was never properly standardized, so gdb is pretty much the only debugger which can handle gcc stabs in their full glory, and it is larger to boot. DWARF is better in every aspect. There is no reason to use stabs these days.<br>
<br><br>encoded&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; • does i386-mingw32 support DWARF2 ?<br>NightStrike&nbsp;&nbsp;&nbsp;&nbsp; • the plan is that gcc4.3 will<br>NightStrike&nbsp;&nbsp;&nbsp;&nbsp; • more specifically, it will also drop support for sjlj<br><br><a href="http://gcc.gnu.org/ml/gcc-patches/2006-12/msg00133.html">Dwarf 2 Unwind frames for mingw32/cygwin patch</a> <br>
<br>mingw32-gcc4.3 packages are so patched afaics:<br><a href="http://sourceforge.net/project/showfiles.php?group_id=2435&amp;package_id=241304">http://sourceforge.net/project/showfiles.php?group_id=2435&amp;package_id=241304</a><br>
<br><br>Right now ReactOS has a tool called rsym that parses stabs and coff symbol data.<br><br>arty&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; • rsym was made to keep compact line number info<br><br><br>Ask yourself:<br><br>Could we eliminate an entire build step that is imposed on all ros binaries?<br>
How hard would it be to teach the kernel about DWARF? (If we really wanted to)<br><br><br>sedwards&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; • wine dbghelp supports pdb too<br>sedwards&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; • CV, PDB, Stabs and Dwarf<br>sedwards&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; • as far as I know<br>
<br>Reading Material:<br><br><a href="http://dwarfstd.org/dwarf-2.0.0.pdf">http://dwarfstd.org/dwarf-2.0.0.pdf</a><br><a href="http://dwarfstd.org/Dwarf3.pdf">http://dwarfstd.org/Dwarf3.pdf</a><br>
</div>