ES6 computed property names
authorarv <arv@chromium.org>
Wed, 17 Dec 2014 18:38:38 +0000 (10:38 -0800)
committerCommit bot <commit-bot@chromium.org>
Wed, 17 Dec 2014 18:38:55 +0000 (18:38 +0000)
commitcc568d1b7ae7ff9f870f21aaad6698e2cd6cd9d2
tree52e63bd7215576c2dea7d79dbd16389b11ed9fca
parent44e2dd535e5789fd27de78855e7a13a75b0d91c2
ES6 computed property names

This adds support for computed property names, under the flag
--harmony-computed-property-names, for both object literals and
classes.

This is a revert of the revert, a76419f0f497db156eb1010e9b4be398951280cb.

This changes to do an early bailout in
HOptimizedGraphBuilder::VisitObjectLiteral instead of doing that in the later
loop.

BUG=v8:3754
LOG=Y
TBR=dslomov@chromium.org

Review URL: https://codereview.chromium.org/792233008

Cr-Commit-Position: refs/heads/master@{#25868}
28 files changed:
src/arm/full-codegen-arm.cc
src/arm64/full-codegen-arm64.cc
src/ast-numbering.cc
src/ast.cc
src/ast.h
src/bailout-reason.h
src/bootstrapper.cc
src/builtins.h
src/compiler/ast-graph-builder.cc
src/flag-definitions.h
src/full-codegen.cc
src/full-codegen.h
src/hydrogen.cc
src/ia32/full-codegen-ia32.cc
src/parser.cc
src/parser.h
src/preparser.cc
src/preparser.h
src/runtime.js
src/runtime/runtime-classes.cc
src/runtime/runtime-object.cc
src/runtime/runtime.h
src/typing.cc
src/x64/full-codegen-x64.cc
test/cctest/test-parsing.cc
test/mjsunit/harmony/computed-property-names-classes.js [new file with mode: 0644]
test/mjsunit/harmony/computed-property-names-object-literals-methods.js [new file with mode: 0644]
test/mjsunit/harmony/computed-property-names.js [new file with mode: 0644]