https://codereview.chromium.org/1097283003/diff/20001/src/compiler/ast-graph-builder.cc
File src/compiler/ast-graph-builder.cc (right):
https://codereview.chromium.org/1097283003/diff/20001/src/compiler/ast-graph-builder.cc#newcode646
src/compiler/ast-graph-builder.cc:646: if (variable->is_this()) {
AFAICT, this is only needed for patching the receiver to the global
proxy in the method prologue. Please don't "extend" Environment::Bind
this way, but rather adapt BuildPatchReceiverToGlobalProxy accordingly.
https://codereview.chromium.org/1097283003/diff/20001/src/compiler/ast-graph-builder.cc#newcode669
src/compiler/ast-graph-builder.cc:669: if (variable->is_this()) {
Likewise.
https://codereview.chromium.org/1097283003/diff/20001/src/compiler/ast-graph-builder.cc#newcode2672
src/compiler/ast-graph-builder.cc:2672: (i == -1) ?
info()->scope()->receiver() : info()->scope()->parameter(i);
This is getting out of hand, please hoist handling of the receiver out
into a separate block (preferably placed at line 2666 above) and rather
duplicate creation of the StoreContext node below.
https://codereview.chromium.org/1097283003/diff/20001/src/compiler/ast-graph-builder.cc#newcode2676
src/compiler/ast-graph-builder.cc:2676: Node* parameter =
NewNode(common()->Parameter(i + 1), graph()->start());
If the receiver parameter has been patched, then using Patameter(0) he
is incorrect and will use the un-patched version.
https://codereview.chromium.org/1097283003/
--
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
---
You received this message because you are subscribed to the Google Groups "v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.