Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Frame pointers are enabled by default on macOS and iOS and I can't understand why they aren't enabled by default elsewhere. It just makes it so much easier to debug and profile things.

See for instance Apple's ARM64 calling convention: https://developer.apple.com/documentation/xcode/writing-arm6...

"The frame pointer register (x29) must always address a valid frame record. Some functions — such as leaf functions or tail calls — may opt not to create an entry in this list. As a result, stack traces are always meaningful, even without debug information."



Apple relies on this heavily when doing systemwide performance profiling. It's good practice!




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: