зеркало из https://github.com/mozilla/gecko-dev.git
daa9fa5186
We were using the activation's exitFP for this, but that value isn't cleared when we return to JIT code from C++ so we could use stale values if we're in JIT code (or used `callWithABI` calls without an exit frame). This could result in unsymbolicated frames or missing frames in profiles. This patch changes the JIT and Wasm frame iterators to set `endStackAddress` from their constructor. In the outer iterator we then keep track of the first value for the current activation and use that instead of the activation's exitFP. Adds an assertion to the single-step callback to check `frame.endStackAddress >= state.sp` in simulator builds. This failed on many jit-tests before this patch and passes now. Differential Revision: https://phabricator.services.mozilla.com/D153214 |
||
---|---|---|
.. | ||
ductwork/debugger | ||
examples | ||
loader | ||
public | ||
src | ||
xpconnect | ||
app.mozbuild | ||
ffi.configure | ||
moz.build | ||
moz.configure | ||
sub.configure |