Commit Graph

17818 Commits

Author SHA1 Message Date
adamk@chromium.org
bcf8b05072 Enable ES6 Map and Set by default
In doing so also remove all references to the --harmony-collections flag.
Due to the way context snapshotting works, it's not possible to simply
enable the flag by default.

Depends on ES6 Symbols: https://codereview.chromium.org/421313004

BUG=v8:1622
LOG=Y
R=arv@chromium.org, rossberg@chromium.org

Review URL: https://codereview.chromium.org/427723002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22889 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-05 19:37:32 +00:00
machenbach@chromium.org
a395d78814 Fix webkit status file.
TBR=hpayer@chromium.org

Review URL: https://codereview.chromium.org/447533002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22888 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-05 19:12:06 +00:00
jkummerow@chromium.org
99062ae949 Track number of generic ICs per function
and use it to disable optimization if too many ICs are generic.

R=verwaest@chromium.org

Review URL: https://codereview.chromium.org/441643008

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22887 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-05 17:06:01 +00:00
hpayer@chromium.org
13c6cb7215 Skip toString-number webkit test because of spurious failure.
BUG=
R=machenbach@chromium.org

Review URL: https://codereview.chromium.org/439933006

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22886 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-05 16:36:31 +00:00
wingo@igalia.com
480a60b577 Fix bailout ID for nullary arrow function literals
The FunctionState corresponding to the arrow function's body should be
torn down before the function literal is allocated, so that the function
literal gets a bailout id for the environment in which it appears.

We will also need to rewind bailout IDs in the environment of the
function literal, to return IDs allocated for arrow function arguments.
This will come in the next patch.

R=rossberg@chromium.org
BUG=v8:3475
LOG=N

Review URL: https://codereview.chromium.org/442573004

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22885 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-05 15:23:07 +00:00
mstarzinger@chromium.org
a99b0e61a6 Disable CPlusPlus11Features for making GCMole and NaCL unhappy.
TBR=svenpanne@chromium.org

Review URL: https://codereview.chromium.org/440083003

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22884 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-05 15:17:28 +00:00
machenbach@chromium.org
d535f9896d Whitespace change to trigger bots.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22883 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-05 14:39:25 +00:00
bmeurer@chromium.org
20949f4ba2 Fix Native Client build.
TBR=svenpanne@chromium.org

Review URL: https://codereview.chromium.org/442783002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22882 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-05 14:26:21 +00:00
bmeurer@chromium.org
878a0742cc [arm64] Fix.
TBR=svenpanne@chromium.org

Review URL: https://codereview.chromium.org/444663002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22881 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-05 14:21:07 +00:00
bmeurer@chromium.org
11fb976bf4 Revert "Unbreak build with clang."
This reverts commit r22878 and fixes the actual bug instead.

R=hpayer@chromium.org

Review URL: https://codereview.chromium.org/446573002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22880 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-05 14:19:22 +00:00
mstarzinger@chromium.org
e47c6e0b5b Fix ARM64 port after r22876.
R=bmeurer@chromium.org

Review URL: https://codereview.chromium.org/447443002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22879 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-05 14:06:33 +00:00
svenpanne@chromium.org
99bfb3d974 Unbreak build with clang.
It's unclear whether it's a clang bug or our code is wrong, to be
verified later...

TBR=bmeurer@chromium.org

Review URL: https://codereview.chromium.org/438323002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22878 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-05 13:58:11 +00:00
mstarzinger@chromium.org
e7c87c420a Implement lowering of JS[Load,Store][Property,Named] to ICs.
R=titzer@chromium.org

Review URL: https://codereview.chromium.org/439263004

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22877 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-05 13:32:26 +00:00
bmeurer@chromium.org
bbd62e4a20 [turbofan] Improve testability of the InstructionSelector.
Allow to pass the set of supported CPU features to
the InstructionSelector, so it can be tested without
messing with the command line flags.

Also add InstructionSelector sample for ia32.

TEST=cctest/test-instruction-selector,cctest/test-instruction-selector-{arm,ia32}
R=svenpanne@chromium.org

Review URL: https://codereview.chromium.org/441883004

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22876 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-05 13:26:55 +00:00
svenpanne@chromium.org
337015e5dd Enable C++11. Synch toolchains with Chrome.
* Consistently enable C++11 features on all platforms.
* Use the same ARM toolchain version as Chrome.
* Make clang the default on Mac OS X, just like Chrome.
* Use C99 on Mac OS X, again following Chrome.
* Small build fixes.

R=bmeurer@chromium.org

Review URL: https://codereview.chromium.org/440663002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22875 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-05 13:23:55 +00:00
mstarzinger@chromium.org
c503e74181 Prevent direct inclusion of headers from TF.
R=jochen@chromium.org, titzer@chromium.org

Review URL: https://codereview.chromium.org/438243004

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22874 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-05 13:20:26 +00:00
rossberg@chromium.org
cae6842a74 Undo some unintended changes from the Turbofan merge
R=mstarzinger@chromium.org
BUG=

Review URL: https://codereview.chromium.org/435423002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22873 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-05 13:19:32 +00:00
wingo@igalia.com
6b7f9dba84 yield* calls @@iterator on iterable
R=rossberg@chromium.org
BUG=v8:3422
LOG=N

Review URL: https://codereview.chromium.org/430693003

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22872 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-05 13:17:49 +00:00
bmeurer@chromium.org
ee52dffb37 Another Win64 fix.
TBR=mstarzinger@chromium.org

Review URL: https://codereview.chromium.org/444643002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22871 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-05 13:06:17 +00:00
bmeurer@chromium.org
a43c060b13 Fix copy&paste bug in gtest.gyp.
TBR=jochen@chromium.org

Review URL: https://codereview.chromium.org/441873008

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22870 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-05 12:44:27 +00:00
bmeurer@chromium.org
1709c81f3b Remove broken _WIN64 checks.
TBR=hpayer@chromium.org

Review URL: https://codereview.chromium.org/440863002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22869 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-05 12:38:19 +00:00
verwaest@chromium.org
f89fd015e3 Tag handlers as monomorphic
BUG=
R=ishell@chromium.org

Review URL: https://codereview.chromium.org/444623002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22868 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-05 12:32:49 +00:00
hpayer@chromium.org
c76318bc30 Precise sweeping makes zapping of garbage memory when trimming arrays obsolete
BUG=
R=mstarzinger@chromium.org

Review URL: https://codereview.chromium.org/439863006

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22867 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-05 12:09:23 +00:00
bmeurer@chromium.org
947899e1e1 Fix compilation on arm64.
TBR=hpayer@chromium.org

Review URL: https://codereview.chromium.org/435413002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22866 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-05 12:09:01 +00:00
hpayer@chromium.org
a359e112c3 Precise sweeping makes zapping of garbage memory in UpdatePointer obsolete.
BUG=
R=mstarzinger@chromium.org

Review URL: https://codereview.chromium.org/440073002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22865 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-05 12:04:58 +00:00
hpayer@chromium.org
112e089cf7 Move ClearNonLiveReferences and friends into the gc.
BUG=
R=mstarzinger@chromium.org

Review URL: https://codereview.chromium.org/440063002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22864 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-05 11:58:24 +00:00
bmeurer@chromium.org
70e7a119e6 Cleanup V8_TURBOFAN_TARGET definition.
Move to globals.h so we do no longer skip any number of
tests. Introduce V8_TURBOFAN_BACKEND, which is 1 if we
actually have a backend and want to compile it, but don't
run the tests.

R=titzer@chromium.org

Review URL: https://codereview.chromium.org/444503003

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22863 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-05 11:53:32 +00:00
sigurds@chromium.org
77838cf522 Verifier must ensure that start and end node of graph are set.
BUG=
R=rossberg@chromium.org

Review URL: https://codereview.chromium.org/444583004

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22862 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-05 11:42:57 +00:00
verwaest@chromium.org
fb7da07a13 Removed GetConstructor from the API.
Instead either get the "constructor" property stored in the prototype, or keep a side-table.

LOG=y
R=jochen@chromium.org

Review URL: https://codereview.chromium.org/438303003

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22861 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-05 11:27:44 +00:00
neis@chromium.org
d04a2cbda5 Remove unnecesssary auxiliary definitions.
R=rossberg@chromium.org
BUG=

Review URL: https://codereview.chromium.org/413983005

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22860 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-05 11:27:26 +00:00
verwaest@chromium.org
26107e0d7a Cleanup hydrogen generated handlers
BUG=
R=ishell@chromium.org

Review URL: https://codereview.chromium.org/445563002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22859 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-05 11:22:29 +00:00
mstarzinger@chromium.org
7c667b812d Move left and right trimming of FixedArray into Heap.
R=hpayer@chromium.org
BUG=v8:3231
LOG=n

Review URL: https://codereview.chromium.org/200443004

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22858 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-05 11:16:11 +00:00
jkummerow@chromium.org
e051112fc6 Restore performance of accesses to JSGlobalProxy after r22802
R=verwaest@chromium.org

Review URL: https://codereview.chromium.org/446523002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22857 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-05 10:44:17 +00:00
verwaest@chromium.org
5a2de1fced Remove special frontend for callbacks with slow-mode holders.
BUG=
R=ishell@chromium.org

Review URL: https://codereview.chromium.org/436273002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22856 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-05 10:27:10 +00:00
bmeurer@chromium.org
ecec301571 Revert "Initial import of unittests using GTest/GMock."
This reverts commit r22847 and r22848. Isolate initialization/shutdown
still broken (so certain debug builds just crash), and our compiler flags
do not work with other Google projects (i.e. GTest/GMock).

TBR=jochen@chromium.org

Review URL: https://codereview.chromium.org/438243003

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22855 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-05 10:16:47 +00:00
hpayer@chromium.org
d3ee3df4e4 Force incremental marking when called from idle notification.
BUG=
R=ernstm@chromium.org, jochen@chromium.org

Review URL: https://codereview.chromium.org/426243002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22854 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-05 09:40:09 +00:00
verwaest@chromium.org
62714a58cd Inline LookupInHolder and NextHolder
BUG=
R=jkummerow@chromium.org

Review URL: https://codereview.chromium.org/437513002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22853 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-05 09:32:55 +00:00
verwaest@chromium.org
356ac42def Reland "Also mark as prototype when passing in while creating a function."
Skip gc-stress for test relying on stable feedback (and hence stable gc timing).

BUG=
R=hpayer@chromium.org

Review URL: https://codereview.chromium.org/441873005

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22852 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-05 09:24:27 +00:00
sigurds@chromium.org
8322577eeb Make start node a value input to parameter nodes.
BUG=
R=mstarzinger@chromium.org

Review URL: https://codereview.chromium.org/437183002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22851 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-05 08:47:39 +00:00
jochen@chromium.org
c608c2f0be Move a bunch of GC related files to heap/ subdirectory
BUG=none
R=hpayer@chromium.org
LOG=n

Review URL: https://codereview.chromium.org/437993003

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22850 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-05 08:18:22 +00:00
yangguo@chromium.org
01560f9ccd Do not include native Javascript in ExecutionState frames.
When a debug event is triggered, the ExecutionState object should not
expose native JS code.

R=aandrey@chromium.org

Review URL: https://codereview.chromium.org/429453005

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22849 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-05 08:16:02 +00:00
bmeurer@chromium.org
88ce4eb5bb Fix build.
TBR=jochen@chromium.org

Review URL: https://codereview.chromium.org/442603004

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22848 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-05 08:10:21 +00:00
bmeurer@chromium.org
62ac0d1050 Initial import of unittests using GTest/GMock.
R=jochen@chromium.org, svenpanne@chromium.org

Review URL: https://codereview.chromium.org/439863004

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22847 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-05 08:07:25 +00:00
yangguo@chromium.org
90bbdacbf8 Merge three PromiseEvent's into one.
This also adds missing instrumentation and removes resolver tracking.

BUG=v8:3093
LOG=N
R=aandrey@chromium.org, yangguo@chromium.org

Review URL: https://codereview.chromium.org/416213004

Patch from Alexandra Mikhaylova <amikhaylova@google.com>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22846 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-05 07:42:06 +00:00
alph@chromium.org
5be7020308 Make CPU profiler function names match ones from StackFrame iterator.
R=yangguo@chromium.org, yurys@chromium.org

Review URL: https://codereview.chromium.org/417253003

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22845 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-05 07:31:17 +00:00
hpayer@chromium.org
2083600aee Remove all encountered weak maps from the list of weak collections when incremental marking is aborted.
BUG=399527
LOG=n
R=mstarzinger@chromium.org

Review URL: https://codereview.chromium.org/439233002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22844 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-05 07:29:13 +00:00
hpayer@chromium.org
1ed9516f21 Revert "Also mark as prototype when passing in while creating a function."
Breaks GC stress ARM64.

TBR=verwaest@chromium.org
BUG=

Review URL: https://codereview.chromium.org/439983002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22843 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-05 07:20:57 +00:00
alph@chromium.org
f6ddb89cd3 Move anonymous function name beautifying out of v8.
R=yangguo@chromium.org, yurys@chromium.org

Review URL: https://codereview.chromium.org/425223004

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22842 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-05 07:08:39 +00:00
weiliang.lin@intel.com
6306a52e0b X87: Cleanup in stub-cache.cc; remove unused ArrayLength store ICs.
port r22805

original commit message:

  Cleanup in stub-cache.cc; remove unused ArrayLength store ICs.

BUG=
R=weiliang.lin@intel.com

Review URL: https://codereview.chromium.org/438163003

Patch from Chunyang Dai <chunyang.dai@intel.com>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22840 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-05 03:24:18 +00:00
weiliang.lin@intel.com
20fcfc98f6 X87: Avoid one repeated property lookup when computing load ICs.
r22802 touches X87 port but it is not changed completely.

port r22802.

original commit message:
  Avoid one repeated property lookup when computing load ICs.

BUG=
R=weiliang.lin@intel.com

Review URL: https://codereview.chromium.org/441873002

Patch from Chunyang Dai <chunyang.dai@intel.com>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22839 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-05 03:20:18 +00:00