[turbofan] Fixed reuse of nested ObjectState in escape analysis
The problem is that writes to nested objects do not lead to a copy of a referencing VirtualObject, and that each VirtualObjects maintains a cache of an ObjectState node. Together, this leads to inappropriate reuse of ObjectState nodes. This fix simply always copies all virtual objects when a new VirtualState is created. This is clearly not optimal to avoid clones, but determining precisely which virtual objects are affected by a write is a transitive closure computation on the virtual objects of a virtual state. Alternatively, one could change the semantics of the node cache. BUG=v8:5611 Review-Url: https://codereview.chromium.org/2488713002 Cr-Commit-Position: refs/heads/master@{#40854}
Showing
Please
register
or
sign in
to comment