Would you trade 0.1% in performance for a better debugging experience?

Marco Leise via Digitalmars-d digitalmars-d at puremagic.com
Tue Nov 18 12:59:57 PST 2014


Am Tue, 18 Nov 2014 19:35:06 +0000
schrieb "Vladimir Panteleev" <vladimir at thecybershadow.net>:

> On Tuesday, 18 November 2014 at 18:55:43 UTC, Marco Leise wrote:
> > Is it fair if I argue that fixing DWARF info generation is a
> > better solution then?
> 
> I don't know. Probably. Not all tools may read DWARF info. Also, 
> I'm not sure if this is related but Phobos/Druntime are currently 
> built without -g, although enabling it should be a much less 
> controversial change.

Were the tools just not upgraded for amd64 or is there a
specific reason they require stack frame pointers? How do they
work on 64-bit Linux distributions in general that have no
stack frame pointers? If they are good tools, but never worked
on amd64 reliably, well ... D executables without frame
pointers don't make the situation any worse, right?
Regarding the -g switch, I guess we could call the debug
information that is required for proper exception handling on
Linux "part of the language" and always generate it
independently of the -g switch. Similar to how we currently
require the --export-dynamic linker switch in dmd.conf.
I'm really not knowledgeable about this stuff. Are we trying
to do more here than C++? Does C++ also require DWARF debug
information for stack unwinding?

-- 
Marco



More information about the Digitalmars-d mailing list