News for hackers. Stuff that matters.
Re:Mid-stack inlining in the Go compiler by dap on Monday March 06, 2017 @01:02PM (#13804590)
This is interesting work!

That said, it's a little disappointing when runtimes require custom algorithms or metadata to walk the stack and construct a stack trace. It makes it harder to build debuggers that grok the state of multiple runtimes (e.g., the Go code and the C code in the same program). This also affects runtime tracing tools like DTrace, which by construction can't rely on runtime support for help.

Re:Mid-stack inlining in the Go compiler by aclements on Monday March 06, 2017 @01:28PM (#13804813)
We plan to expose all of the inlining information in the DWARF tables so debuggers won't have any problems with this. Internally, the runtime uses a different representation just so we can make it more compact and optimized for the runtime's exact needs. This way, you can also strip the debug info without breaking the runtime's own ability to walk stacks.
Re:Mid-stack inlining in the Go compiler by CUViper on Monday March 06, 2017 @02:42PM (#13805433)
Isn't that what `.eh_frame` is for?
Re:Mid-stack inlining in the Go compiler by mnemonik on Monday March 06, 2017 @11:33PM (#13808299)
.eh_frame is DWARF with a couple tiny tweaks
Re:Mid-stack inlining in the Go compiler by CUViper on Tuesday March 07, 2017 @12:45PM (#13812674)
Right, but it's an allocated section that doesn't get stripped like debuginfo.
Re:Mid-stack inlining in the Go compiler by lazard on Monday March 06, 2017 @01:22PM (#13804754)
The plan is to add inlining information to the DWARF tables so that debuggers and other tools can take advantage of it.