[liftoff] Push the instance as part of frame construction
Currently we first construct the frame (via {TurboAssembler::EnterFrame}), then we spill the instance to the respective slot (via {LiftoffAssembler::SpillInstance}). Instead, we should already spill the instance as part of frame construction. That allows for a more compact instruction to be used ("push" instead of "mov" on Intel), and on arm64 even allows to merge pushing into an existing instruction (where we currently push the zero register x31 instead). This makes the prologue more similar to what TurboFan generates in {TurboAssembler::AssembleConstructFrame} (which does not use {TurboAssembler::EnterFrame}). R=ahaas@chromium.org Bug: v8:12017 Change-Id: Ibb4a38d2049cff66fec9450db4f7f375d006beac Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3055302Reviewed-by:Andreas Haas <ahaas@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#75938}
Showing
Please
register
or
sign in
to comment