Commit Graph

17818 Commits

Author SHA1 Message Date
mstarzinger@chromium.org
0e47697c18 Minor simplification and cleanup of graph builder.
R=rossberg@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23000 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-08 13:51:30 +00:00
rossberg@chromium.org
f7c49bafb0 ES6: Implement WeakMap and WeakSet constructor logic
Now that iterators are enabled by default we need to correctly
handle the parameter for WeakMap and WeakSet. If provided then the
argument is iterated over to add entries to the WeakMap and WeakSet.

BUG=v8:3399
LOG=Y
R=adamk@chromium.org, rossberg@chromium.org

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

Patch from Erik Arvidsson <arv@chromium.org>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22999 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-08 13:39:13 +00:00
mstarzinger@chromium.org
8627bd5347 Make Clang 3.0 happy about static cast in DoGenerateCode.
R=titzer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22998 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-08 13:33:28 +00:00
mstarzinger@chromium.org
ade23c891a Extend ToBooleanStub to be able to return oddballs.
R=titzer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22997 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-08 12:41:57 +00:00
weiliang.lin@intel.com
7a86e30c34 X87: fix one patch porting error in R22957.
BUG=
R=weiliang.lin@intel.com

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

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22996 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-08 12:38:20 +00:00
yangguo@chromium.org
0c32d8c5cb Fix debug-promises tests.
Using assertEquals on two Promises always passes. Use assertSame instead.

R=rossberg@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22995 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-08 11:57:51 +00:00
rossberg@chromium.org
d9d6a60973 Enable ES6 unscopables
R=yangguo@chromium.org
BUG=v8:3401
LOG=Y

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22994 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-08 11:42:59 +00:00
sigurds@chromium.org
055fe8c3e9 Update and extend context specialization.
* Add store-chain folding to context specialization.
* Replace all uses of context with constant and then use
  a visitor to find the places to optimize.

BUG=
R=mstarzinger@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22993 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-08 11:05:31 +00:00
rossberg@chromium.org
49e6abb9e3 Turn on harmony_unscopables for es_staging
BUG=v8:3401
LOG=Y
R=adamk@chromium.org, rossberg@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22992 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-08 10:49:04 +00:00
svenpanne@chromium.org
adeac1a32c Unbreak gcmole bots.
Switching on C++11 features for gcmole might actually be a good idea... :-}

TBR=mstarzinger@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22991 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-08 10:37:45 +00:00
rossberg@chromium.org
5427ea5285 Remove proxies from --harmony switch for M38, because problems
They can still be activated separately using the --harmony-proxies switch,
but are no longer implied by Chrome's "Experimental JavaScript" option.

R=yangguo@chromium.org
BUG=
LOG=Y

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22990 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-08 09:58:19 +00:00
svenpanne@chromium.org
ef6e0fa174 Re-enable C++11 tests (still not on VS or NaCL).
R=mstarzinger@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22989 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-08 09:03:50 +00:00
bmeurer@chromium.org
8e3ba1783e Make Zone::New() and Zone::NewArray() usable w/o v8.h.
R=svenpanne@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22988 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-08 08:13:06 +00:00
bmeurer@chromium.org
12e8b34b07 Reland "Add initial support for compiler unit tests using GTest/GMock.".
LOG=y
BUG=v8:3489
R=svenpanne@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22987 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-08 07:04:07 +00:00
bmeurer@chromium.org
a5067853ff Skip -pedantic for GTest as long as we -std=gnu++0x.
R=svenpanne@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22986 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-08 06:59:11 +00:00
machenbach@chromium.org
affd31f267 Whitespace change to trigger bots.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22985 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-08 06:29:49 +00:00
bmeurer@chromium.org
ab9bbed9d3 Synchronize GTest/GMock dependencies with Chromium.
Dependencies were updated in Chromium, see
https://codereview.chromium.org/425333002/ for details.

R=svenpanne@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22984 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-08 05:45:04 +00:00
adamk@chromium.org
c068a606f2 Remove suppressions for Blink webexposed tests
BUG=400507
LOG=N
TBR=machenbach@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22983 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-07 19:57:41 +00:00
wingo@igalia.com
cde2b800c7 Properly rebaseline getOwnPropertyNames test.
R=arv@chromium.org
TBR=arv@chromium.org, rossberg@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22982 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-07 18:19:38 +00:00
wingo@igalia.com
9d6a18ad1c Rebaseline WebKit object getOwnPropertyNames test for Array.{keys,values,entries}
R=arv@chromium.org
TBR=rossberg@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22981 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-07 17:57:27 +00:00
wingo@igalia.com
cebddb662e Enable ES6 iteration by default
This enables for-of, as well as @@iterator implementations for strings
and arrays.

R=rossberg@chromium.org
BUG=v8:2214
LOG=Y

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22980 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-07 16:42:14 +00:00
verwaest@chromium.org
a1f3f02415 Mark as prototype only after instantiating the function
BUG=
R=ishell@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22979 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-07 16:14:22 +00:00
mvstanton@chromium.org
7b9e24e3fb Clean up IC tracing for CallICs.
CallICs have had some confused tracing, because the IC state is not
entirely captured by the installed code stub - it lives in the type
vector.

Change tracing to be able to use the vector state changes instead.
Introduced a DEFAULT state to be used by all vector-based ICs.

R=verwaest@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22978 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-07 15:33:14 +00:00
neis@chromium.org
c972e8e213 Extend some operations to range types.
This is a reland of 22945, which failed to build on Windows due to
(some versions of?) Visual Studio lacking copysign().

R=rossberg@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22977 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-07 15:30:16 +00:00
machenbach@chromium.org
f263478eed Enable TF for testing benchmarks.
BUG=
R=mstarzinger@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22976 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-07 15:26:28 +00:00
machenbach@chromium.org
846a5f285d [Auto-roll] Bump up version to 3.28.63.0
TBR=machenbach@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22974 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-07 13:34:13 +00:00
verwaest@chromium.org
a7aae7a811 Don't smi-untag on 64bit in the store-field stub
BUG=
R=ishell@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22973 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-07 13:09:33 +00:00
svenpanne@chromium.org
6e75bfc35b Update gcmole to a more recent clang/llvm.
* Changes for 2.9:
     * Use CXX in Makefile instead of hardwired g++, we need a more
       modern GCC than 4.6 later, anyway.

* Changes for 3.0:
     * Use llvm namespace.
     * Diagnostic => DiagnosticsEngine.

* Changes for 3.1:
     * The BlockDeclRefExpr AST node is gone.
     * The structure of the CXXNewExpr AST node has changed.
     * Path changed from Release to Release+Asserts.
     * Use clang++ instead of -cc1, otherwise we lose the system include
       paths.

* Changes for 3.2:
     none needed

* Changes for 3.3:
     * Use lookup_iterator::begin/end instead of first/second.

* Changes for 3.4:
     * createItaniumMangleContext => ItaniumMangleContext::create.

* Changes for 3.5:
     * clang uses <type_traits> now, so -std=c++0x is needed.
     * Type-trait-related AST changes.
     * getCustomDiagID signature changed.
     * We must link the C++ library statically now.

R=mstarzinger@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22972 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-07 12:56:53 +00:00
hpayer@chromium.org
604eaa0d27 Move objects-visiting into heap.
BUG=
R=jochen@chromium.org, mstarzinger@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22971 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-07 12:21:01 +00:00
mstarzinger@chromium.org
6fce0d4df3 Remove dangerous default parameter from machine Store operator.
R=bmeurer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22970 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-07 11:01:02 +00:00
rodolph.perfetta@arm.com
437fef5000 ARM64: Support arbitrary offset in load/store pair.
TF calls can generate code exceeding the instruction range.

BUG=
R=bmeurer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22969 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-07 10:46:40 +00:00
rodolph.perfetta@arm.com
241c1311ca ARM64: fix Instanceof stub.
TF exposed a bug.

BUG=
R=bmeurer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22968 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-07 10:42:55 +00:00
sigurds@chromium.org
32c4ed8d21 Directly use OperatorProperties where possible instead.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22967 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-07 09:14:47 +00:00
sigurds@chromium.org
d44563a0b1 Delegate node properties to operator properties.
* Move logic from NodeProperties to OperatorProperties when possible
* Make NodeProperties delegeate to OperatorProperties

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22966 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-07 09:14:37 +00:00
sigurds@chromium.org
6d6e759a6a NodeAuxData needs a Zone, not a Graph.
BUG=
R=titzer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22965 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-07 09:11:42 +00:00
sigurds@chromium.org
b2159111cf Only tag parameters as maybe assigned if in sloppy mode.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22964 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-07 09:06:01 +00:00
mstarzinger@chromium.org
159cc8ddf2 v8::TryCatch should cancel the scheduled exception on Reset.
v8::TryCatch cancels the scheduled exception on destruction if |Rethrow|
was never called.
It is reasonable to do the same in |Reset|.

BUG=362388, 359386
LOG=
R=mstarzinger@chromium.org

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

Patch from Yutaka Hirano <yhirano@chromium.org>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22963 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-07 08:55:49 +00:00
mvstanton@chromium.org
76c87c1cf2 CallIC must update type feedback info correctly.
CallIC, as the first of vector-based ICs didn't update the ic with type
count counter and the generic count counter correctly. This CL fixes
that.

BUG=
R=jkummerow@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22962 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-07 08:52:00 +00:00
wingo@igalia.com
2c615439bc Mirror object properties are always names
R=aandrey@chromium.org, rossberg@chromium.org, yangguo@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22959 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-07 08:36:38 +00:00
weiliang.lin@intel.com
284d23dbb5 X87: We should never allocate a 0-sized buffer, so never grow from 0.
port r22947

original commit message:

   We should never allocate a 0-sized buffer, so never grow from 0.

BUG=
R=weiliang.lin@intel.com

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

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22958 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-07 08:20:00 +00:00
weiliang.lin@intel.com
b40af26eec X87: Always use the StoreFieldStub to do the actual storing.
port r22931.

original commit message:

  Always use the StoreFieldStub to do the actual storing.

BUG=
R=weiliang.lin@intel.com

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

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22957 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-07 08:11:11 +00:00
yangguo@chromium.org
2e4114975f Fix BUILD.gn after r22923.
R=mstarzinger@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22956 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-07 08:02:37 +00:00
yangguo@chromium.org
2ec32f346d Only escape U+0022 in argument values of String.prototype HTML methods
Contributed by Mathias Bynens <mathiasb@opera.com>.

TEST=mjsunit/es6/string-html
BUG=v8:2217
LOG=Y
R=arv@chromium.org, yangguo@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22955 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-07 07:45:33 +00:00
bmeurer@chromium.org
0a84fab8ef No need to link base-unittests with GMock.
R=jochen@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22954 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-07 07:14:13 +00:00
weiliang.lin@intel.com
5fef5b2cc3 X87: Hydrogenize (and share) StoreField except heapobject (for now)
port r22909.

original commit message:

  Hydrogenize (and share) StoreField except heapobject (for now)

BUG=
R=weiliang.lin@intel.com

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

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22953 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-07 07:12:27 +00:00
weiliang.lin@intel.com
ed97194cfb X87: Check that external references are registered in the serializer.
port r22896

original commit message:
  Check that external references are registered in the serializer.
  Inspired by a patch by Slava Chigrin <vchigrin@yandex-team.ru>;

BUG=
R=weiliang.lin@intel.com

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

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22952 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-07 07:06:52 +00:00
bmeurer@chromium.org
89d17bca54 Apply patch from https://codereview.chromium.org/425333002 to gtest.gyp.
This may be required for https://codereview.chromium.org/425333002 to
land in Chromium.

TBR=machenbach@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22951 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-07 04:44:55 +00:00
machenbach@chromium.org
81904ff0f9 Whitespace change to trigger bots.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22950 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-06 20:50:29 +00:00
adamk@chromium.org
c865b20417 Update webkit test for expected own properties
Follow up to: 438103002

BUG=None
LOG=Y
R=adamk@chromium.org, rossberg@chromium.org

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

Patch from Erik Arvidsson <arv@chromium.org>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22949 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-06 19:30:52 +00:00
akos.palfi@imgtec.com
957e1b3897 MIPS: We should never allocate a 0-sized buffer, so never grow from 0.
Port r22947 (e72b5aed) and r22944 (d1d8f44c)

BUG=
R=paul.lind@imgtec.com

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22948 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-06 19:30:03 +00:00