fitzgen opened issue #6100:
We use frame pointers for fast stack walking, but we only walk the stack from function calls and from trap locations, so we only need to preserve the frame pointers at those locations. In between such sites, we could reuse the frame pointer register for whatever else we need, getting a bit of an execution speed up.
This would, however, mean that we would stop playing nice with external profilers that do not rely on DWARF/
.eh_frame
.Right now cranelift has a
preserve_frame_pointers=<bool>
option. We could turn that into a tribool ofyes/no/call-and-trap-sites
and surface the option throughwasmtime::Config
as well.
fitzgen labeled issue #6100:
We use frame pointers for fast stack walking, but we only walk the stack from function calls and from trap locations, so we only need to preserve the frame pointers at those locations. In between such sites, we could reuse the frame pointer register for whatever else we need, getting a bit of an execution speed up.
This would, however, mean that we would stop playing nice with external profilers that do not rely on DWARF/
.eh_frame
.Right now cranelift has a
preserve_frame_pointers=<bool>
option. We could turn that into a tribool ofyes/no/call-and-trap-sites
and surface the option throughwasmtime::Config
as well.
Last updated: Nov 22 2024 at 16:03 UTC