-
Victor Gomes authored
We track untagged values through the InterpreterFrameState, that allows us to re-use already emitted CheckedSmiUntag and elide CheckedSmiTag whenever the next node wants the untagged value as input. It uses LoadRegisterTaggedValue, LoadRegisterSmiUntaggedValue and accumulator variants as helper in the graph builder. Spilled values can now be untagged, since we currently do not support stack slot re-use, we use a ZoneVector to keep track of the stack slot representation. We tag (lazily) any value that will be passed as input to a Phi node. Bug: v8:7700 Change-Id: I34cb69c8f1fbeb6a8158a251a4dd2e114e894ea0 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3574559Reviewed-by: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Commit-Queue: Victor Gomes <victorgomes@chromium.org> Cr-Commit-Position: refs/heads/main@{#79939}
e96b8564