Commit Graph

18081 Commits

Author SHA1 Message Date
yangguo@chromium.org
ba09fa35fd Handle null receiver in sloppy mode in %GetFrameDetails.
R=jarin@chromium.org
BUG=405922
LOG=N

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23312 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 12:55:23 +00:00
verwaest@chromium.org
d1a9559750 Remove KeyedStoreIC::GenerateRuntimeSetProperty and move Store::GenerateRuntimeSetProperty to the PropertyICCompiler
BUG=
R=yangguo@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23311 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 12:48:15 +00:00
titzer@chromium.org
1f9bd09f36 Add ScheduleVerifier.
This adds a series of checks to the output of scheduling, including properties
of the RPO order, the dominance relation, phi placement, and the SSA property
that definitions dominate all their uses.

R=jarin@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23310 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 12:37:51 +00:00
hpayer@chromium.org
97c135fada Re-land "Add finalize sweeping event to GCIdleTimeHandler."
BUG=
R=ulan@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23309 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 12:32:12 +00:00
verwaest@chromium.org
8b692bd877 Add ic-compiler to BUILD.gn
BUG=
R=yangguo@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23308 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 12:30:25 +00:00
verwaest@chromium.org
37bf29e7e2 Change return-type of SetDataProperty to Handle.
BUG=
R=yangguo@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23307 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 11:48:52 +00:00
verwaest@chromium.org
30c3981c2c Move IC code into a subdir and move ic-compilation related code from stub-cache into ic-compiler
BUG=
R=bmeurer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23306 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 11:43:39 +00:00
verwaest@chromium.org
3baab5e688 Rewrite StoreIC handling using the LookupIterator. Continued from patch 494153002
BUG=
R=yangguo@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23305 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 11:38:21 +00:00
yangguo@chromium.org
80cd0fbda5 Revert "Add finalize sweeping event to GCIdleTimeHandler."
This reverts r23302.

TBR=hpayer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23304 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 11:36:23 +00:00
machenbach@chromium.org
33c4427d61 [Auto-roll] Bump up version to 3.29.15.0
TBR=machenbach@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23303 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 11:34:13 +00:00
hpayer@chromium.org
92859d3c81 Add finalize sweeping event to GCIdleTimeHandler.
BUG=
R=ulan@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23302 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 11:14:17 +00:00
marja@chromium.org
77d06401ad Take ast node id counting away from Isolate.
When we're going to parse multiple scripts in parallel, we cannot have the
Isolate count the ast node ids.

Now the counter is stored in CompilationInfo instead. This is because we need to
add ast nodes after parsing too.

R=rossberg@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23301 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 11:12:29 +00:00
yangguo@chromium.org
2229575b26 Pacify GCmole.
R=jarin@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23300 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 11:09:13 +00:00
yangguo@chromium.org
a6adfd8f82 Blacklist mjsunit/debug-break-inline from turbofan tests.
Due to GC stress failures.

TBR=jarin@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23299 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 09:54:01 +00:00
ulan@chromium.org
62d9188d4c Reland part of r23285 "Start incremental marking in idle time handler only if it is worthwhile.""
R=hpayer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23298 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 09:18:10 +00:00
Jacob.Bramley@arm.com
2fd20234ce [turbofan] Disable the intl/overrides/string test.
This test times out with Turbo Fan enabled. See issue 3526 for details.

BUG=
R=ulan@chromium.org, wingo@igalia.com

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23297 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 09:05:04 +00:00
bmeurer@chromium.org
1efe3de965 Migrate test-semaphore to base-unittests.
TEST=base-unittests
BUG=v8:3489
LOG=n
R=machenbach@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23296 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 08:52:40 +00:00
jarin@chromium.org
4fb93f6461 Black list failing Turbofan debugger test.
TBR=bmeurer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23295 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 08:28:26 +00:00
bmeurer@chromium.org
bcef1fa497 Add missing test directories to presubmit.py.
R=machenbach@chromium.org
BUG=v8:3489
LOG=n

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23294 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 07:54:41 +00:00
bmeurer@chromium.org
3193f59a39 [turbofan] Add support for change/truncate to MachineOperatorReducer.
TEST=compiler-unittests
R=jarin@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23293 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 07:54:09 +00:00
jarin@chromium.org
8da0b4eca6 Couple more debugger tests working with Turbofan.
BUG=
R=bmeurer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23292 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 07:44:18 +00:00
yangguo@chromium.org
1fcfacbcd3 Do not run Turbofan tests on mjsunit/deserialize-reference.
TBR=machenbach@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23291 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 07:25:12 +00:00
yangguo@chromium.org
a5ea23375e Mark test-debug/RecursiveBreakpointsGlobal as flaky.
TBR=machenbach@chromium.org
BUG=v8:3525
LOG=N

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23290 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 06:45:15 +00:00
bmeurer@chromium.org
7cb564b580 [turbofan] Initial import of SimplifiedOperatorReducer.
TEST=compiler-unittests
R=jarin@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23289 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 04:47:55 +00:00
machenbach@chromium.org
43feb7f644 Revert "Start incremental marking in idle time handler only if it is worthwhile."
This reverts commit r23285 for breaking cctest/test-api/Regress2107.

TBR=ulan@chromium.org, hpayer@chromium.org, yangguo@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23286 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-21 19:55:27 +00:00
ulan@chromium.org
fbee2a9b33 Start incremental marking in idle time handler only if it is worthwhile.
BUG=
R=hpayer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23285 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-21 16:05:38 +00:00
arv@chromium.org
98f7b7e14a Add back the duplicate property checker
We're not quite ready to make this change.

BUG=v8:3498
LOG=Y
R=rossberg@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23284 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-21 15:32:22 +00:00
hpayer@chromium.org
65c9c2a2dd Remove conservative sweeping.
BUG=
R=jarin@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23283 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-21 14:50:18 +00:00
ulan@chromium.org
53fdf75be1 Move idle notification handling to GCIdleTimeHandler.
BUG=
R=hpayer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23282 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-21 14:42:22 +00:00
machenbach@chromium.org
758dd167f7 [Auto-roll] Bump up version to 3.29.13.0
TBR=machenbach@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23280 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-21 14:04:12 +00:00
rmcilroy@chromium.org
2934927450 Fix unused-variable error on release builds.
TBR=ulan@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23279 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-21 13:50:13 +00:00
rmcilroy@chromium.org
5dee3e0e2e Add ARMv6 support for the out-of-line constant pool.
R=ulan@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23278 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-21 13:26:47 +00:00
Jacob.Bramley@arm.com
64eae3fc3c ARM64: Slightly simplify LShiftI and LShiftS.
BUG=
R=ulan@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23277 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-21 13:22:18 +00:00
rmcilroy@chromium.org
37d886bc09 Add missing ConstantPoolUnavailableScopes on JS return.
R=ulan@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23276 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-21 12:59:18 +00:00
sigurds@chromium.org
dd3c097123 Reland "Load global object and builtins from activation."
Reland fixes:
Don't set string flags (doing so leaks memory).

Load closure from activation for building literals.

R=titzer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23275 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-21 12:40:10 +00:00
dslomov@chromium.org
22d5ceb1f2 Implement Function.prototype.toMethod.
R=arv@chromium.org, verwaest@chromium.org
BUG=v8:3330
LOG=N

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23274 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-21 12:39:33 +00:00
bmeurer@chromium.org
e6d32405be Fix parsing of --gtest_list_tests output.
R=machenbach@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23273 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-21 12:36:00 +00:00
wingo@igalia.com
edfd4cdd33 Stage ES6 generators
R=dslomov@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23272 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-21 12:06:25 +00:00
bmeurer@chromium.org
e030b76f9b Fix clang/win build.
TBR=jarin@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23271 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-21 12:02:24 +00:00
jarin@chromium.org
e5081792f9 Initial support for debugger frame state in Turbofan.
Bunch of changes were necessary:
- refactor attaching the frame states/lazy bailouts in AstGraphBuilder
  (essentialy reland of r23096),
- attaching frame state to some JS nodes in a similar way to attaching
  context (this is quite ugly and we should take another look at this),
- new bailout point for the debugger statement,
- register allocation constraints for the frame states,
- generating translations and deopt entries, attaching them to
  safepoints,
- enabled one mjsunit test for debugger state that uses the generated
  frame state.

BUG=
R=bmeurer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23270 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-21 11:56:46 +00:00
wingo@igalia.com
558a05bfcf Fix symbol-named function template properties in the API
Thanks to Yutaka Hirano <yhirano@chromium.org> for finding the bug and
providing the test case.

R=rossberg@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23269 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-21 11:55:46 +00:00
commit-bot@chromium.org
c360d8d114 MSan: mark any memory allocated from the JS heap as uninitialized.
BUG=chromium:403409,chromium:178409
R=jkummerow@chromium.org
LOG=N

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23268 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-21 09:35:59 +00:00
verwaest@chromium.org
ef0068558a Rename IsDontDelete to IsConfigurable (and invert conditions)
BUG=
R=ulan@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23267 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-21 09:34:47 +00:00
marja@chromium.org
ad3a1a99d3 Refactor parser Checkpoints.
Why this is better:

1) Not needing an extra template parameter for Checkpoints ctors. This was
especially confusing since the template parameter was named Parser and Parser is
also used as a type name and is also a concrete type. This CL makes it clear
that ParserTraits::Checkpoint is consturcted with ParserBase<ParserTraits> -
that's the only sensemaking type for the ctor param anyway.

2) This CL makes ParserBase define a Checkpoint base class (which knows how
to create and restore a checkpoint with ParserBase) which
PreParserTraits::Checkpoint and ParserTraits::Checkpoint inherit, and not the
other way around.

This is a more intuitive way to implement the "base functionality + extending
it" concept than the previous solution. The previous solution was to allow
Traits to define a Checkpoint class and make ParserBase<Traits>::ParserCheckpoint
(which defines the base functionality) inherit from it.

3) This CL moves the Checkpoint class definitions out of the SomeTraits::Type
struct; SomeTraits::Type is supposed to be a collection of typedefs and not
contain anything else.

Checkpoints were introduced in r22925 ( https://codereview.chromium.org/443903003 ).

BUG=
R=wingo@igalia.com

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23266 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-21 09:22:08 +00:00
wingo@igalia.com
8239897e5d Simplify array iterator tests
R=arv@chromium.org, rossberg@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23265 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-21 09:04:24 +00:00
machenbach@chromium.org
e8d4bfc8a3 Allow to combine quickcheck and no_variants in test driver.
BUG=
R=bmeurer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23264 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-21 08:38:14 +00:00
verwaest@chromium.org
41d25b7901 Indirect LookupResult accesses over PropertyAccessInfo
BUG=
R=yangguo@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23263 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-21 08:37:59 +00:00
verwaest@chromium.org
2d2396a8a8 Get rid of all non-IC uses of LookupOwnRealNamedProperty
BUG=
R=yangguo@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23262 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-21 08:26:42 +00:00
verwaest@chromium.org
49e4aebb98 Remove last LookupOwnRealNamedProperty usage from runtime.cc
BUG=
R=yangguo@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23261 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-21 08:19:05 +00:00
verwaest@chromium.org
e4c3c439af Get rid of the NONEXISTENT PropertyType
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23260 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-21 08:16:06 +00:00