mirror of
https://github.com/mozilla/gecko-dev.git
synced 2025-02-26 20:30:41 +00:00

See my comment on here for more context of my investigation: https://bugzilla.mozilla.org/show_bug.cgi?id=1779257#c9 The saved context is invalid once the function that called `getcontext` returns. We need to call the `getcontext` while the frame where we called it is still on the stack. That's why this patch is moving the call to `getcontext` to parent function by inlining the SyncPopulate content by using a macro instead. This has to be a macro instead of a function because stack pointer address will be invalid once the `Registers::SyncPopulate` returns. I tried to change this method to inline but that didn't help either. Differential Revision: https://phabricator.services.mozilla.com/D170133