dslomov@chromium.org
37bd114925
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
2014-10-21 17:21:32 +00:00
dcarney@chromium.org
54fef44df3
[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
2014-10-21 12:38:46 +00:00
wingo@igalia.com
4eddbacabf
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
2014-10-21 12:16:37 +00:00
svenpanne@chromium.org
d66d302b00
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
2014-10-21 10:55:12 +00:00
svenpanne@chromium.org
2b8d734037
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
2014-10-21 08:52:32 +00:00
yangguo@chromium.org
7ebe9d820a
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
2014-10-20 12:14:26 +00:00
bmeurer@chromium.org
010f089971
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
2014-10-20 12:04:22 +00:00
machenbach@chromium.org
1c3a3407c7
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
2014-10-20 11:53:21 +00:00
sigurds@chromium.org
bc475b4a6b
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
2014-10-20 07:56:50 +00:00
jkummerow@chromium.org
c186399e5f
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
2014-10-17 15:44:02 +00:00
titzer@chromium.org
e4c6f9488e
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
2014-10-17 11:51:57 +00:00
machenbach@chromium.org
b4d92528db
Fix new git workflow in release scripts.
...
Need to svn fetch in order to make svn find-rev work.
BUG=chromium:410721
LOG=n
TEST=script_test.py
TBR=tandrii@chromium.org
Review URL: https://codereview.chromium.org/662643002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24666 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-10-16 13:45:59 +00:00
machenbach@chromium.org
1973c2651f
Add v8 git hashes to releases script.
...
Also change the tests to use git mode.
BUG=chromium:410721
LOG=n
TEST=script_test.py
TBR=tandrii@chromium.org
Review URL: https://codereview.chromium.org/658033005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24664 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-10-16 13:21:13 +00:00
wingo@igalia.com
ee64a14b24
Implement .forEach() on typed arrays
...
BUG=v8:3578
LOG=Y
R=dslomov@chromium.org , wingo@igalia.com
Review URL: https://codereview.chromium.org/583723002
Patch from Adrian Perez de Castro <aperez@igalia.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24657 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-10-16 10:55:26 +00:00
machenbach@chromium.org
d83e070498
Whitespace change to test the new poller.
...
TBR=agable@chromium.org
Review URL: https://codereview.chromium.org/657113003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24653 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-10-16 10:03:14 +00:00
machenbach@chromium.org
4193c37dcd
Whitespace change to test the new poller.
...
TBR=agable@chromium.org
Review URL: https://codereview.chromium.org/664483002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24652 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-10-16 08:39:20 +00:00
machenbach@chromium.org
7809e2ca35
Whitespace change to test the new poller.
...
TBR=agable@chromium.org
Review URL: https://codereview.chromium.org/654393003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24651 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-10-16 08:19:45 +00:00
machenbach@chromium.org
33c676388c
Whitespace change to test new git workflow.
...
TBR=agable@chromium.org
Review URL: https://codereview.chromium.org/657073002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24633 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-10-15 12:38:38 +00:00
machenbach@chromium.org
935702e655
Make release script cleanup more robust.
...
This is a work-around that checks out master if the
remembered branch is corrupt.
BUG=chromium:410721
LOG=n
TEST=script_test.py
TBR=tandrii@chromium.org
Review URL: https://codereview.chromium.org/659473002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24599 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-10-14 12:19:32 +00:00
machenbach@chromium.org
6d69354154
Fix remote branch location in releases script (2).
...
BUG=chromium:410721
LOG=n
TEST=script_test.py
TBR=tandrii@chromium.org
Review URL: https://codereview.chromium.org/653533003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24598 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-10-14 12:10:48 +00:00
machenbach@chromium.org
ddd2d09a59
Fix remote branch location in releases script.
...
BUG=chromium:410721
LOG=n
TEST=script_test.py
TBR=tandrii@chromium.org
Review URL: https://codereview.chromium.org/653923002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24596 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-10-14 12:00:22 +00:00
machenbach@chromium.org
4158c7b76a
Switch chromium roll script to git.
...
BUG=chromium:418923,chromium:410721
LOG=n
TEST=script_test.py
TBR=tandrii@chromium.org
Review URL: https://codereview.chromium.org/657483002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24589 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-10-14 09:00:16 +00:00
machenbach@chromium.org
791a3c4309
Make releases script ready for the new git workflow.
...
BUG=chromium:410721
LOG=n
TEST=script_test.py
TBR=tandrii@chromium.org
Review URL: https://codereview.chromium.org/646383002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24558 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-10-13 12:34:53 +00:00
rmcilroy@chromium.org
03f4956744
v8_external_snapshot target visible only when using v8_use_external_startup_data
...
Prevent snapshot_blob.bin from being unnecessarily generated when building all targets.
When such file exists, chrome_tests assumes we will load V8's initial snapshot from
external files, even when such feature is turned off, which prevents the tests from
being successfully compiled.
BUG=421063
LOG=N
R=rmcilroy@chromium.org
Review URL: https://codereview.chromium.org/643163002
Patch from André Baixo <baixo@google.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24550 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-10-13 09:36:12 +00:00
yangguo@chromium.org
ba6e17c494
Split off remaining runtime functions in runtime.cc.
...
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/638423003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24533 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-10-10 14:59:53 +00:00
yangguo@chromium.org
0dd69ec439
Allow identifier code points from supplementary multilingual planes.
...
ES5.1 section 6 ("Source Text"):
"Throughout the rest of this document, the phrase “code unit” and the
word “character” will be used to refer to a 16-bit unsigned value
used to represent a single 16-bit unit of text."
This changed in ES6 draft section 10.1 ("Source Text"):
"The ECMAScript code is expressed using Unicode, version 5.1 or later.
ECMAScript source text is a sequence of code points. All Unicode code
point values from U+0000 to U+10FFFF, including surrogate code points,
may occur in source text where permitted by the ECMAScript grammars."
This patch is to reflect this spec change.
BUG=v8:3617
LOG=Y
R=jochen@chromium.org
Review URL: https://codereview.chromium.org/640193002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24510 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-10-10 07:13:46 +00:00
machenbach@chromium.org
bb117b4dde
Make benchmark runner understand chromium perf output.
...
BUG=406405
LOG=n
TEST=python -m unittest run_benchmarks_test
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/498163002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24509 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-10-10 07:12:38 +00:00
jochen@chromium.org
1369a8367a
Add link to tsan bug to suppression
...
TBR=machenbach@chromium.org
LOG=n
BUG=none
Review URL: https://codereview.chromium.org/646493002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24487 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-10-09 09:51:21 +00:00
jochen@chromium.org
d50ba88bfd
Introduce a tsan suppressions file
...
Also suppress a deliberate lock cycle in test-lockers
BUG=none
R=glider@chromium.org , machenbach@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/642023002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24484 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-10-09 09:32:04 +00:00
bmeurer@chromium.org
0ed74a6e26
Fix tools/run-llprof.sh to work with newer perf.
...
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/641973002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24478 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-10-09 06:01:41 +00:00
yangguo@chromium.org
8659e50723
Update unicode to 7.0.0.
...
And do not use code points with PATTERN_* property for identifier start.
Maintain that \u180E is a white space character.
BUG=v8:2892
LOG=Y
R=dpino@igalia.com , mathias@qiwi.be
Review URL: https://codereview.chromium.org/638643002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24473 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-10-08 14:55:03 +00:00
machenbach@chromium.org
cc0cd88955
Add test for tag pushing in push-to-trunk script.
...
BUG=chromium:410721
LOG=n
TEST=script_test.py
TBR=tandrii@chromium.org
Review URL: https://codereview.chromium.org/641633002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24468 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-10-08 13:36:27 +00:00
ulan@chromium.org
5b463207d7
Move fdlibm in src/third_party.
...
BUG=
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/638553003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24464 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-10-08 11:19:51 +00:00
machenbach@chromium.org
81b422931f
Add tag write access to merge script.
...
The script will poll the remote branch until the git updater
has replicated the commit to tag. The tag will then be
directly pushed to git.
BUG=chromium:410721
LOG=n
TEST=script_test.py
R=agable@chromium.org , tandrii@chromium.org
TBR=tandrii@chromium.org
Review URL: https://codereview.chromium.org/607893004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24431 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-10-07 10:46:04 +00:00
bmeurer@chromium.org
9440b885ae
Add C++11 compatible base::hash function object.
...
Implement NodeCache in terms of base::hash and std::equal_to in preparation
for HeapConstant caching.
TEST=cctest,unittests
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/624153003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24412 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-10-06 12:27:24 +00:00
svenpanne@chromium.org
955876b5f3
Use the pnacl-clang toolchain for (P)NaCL builds
...
Patch from JF Bastien <jfb@google.com>.
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/631703002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24402 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-10-06 08:10:50 +00:00
yangguo@chromium.org
4733718dd1
Extend snapshot creation to generate 4-byte values
...
R=rmcilroy@chromium.org , yangguo@chromium.org
Review URL: https://codereview.chromium.org/623993002
Patch from Andre Baixo <baixo@google.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24401 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-10-04 10:30:24 +00:00
paul.lind@imgtec.com
f9b39f29fb
MIPS: Add turbofan support for mips32.
...
BUG=
R=bmeurer@chromium.org , dusan.milosavljevic@imgtec.com
Review URL: https://codereview.chromium.org/601723002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24397 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-10-02 15:48:48 +00:00
machenbach@chromium.org
c1e462cd64
Whitespace change for branch testing.
...
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24369 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-10-01 14:10:08 +00:00
dslomov@chromium.org
bedfa9e710
Extract runtime functions for classes into a separate file.
...
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/621833002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24364 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-10-01 12:11:12 +00:00
jochen@chromium.org
259126c0d9
Remove sweeper threads
...
Job based sweeping is enabled since 3.29, so remove the now obsolete
thread based implementation
BUG=none
R=hpayer@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/615933003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24352 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-10-01 09:16:28 +00:00
bmeurer@chromium.org
bfd37ab267
Move unit tests to test/unittests.
...
As per discussion on the V8 team, this is the place we want them to live,
not following the Chrome Style Guide for this.
BUG=v8:3489
LOG=y
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/615393002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24350 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-10-01 08:34:25 +00:00
machenbach@chromium.org
f3a19a7e76
Fix svn tags in release scripts.
...
Rebase the local branch after committing so that git svn
tag works.
Some of these changes need to be ported to git in https://codereview.chromium.org/607893004/
BUG=chromium:410721,v8:3601
LOG=n
TEST=script_test.py
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/618703002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24330 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-30 13:12:44 +00:00
yangguo@chromium.org
af635205ed
Split yet more runtime functions into separate files.
...
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/612383002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24323 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-30 10:46:04 +00:00
bmeurer@chromium.org
c1ee6247ca
[turbofan] Some javascript operators are globally shared singletons.
...
Also cleanup the interface, and make the parameter class/accessors
explicit to work-around the type-unsafety of OpParameter<T>.
TEST=compiler-unittests,cctest,mjsunit
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/613683002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24322 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-30 10:42:44 +00:00
dcarney@chromium.org
51a2f97d80
[turbofan] x64 lea multiplication matching
...
R=bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/615483003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24317 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-30 09:46:30 +00:00
yangguo@chromium.org
381616fb70
Split even more runtime functions into separate files.
...
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/612023002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24307 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-30 08:23:02 +00:00
yangguo@chromium.org
b0fdeb1b2a
Split more runtime functions into seperate files.
...
R=bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/598913004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24274 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-29 09:32:38 +00:00
dcarney@chromium.org
5d0e9a2496
[turbofan] basic block profiler
...
R=titzer@chromium.org , mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/593563005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24263 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-29 07:29:14 +00:00
yangguo@chromium.org
3ef16353ba
Move string-related runtime functions into separate files.
...
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/604703004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24261 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-29 07:08:15 +00:00