LGTM, small comments below.

http://codereview.chromium.org/7826009/diff/1/src/hydrogen.cc
File src/hydrogen.cc (right):

http://codereview.chromium.org/7826009/diff/1/src/hydrogen.cc#newcode5836
src/hydrogen.cc:5836: ASSERT(var->IsStackAllocated());
This ASSERT is trivially true, because it's in the case for PARAMETER
and LOCAL.

http://codereview.chromium.org/7826009/diff/1/src/hydrogen.h
File src/hydrogen.h (right):

http://codereview.chromium.org/7826009/diff/1/src/hydrogen.h#newcode782
src/hydrogen.h:782: void EmitDeclaration(VariableProxy* proxy,
Don't call this Emit, save that for things that generate assembly code.
I think we've been calling such helpers "HandleDeclaration" in the graph
builder.

http://codereview.chromium.org/7826009/diff/1/src/parser.cc
File src/parser.cc (right):

http://codereview.chromium.org/7826009/diff/1/src/parser.cc#newcode3791
src/parser.cc:3791: Variable* fvar =
top_scope_->DeclareFunctionVar(function_name)->var();
You could keep DeclareFunctionVar returning a Variable*, because this is
the only use and you want the Variable*.  It would save the unsightly
->var().

http://codereview.chromium.org/7826009/diff/1/src/scopeinfo.cc
File src/scopeinfo.cc (right):

http://codereview.chromium.org/7826009/diff/1/src/scopeinfo.cc#newcode137
src/scopeinfo.cc:137: proxy->var()->AsSlot()->type() == Slot::CONTEXT) {
proxy->var()->IsContextSlot()

http://codereview.chromium.org/7826009/diff/1/src/scopeinfo.cc#newcode138
src/scopeinfo.cc:138: function_name_ = proxy->var()->name();
function_name_ = proxy->name();

http://codereview.chromium.org/7826009/diff/1/src/scopes.cc
File src/scopes.cc (right):

http://codereview.chromium.org/7826009/diff/1/src/scopes.cc#newcode800
src/scopes.cc:800: if (function_ != NULL &&
function_->var()->name().is_identical_to(name)) {
function_->name() because the VariableProxy and Variable have the same
name.

http://codereview.chromium.org/7826009/

--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev

Reply via email to