Commit Graph

18063 Commits

Author SHA1 Message Date
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
yangguo@chromium.org
4f8e5f0719 Mark test-debug/RecursiveBreakpoints as flaky.
R=machenbach@chromium.org
BUG=v8:3525
LOG=N

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23259 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-21 08:15:49 +00:00
machenbach@chromium.org
73d62aed62 [Auto-roll] Bump up version to 3.29.12.0
TBR=machenbach@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23258 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-21 07:34:11 +00:00
bmeurer@chromium.org
0142786cea Don't inline Array.shift() if receiver map is not extensible.
TEST=mjsunit/regress/regress-crbug-405517
BUG=405517
LOG=y
R=jarin@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23255 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-21 06:23:44 +00:00
dslomov@chromium.org
93489e7695 Make all global private symbols own symbols.
R=arv@chromium.org, rossberg@chromium.org, wingo@igalia.com, yangguo@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23252 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-20 19:21:56 +00:00
machenbach@chromium.org
61446ed085 Whitespace change to test new unit tests.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23251 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-20 19:12:41 +00:00
verwaest@chromium.org
b29040a3f6 Get rid of last non-JSReceiver::Lookup usage of LookupOwn
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23250 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-20 16:25:40 +00:00
arv@chromium.org
88ee432497 Refactor ParseObjectLiteral
This extracts the parsing of the ObjectLiteralProperty into its own
function. This is in preparation for adding support for parsing classes.

BUG=None
LOG=Y
R=dslomov@chromium.org, marja@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23249 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-20 15:51:07 +00:00
hpayer@chromium.org
72ffc42d04 Use size_t in GCIdleTimeHandler to fix undefined behaviour.
BUG=
R=bmeurer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23248 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-20 15:37:43 +00:00
wingo@igalia.com
e929f5fe43 Support symbol-named properties in API
Add new "Name" type to API that is a supertype of Symbol and String.

Object::SetDeclaredAccessor, Object::SetAccessorProperty, Template::Set,
Template::SetAccessorProperty, and Template::SetDeclaredAccessor now
take a Name as the property name instead of a String.

Add Object::SetAccessor, Template::SetNativeDataProperty, and
ObjectTemplate::SetAccessor overloads that can define accessors for
symbol-named properties.

R=dcarney@chromium.org, rossberg@chromium.org
BUG=v8:3394
TEST=cctest/test-api/TestSymbolProperties
LOG=Y

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23247 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-20 15:25:13 +00:00
arv@chromium.org
3ac7c2025f Suppress test262 test that tests duplicate properties
In ES6 duplicate properties are allowed

BUG=
LOG=Y

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23246 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-20 15:24:53 +00:00
verwaest@chromium.org
21b9394c41 Further reduce LookupResult usage
BUG=
R=yangguo@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23245 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-20 15:08:20 +00:00
rmcilroy@chromium.org
9c908bc011 Change size of old pointer space first page back to 112KB (as it was before r23241)
This broke ReleaseOverReservedPages on Windows ia32.

TBR=hpayer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23244 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-20 15:04:22 +00:00
Jacob.Bramley@arm.com
da48f1246c ARM64: Fix SHR logic error.
The `right == 0` checks only worked for `0 <= right < 32`. This patch
replaces the checks with simple tests for negative results.

The attached test can detect this error, but the test relies on a broken
flag (--noopt-safe-uint32-operations), so it is skipped for now. See
issue 3487 for details.

BUG=
R=ulan@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23243 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-20 14:58:18 +00:00
rmcilroy@chromium.org
ae1a838592 Add serializer support for builtins pointed by inner pointer and root objects pointed to by code for the out-of-line constant pool.
This is required for test-serialize tests which fail at the DCHECK on L1874 of serialize.cc otherwise.

R=yangguo@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23242 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-20 14:41:53 +00:00
rmcilroy@chromium.org
d62b71e97c Modify SizeOfFirstPage to take ool constant pool into account.
The OOL constant pool places constants in the old pointer space rather than the code space
which makes test-heap/ReleaseOverReservedPages fail. Modify SizeOfFirstPage to
increase the initial size of old-pointer space by the size of the constant pool and
decrease the code space by a corresponding amount.

R=hpayer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23241 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-20 14:40:53 +00:00
verwaest@chromium.org
16c2c72ade Delete dead GetType from elements accessors
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23240 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-20 14:26:02 +00:00
arv@chromium.org
cfdfbb885e ES6: Duplicate properties are no longer an error
This removes the duplicate property checker and updates the tests.

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

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23239 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-20 14:25:48 +00:00
yangguo@chromium.org
930e5ccc3e Implement Math.expm1 using port from fdlibm.
R=rtoy@chromium.org
BUG=v8:3479
LOG=N

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23238 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-20 14:24:07 +00:00