• Tobias Tebbi's avatar
    [torque] use LocationReference for local bindings · 1a639cf0
    Tobias Tebbi authored
    This is a first step towards allowing expressions for array sizes.
    
    So far, local variable bindings used a VisitResult and a const flag.
    This doesn't allow for local bindings to alias other things, like
    heap references. While this is not generally a feature we need,
    it will be helpful to create bindings when evaluating array sizes,
    since we want to grant access to the preceding already initialized
    object fields, but not to the whole object, which is not completely
    initialized yet.
    
    LocationReference already captures the notion of any readable and
    assignable location, so it is a good fit to be used for local bindings.
    The const attribute is no longer needed, since LocationReference already
    has a notion of constness for stack ranges (that is,
    LocationReference::Temporary vs LocationReference::VariableAccess).
    
    Bug: v8:10004 v8:7793
    Change-Id: Ibe0a43e898e5c2c10d6739e2496d92dda542e6cc
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1928852Reviewed-by: 's avatarNico Hartmann <nicohartmann@chromium.org>
    Commit-Queue: Tobias Tebbi <tebbi@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#65117}
    1a639cf0
Name
Last commit
Last update
..
api Loading commit data...
asmjs Loading commit data...
ast Loading commit data...
base Loading commit data...
builtins Loading commit data...
codegen Loading commit data...
common Loading commit data...
compiler Loading commit data...
compiler-dispatcher Loading commit data...
d8 Loading commit data...
date Loading commit data...
debug Loading commit data...
deoptimizer Loading commit data...
diagnostics Loading commit data...
execution Loading commit data...
extensions Loading commit data...
flags Loading commit data...
handles Loading commit data...
heap Loading commit data...
ic Loading commit data...
init Loading commit data...
inspector Loading commit data...
interpreter Loading commit data...
json Loading commit data...
libplatform Loading commit data...
libsampler Loading commit data...
logging Loading commit data...
numbers Loading commit data...
objects Loading commit data...
parsing Loading commit data...
profiler Loading commit data...
protobuf Loading commit data...
regexp Loading commit data...
roots Loading commit data...
runtime Loading commit data...
sanitizer Loading commit data...
snapshot Loading commit data...
strings Loading commit data...
tasks Loading commit data...
third_party Loading commit data...
torque Loading commit data...
tracing Loading commit data...
trap-handler Loading commit data...
utils Loading commit data...
wasm Loading commit data...
zone Loading commit data...
DEPS Loading commit data...
OWNERS Loading commit data...