mstarzinger@chromium.org [Wed, 22 Oct 2014 11:31:12 +0000 (11:31 +0000)]
Switch ScheduleLateNodeVisitor to use explicit queue.
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
672583002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24803
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Wed, 22 Oct 2014 11:24:55 +0000 (11:24 +0000)]
[turbofan] Add support for deferred code.
Branch can now have an optional hint, when the condition is
likely true or false, and if such a hint is present the other
basic block will be marked as deferred and placed at the end
of the function.
We currently use this feature for tagging int32/uint32 in
change lowering, and for load/store bounds checks in simplified
lowering.
TEST=cctest,unittests
R=dcarney@chromium.org
Review URL: https://codereview.chromium.org/
642883003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24802
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Wed, 22 Oct 2014 11:08:42 +0000 (11:08 +0000)]
Perf tests for fromCodePoint and codePointAt.
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
670463005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24801
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
sigurds@chromium.org [Wed, 22 Oct 2014 11:06:22 +0000 (11:06 +0000)]
Add FRINTP (round towards positive infinity) instruction.
Macro Assember, assembler and simulator for ARM64 were missing FRINTP.
R=rodolph.perfetta@arm.com, ulan@chromium.org
Review URL: https://codereview.chromium.org/
669923002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24800
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
balazs.kilvady@imgtec.com [Wed, 22 Oct 2014 10:26:38 +0000 (10:26 +0000)]
MIPS64: Spread the knowledge!
Port r24793 (c0c2b0d)
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24799
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Wed, 22 Oct 2014 09:37:42 +0000 (09:37 +0000)]
Disable libstdc++ debug mode on x64 for now.
TBR=mstarzinger@chromium.org
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24798
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Wed, 22 Oct 2014 09:14:48 +0000 (09:14 +0000)]
Remove testing artifacts from Schedule::AddFoo.
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
641553003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24797
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Wed, 22 Oct 2014 08:19:05 +0000 (08:19 +0000)]
Flatten the string in StringToDouble function.
R=yangguo@chromium.org
BUG=chromium:425551
LOG=N
Review URL: https://codereview.chromium.org/
654763003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24796
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Wed, 22 Oct 2014 08:15:47 +0000 (08:15 +0000)]
Really disable test when running with optimize for size
R=bmeurer@chromium.org
TBR=bmeurer@chromium.org
LOG=n
BUG=none
Review URL: https://codereview.chromium.org/
652903008
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24795
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Wed, 22 Oct 2014 08:12:17 +0000 (08:12 +0000)]
Enable libstdc++ debug mode in debug builds.
For now it's only enabled on Linux/Intel.
R=mstarzinger@chromium.org
BUG=v8:3638
LOG=y
Review URL: https://codereview.chromium.org/
650013006
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24794
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Wed, 22 Oct 2014 08:06:43 +0000 (08:06 +0000)]
Spread the knowledge!
R=arv@chromium.org, mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
670623005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24793
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Wed, 22 Oct 2014 07:36:12 +0000 (07:36 +0000)]
Fix newly added test to not run with optimize-for-size
TBR=ulan@chromium.org
BUG=none
LOG=n
Review URL: https://codereview.chromium.org/
673593002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24792
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Wed, 22 Oct 2014 06:58:38 +0000 (06:58 +0000)]
Add support for a target new space size
When this flag is set, we will commit additional pages up until the
target size before doing a scavenge.
I made sure that all tests pass when a target size of 16MB is set.
BUG=v8:3626
R=ulan@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/
652543007
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24790
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Wed, 22 Oct 2014 06:42:17 +0000 (06:42 +0000)]
Use getauxval() if available.
This fixes the problem of not being able to detect ARM features on
ChromeOS because sandbox cannot access /proc/self/auxv and
/proc/cpuinfo there.
Drive-by-cleanup to libc detection in two other places.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
672543002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24789
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Tue, 21 Oct 2014 20:13:09 +0000 (20:13 +0000)]
Whitespace change to trigger revert of new test262-es6 tests.
TBR=rossberg@chromium.org
Review URL: https://codereview.chromium.org/
665373003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24788
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Tue, 21 Oct 2014 18:46:12 +0000 (18:46 +0000)]
Whitespace change to trigger new test262-es6 tests.
TBR=rossberg@chromium.org
Review URL: https://codereview.chromium.org/
672483002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24787
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Tue, 21 Oct 2014 18:38:03 +0000 (18:38 +0000)]
Whitespace change to trigger new test262-es6 tests.
TBR=rossberg@chromium.org
Review URL: https://codereview.chromium.org/
646873005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24786
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
adamk@chromium.org [Tue, 21 Oct 2014 18:16:50 +0000 (18:16 +0000)]
Replace single quotes with double quotes to fix BUILD.gn
TBR=jochen@chromium.org
Review URL: https://codereview.chromium.org/
665313003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24785
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
adamk@chromium.org [Tue, 21 Oct 2014 17:46:42 +0000 (17:46 +0000)]
Array.prototype.{slice,splice} should use [[DefineOwnProperty]] to generate return value
BUG=chromium:423633
LOG=N
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
649063003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24784
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Tue, 21 Oct 2014 17:21:32 +0000 (17:21 +0000)]
Update ObjectToString to Harmony-draft algorithm
Updates Object.prototype.toString() to use algorithm described in harmony drafts.
Currently, the behaviour is essentially the same as ES262's version, however this changes when internal structures
such as Promise make use of symbolToStringTag (as they are supposed to, see v8:3241), and changes further once
Symbol.toStringTag is exposed publicly.
BUG=v8:3241, v8:3502
LOG=N
R=dslomov@chromium.org
Review URL: https://codereview.chromium.org/
546803003
Patch from Caitlin Potter <caitpotter88@gmail.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24783
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Tue, 21 Oct 2014 16:31:51 +0000 (16:31 +0000)]
Revert "Make sure floating phi nodes are coupled to their control."
TBR=jarin@chromium.org
Review URL: https://codereview.chromium.org/
654583004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24782
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Tue, 21 Oct 2014 15:35:39 +0000 (15:35 +0000)]
Make sure floating phi nodes are coupled to their control.
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
669683002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24781
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Tue, 21 Oct 2014 15:12:45 +0000 (15:12 +0000)]
Fix scheduler not to connect final merge block in the graph to its inputs.
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
667953002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24780
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dcarney@chromium.org [Tue, 21 Oct 2014 14:44:50 +0000 (14:44 +0000)]
[turbofan] use ZonePool in most places in the compiler pipeline a temp zone is used.
R=jarin@chromium.org, bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
663333003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24779
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Tue, 21 Oct 2014 14:41:54 +0000 (14:41 +0000)]
Fix off-by-one bug in TurboFan register allocator.
R=jarin@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
671703003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24778
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Tue, 21 Oct 2014 14:17:08 +0000 (14:17 +0000)]
Fix AstGraphBuilder for loops like for(;;).
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
640203004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24777
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Tue, 21 Oct 2014 13:37:49 +0000 (13:37 +0000)]
Fix incorrect private access
(I'm puzzled why GCC did not report this error.)
TBR=bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
669733007
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24776
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Tue, 21 Oct 2014 13:04:51 +0000 (13:04 +0000)]
The issue is that by handling strings with map/handler pairs instead of a special
version of the keyed load stub (https://code.google.com/p/v8/source/detail?r=24661),
I allowed polymorphism between string and non-string types in the IC. Before, the
IC would go generic.
Then, at crankshaft time, we special case when we only saw strings. The error
here is that crankshaft can't emit code that handles polymorphism between string
and non-string types. The choice is either to get that to happen (I don't deem
this necessary from a performance point of view, an IC with such type feedback
before would have gone generic), or simply check for the case of "polymorphic
with some string maps" and require crankshaft to go generic. I'll do the latter.
BUG=425519
LOG=N
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
667923004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24775
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Tue, 21 Oct 2014 12:57:19 +0000 (12:57 +0000)]
Fix data race with interface caching
R=bmeurer@chromium.org
BUG=421634
LOG=N
Review URL: https://codereview.chromium.org/
667703002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24774
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Tue, 21 Oct 2014 12:56:52 +0000 (12:56 +0000)]
Use an idle notification of 0ms as hint that a GC after context disposal is triggerd
BUG=none
R=ulan@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/
671513006
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24773
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dcarney@chromium.org [Tue, 21 Oct 2014 12:38:46 +0000 (12:38 +0000)]
[turbofan] add ZonePool to correctly track compiler phase memory usage
R=bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
665893006
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24771
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 21 Oct 2014 12:24:01 +0000 (12:24 +0000)]
[turbofan] Reduce ~~x to x.
TEST=unittests
R=dcarney@chromium.org
Review URL: https://codereview.chromium.org/
666723005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24770
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
wingo@igalia.com [Tue, 21 Oct 2014 12:16:37 +0000 (12:16 +0000)]
Assign bailout and type feedback IDs in a post-pass
This will allow us to move expressions from one function to another, for
example when the parser determines that a given cover grammar instance
is actually the default value initializer for an arrow function.
This is a re-land of https://codereview.chromium.org/
636403003/ with a
fix for the arm64 code generator.
R=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
663373003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24769
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Tue, 21 Oct 2014 11:54:10 +0000 (11:54 +0000)]
Handle property name "-0" correctly for typed arrays.
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/
670623003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24768
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Tue, 21 Oct 2014 11:21:54 +0000 (11:21 +0000)]
Remove unused IsDirty
BUG=
R=dcarney@chromium.org
Review URL: https://codereview.chromium.org/
670703002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24767
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dusan.milosavljevic@imgtec.com [Tue, 21 Oct 2014 11:10:13 +0000 (11:10 +0000)]
Handle NaN value storing in Uint8Clamped typed arrays.
TEST=mjsunit/external-array
BUG=
R=dslomov@chromium.org
Review URL: https://codereview.chromium.org/
667113002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24766
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Tue, 21 Oct 2014 11:05:32 +0000 (11:05 +0000)]
Perf tests for harmony string functions.
R=yangguo@chromium.org
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24765
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 21 Oct 2014 10:59:55 +0000 (10:59 +0000)]
[x86] Select better left operand for comparisons.
R=dcarney@chromium.org
Review URL: https://codereview.chromium.org/
667933002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24764
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 21 Oct 2014 10:59:41 +0000 (10:59 +0000)]
Fix leak in d8.
R=bmeurer@chromium.org
TBR=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
652403003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24763
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Tue, 21 Oct 2014 10:55:12 +0000 (10:55 +0000)]
Revert "Assign bailout and type feedback IDs in a post-pass"
This reverts r24757, which breaks the ARM64 simulator build.
Simple repro:
out/arm64.debug/d8 -e 'eval("(function(){ const x; var x; })")'
TBR=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
652543006
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24762
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Tue, 21 Oct 2014 10:51:02 +0000 (10:51 +0000)]
Remove unused GetConstructor
BUG=
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/
663033004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24761
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yurys@chromium.org [Tue, 21 Oct 2014 10:40:14 +0000 (10:40 +0000)]
Fix use-of-uninitialized-value introduced in r24700
LOG=N
BUG=chromium:425146
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
665243002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24760
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Tue, 21 Oct 2014 10:33:57 +0000 (10:33 +0000)]
Fix Win64 after r24758.
BUG=
TBR=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
663343002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24759
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Tue, 21 Oct 2014 09:42:16 +0000 (09:42 +0000)]
Use smi zero instead of undefine_value to zap dead weak cells.
It is faster to test for smi zero from generated code.
BUG=
R=erikcorry@chromium.org
Review URL: https://codereview.chromium.org/
637253004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24758
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Tue, 21 Oct 2014 08:52:32 +0000 (08:52 +0000)]
Assign bailout and type feedback IDs in a post-pass
This will allow us to move expressions from one function to another, for
example when the parser determines that a given cover grammar instance
is actually the default value initializer for an arrow function.
R=svenpanne@chromium.org, marja@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
636403003
Patch from Andy Wingo <wingo@igalia.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24757
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
weiliang.lin@intel.com [Tue, 21 Oct 2014 08:28:00 +0000 (08:28 +0000)]
X87: vector-based ICs did not update type feedback counts correctly.
port r24732.
original commit message:
vector-based ICs did not update type feedback counts correctly.
BUG=
R=weiliang.lin@intel.com
Review URL: https://codereview.chromium.org/
669823002
Patch from Chunyang Dai <chunyang.dai@intel.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24756
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Tue, 21 Oct 2014 08:25:14 +0000 (08:25 +0000)]
Remove v8stdint.h, it doesn't serve a purpose anymore.
Basically a follow-up to https://codereview.chromium.org/
667573005/.
LOG=y
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
670673002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24755
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dcarney@chromium.org [Tue, 21 Oct 2014 07:12:18 +0000 (07:12 +0000)]
fix ia32 after r24753
TBR=bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
668883002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24754
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dcarney@chromium.org [Tue, 21 Oct 2014 06:59:50 +0000 (06:59 +0000)]
[turbofan] cleanup InstructionSequence
R=bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
664123002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24753
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 21 Oct 2014 06:40:15 +0000 (06:40 +0000)]
d8: create compile cache in a separate isolate.
R=vogelheim@chromium.org
Review URL: https://codereview.chromium.org/
670433003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24752
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 21 Oct 2014 04:55:49 +0000 (04:55 +0000)]
Visual Studio provides stdint.h these days.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
667573005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24751
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
balazs.kilvady@imgtec.com [Mon, 20 Oct 2014 17:59:59 +0000 (17:59 +0000)]
MIPS64: vector-based ICs did not update type feedback counts correctly.
Port r24732 (83e975b)
BUG=v8:3605
LOG=N
R=paul.lind@imgtec.com
Review URL: https://codereview.chromium.org/
670543002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24746
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Mon, 20 Oct 2014 17:32:06 +0000 (17:32 +0000)]
Fix gc mole test failure.
TBR=ulan@chromium.org
Review URL: https://codereview.chromium.org/
651683003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24745
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 20 Oct 2014 15:07:27 +0000 (15:07 +0000)]
Remove deprecated Ascii-related identifiers from include/v8.h
R=dcarney@chromium.org
Review URL: https://codereview.chromium.org/
665883002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24744
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Mon, 20 Oct 2014 13:33:34 +0000 (13:33 +0000)]
Simplify language feature management.
R=rossberg@chromium.org
BUG=v8:3640
LOG=N
Review URL: https://codereview.chromium.org/
642233003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24743
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Mon, 20 Oct 2014 12:37:48 +0000 (12:37 +0000)]
Drop obsolete misc-intrinsics.h file.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
648643003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24742
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Mon, 20 Oct 2014 12:32:23 +0000 (12:32 +0000)]
Remove dead GeneralizeFieldRepresentation
BUG=
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/
668663002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24741
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Mon, 20 Oct 2014 12:17:12 +0000 (12:17 +0000)]
Upgrade test262-es6
R=dslomov@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
639373005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24740
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 20 Oct 2014 12:14:26 +0000 (12:14 +0000)]
Remove fuzz-natives tests.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
663043003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24739
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Mon, 20 Oct 2014 12:12:51 +0000 (12:12 +0000)]
Annotate PromotionQueue::RelocateQueueHead for MemorySanitizer.
BUG=chromium:416875
LOG=N
R=earthdok@chromium.org, jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
603633002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24738
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Mon, 20 Oct 2014 12:12:09 +0000 (12:12 +0000)]
Read object pointer atomically while updating slots
BUG=425003
R=ulan@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/
663023002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24737
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 20 Oct 2014 12:07:45 +0000 (12:07 +0000)]
Move some Runtime:: functions and remove runtime.h as include when unnecessary.
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
662413002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24736
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Mon, 20 Oct 2014 12:04:22 +0000 (12:04 +0000)]
Remove (untested) code for unsupported compilers.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
656143004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24735
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Mon, 20 Oct 2014 11:53:21 +0000 (11:53 +0000)]
Whitespace change to test new git workflow.
TBR=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
669673002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24733
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Mon, 20 Oct 2014 11:42:56 +0000 (11:42 +0000)]
vector-based ICs did not update type feedback counts correctly.
BUG=v8:3605
LOG=N
R=jkummerow@chromium.org, ulan@chromium.org
Review URL: https://codereview.chromium.org/
650073002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24732
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mikhail.naganov@gmail.com [Mon, 20 Oct 2014 11:37:06 +0000 (11:37 +0000)]
Add README.md file
Add basic info. This file is automatically displayed on GitHub, and is
kind of de-facto standard for project documentation.
BUG=chromium:415466
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
657423002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24731
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Mon, 20 Oct 2014 11:27:39 +0000 (11:27 +0000)]
platform: fix build on SmartOS
With -std=g++0x, `signbit` is no longer a define, and is an actual
function declared in C++-specific headers. Thus checking it's presence
with ifdef will no longer work.
Considering that g++0x implies newer compiler, there should not be the
case where it won't be present anymore.
BUG=
R=bmeurer@chromium.org, danno
Review URL: https://codereview.chromium.org/
642203003
Patch from Fedor Indutny <fedor.indutny@gmail.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24730
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Mon, 20 Oct 2014 11:26:23 +0000 (11:26 +0000)]
[turbofan] Move node matchers to separate file.
TEST=unittests
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
639293006
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24729
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dcarney@chromium.org [Mon, 20 Oct 2014 11:18:07 +0000 (11:18 +0000)]
[turbofan] pass zone to InstructionSequence
R=bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
663073002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24728
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dcarney@chromium.org [Mon, 20 Oct 2014 10:57:37 +0000 (10:57 +0000)]
[turbofan] fix build after r24726
TBR=bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
669643002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24727
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dcarney@chromium.org [Mon, 20 Oct 2014 10:19:15 +0000 (10:19 +0000)]
[turbofan] remove schedule from InstructionSequence
R=bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
669613002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24726
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
marja@chromium.org [Mon, 20 Oct 2014 09:23:43 +0000 (09:23 +0000)]
Script streaming: more UTF-8 handing fixes (again).
1) Since we fill the output buffer both from the chunks and the conversion
buffer, it's possible that we run out of space and call CopyCharsHelper with 0
length. The underlying functions don't handle it gracefully, so check there.
2) There was a bug where we used to try to copy too many characters from the
beginning of the data chunk into the conversion buffer. Continuation bytes in
UTF-8 are of the form 0b10XXXXXX. If a byte is bigger than that, it's the first
byte of a new UTF-8 character and we should ignore it.
These two together (or maybe in combination with surrogates) are a probable
reason for crbug.com/420932.
3) The test data was off; \uc481 is \xec\x92\x81.
BUG=420932
LOG=N
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
662003003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24725
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Mon, 20 Oct 2014 09:01:14 +0000 (09:01 +0000)]
[arm64] Skip TF tests that time out in simulator debug runs.
TBR=dcarney@chromium.org
Review URL: https://codereview.chromium.org/
642293005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24724
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 20 Oct 2014 08:46:11 +0000 (08:46 +0000)]
Special handling for inline caches in code serializer.
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
656533003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24722
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Mon, 20 Oct 2014 08:40:46 +0000 (08:40 +0000)]
Avoid the Marsaglia effect in 3D
For a longer discussion, see the associated Chromium issue.
BUG=chromium:423311
LOG=y
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
662513004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24721
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
sigurds@chromium.org [Mon, 20 Oct 2014 08:16:26 +0000 (08:16 +0000)]
Fix Win64 size_t/int conversion after
b3f2277ea42a.
TBR=dcarney@chromium.org
Review URL: https://codereview.chromium.org/
646983005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24720
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
sigurds@chromium.org [Mon, 20 Oct 2014 07:56:50 +0000 (07:56 +0000)]
Add inlining for intrinsics.
This issue is for discussion on how to proceed.
I think the implementation of ValueOf shows that directly creating the IR does not scale.
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
612043003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24719
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dcarney@chromium.org [Mon, 20 Oct 2014 07:43:56 +0000 (07:43 +0000)]
some static casts for windows to fix r24717
TBR=bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
660843003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24718
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dcarney@chromium.org [Mon, 20 Oct 2014 07:32:01 +0000 (07:32 +0000)]
[turbofan] decouple register allocation from schedule and graph
R=bmeurer@chromium.org, jarin@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
664683002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24717
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Mon, 20 Oct 2014 06:25:41 +0000 (06:25 +0000)]
[turbofan] Skip bounds checks for positive indices only.
TEST=unittests,mjsunit/asm/int32array-constant-key
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
647773004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24716
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Mon, 20 Oct 2014 04:16:06 +0000 (04:16 +0000)]
Revert "Enable libstdc++ debug mode in debug builds.".
This reverts commit r24676 to see if it was the cause for the mysterious
crashes on some bots. If not, we'll reland it.
TBR=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
663013002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24715
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
weiliang.lin@intel.com [Mon, 20 Oct 2014 04:12:53 +0000 (04:12 +0000)]
X87: ReceiverCheckMode needs to be utilized further.
port r24704.
original commit message:
ReceiverCheckMode needs to be utilized further.
The parameter wasn't being passed appropriately, and there was an extra
opportunity to use mode RECEIVER_IS_STRING in SubStringStub.
BUG=
R=weiliang.lin@intel.com
Review URL: https://codereview.chromium.org/
664973002
Patch from Chunyang Dai <chunyang.dai@intel.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24714
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
weiliang.lin@intel.com [Mon, 20 Oct 2014 04:06:06 +0000 (04:06 +0000)]
X87: Tick processor: Print C++ entry points.
port r24700.
original commit message:
Tick processor: Print C++ entry points
BUG=
R=weiliang.lin@intel.com
Review URL: https://codereview.chromium.org/
662323002
Patch from Chunyang Dai <chunyang.dai@intel.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24713
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Mon, 20 Oct 2014 03:52:10 +0000 (03:52 +0000)]
Add turbo.cfg to .gitignore.
TBR=jarin@chromium.org
Review URL: https://codereview.chromium.org/
664003003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24712
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
weiliang.lin@intel.com [Mon, 20 Oct 2014 02:00:50 +0000 (02:00 +0000)]
X87: Implement the new semantics for 'super(...)'
original commit message:
Implement the new semantics for 'super(...)'
Per the latest ES6 draft, super(...) translates into a call
to function's prototype.
BUG=
R=weiliang.lin@intel.com
Review URL: https://codereview.chromium.org/
642603006
Patch from Chunyang Dai <chunyang.dai@intel.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24711
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
weiliang.lin@intel.com [Mon, 20 Oct 2014 01:58:46 +0000 (01:58 +0000)]
X87: Make disassembler string tables read-only.
port r24672.
original commit message:
Move them from .data to .rodata.
BUG=
R=weiliang.lin@intel.com
Review URL: https://codereview.chromium.org/
654263006
Patch from Chunyang Dai <chunyang.dai@intel.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24710
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
adamk@chromium.org [Fri, 17 Oct 2014 20:27:24 +0000 (20:27 +0000)]
Fix webkit getOwnPropertyNames test after r24706 removed Array.prototype.values
TBR=danno@chromium.org
Review URL: https://codereview.chromium.org/
664613004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24708
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
akos.palfi@imgtec.com [Fri, 17 Oct 2014 20:17:01 +0000 (20:17 +0000)]
MIPS64: ReceiverCheckMode needs to be utilized further.
Port r24704 (
f43a27ee)
Original commit message:
The parameter wasn't being passed appropriately, and there was an extra
opportunity to use mode RECEIVER_IS_STRING in SubStringStub.
BUG=
R=paul.lind@imgtec.com
Review URL: https://codereview.chromium.org/
645823003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24707
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
adamk@chromium.org [Fri, 17 Oct 2014 20:11:47 +0000 (20:11 +0000)]
Don't expose Array.prototype.values as it breaks webcompat
Some versions of Outlook Web Access test for the existence of a 'values'
property on Array instances, so adding the 'values' iterator to the prototype
(even with @@unscopeables) causes breakage.
This matches Gecko: they ship Array.prototype.{keys,entries} but not 'values'.
BUG=409858
LOG=Y
R=arv@chromium.org, danno@chromium.org
Review URL: https://codereview.chromium.org/
647703003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24706
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Fri, 17 Oct 2014 16:33:38 +0000 (16:33 +0000)]
Correct semantics for numerically indexed stores to typed arrays.
R=verwaest@chromium.org, ishell@chromium.org
Committed: https://code.google.com/p/v8/source/detail?r=24691
Review URL: https://codereview.chromium.org/
652303002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24705
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Fri, 17 Oct 2014 16:23:31 +0000 (16:23 +0000)]
ReceiverCheckMode needs to be utilized further.
The parameter wasn't being passed appropriately, and there was an extra
opportunity to use mode RECEIVER_IS_STRING in SubStringStub.
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
657313005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24704
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Fri, 17 Oct 2014 15:50:05 +0000 (15:50 +0000)]
Fix compilation with GCC-4.8 after r24685
TBR=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
661123002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24701
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Fri, 17 Oct 2014 15:44:02 +0000 (15:44 +0000)]
Tick processor: Print C++ entry points
R=loislo@chromium.org, yangguo@chromium.org, yurys@chromium.org
Review URL: https://codereview.chromium.org/
638633002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24700
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Fri, 17 Oct 2014 14:46:05 +0000 (14:46 +0000)]
Fix compile issue.
TBR=dcarney@chromium.org
Review URL: https://codereview.chromium.org/
659313003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24699
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dcarney@chromium.org [Fri, 17 Oct 2014 14:28:00 +0000 (14:28 +0000)]
skip some gc stress tests for tf
TBR=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
659333002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24698
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Fri, 17 Oct 2014 14:11:01 +0000 (14:11 +0000)]
Fix break location calculation.
R=ulan@chromium.org
BUG=chromium:419663
LOG=Y
Review URL: https://codereview.chromium.org/
658723005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24697
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Fri, 17 Oct 2014 13:19:45 +0000 (13:19 +0000)]
Keyed stores to super with numeric keys.
R=verwaest@chromium.org, arv@chromium.org, ishell@chromium.org
BUG=v8:3330
LOG=N
Review URL: https://codereview.chromium.org/
649603003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24696
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Fri, 17 Oct 2014 13:01:54 +0000 (13:01 +0000)]
Revert "Correct semantics for numerically indexed stores to typed arrays."
This reverts commit r24691 because win64 release build breaks.
TBR=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
659313002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24695
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Fri, 17 Oct 2014 11:51:57 +0000 (11:51 +0000)]
Implement graph trimming in ControlReducer.
Trimming the graph consists of breaking links from nodes that are not reachable from end to nodes that are reachable from end. Such dead nodes show up in the use lists of the live nodes and though mostly harmless, just clutter up the graph. They also can limit instruction selection opportunities, so it is good to get rid of them.
This CL is one half of the ControlReducer functionality, the other half
being branch folding.
R=bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
661923002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24694
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
neis@chromium.org [Fri, 17 Oct 2014 11:46:06 +0000 (11:46 +0000)]
Test monotonicity of expression typings.
R=rossberg@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
653093002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24693
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00