Join GitHub today
cmd/link: generate debugging information to display inlined functions in backtraces #4735
It would take some adjustment for the gc runtime library, of course (I already use it in the gccgo runtime library). The DWARF reading code is 3000 lines and compiles to 18,685 bytes on amd64 when compiled with GCC when optimizing. That includes some error handling and some generality that may not be necessary. The ELF reading code, which is probably unnecessary, is 900 lines, 4269 bytes.
Does this happen to be on anyone's radar for 1.8 or 1.9? Or is this a low-priority feature request?
More aggressive inlining would certainly give a large performance boost to a lot of constructs. For example, inlining thunk functions (#8421) and inlining functions that can't inline all the way down (@dr2chase comment in #11189). The last one would certainly help me in one spot: https://github.com/tdewolff/buffer/blob/master/lexer.go#L158, which is a function that is called very often but only sometimes calls the costly