weiliang.lin@intel.com
ae6a25ae4d
X87: When serializer is enalbed, we disable the X87 stack check to reduce the code size.
...
The reason is that the big code size will leads to test-serialize test cases fail
when debug mode and snapshot=off.
BUG=
R=weiliang.lin@intel.com
Review URL: https://codereview.chromium.org/582373002
Patch from Chunyang Dai <chunyang.dai@intel.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24070 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-19 09:27:45 +00:00
erik.corry@gmail.com
f1e82cc169
The --optimize-for-size flag should imply a small semi-space
...
R=hpayer@chromium.org , mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/585523002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24069 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-19 09:15:47 +00:00
jochen@chromium.org
6a14d7d50f
Reland 24052 - Require V8 to be explicitly initialized before an Isolate is created
...
> We also initialize the Isolate on creation.
>
> This should allow for getting rid of the last remaining default isolate
> traces. Also, it'll speed up several isolate related operations that no
> longer require locks.
>
> Embedders that relied on v8::Isolate to return an uninitialized Isolate
> (so they can set ResourceConstraints for example, or set flags that
> modify the way the isolate is created) should either do the setup before
> creating the isolate, or use the recently added CreateParams to pass e.g.
> ResourceConstraints.
>
> BUG=none
> LOG=y
> R=svenpanne@chromium.org
>
> Review URL: https://codereview.chromium.org/469783002
BUG=none
LOG=y
TBR=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/583153002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24067 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-19 08:01:35 +00:00
hpayer@chromium.org
052cd2556f
Perform scavenges only for small idle times.
...
BUG=
R=jochen@chromium.org
Review URL: https://codereview.chromium.org/586643002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24066 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-19 07:51:23 +00:00
erik.corry@gmail.com
35eec7c7ca
Reland sticky regexps https://codereview.chromium.org/567313003/
...
R=svenpanne@chromium.org , yangguo@chromium.org
BUG=
Review URL: https://codereview.chromium.org/580383003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24065 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-19 07:36:05 +00:00
svenpanne@chromium.org
bea452f2e4
Removed a few dead template functions.
...
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/583833006
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24064 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-19 07:27:13 +00:00
weiliang.lin@intel.com
4120dd8de2
X87: Convert KeyedLoad indexed interceptor case to a Handler.
...
port r24042.
original commit message:
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.
BUG=
R=weiliang.lin@intel.com
Review URL: https://codereview.chromium.org/581273005
Patch from Jing Bao <jing.bao@intel.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24063 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-19 06:33:37 +00:00
weiliang.lin@intel.com
bf18738539
X87: Move state sentinels into TypeFeedbackVector.
...
port r24037.
original commit message:
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.
BUG=
R=weiliang.lin@intel.com
Review URL: https://codereview.chromium.org/585743002
Patch from Jing Bao <jing.bao@intel.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24062 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-19 06:31:33 +00:00
svenpanne@chromium.org
264c7fe3cd
Emit comment with instruction+reason before deopt calls.
...
Note that we still need to migrate from sometimes emitting those
comments by hand to passing a reason explicitly, but this can be done
incrementally in separate CLs.
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/582743002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24061 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-19 06:27:06 +00:00
v8-autoroll@chromium.org
28ff661909
[Auto-roll] Bump up version to 3.29.79.0
...
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24059 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-19 03:01:44 +00:00
jochen@chromium.org
525ed1130e
Revert "Require V8 to be explicitly initialized before an Isolate is created"
...
LOG=n
TBR=svenpanne@chromium.org
BUG=none
Review URL: https://codereview.chromium.org/582953002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24055 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-18 21:57:10 +00:00
v8-autoroll@chromium.org
321c161a7c
[Auto-roll] Bump up version to 3.29.77.0
...
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24053 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-18 21:31:24 +00:00
jochen@chromium.org
27f3cc1b9c
Require V8 to be explicitly initialized before an Isolate is created
...
We also initialize the Isolate on creation.
This should allow for getting rid of the last remaining default isolate
traces. Also, it'll speed up several isolate related operations that no
longer require locks.
Embedders that relied on v8::Isolate to return an uninitialized Isolate
(so they can set ResourceConstraints for example, or set flags that
modify the way the isolate is created) should either do the setup before
creating the isolate, or use the recently added CreateParams to pass e.g.
ResourceConstraints.
BUG=none
LOG=y
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/469783002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24052 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-18 21:07:50 +00:00
arv@chromium.org
f28f6c17c9
Cleanup class parsing a bit
...
BUG=v8:3330
LOG=Y
R=marja@chromium.org
Review URL: https://codereview.chromium.org/575083002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24051 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-18 17:39:49 +00:00
verwaest@chromium.org
c5a3850b8f
Revert "filter cross context eval"
...
(Reverts https://codereview.chromium.org/294073002/ )
BUG=chromium:415051
LOG=y
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/582093002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24049 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-18 17:25:25 +00:00
arv@chromium.org
714f5f401c
ES6: Implement generator method shorthand
...
https://people.mozilla.org/~jorendorff/es6-draft.html#sec-method-definitions
BUG=v8:3516
LOG=Y
R=dslomov@chromium.org
Review URL: https://codereview.chromium.org/577973002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24048 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-18 17:14:13 +00:00
balazs.kilvady@imgtec.com
a479b2cb03
MIPS: Convert KeyedLoad indexed interceptor case to a Handler.
...
Port r24042 (eb9b9ec)
Original commit message:
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.
BUG=
R=dusan.milosavljevic@imgtec.com
Review URL: https://codereview.chromium.org/579273002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24047 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-18 15:38:52 +00:00
balazs.kilvady@imgtec.com
029f060544
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
2014-09-18 15:36:42 +00:00
rossberg@chromium.org
cc960f8034
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
2014-09-18 14:53:00 +00:00
hpayer@chromium.org
8b761b1b1b
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
2014-09-18 13:37:36 +00:00
wingo@igalia.com
3117f6b358
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
2014-09-18 13:30:15 +00:00
mvstanton@chromium.org
eca5875b9d
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
2014-09-18 13:28:32 +00:00
mvstanton@chromium.org
9505d5b5ae
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
2014-09-18 13:24:02 +00:00
hpayer@chromium.org
1373784d83
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
2014-09-18 12:52:12 +00:00
mvstanton@chromium.org
200095c3e7
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
2014-09-18 12:31:31 +00:00
rossberg@chromium.org
88fa6685ae
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
2014-09-18 12:21:50 +00:00
verwaest@chromium.org
a1a0f465b2
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
2014-09-18 12:00:00 +00:00
erik.corry@gmail.com
63b1c1900d
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
2014-09-18 11:32:39 +00:00
mstarzinger@chromium.org
15b563cf74
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
2014-09-18 11:13:36 +00:00
verwaest@chromium.org
e82fe7b0a4
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
2014-09-18 10:57:18 +00:00
v8-autoroll@chromium.org
68884792ea
[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
2014-09-18 10:01:37 +00:00
mvstanton@chromium.org
134a89b11f
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
2014-09-18 09:59:53 +00:00
svenpanne@chromium.org
80d9d6df30
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
2014-09-18 09:53:08 +00:00
mstarzinger@chromium.org
1debacf6aa
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
2014-09-18 09:41:45 +00:00
mstarzinger@chromium.org
4413d318a6
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
2014-09-18 09:02:36 +00:00
sigurds@chromium.org
68075b0a05
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
2014-09-18 08:56:52 +00:00
titzer@chromium.org
892e6621f2
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
2014-09-18 08:47:13 +00:00
hpayer@chromium.org
97bce5e668
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
2014-09-18 08:44:46 +00:00
machenbach@chromium.org
0fce2201b9
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
2014-09-18 06:57:12 +00:00
v8-autoroll@chromium.org
34835388a8
[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
2014-09-17 17:31:19 +00:00
dusan.milosavljevic@imgtec.com
febc3fa415
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
2014-09-17 16:21:22 +00:00
titzer@chromium.org
f6807d7897
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
2014-09-17 15:29:42 +00:00
sigurds@chromium.org
b8dd74779c
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
2014-09-17 15:00:57 +00:00
mstarzinger@chromium.org
79e095c8d0
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
2014-09-17 14:47:25 +00:00
sigurds@chromium.org
887b77aa83
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
2014-09-17 14:41:30 +00:00
mvstanton@chromium.org
18ea0084a0
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
2014-09-17 14:28:48 +00:00
sigurds@chromium.org
4ef5915741
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
2014-09-17 14:20:20 +00:00
wingo@igalia.com
00375fba59
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
2014-09-17 14:01:25 +00:00
v8-autoroll@chromium.org
6cbeb6d00e
[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
2014-09-17 13:31:26 +00:00
yangguo@chromium.org
2fd6e380ca
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
2014-09-17 13:18:50 +00:00
yangguo@chromium.org
a49ac519c8
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
2014-09-17 12:50:17 +00:00
titzer@chromium.org
cbf66711af
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
2014-09-17 12:34:46 +00:00
yangguo@chromium.org
1cc4b0b95e
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
2014-09-17 12:27:16 +00:00
verwaest@chromium.org
d0ad526359
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
2014-09-17 09:56:51 +00:00
svenpanne@chromium.org
ac1b9b11dc
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
2014-09-17 09:51:17 +00:00
svenpanne@chromium.org
fdcf5f99b2
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
2014-09-17 09:49:57 +00:00
hpayer@chromium.org
fe626586da
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
2014-09-17 08:50:57 +00:00
v8-autoroll@chromium.org
7cee8d5cd2
[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
2014-09-17 08:01:35 +00:00
weiliang.lin@intel.com
ac6074707a
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
2014-09-17 05:21:36 +00:00
arv@chromium.org
7efd2eb144
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
2014-09-16 22:15:39 +00:00
v8-autoroll@chromium.org
7062b8fb49
[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
2014-09-16 21:01:27 +00:00
akos.palfi@imgtec.com
a97f2b1014
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
2014-09-16 17:59:41 +00:00
v8-autoroll@chromium.org
e4c3b699bb
[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
2014-09-16 17:31:23 +00:00
mstarzinger@chromium.org
2c04afb9ce
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
2014-09-16 16:20:10 +00:00
jochen@chromium.org
cc66fb85e3
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
2014-09-16 16:18:02 +00:00
jochen@chromium.org
5134a1806e
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
2014-09-16 13:16:02 +00:00
hpayer@chromium.org
b105da2061
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
2014-09-16 13:00:05 +00:00
rossberg@chromium.org
5d520f9ed1
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
2014-09-16 12:58:43 +00:00
mvstanton@chromium.org
a4176d2052
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
2014-09-16 12:51:33 +00:00
hpayer@chromium.org
c54b0bc717
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
2014-09-16 12:48:59 +00:00
verwaest@chromium.org
7d90f7e931
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
2014-09-16 12:42:04 +00:00
wingo@igalia.com
a76fe0a2cf
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
2014-09-16 12:30:39 +00:00
mstarzinger@chromium.org
429924b780
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
2014-09-16 11:33:30 +00:00
Jacob.Bramley@arm.com
aedae395b1
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
2014-09-16 10:42:54 +00:00
Jacob.Bramley@arm.com
647e6cf2ac
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
2014-09-16 10:42:09 +00:00
verwaest@chromium.org
3a448aac19
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
2014-09-16 09:47:45 +00:00
v8-autoroll@chromium.org
5bd28c6e07
[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
2014-09-16 09:31:36 +00:00
hpayer@chromium.org
4412cdde80
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
2014-09-16 09:21:09 +00:00
jochen@chromium.org
069a9c75ad
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
2014-09-16 09:15:02 +00:00
jochen@chromium.org
426ec84861
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
2014-09-16 09:14:11 +00:00
sigurds@chromium.org
d9838be973
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
2014-09-16 08:57:59 +00:00
mstarzinger@chromium.org
d313551a3e
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
2014-09-16 08:29:46 +00:00
erik.corry@gmail.com
7bbae6d91d
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
2014-09-16 07:09:39 +00:00
rossberg@chromium.org
2dbd871eb1
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
2014-09-15 15:49:24 +00:00
hpayer@chromium.org
89db44a94e
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
2014-09-15 15:15:23 +00:00
mstarzinger@chromium.org
de71f7bd16
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
2014-09-15 15:06:05 +00:00
titzer@chromium.org
ef9c757ccd
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
2014-09-15 13:57:56 +00:00
hpayer@chromium.org
28f4efc9db
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
2014-09-15 13:27:46 +00:00
rossberg@chromium.org
221b284570
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
2014-09-15 13:04:44 +00:00
v8-autoroll@chromium.org
140790437c
[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
2014-09-15 13:01:31 +00:00
rossberg@chromium.org
716b7ef798
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
2014-09-15 12:06:14 +00:00
rossberg@chromium.org
06e826493a
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
2014-09-15 11:19:20 +00:00
jochen@chromium.org
65a1857824
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
2014-09-15 11:17:00 +00:00
yangguo@chromium.org
734fd70732
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
2014-09-15 10:57:52 +00:00
yangguo@chromium.org
7cb82a76b4
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
2014-09-15 10:54:49 +00:00
rossberg@chromium.org
21e0e00ae7
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
2014-09-15 09:40:23 +00:00
baptiste.afsa@arm.com
f38258b4f9
[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
2014-09-15 09:27:42 +00:00
jarin@chromium.org
00e90b7e6e
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
2014-09-15 09:21:39 +00:00
rossberg@chromium.org
b2a8ad2c69
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
2014-09-15 09:11:57 +00:00
bmeurer@chromium.org
72bf3ad950
[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
2014-09-15 09:09:45 +00:00
rossberg@chromium.org
be33a79d21
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
2014-09-15 09:03:59 +00:00
v8-autoroll@chromium.org
fa3c92bd48
[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
2014-09-13 09:31:36 +00:00
yangguo@chromium.org
a5027daf1c
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
2014-09-12 21:11:09 +00:00
arv@chromium.org
6b660f2812
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
2014-09-12 16:17:27 +00:00
ulan@chromium.org
c44a69d985
Revert r23916, r23917 for breaking 64-bit tests.
...
"Use unsigned type bitsets to limit undefined behaviour".
TBR=rossberg@chromium.org
Review URL: https://codereview.chromium.org/563283003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23922 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-12 16:13:05 +00:00
ulan@chromium.org
dcf84d88b7
[turbofan] Use correct register_save_area_size with OOL constant pool.
...
Follow-up to r23843.
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/565693002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23921 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-12 15:09:51 +00:00
arv@chromium.org
477b75f1cb
Arrow functions: Cleanup handling of the prototype property
...
The old code did not work correctly in case of optimizations. I
found this out when implementing concise methods and we now plumb
through the function kind so we know what kind of Map to create for
the function.
BUG=v8:2700
LOG=y
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/562253002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23920 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-12 15:07:43 +00:00
v8-autoroll@chromium.org
cfcad1d303
[Auto-roll] Bump up version to 3.29.62.0
...
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23919 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-12 15:01:46 +00:00
mstarzinger@chromium.org
1823249261
Cleanup and simplify TurboFan generic lowering.
...
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/565893002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23918 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-12 14:49:07 +00:00
rossberg@chromium.org
98dc857e2f
Use unsigned type bitsets to limit undefined behaviour
...
R=bmeurer@chromium.org , svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/555153003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23916 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-12 13:03:53 +00:00
yangguo@chromium.org
a5b4beffd0
Remove V8_HOST_CAN_READ_UNALIGNED and its uses.
...
R=jkummerow@chromium.org
BUG=chromium:412967
LOG=Y
Review URL: https://codereview.chromium.org/568753002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23915 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-12 12:42:02 +00:00
bmeurer@chromium.org
578aeb0b0c
[turbofan] Some common operators are globally shared singletons.
...
TEST=compiler-unittests,cctest
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/565753004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23913 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-12 11:59:26 +00:00
mstarzinger@chromium.org
9a2ca5ed15
Enable typed pipeline on ARM and ARM64 for TurboFan.
...
R=bmeurer@chromium.org
BUG=v8:3553
LOG=N
Review URL: https://codereview.chromium.org/552943003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23912 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-12 11:32:05 +00:00
sigurds@chromium.org
4ec63ff97e
Reland
...
- "Switch inlining to use simplified instead of machine loads."
- "Add copy support in inliner."
Reland fixes:
- size_t conversion for 64bit arches
- Don't call front() on empty vector
(triggers assertion on windows)
- turbo_inlining now implies turbo_types, as
it requires simplified lowering.
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/559843004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23911 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-12 11:06:37 +00:00
jarin@chromium.org
e401262400
Reland "Change the order of arguments of the (One|Two)ByteSeqStringSetChar intrinsic."
...
This relands commit r23899.
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/565093002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23910 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-12 10:58:43 +00:00
mstarzinger@chromium.org
ab27b867c5
Allow more runtime functions to accept Int32s instead of Smis.
...
R=yangguo@chromium.org
TEST=mjsunit/array-join
Review URL: https://codereview.chromium.org/563223002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23908 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-12 10:43:27 +00:00
v8-autoroll@chromium.org
3f1fc7796c
[Auto-roll] Bump up version to 3.29.61.0
...
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23907 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-12 10:01:31 +00:00
baptiste.afsa@arm.com
bca9d01dc5
[turbofan] Tests and fixes for ARM64 load/store with immediate offset.
...
R=bmeurer@chromium.org , ulan@chromium.org
BUG=
Review URL: https://codereview.chromium.org/550113002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23906 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-12 09:31:26 +00:00
baptiste.afsa@arm.com
42054156ce
[turbofan] Fix double register swap in ARM and ARM64 backends.
...
R=bmeurer@chromium.org , mstarzinger@chromium.org
BUG=v8:3553
LOG=N
Review URL: https://codereview.chromium.org/562443004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23905 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-12 09:18:43 +00:00
marja@chromium.org
eb19fc013a
Add script streaming API.
...
Blink will use this API to stream script data into V8 as the scripts
load. During loading, V8 can already parse the scripts. They will be then
compiled and executed when the loading is complete.
This is a reincarnation of https://codereview.chromium.org/366153002/
with fixes.
BUG=
R=jochen@chromium.org , rossberg@chromium.org , svenpanne@chromium.org , yangguo@chromium.org
Review URL: https://codereview.chromium.org/566553002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23904 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-12 09:12:08 +00:00
bmeurer@chromium.org
4de58e49fd
[arm] Disable --turbo-types by default instead of ignoring the flag.
...
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/561913004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23903 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-12 08:50:38 +00:00
jarin@chromium.org
bc0674d0a7
Revert "Change the order of arguments of the (One|Two)ByteSeqStringSetChar intrinsic."
...
This reverts commit r23899.
TBR=ulan@chromium.org
Review URL: https://codereview.chromium.org/552253003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23902 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-12 08:49:22 +00:00
jkummerow@chromium.org
b4375b77ec
Fix Smi vs. HeapObject confusion in HConstants.
...
Representation and HType should agree with each other.
BUG=chromium:412215
LOG=y
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/556563005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23901 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-12 08:44:14 +00:00
weiliang.lin@intel.com
9e9328bd56
X87: Eliminate Turbofan shims with CodeFactory
...
port r23877.
original commit message:
Turbofan needs a code handle and a CallInterfaceDescriptor. At the same time we spread knowledge about how to create the initial IC code object too widely. Consolidate code creation and unify it with a descriptor via CodeFactory.
BUG=
R=weiliang.lin@intel.com
Review URL: https://codereview.chromium.org/567953002
Patch from Jing Bao <jing.bao@intel.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23900 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-12 08:43:27 +00:00
jarin@chromium.org
91e97f8371
Change the order of arguments of the (One|Two)ByteSeqStringSetChar intrinsic.
...
This makes the syntactic order consistent with the evaluation order.
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/561133005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23899 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-12 08:18:29 +00:00
weiliang.lin@intel.com
0ada8cfe03
X87: Added CallInterfaceDescriptors to all code stubs.
...
port r23854.
original commit message:
Added CallInterfaceDescriptors to all code stubs. A handful
of code stubs are too complex to be described this way, and
they are encoded with the macro
DEFINE_NULL_CALL_INTERFACE_DESCRIPTOR().
Along the way:
* allowed inheritance of CallInterfaceDescriptors.
* Defined static Register methods for some of the new
CallInterfaceDescriptors. We could go a lot further here, but
it doesn't have to be done immediately.
* Added Representation arrays to some CallInterfaceDescriptors,
especially where future hydrogen versions of the stubs could
benefit from this knowledge.
BUG=
R=weiliang.lin@intel.com
Review URL: https://codereview.chromium.org/566843004
Patch from Jing Bao <jing.bao@intel.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23898 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-12 07:51:39 +00:00
bmeurer@chromium.org
78f3df63c6
[turbofan] Most simplified operators are globally shared singletons.
...
TEST=compiler-unittests,cctest
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/554403003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23896 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-12 07:06:50 +00:00
weiliang.lin@intel.com
788c535476
X87: Rename ascii to one-byte where applicable.
...
port r23840.
original commit message:
Rename ascii to one-byte where applicable.
BUG=
R=weiliang.lin@intel.com
Review URL: https://codereview.chromium.org/565853002
Patch from Jing Bao <jing.bao@intel.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23895 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-12 07:02:11 +00:00
weiliang.lin@intel.com
e3ab5b5824
X87: Get CallInterfaceDescriptor directly from CodeStub.
...
port r23778.
original commit message:
Get CallInterfaceDescriptor directly from CodeStub.
BUG=
R=weiliang.lin@intel.com
Review URL: https://codereview.chromium.org/562983003
Patch from Jing Bao <jing.bao@intel.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23894 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-12 06:41:13 +00:00
bmeurer@chromium.org
baa5a2d623
Disable typed pipeline for non-turbofan arch's after r23859.
...
BUG=
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/568663002
Patch from Paul Lind <paul.lind@imgtec.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23893 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-12 05:49:01 +00:00
v8-autoroll@chromium.org
e709585e76
[Auto-roll] Bump up version to 3.29.60.0
...
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23892 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-12 05:01:15 +00:00
bmeurer@chromium.org
04a5401950
[turbofan] Mark operator constructors as const in MachineOperatorBuilder.
...
TEST=compiler-unittests
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/559413002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23891 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-12 04:35:19 +00:00
weiliang.lin@intel.com
ad05a1db17
X87: Initialize CodeStubInterfaceDescriptor in the constructor.
...
port r23773.
original commit message:
Initialize CodeStubInterfaceDescriptor in the constructor.
BUG=
R=weiliang.lin@intel.com
Review URL: https://codereview.chromium.org/563133002
Patch from Jing Bao <jing.bao@intel.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23890 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-12 02:12:15 +00:00
weiliang.lin@intel.com
77e53fc884
X87: Encapsulate megamorphic load/tail-call in hydrogen
...
port r23772.
original commit message:
To aid vector-based load ic work, we need to be able to handle
the megamorphic load case in hydrogen. A simple approach is to
wrap the probe activity in a hydrogen instruction.
The instruction is novel in that it always tail-calls away.
BUG=
R=weiliang.lin@intel.com
Review URL: https://codereview.chromium.org/564683002
Patch from Jing Bao <jing.bao@intel.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23889 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-12 01:39:25 +00:00
v8-autoroll@chromium.org
52eadef745
[Auto-roll] Bump up version to 3.29.58.0
...
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23885 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-11 20:31:35 +00:00
balazs.kilvady@imgtec.com
9f44180db7
MIPS: Turbofan needs a code handle and a CallInterfaceDescriptor.
...
Port r23877 (bd09296)
Original commit message:
At the same time we spread knowledge about how to create the initial IC code object too widely. Consolidate code creation and unify it with a descriptor via CodeFactory.
BUG=
R=paul.lind@imgtec.com
Review URL: https://codereview.chromium.org/564883002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23884 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-11 17:02:28 +00:00
mstarzinger@chromium.org
b930ef1012
Fix typed lowering of JSAdd on non-number inputs.
...
R=rossberg@chromium.org
TEST=mjsunit/regress/regress-3476
Review URL: https://codereview.chromium.org/564823003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23883 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-11 16:09:21 +00:00
jkummerow@chromium.org
9951770a30
Nuke support for running MSan without a simulator.
...
We've abandoned that approach. The ARM64 simulator is the only supported way of
running V8 under MSan.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/493923003
Patch from Sergey Matveev <earthdok@chromium.org>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23882 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-11 15:19:17 +00:00
mstarzinger@chromium.org
d27e94818a
Also disable typed pipeline on ARM after r23859.
...
R=ulan@chromium.org
BUG=v8:3553
LOG=N
Review URL: https://codereview.chromium.org/562913003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23881 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-11 15:13:59 +00:00
mvstanton@chromium.org
af495313d4
Turbofan needs a code handle and a CallInterfaceDescriptor. At the same time we spread knowledge about how to create the initial IC code object too widely. Consolidate code creation and unify it with a descriptor via CodeFactory.
...
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/567433002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23877 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-11 13:18:58 +00:00
yangguo@chromium.org
90dc5c9e66
Do not use wide reads in CopyCharsUnsigned.
...
R=jkummerow@chromium.org
BUG=chromium:412967
LOG=Y
Review URL: https://codereview.chromium.org/566583002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23876 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-11 12:51:05 +00:00
mstarzinger@chromium.org
4bee89e03c
Fix typed lowering of ToBoolean on NaN input.
...
R=rossberg@chromium.org
TEST=webkit/convert-nan-to-bool
Review URL: https://codereview.chromium.org/565493003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23875 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-11 12:38:16 +00:00
yangguo@chromium.org
9dcf34033b
Expect access check in JSObject::DefineAccessor.
...
R=ulan@chromium.org , verwaest@chromium.org
BUG=chromium:411793
LOG=N
Review URL: https://codereview.chromium.org/559403002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23874 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-11 12:16:33 +00:00
rossberg@chromium.org
fc71f7fdb3
Fix inaccurate type condition in Hydrogen
...
R=bmeurer@chromium.org
BUG=chromium:412210
LOG=Y
Review URL: https://codereview.chromium.org/550453003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23873 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-11 12:13:34 +00:00
balazs.kilvady@imgtec.com
4a5001ddd1
MIPS: Added CallInterfaceDescriptors to all code stubs.
...
Port r23854 (3870059)
Original commit message:
Added CallInterfaceDescriptors to all code stubs. A handful
of code stubs are too complex to be described this way, and
they are encoded with the macro
DEFINE_NULL_CALL_INTERFACE_DESCRIPTOR().
Along the way:
* allowed inheritance of CallInterfaceDescriptors.
* Defined static Register methods for some of the new
CallInterfaceDescriptors. We could go a lot further here, but
it doesn't have to be done immediately.
* Added Representation arrays to some CallInterfaceDescriptors,
especially where future hydrogen versions of the stubs could
benefit from this knowledge.
BUG=
R=dusan.milosavljevic@imgtec.com
Review URL: https://codereview.chromium.org/562153002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23872 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-11 12:13:09 +00:00
ulan@chromium.org
1c76394503
Do full GC for small heaps in idle time handler.
...
BUG=407593
LOG=N
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/563573002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23871 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-11 11:54:49 +00:00
jkummerow@chromium.org
bd97fcaed0
Fix regress-crbug-412203.js
...
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/563733002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23869 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-11 11:47:39 +00:00
marja@chromium.org
90af365ae3
Revert "Add script streaming API."
...
This reverts r23865
Revert "Fix compilation after r23865."
This reverts r23867
Reason: the test contains characters too special for Windows's taste.
TBR=ulan@chromium.org
BUG=
Review URL: https://codereview.chromium.org/545203003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23868 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-11 11:29:28 +00:00
alph@chromium.org
ec8f976113
Add AccessorInfo handling into heap profiler.
...
BUG=
R=svenpanne@chromium.org , yurys@chromium.org
Review URL: https://codereview.chromium.org/564433003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23866 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-11 11:08:40 +00:00
marja@chromium.org
61c9683d71
Add script streaming API.
...
Blink will use this API to stream script data into V8 as the scripts
load. During loading, V8 can already parse the scripts. They will be then
compiled and executed when the loading is complete.
BUG=
R=jochen@chromium.org , rossberg@chromium.org , svenpanne@chromium.org , yangguo@chromium.org
Review URL: https://codereview.chromium.org/366153002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23865 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-11 11:06:26 +00:00