rmcilroy@chromium.org [Thu, 21 Aug 2014 12:59:18 +0000 (12:59 +0000)]
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
sigurds@chromium.org [Thu, 21 Aug 2014 12:40:10 +0000 (12:40 +0000)]
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
dslomov@chromium.org [Thu, 21 Aug 2014 12:39:33 +0000 (12:39 +0000)]
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
bmeurer@chromium.org [Thu, 21 Aug 2014 12:36:00 +0000 (12:36 +0000)]
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
wingo@igalia.com [Thu, 21 Aug 2014 12:06:25 +0000 (12:06 +0000)]
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
bmeurer@chromium.org [Thu, 21 Aug 2014 12:02:24 +0000 (12:02 +0000)]
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
jarin@chromium.org [Thu, 21 Aug 2014 11:56:46 +0000 (11:56 +0000)]
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
wingo@igalia.com [Thu, 21 Aug 2014 11:55:46 +0000 (11:55 +0000)]
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
commit-bot@chromium.org [Thu, 21 Aug 2014 09:35:59 +0000 (09:35 +0000)]
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
verwaest@chromium.org [Thu, 21 Aug 2014 09:34:47 +0000 (09:34 +0000)]
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
marja@chromium.org [Thu, 21 Aug 2014 09:22:08 +0000 (09:22 +0000)]
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
wingo@igalia.com [Thu, 21 Aug 2014 09:04:24 +0000 (09:04 +0000)]
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
machenbach@chromium.org [Thu, 21 Aug 2014 08:38:14 +0000 (08:38 +0000)]
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
verwaest@chromium.org [Thu, 21 Aug 2014 08:37:59 +0000 (08:37 +0000)]
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
verwaest@chromium.org [Thu, 21 Aug 2014 08:26:42 +0000 (08:26 +0000)]
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
verwaest@chromium.org [Thu, 21 Aug 2014 08:19:05 +0000 (08:19 +0000)]
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
verwaest@chromium.org [Thu, 21 Aug 2014 08:16:06 +0000 (08:16 +0000)]
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
yangguo@chromium.org [Thu, 21 Aug 2014 08:15:49 +0000 (08:15 +0000)]
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
machenbach@chromium.org [Thu, 21 Aug 2014 07:34:11 +0000 (07:34 +0000)]
[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
bmeurer@chromium.org [Thu, 21 Aug 2014 06:23:44 +0000 (06:23 +0000)]
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
dslomov@chromium.org [Wed, 20 Aug 2014 19:21:56 +0000 (19:21 +0000)]
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
machenbach@chromium.org [Wed, 20 Aug 2014 19:12:41 +0000 (19:12 +0000)]
Whitespace change to test new unit tests.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23251
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Wed, 20 Aug 2014 16:25:40 +0000 (16:25 +0000)]
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
arv@chromium.org [Wed, 20 Aug 2014 15:51:07 +0000 (15:51 +0000)]
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
hpayer@chromium.org [Wed, 20 Aug 2014 15:37:43 +0000 (15:37 +0000)]
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
wingo@igalia.com [Wed, 20 Aug 2014 15:25:13 +0000 (15:25 +0000)]
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
arv@chromium.org [Wed, 20 Aug 2014 15:24:53 +0000 (15:24 +0000)]
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
verwaest@chromium.org [Wed, 20 Aug 2014 15:08:20 +0000 (15:08 +0000)]
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
rmcilroy@chromium.org [Wed, 20 Aug 2014 15:04:22 +0000 (15:04 +0000)]
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
Jacob.Bramley@arm.com [Wed, 20 Aug 2014 14:58:18 +0000 (14:58 +0000)]
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
rmcilroy@chromium.org [Wed, 20 Aug 2014 14:41:53 +0000 (14:41 +0000)]
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
rmcilroy@chromium.org [Wed, 20 Aug 2014 14:40:53 +0000 (14:40 +0000)]
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
verwaest@chromium.org [Wed, 20 Aug 2014 14:26:02 +0000 (14:26 +0000)]
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
arv@chromium.org [Wed, 20 Aug 2014 14:25:48 +0000 (14:25 +0000)]
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
yangguo@chromium.org [Wed, 20 Aug 2014 14:24:07 +0000 (14:24 +0000)]
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
ulan@chromium.org [Wed, 20 Aug 2014 14:20:59 +0000 (14:20 +0000)]
Fix EstimateMarkingStepSizeTest.
R=wingo@igalia.com
TBR=hpayer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
494683002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23237
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Wed, 20 Aug 2014 14:16:28 +0000 (14:16 +0000)]
Restore CHECK_DERIVED_PROPERTY
BUG=
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
491873002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23236
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Wed, 20 Aug 2014 13:52:49 +0000 (13:52 +0000)]
Return empty handle if GetPropertyByLookup has no result.
BUG=
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
494583003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23235
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Wed, 20 Aug 2014 13:17:59 +0000 (13:17 +0000)]
Fix BUILD.gn.
TBR=yanggou@chromium.org
Review URL: https://codereview.chromium.org/
488103002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23232
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
sigurds@chromium.org [Wed, 20 Aug 2014 13:05:03 +0000 (13:05 +0000)]
Reland "Add initial support for inlining."
Reland Fixes:
* Remove usage of C++11 vector members.
* Guard tests by V8_TURBO_TARGET.
Changes:
* Make context specialization clean up after itself.
* Add UpdateToAndIncrement to Inputs::iterator.
Uses:iterator already provides this member function.
* Allow next node id in graph to be set.
R=titzer@chromium.org, mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
484083003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23231
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 20 Aug 2014 12:51:48 +0000 (12:51 +0000)]
Blacklist %InternalSetProperty from runtime test fuzzing.
R=verwaest@chromium.org
BUG=405499
LOG=N
Review URL: https://codereview.chromium.org/
491843002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23230
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Wed, 20 Aug 2014 12:10:41 +0000 (12:10 +0000)]
Fix implementation of bit count functions.
The bit counting functions provided by CompilerIntrinsics were undefined
for zero, which was easily overlooked and unsafe in general. Also their
implementation was kinda hacky and mostly untested. Fixed the
implementation and moved the functions to base/bits.h.
TEST=base-unittests,cctest,compiler-unittests,mjsunit
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/
494633002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23229
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 20 Aug 2014 11:52:22 +0000 (11:52 +0000)]
Fix --expose-debug-as with number as argument.
R=jkummerow@chromium.org
BUG=405491
LOG=N
Review URL: https://codereview.chromium.org/
468803004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23228
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 20 Aug 2014 11:04:05 +0000 (11:04 +0000)]
Expose function CheckDebugBreak in the debugger api
API=v8::Debug::CheckDebugBreak
LOG=Y
R=aandrey@chromium.org, vsevik@chromium.org, yurys@chromium.org
Review URL: https://codereview.chromium.org/
473913002
Patch from Sergei Vasilinetc <sergeyv@chromium.org>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23227
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Wed, 20 Aug 2014 10:37:23 +0000 (10:37 +0000)]
Get rid of GetLazyValue and clients.
This breaks fetching name of the constructor property of "Object"-labeled values in the heap-snapshot-generator until that's handlified and can be moved over to the LookupIterator.
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
480823004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23226
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Wed, 20 Aug 2014 10:33:47 +0000 (10:33 +0000)]
Fix arm64 build.
TBR=hpayer@chromium.org
Review URL: https://codereview.chromium.org/
490643006
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23225
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Wed, 20 Aug 2014 10:33:03 +0000 (10:33 +0000)]
Use actual incremental marking throughput in IdleNotification to estimate marking step size.
BUG=
R=jochen@chromium.org, ulan@chromium.org
Review URL: https://codereview.chromium.org/
465473002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23224
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 20 Aug 2014 09:43:00 +0000 (09:43 +0000)]
Remove RegExp.$input.
R=arv@chromium.org, mathiasb@opera.com
BUG=v8:3486
LOG=Y
Review URL: https://codereview.chromium.org/
465273002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23223
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Wed, 20 Aug 2014 09:39:37 +0000 (09:39 +0000)]
Check in "cpu.sh" script to control CPU governor/cores on Linux
This can help with reproducing stability bugs or performance issues.
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
485763003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23222
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Wed, 20 Aug 2014 09:38:53 +0000 (09:38 +0000)]
Fix windows test runner.
TBR=titzer@chromium.org
Review URL: https://codereview.chromium.org/
494603002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23221
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
m.m.capewell@googlemail.com [Wed, 20 Aug 2014 09:25:30 +0000 (09:25 +0000)]
[turbofan] Add ARM64 tests and fix shift bug
Add more tests for logical immediate and shift instruction selection, and fix bug in range for supported shifts.
BUG=
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
487163004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23220
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Wed, 20 Aug 2014 09:16:30 +0000 (09:16 +0000)]
[turbofan] Add support for Finish to the InstructionSelector.
Also fix an off-by-one bug in the handling of Parameter nodes, and
improve test coverage for pointer map computation.
TEST=compiler-unittest
R=titzer@chromium.org
Review URL: https://codereview.chromium.org/
490673006
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23219
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Wed, 20 Aug 2014 08:56:57 +0000 (08:56 +0000)]
Refactor Scheduler to simplify construction of CFG from sea of nodes. Use PreEdge/Post as part of the graph tarversal, and make finding of successor projections more robust.
R=jarin@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
490483002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23217
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Wed, 20 Aug 2014 08:13:00 +0000 (08:13 +0000)]
[turbofan] Add support for ChangeTaggedToUint32 in ChangeLowering.
Also refactor some common code in ChangeLowering.
TEST=cctest,compiler-unittests
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
488043002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23216
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Wed, 20 Aug 2014 04:01:36 +0000 (04:01 +0000)]
[turbofan] Add support for ChangeUint32ToTagged in ChangeLowering.
TEST=compiler-unittests
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
491433002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23215
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Wed, 20 Aug 2014 04:01:00 +0000 (04:01 +0000)]
[turbofan] Add TruncateFloat64ToInt32 machine operator.
Fix ChangeLowering to use TruncateFloat64ToInt32.
TEST=cctest,compiler-unittests
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
484103002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23214
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Tue, 19 Aug 2014 17:04:23 +0000 (17:04 +0000)]
Get rid of last non-storeic use of JSReceiver::Lookup
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
487333002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23211
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Tue, 19 Aug 2014 17:02:04 +0000 (17:02 +0000)]
Use LookupIterator to transition to accessors
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
490533002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23210
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
sigurds@chromium.org [Tue, 19 Aug 2014 16:07:15 +0000 (16:07 +0000)]
Revert "Load global object and builtins from activation."
This reverts commit r23205.
Setting string-type flags in unit tests is not a good idea.
TBR=titzer@chromium.org
Review URL: https://codereview.chromium.org/
489543002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23208
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Tue, 19 Aug 2014 16:07:05 +0000 (16:07 +0000)]
Remove unnecessary LookupIterator instantiation
BUG=
R=aandrey@chromium.org
Review URL: https://codereview.chromium.org/
485113003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23207
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Tue, 19 Aug 2014 15:42:47 +0000 (15:42 +0000)]
Pass allow_classes to reusable_preparser
R=arv@chromium.org, marja@chromium.org
Review URL: https://codereview.chromium.org/
471603004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23206
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
sigurds@chromium.org [Tue, 19 Aug 2014 15:16:23 +0000 (15:16 +0000)]
Load global object and builtins from activation.
BUG=
R=titzer@chromium.org
Review URL: https://codereview.chromium.org/
474633003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23205
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
arv@chromium.org [Tue, 19 Aug 2014 15:15:41 +0000 (15:15 +0000)]
ES6: Make sure we do not store -0 as the key in Map/Set
BUG=v8:3515
LOG=Y
R=adamk@chromium.org, dslomov@chromium.org
Review URL: https://codereview.chromium.org/
478683002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23204
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
arv@chromium.org [Tue, 19 Aug 2014 15:09:38 +0000 (15:09 +0000)]
Remove removed flags from tests
BUG=None
LOG=Y
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/
454003002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23203
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Tue, 19 Aug 2014 14:58:41 +0000 (14:58 +0000)]
Get rid of LookupRealNamedProperty and LookupRealNamedPropertyInPrototypes and update clients
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
481043002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23202
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Tue, 19 Aug 2014 14:55:47 +0000 (14:55 +0000)]
Use LookupIterator (and rewrite) DebugLookupResultValue and clients
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
468943002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23201
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Tue, 19 Aug 2014 14:34:12 +0000 (14:34 +0000)]
[Auto-roll] Bump up version to 3.29.8.0
TBR=machenbach@chromium.org
Review URL: https://codereview.chromium.org/
488543004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23200
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
Jacob.Bramley@arm.com [Tue, 19 Aug 2014 13:32:24 +0000 (13:32 +0000)]
ARM64: Remove ToOperand32I and ToOperand32U.
These were front-ends to ToOperand32, to specify sign-extension.
However, since r22148, bits 63-32 are ignored for 32-bit operations
anyway, so there's no need for the caller to be explicit.
BUG=
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
483263003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23199
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
sigurds@chromium.org [Tue, 19 Aug 2014 12:48:44 +0000 (12:48 +0000)]
Revert "Add initial support for inlining."
This reverts commit r23197.
TBR=titzer@chromium.org
Review URL: https://codereview.chromium.org/
481413002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23198
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
sigurds@chromium.org [Tue, 19 Aug 2014 12:23:19 +0000 (12:23 +0000)]
Add initial support for inlining.
* Add stack depth checking to function tester.
* Make context specialization clean up after itself.
* Add UpdateToAndIncrement to Inputs::iterator.
Uses:iterator already provides this member function.
* Allow next node id in graph to be set.
R=mstarzinger@chromium.org, titzer@chromium.org
Review URL: https://codereview.chromium.org/
453833003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23197
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Tue, 19 Aug 2014 12:08:46 +0000 (12:08 +0000)]
Expose well-known Symbols to C++ API.
BUG=341423
LOG=Y
R=arv@chromium.org, dcarney@chromium.org, rossberg@chromium.org
Review URL: https://codereview.chromium.org/
483173002
Patch from Yutaka Hirano <yhirano@chromium.org>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23196
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Tue, 19 Aug 2014 12:07:59 +0000 (12:07 +0000)]
Trace scavenger throughput.
BUG=
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/
487753003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23195
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Tue, 19 Aug 2014 11:38:38 +0000 (11:38 +0000)]
Implement ES6 Array.of()
BUG=v8:3427
LOG=N
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/
364853009
Patch from Diego Pino <dpino@igalia.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23194
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
sigurds@chromium.org [Tue, 19 Aug 2014 11:24:24 +0000 (11:24 +0000)]
Set ScopeInfo when compiling for unit tests.
This is required to correctly treat eval in unit tests.
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
453953002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23193
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Tue, 19 Aug 2014 11:20:42 +0000 (11:20 +0000)]
Update toolchain for Android mipsel, ia32, x87.
BUG=
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
486173002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23192
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
vegorov@chromium.org [Tue, 19 Aug 2014 10:56:49 +0000 (10:56 +0000)]
When marking dependent code for deoptimization print the group that is being deoptimized.
Otherwise it is impossible to figure out from the --trace-deoptimization output what is going on.
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
467183002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23191
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 19 Aug 2014 10:54:54 +0000 (10:54 +0000)]
Setup heap-unittests and runtime-unittests.
Initial import of empty unit test suites for Toon and Hannes.
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/
475233005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23190
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rodolph.perfetta@arm.com [Tue, 19 Aug 2014 10:14:29 +0000 (10:14 +0000)]
ARM64: Refactor instruction selection unit tests.
BUG=
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
475823002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23188
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 19 Aug 2014 09:20:51 +0000 (09:20 +0000)]
Fix NaCl build.
TBR=jarin@chromium.org
Review URL: https://codereview.chromium.org/
472823003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23187
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 19 Aug 2014 09:17:00 +0000 (09:17 +0000)]
Fix types for SimplifiedLowering.
TBR=jarin@chromium.org
Review URL: https://codereview.chromium.org/
484603003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23186
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 19 Aug 2014 08:53:38 +0000 (08:53 +0000)]
Make internalized string parser in JSON.parse GC-safe
SubStringKey::AsHandle is not GC-safe because the string backing store
may move.
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
484703002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23185
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 19 Aug 2014 08:48:41 +0000 (08:48 +0000)]
[turbofan] Add proper conversion operators for int32<->int64.
This affects arm64 and x64. Note that we do not yet optimize
these conversions. Later we will add support for merging these
conversion operators into other operations during instruction
selection.
TEST=cctest,compiler-unittests
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
487723002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23184
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Tue, 19 Aug 2014 08:35:39 +0000 (08:35 +0000)]
Do not install fillers when right trimming large objects.
BUG=
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
487703002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23183
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 19 Aug 2014 08:29:48 +0000 (08:29 +0000)]
Reorder native javascript files.
R=verwaest@chromium.org
BUG=403717
LOG=N
Review URL: https://codereview.chromium.org/
470083003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23182
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Tue, 19 Aug 2014 08:27:33 +0000 (08:27 +0000)]
Fix Android build.
BUG=v8:3506
LOG=N
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
486123002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23181
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Tue, 19 Aug 2014 08:14:01 +0000 (08:14 +0000)]
Revert "Get rid of dead version of GetNormalizedProperty"
(Doh, landed too early)
R=jkummerow@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
487163002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23180
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Tue, 19 Aug 2014 07:34:18 +0000 (07:34 +0000)]
[Auto-roll] Bump up version to 3.29.7.0
TBR=machenbach@chromium.org
Review URL: https://codereview.chromium.org/
483223003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23179
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Tue, 19 Aug 2014 07:09:41 +0000 (07:09 +0000)]
Get rid of dead version of GetNormalizedProperty
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
481073002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23178
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 19 Aug 2014 05:24:32 +0000 (05:24 +0000)]
Revert "[arm] Shorter test names for parameterized tests."
This reverts commit r23142 because GoogleTest is very picky about the
parameterized test case names, so not even using an anonymous namespace
can please GTest. Also reverts the renaming applied to in the
ChangeLowering unit test.
TBR=jarin@chromium.org
BUG=v8:3489
LOG=n
Review URL: https://codereview.chromium.org/
484953003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23177
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
weiliang.lin@intel.com [Tue, 19 Aug 2014 04:56:54 +0000 (04:56 +0000)]
X87: Use LookupIterator for CompileLoadInterceptor and delete Object::Lookup
port r23168.
original commit message:
Use LookupIterator for CompileLoadInterceptor and delete Object::Lookup
BUG=
R=weiliang.lin@intel.com
Review URL: https://codereview.chromium.org/
481323002
Patch from Chunyang Dai <chunyang.dai@intel.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23176
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 19 Aug 2014 04:54:06 +0000 (04:54 +0000)]
[turbofan] Support lowering of ChangeFloat64ToTagged/ChangeTaggedToInt32.
Adds new ValueEffect operator to ensure proper scheduling of
AllocateHeapNumber call nodes.
Also includes some refactoring to reduce code duplication.
TEST=compiler-unittests
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
481903002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23175
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
akos.palfi@imgtec.com [Mon, 18 Aug 2014 19:37:49 +0000 (19:37 +0000)]
MIPS: Use LookupIterator for CompileLoadInterceptor and delete Object::Lookup.
Port r23168 (d860963)
BUG=
R=akos.palfi@imgtec.com
Review URL: https://codereview.chromium.org/
473243003
Patch from Balazs Kilvady <balazs.kilvady@imgtec.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23173
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Mon, 18 Aug 2014 17:34:11 +0000 (17:34 +0000)]
[Auto-roll] Bump up version to 3.29.6.0
TBR=machenbach@chromium.org
Review URL: https://codereview.chromium.org/
478373002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23172
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Mon, 18 Aug 2014 16:52:23 +0000 (16:52 +0000)]
Add temporary hack compatible with old delete behavior so we can roll into blink. We'll need to update the broken test.
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
483753003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23171
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Mon, 18 Aug 2014 15:08:14 +0000 (15:08 +0000)]
Use LookupIterator in SetAccessor / DefineAccessor and remove "search_hidden_prototypes" from LookupOwn
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
468163002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23169
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Mon, 18 Aug 2014 15:03:13 +0000 (15:03 +0000)]
Use LookupIterator for CompileLoadInterceptor and delete Object::Lookup
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
466283003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23168
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Mon, 18 Aug 2014 14:59:04 +0000 (14:59 +0000)]
Rename the configuration flags of the LookupIterator
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
469733002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23167
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Mon, 18 Aug 2014 14:46:38 +0000 (14:46 +0000)]
Rewrite DeleteProperty using the LookupIterator
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
468073002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23166
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Mon, 18 Aug 2014 14:38:44 +0000 (14:38 +0000)]
Always assume SetOwnPropertyIgnoreAttributes to be CERTAINLY_NOT_FROM_KEYED
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
463963002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23165
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Mon, 18 Aug 2014 14:27:24 +0000 (14:27 +0000)]
Remove the extensibility flag. Instead just rely on hidden_string as indication.
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
466033002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23164
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00