Reviewers: fschneider, Kevin Millikin,
Description:
Nuke CompareToNull AST node.
The Great Master Plan is to move the recognition of special cases for
comparisons further down the compilation pipeline where more information is
available. This is a first step into this direction: The special handling of
equality comparisons involving null is pushed from the parser to the code
generators, removing the need for a special AST node. (There are rumors from
usually well-informed sources that this node type is actually a relic of
ancient
crankshaft days...)
The next steps will be the unification of null/undefined handling and
pushing
the special case handling in crankshaft even further down the pipeline,
enabling
the recognition of cases like "var foo=null; if (foo === bar) ...", but
these
will be in separate CLs.
Please review this at http://codereview.chromium.org/7887037/
SVN Base: http://v8.googlecode.com/svn/branches/bleeding_edge/
Affected files:
M src/arm/full-codegen-arm.cc
M src/ast.h
M src/ast.cc
M src/full-codegen.h
M src/full-codegen.cc
M src/hydrogen.h
M src/hydrogen.cc
M src/ia32/full-codegen-ia32.cc
M src/mips/full-codegen-mips.cc
M src/parser.h
M src/parser.cc
M src/prettyprinter.cc
M src/x64/full-codegen-x64.cc
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev