balazs.kilvady@imgtec.com [Thu, 18 Sep 2014 15:36:42 +0000 (15:36 +0000)]
MIPS: Move state sentinels into TypeFeedbackVector.
Port r24037 (d821bf9)
Original commit message:
These sentinels were in the wrong place, living in only tangentially related class TypeFeedbackInfo, but they codify state in the TypeFeedbackVector.
BUG=
R=dusan.milosavljevic@imgtec.com
Review URL: https://codereview.chromium.org/
583573003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24046
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Thu, 18 Sep 2014 14:53:00 +0000 (14:53 +0000)]
Revert "RegExp: Add support for the ES6-proposed sticky flag"
Causes a flaky failure on buildbots. Here is the (deterministic) repro step (thanks to Michael Stanton):
first go to flag-definitions.h and set this to false.
DEFINE_BOOL(enable_sse4_1, false,
"enable use of SSE4.1 instructions if available")
Run the following and it should fail:
tools/run-tests.py --arch=ia32 --mode=release cctest/test-api/Regress2107
R=yangguo@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
580123002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24045
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Thu, 18 Sep 2014 13:37:36 +0000 (13:37 +0000)]
Avoid idle times smaller than 1ms.
BUG=
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
580083002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24044
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
wingo@igalia.com [Thu, 18 Sep 2014 13:30:15 +0000 (13:30 +0000)]
Implement generator mirror
R=yangguo@chromium.org, aandrey@chromium.org
BUG=v8:3292
LOG=N
Review URL: https://codereview.chromium.org/
580823002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24043
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Thu, 18 Sep 2014 13:28:32 +0000 (13:28 +0000)]
Convert KeyedLoad indexed interceptor case to a Handler.
Currently, KeyedLoads on objects with indexed interceptors are handled with a
special stub. Instead, key on the map and handler mechanism for more uniform
treatment.
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
575373004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24042
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Thu, 18 Sep 2014 13:24:02 +0000 (13:24 +0000)]
Fix gcmole warning.
TBR=ishell@chromium.org
Review URL: https://codereview.chromium.org/
582033002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24041
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Thu, 18 Sep 2014 12:52:12 +0000 (12:52 +0000)]
Capacity returns allocatable memory and TotalCapacity returns allocatable plus non-allocatable memory for the new space.
BUG=
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
577223002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24040
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Thu, 18 Sep 2014 12:31:31 +0000 (12:31 +0000)]
Move state sentinels into TypeFeedbackVector.
These sentinels were in the wrong place, living in only tangentially related class TypeFeedbackInfo, but they codify state in the TypeFeedbackVector.
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/
579153003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24037
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Thu, 18 Sep 2014 12:21:50 +0000 (12:21 +0000)]
Implement ToLength from ES6 section 7.1.15
BUG=
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/
552273002
Patch from Caitlin Potter <caitpotter88@gmail.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24036
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Thu, 18 Sep 2014 12:00:00 +0000 (12:00 +0000)]
Turn keyed loads with string-based (non-convertible to array-index) key into named loads
BUG=
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/
585433002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24032
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
erik.corry@gmail.com [Thu, 18 Sep 2014 11:32:39 +0000 (11:32 +0000)]
RegExp: Add support for the ES6-proposed sticky flag
R=yangguo@chromium.org, rossberg@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
567313003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24031
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Thu, 18 Sep 2014 11:13:36 +0000 (11:13 +0000)]
Remove dead CompilationInfo::DisableOptimization predicate.
R=titzer@chromium.org
Review URL: https://codereview.chromium.org/
585443002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24030
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Thu, 18 Sep 2014 10:57:18 +0000 (10:57 +0000)]
Don't inline polymorphic cases if not all cases can be handled inline.
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
578233002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24029
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
v8-autoroll@chromium.org [Thu, 18 Sep 2014 10:01:37 +0000 (10:01 +0000)]
[Auto-roll] Bump up version to 3.29.76.0
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24028
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Thu, 18 Sep 2014 09:59:53 +0000 (09:59 +0000)]
Introduce TypeFeedbackVector, as FixedArray grew constrictive.
The TypeFeedbackVector is poised to host significant functionality. While it
remains a FixedArray under the covers, we need a place to hold logic and
definitions unique to its function.
BUG=
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/
581993002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24027
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Thu, 18 Sep 2014 09:53:08 +0000 (09:53 +0000)]
Thread the Lithium instruction down to DeoptimizeIf and friends.
This is a purely mechanical refactoring and a first step towards being
able to report more helpful deoptimization reasons. With this
refactoring, we know at least the mnemonic of the instruction causing
the deopt, although this is not used yet. Future steps will be using
the mnemonic, passing additional explicit deopt reasons and removing
the fragile machinery of searching for code comments.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
559143003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24026
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Thu, 18 Sep 2014 09:41:45 +0000 (09:41 +0000)]
Remove Compiler::RecordFunctionCompilation from interface.
R=sigurds@chromium.org
Review URL: https://codereview.chromium.org/
582593003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24025
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Thu, 18 Sep 2014 09:02:36 +0000 (09:02 +0000)]
Unify use-sites of EnsureDeoptimizationSupport.
R=sigurds@chromium.org
Review URL: https://codereview.chromium.org/
563123004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24024
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
sigurds@chromium.org [Thu, 18 Sep 2014 08:56:52 +0000 (08:56 +0000)]
Reland "Add handling for argument adaptor frames to inlining."
Original: https://codereview.chromium.org/
573703002/
Reland Fixes:
- Add deopt framestate to CollectStackTrace runtime call
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
544953006
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24023
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Thu, 18 Sep 2014 08:47:13 +0000 (08:47 +0000)]
Don't update the compilation size statistics when doing an optimized compile.
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
575393002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24022
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Thu, 18 Sep 2014 08:44:46 +0000 (08:44 +0000)]
Use allocation throughput to estimate next scavenge event in idle notification.
BUG=
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
573943004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24021
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Thu, 18 Sep 2014 06:57:12 +0000 (06:57 +0000)]
Revert "Don't use OwnPrototypeChainLength in GetOwnPropertyNames"
This reverts commit r23997 for causing check failures in
layout tests:
http://build.chromium.org/p/client.v8/builders/V8-Blink%20Linux%2064%20%28dbg%29/builds/498
TBR=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
581013003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24018
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
v8-autoroll@chromium.org [Wed, 17 Sep 2014 17:31:19 +0000 (17:31 +0000)]
[Auto-roll] Bump up version to 3.29.73.0
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24014
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dusan.milosavljevic@imgtec.com [Wed, 17 Sep 2014 16:21:22 +0000 (16:21 +0000)]
MIPS64: Fix move operations from coprocessor in simulator.
This resolves calculation errors for trigonometric functions.
TEST=test262/S15.8.2.7_A6.js
BUG=
R=jkummerow@chromium.org, paul.lind@imgtec.com
Review URL: https://codereview.chromium.org/
558163006
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24013
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Wed, 17 Sep 2014 15:29:42 +0000 (15:29 +0000)]
Rename Runtime_CompileUnoptimized to Runtime_CompileLazy, because that is what it does. Split Compiler::GetUnoptimizedCode into two variants, one for lazy compilation (which can return optimized code!) and the other that actually returns unoptimized code.
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
547293004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24012
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
sigurds@chromium.org [Wed, 17 Sep 2014 15:00:57 +0000 (15:00 +0000)]
Revert "Add handling for argument adaptor frames to inlining."
This reverts commit r24008.
TBR=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
581673002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24010
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Wed, 17 Sep 2014 14:47:25 +0000 (14:47 +0000)]
Introduce simplified BooleanToNumber operator.
R=titzer@chromium.org
TEST=cctest/test-simplified-lowering/LowerBooleanToNumber
Review URL: https://codereview.chromium.org/
579723004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24009
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
sigurds@chromium.org [Wed, 17 Sep 2014 14:41:30 +0000 (14:41 +0000)]
Add handling for argument adaptor frames to inlining.
- Lazy deopt from inlined calls
- Lazy deopt from inlined calls with parameter mismatch
R=jarin@chromium.org, mstarzinger@chromium.org, mstarzinger@chromium
Review URL: https://codereview.chromium.org/
573703002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24008
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Wed, 17 Sep 2014 14:28:48 +0000 (14:28 +0000)]
Fix the IsTheHole bug.
For Double constant of non nan, object_ may be uninitialized.
(This patch comes from weiliang.lin@intel.com )
BUG=
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
565183004
Patch from Chunyang Dai <chunyang.dai@intel.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24007
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
sigurds@chromium.org [Wed, 17 Sep 2014 14:20:20 +0000 (14:20 +0000)]
This is a reland of issue
563813002:
https://codereview.chromium.org/
575473002/
This time with additional include headers and MSVC specific guards. Previously, only V8 Win32 - nosnap - shared failed:
http://build.chromium.org/p/client.v8/builders/V8%20Win32%20-%20nosnap%20-%20shared/builds/2916
R=marja@chromium.org
Review URL: https://codereview.chromium.org/
576733002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24006
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
wingo@igalia.com [Wed, 17 Sep 2014 14:01:25 +0000 (14:01 +0000)]
Array.prototype.sort: Unchecked calls to hasOwnProperty and push and sort
BUG=v8:3537
LOG=
R=arv@chromium.org, wingo@igalia.com, yangguo@chromium.org
Review URL: https://codereview.chromium.org/
555173002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24005
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
v8-autoroll@chromium.org [Wed, 17 Sep 2014 13:31:26 +0000 (13:31 +0000)]
[Auto-roll] Bump up version to 3.29.72.0
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24004
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 17 Sep 2014 13:18:50 +0000 (13:18 +0000)]
Fix compile error introduced in 24002.
TBR=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
547293003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24003
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 17 Sep 2014 12:50:17 +0000 (12:50 +0000)]
Serialize code stubs using stub key.
Also add some tracing to the code serializer.
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
556243005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24002
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Wed, 17 Sep 2014 12:34:46 +0000 (12:34 +0000)]
Minor compiler pipeline refactoring. Inline UpdateSharedFunctionInfo and make Parser::Parse responsible for setting the strict mode of the CompilationInfo.
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
555553003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24001
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 17 Sep 2014 12:27:16 +0000 (12:27 +0000)]
Support stepping into generator function.
R=aandrey@chromium.org, wingo@igalia.com
BUG=v8:3572
LOG=Y
Review URL: https://codereview.chromium.org/
544953005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24000
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
weiliang.lin@intel.com [Wed, 17 Sep 2014 12:03:59 +0000 (12:03 +0000)]
X87: turn on some tests of test-serialize
They were disabled by r21661. We turn on it because x87 snapshot can work now.
BUG=
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
568833003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23999
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Wed, 17 Sep 2014 09:56:51 +0000 (09:56 +0000)]
Don't use OwnPrototypeChainLength in GetOwnPropertyNames
BUG=
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/
574753002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23997
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Wed, 17 Sep 2014 09:51:17 +0000 (09:51 +0000)]
Fixed deopt reasons in TaggedToI.
Every DeoptimizeIf should be preceded by a RecordComment explaining
the reason. In the long run, the reason should be an argument of
DeoptimizeIf, but we're not there yet.
On x87, things are a bit ugly due to some pushing/popping, so if
somebody feels inclined to improve this: Feel free. Probably the right
approach would be reloading instead of the push/pop horror.
Another thing is our inconsistent handling of the "done" continuation
of deferred code on the various platforms, I made tiny changes on the
way, but this should better be unified somehow, with all those
micro-optimizations removed.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
578583002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23996
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Wed, 17 Sep 2014 09:49:57 +0000 (09:49 +0000)]
Unbreak build
TBR=hpayer@chromium.org
Review URL: https://codereview.chromium.org/
568433003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23995
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Wed, 17 Sep 2014 08:50:57 +0000 (08:50 +0000)]
Measure new space allocation throughput.
BUG=
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
578453003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23994
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
v8-autoroll@chromium.org [Wed, 17 Sep 2014 08:01:35 +0000 (08:01 +0000)]
[Auto-roll] Bump up version to 3.29.71.0
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23993
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
weiliang.lin@intel.com [Wed, 17 Sep 2014 05:21:36 +0000 (05:21 +0000)]
X87: Removing ic.h from code-stubs.h
port r23977.
original commit message:
Removing ic.h from code-stubs.h
CodeStubs use state types defined in ic.h, but this has the unfortunate effect of spreading ic.h all over the place. Instead, define these shared state types in ic-public.h and allow ic.h to concern itself with internal state change of the ICs.
More work could/should be done here, but this is a first step.
BUG=
R=weiliang.lin@intel.com
Review URL: https://codereview.chromium.org/
573123003
Patch from Jing Bao <jing.bao@intel.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23992
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
arv@chromium.org [Tue, 16 Sep 2014 22:15:39 +0000 (22:15 +0000)]
Class syntax parsing
This implements parsing for ClassExpression and ClassDeclaration.
The runtime is not yet implemented and the value is currently
hard coded to undefined.
BUG=v8:3330
LOG=Y
R=dslomov@chromium.org, marja@chromium.org, rossberg@chromium.org
Review URL: https://codereview.chromium.org/
561913002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23988
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
v8-autoroll@chromium.org [Tue, 16 Sep 2014 21:01:27 +0000 (21:01 +0000)]
[Auto-roll] Bump up version to 3.29.69.0
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23987
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
akos.palfi@imgtec.com [Tue, 16 Sep 2014 20:16:11 +0000 (20:16 +0000)]
MIPS64: Fixed int vs. uintptr_t confusion (plus some cleanup on the way).
Port r23966 (
a498d5e3)
BUG=
R=jkummerow@chromium.org, paul.lind@imgtec.com
Review URL: https://codereview.chromium.org/
570563006
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23986
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
akos.palfi@imgtec.com [Tue, 16 Sep 2014 17:59:41 +0000 (17:59 +0000)]
MIPS64: Removing ic.h from code-stubs.h
Port r23977 (
d0cba839)
Original commit message:
CodeStubs use state types defined in ic.h, but this has the unfortunate effect of spreading ic.h all over the place. Instead, define these shared state types in ic-public.h and allow ic.h to concern itself with internal state change of the ICs.
More work could/should be done here, but this is a first step.
BUG=
R=paul.lind@imgtec.com
Review URL: https://codereview.chromium.org/
574493004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23984
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
v8-autoroll@chromium.org [Tue, 16 Sep 2014 17:31:23 +0000 (17:31 +0000)]
[Auto-roll] Bump up version to 3.29.68.0
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23983
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Tue, 16 Sep 2014 16:20:10 +0000 (16:20 +0000)]
Avoid usage of temporary MachineOperatorBuilder.
R=titzer@chromium.org
Review URL: https://codereview.chromium.org/
562203004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23982
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Tue, 16 Sep 2014 16:18:02 +0000 (16:18 +0000)]
Track how much we miss the idle notification limit
We can't report negative values using histograms, so we split the data
up into two histograms
BUG=chromium:397026
LOG=n
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/
572293002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23981
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Tue, 16 Sep 2014 13:16:02 +0000 (13:16 +0000)]
Remove unused histogram definitions
R=marja@chromium.org
LOG=n
BUG=none
Review URL: https://codereview.chromium.org/
572923002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23980
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Tue, 16 Sep 2014 13:00:05 +0000 (13:00 +0000)]
Allow IdleNotification to trigger Scavenges.
BUG=
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
563493002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23979
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Tue, 16 Sep 2014 12:58:43 +0000 (12:58 +0000)]
Re-reland "Use unsigned type bitsets to limit undefined behaviour"
Change: make bitset uint32_t, to avoid weird sign extension bugs on Win64.
BUG=
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
577563002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23978
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Tue, 16 Sep 2014 12:51:33 +0000 (12:51 +0000)]
Removing ic.h from code-stubs.h
CodeStubs use state types defined in ic.h, but this has the unfortunate effect of spreading ic.h all over the place. Instead, define these shared state types in ic-public.h and allow ic.h to concern itself with internal state change of the ICs.
More work could/should be done here, but this is a first step.
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
565873002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23977
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Tue, 16 Sep 2014 12:48:59 +0000 (12:48 +0000)]
Use the regular start incremental marking strategy in the idle notification.
BUG=
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
568023002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23976
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Tue, 16 Sep 2014 12:42:04 +0000 (12:42 +0000)]
Simplify the LookupIterator
BUG=
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/
570293002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23975
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
wingo@igalia.com [Tue, 16 Sep 2014 12:30:39 +0000 (12:30 +0000)]
Enable ES6 generators
R=rossberg@chromium.org
BUG=v8:2355
LOG=Y
Review URL: https://codereview.chromium.org/
573963003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23974
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Tue, 16 Sep 2014 12:17:40 +0000 (12:17 +0000)]
Adapt some typed lowering unit tests after r23972.
R=rossberg@chromium.org
TEST=cctest/test-js-typed-lowering
Review URL: https://codereview.chromium.org/
574713002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23973
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Tue, 16 Sep 2014 11:33:30 +0000 (11:33 +0000)]
Fix typed lowering to number comparison.
R=titzer@chromium.org
TEST=mjsunit/regress/regress-3564
BUG=v8:3564
LOG=N
Review URL: https://codereview.chromium.org/
574653002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23972
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
Jacob.Bramley@arm.com [Tue, 16 Sep 2014 10:42:54 +0000 (10:42 +0000)]
Allow trace-codegen to dereference handles.
This fixes --print-all-code for some tests.
BUG=
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
574673002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23971
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
Jacob.Bramley@arm.com [Tue, 16 Sep 2014 10:42:09 +0000 (10:42 +0000)]
ARM64: Remove the unused 'SmiAbs'.
BUG=
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
572903003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23970
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Tue, 16 Sep 2014 09:47:45 +0000 (09:47 +0000)]
The value register in storefield(smi) is not used as a temp
BUG=
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/
551803005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23969
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
v8-autoroll@chromium.org [Tue, 16 Sep 2014 09:31:36 +0000 (09:31 +0000)]
[Auto-roll] Bump up version to 3.29.67.0
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23967
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Tue, 16 Sep 2014 09:23:27 +0000 (09:23 +0000)]
Fixed int vs. uintptr_t confusion (plus some cleanup on the way).
BUG=v8:3556
LOG=y
R=jochen@chromium.org
Review URL: https://codereview.chromium.org/
567573004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23966
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Tue, 16 Sep 2014 09:21:09 +0000 (09:21 +0000)]
Introduce DONE state in idle notification handler.
BUG=
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
577573002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23965
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Tue, 16 Sep 2014 09:15:02 +0000 (09:15 +0000)]
Move configuration of ResourceConstraints to Isolate construction
We can only set resource constraints before the isolate is initialized.
Since in the future, we want to initialize isolates at construction
time, we need to set constraints there.
It's possible to later modify the stack limit, so introduce an
Isolate::SetStackLimit method for that.
The SetResourceConstraints method will be deprecated. Users should pass
ResourceConstraints to Isolate::New, and use Isolate::SetStackLimit to
later modify the stack limit.
BUG=none
R=svenpanne@chromium.org
LOG=y
Review URL: https://codereview.chromium.org/
559993005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23964
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Tue, 16 Sep 2014 09:14:11 +0000 (09:14 +0000)]
Revert r23962 "Configure d8 & cctest to suppress Windows error dialogs."
Breaks compilation on Windows
TBR=sigurds@chromium.org
BUG=none
LOG=n
Review URL: https://codereview.chromium.org/
572873004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23963
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
sigurds@chromium.org [Tue, 16 Sep 2014 08:57:59 +0000 (08:57 +0000)]
Configure d8 & cctest to suppress Windows error dialogs.
R=machenbach@chromium.org
Review URL: https://codereview.chromium.org/
575473002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23962
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Tue, 16 Sep 2014 08:29:46 +0000 (08:29 +0000)]
Disable lowering to StringAdd due to various issues.
R=titzer@chromium.org
Review URL: https://codereview.chromium.org/
566303003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23961
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
erik.corry@gmail.com [Tue, 16 Sep 2014 07:09:39 +0000 (07:09 +0000)]
Clean up regexp code gen a little
R=yangguo@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
565043003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23958
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Mon, 15 Sep 2014 17:40:26 +0000 (17:40 +0000)]
Skip long running tests with TurboFan and GC Stress.
TBR=machenbach@chromium.org
Review URL: https://codereview.chromium.org/
559343004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23957
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Mon, 15 Sep 2014 15:52:16 +0000 (15:52 +0000)]
Only include compile-only win64 trybot in default set.
BUG=chromium:353487
LOG=n
R=jkummerow@chromium.org
TBR=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
570113002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23956
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Mon, 15 Sep 2014 15:49:24 +0000 (15:49 +0000)]
Re-revert "Use unsigned type bitsets to limit undefined behaviour"
...and the various debug CLs.
R=machenbach@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
564413004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23955
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Mon, 15 Sep 2014 15:15:23 +0000 (15:15 +0000)]
Use an upper bound for marking time estimation in idle notification.
BUG=
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
571913003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23954
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Mon, 15 Sep 2014 15:06:05 +0000 (15:06 +0000)]
Exact black-list of AST nodes for TurboFan.
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/
564203003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23953
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Mon, 15 Sep 2014 14:48:01 +0000 (14:48 +0000)]
Compile V8 with extra optimization in GN Release mode.
This matches the GYP build which does 'optimize': 'max' on the corresponding targets.
R=jochen@chromium.org
Review URL: https://codereview.chromium.org/
567073003
Patch from Brett Wilson <brettw@chromium.org>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23952
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Mon, 15 Sep 2014 14:28:06 +0000 (14:28 +0000)]
Skip octane/pdfjs for now in debug mode because slow.
TBR=rossberg@chromium.org
TEST=benchmarks/octane/pdfjs
Review URL: https://codereview.chromium.org/
569243002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23950
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Mon, 15 Sep 2014 13:57:56 +0000 (13:57 +0000)]
Fix schedule for interleaved floating control by wiring one floating control structure per block.
R=mstarzinger@chromium.org, bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
564403003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23949
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Mon, 15 Sep 2014 13:27:46 +0000 (13:27 +0000)]
Reset context disposed counter after executing the idle garbage collection operation.
BUG=
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
552723004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23948
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Mon, 15 Sep 2014 13:04:44 +0000 (13:04 +0000)]
Explicitly mask enum values to work around probable VS/Win64 compiler bug
TBR=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
564413003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23947
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
v8-autoroll@chromium.org [Mon, 15 Sep 2014 13:01:31 +0000 (13:01 +0000)]
[Auto-roll] Bump up version to 3.29.65.0
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23946
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Mon, 15 Sep 2014 13:00:32 +0000 (13:00 +0000)]
Make timeout configurable in performance test runner.
BUG=374740
LOG=n
TBR=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
569213002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23945
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Mon, 15 Sep 2014 12:48:55 +0000 (12:48 +0000)]
Enable typed pipeline for the benchmark tests.
R=rossberg@chromium.org
TEST=benchmarks
Review URL: https://codereview.chromium.org/
567293003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23944
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Mon, 15 Sep 2014 12:06:14 +0000 (12:06 +0000)]
Make type bitsets explicitly unsigned
TBR=ulan@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
556733003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23943
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Mon, 15 Sep 2014 11:47:47 +0000 (11:47 +0000)]
Remove benchmark runner.
This has been renamed to run_perf.
BUG=374740
LOG=n
TBR=dslomov@chromium.org
Review URL: https://codereview.chromium.org/
564373003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23942
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Mon, 15 Sep 2014 11:19:20 +0000 (11:19 +0000)]
Moar prints
TBR=ulan@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
567363002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23941
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Mon, 15 Sep 2014 11:17:00 +0000 (11:17 +0000)]
Currently, a new isolate is created in an uninitialized state, and
several API methods will automatically initialize it. During this
uninitialized state, code event handlers and function entry handlers can
be attached to the isolate.
This CL deprecates SetFunctionEntryHook and moves the configuration of
those handlers to the Isolate factory method.
This will allow for initializing the Isolate at creation time in the
future.
Users of V8::SetFunctionEntryHook should pass the entry hook to
Isolate::New instead. V8::SetJitCodeEventHandler should either be passed
to Isolate::New as well, or (if startup events are not required) invoked
via the Isolate.
BUG=none
LOG=y
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
570993002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23940
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 15 Sep 2014 10:57:52 +0000 (10:57 +0000)]
Use memcpy to read double value in the deoptimizer.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
568043002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23939
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 15 Sep 2014 10:54:49 +0000 (10:54 +0000)]
Reland "Remove V8_HOST_CAN_READ_UNALIGNED and its uses."
BUG=chromium:412967
LOG=N
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
571903002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23938
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Mon, 15 Sep 2014 10:50:37 +0000 (10:50 +0000)]
moar printf
TBR=ulan@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
571913002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23937
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Mon, 15 Sep 2014 09:40:23 +0000 (09:40 +0000)]
Reland "Use unsigned type bitsets to limit undefined behaviour"
Temporary debug attempt; adds output to failing test in test-types.cc, otherwise unchanged.
Windows f
R=ulan@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
567333002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23936
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
baptiste.afsa@arm.com [Mon, 15 Sep 2014 09:27:42 +0000 (09:27 +0000)]
[turbofan] InstructionSelector tests for ARM64 comparisons.
R=bmeurer@chromium.org, ulan@chromium.org
Review URL: https://codereview.chromium.org/
567323002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23935
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jarin@chromium.org [Mon, 15 Sep 2014 09:21:39 +0000 (09:21 +0000)]
Remove deoptimization by patching the call stack.
We go back to patching the code for lazy deoptimization because ICs need the on-stack return address to read/update the IC address/state.
The change also fixes bunch of tests, mostly by adding more deoptimization points.
(We still need to add code to ensure lazy deopt patching does not overwrite ICs and other lazy deopts; this is coming next.)
BUG=
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
568783002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23934
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Mon, 15 Sep 2014 09:11:57 +0000 (09:11 +0000)]
Fix over-long line
TBR=bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
560553006
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23933
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Mon, 15 Sep 2014 09:09:45 +0000 (09:09 +0000)]
[turbofan] Remove extra attributes from SimplifiedOperatorBuilder methods.
R=titzer@chromium.org
Review URL: https://codereview.chromium.org/
560103003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23932
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Mon, 15 Sep 2014 09:03:59 +0000 (09:03 +0000)]
Fixpoint typing has to consider all imprecise nodes
R=jarin@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
568743003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23931
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
v8-autoroll@chromium.org [Sat, 13 Sep 2014 09:31:36 +0000 (09:31 +0000)]
[Auto-roll] Bump up version to 3.29.63.0
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23927
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Sat, 13 Sep 2014 07:35:04 +0000 (07:35 +0000)]
Whitespace change to kick off bots.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23926
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Fri, 12 Sep 2014 21:11:09 +0000 (21:11 +0000)]
Revert "Remove V8_HOST_CAN_READ_UNALIGNED and its uses."
This reverts r23915.
TBR=machenbach@chromium.org
Review URL: https://codereview.chromium.org/
569783003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23925
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
arv@chromium.org [Fri, 12 Sep 2014 16:17:27 +0000 (16:17 +0000)]
ES6: String(symbol) should work like symbol.toString
Using String as a function and passing a symbol should return the
same value as if Symbol.prototype.toString was called.
http://people.mozilla.org/~jorendorff/es6-draft.html#sec-string-constructor-string-value
BUG=v8:3554
LOG=Y
R=rossberg@chromium.org, rossberg
Review URL: https://codereview.chromium.org/
564863002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23923
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00