wingo
3c5f0db3a1
Fix receiver when calling eval() bound by with scope
...
Thanks to André Bargull for the report.
BUG=v8:4214
LOG=N
R=arv@chromium.org , mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/1202963005
Cr-Commit-Position: refs/heads/master@{#29259}
2015-06-24 16:47:58 +00:00
binji
3e2c6a2eb7
Fix ReferenceError of Worker in regress-crbug-503578
...
Worker is not defined on the V8 Shared bots.
BUG=chromium:503578
R=jarin@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/1202763004
Cr-Commit-Position: refs/heads/master@{#29246}
2015-06-24 05:36:20 +00:00
binji
10b6af71b8
Fix cluster-fuzz found regression in d8 when deserializing ArrayBuffer
...
BUG=503578
R=jarin@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/1204753002
Cr-Commit-Position: refs/heads/master@{#29244}
2015-06-24 04:23:58 +00:00
adamk
3164aa7483
Revert "Keep a canonical list of shared function infos."
...
Speculative revert in the hopes of fixing serializer crashes seen in canary.
This reverts commit c166945083
, as well as
followup change "Do not look for existing shared function info when compiling a new script."
(commit 7c43967bb7
).
BUG=chromium:503552,v8:4132
TBR=yangguo@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/1207583002
Cr-Commit-Position: refs/heads/master@{#29241}
2015-06-23 22:59:30 +00:00
ishell
bcb276c6f7
Fixed exception handling in Realm.create().
...
BUG=chromium:501711
LOG=N
Review URL: https://codereview.chromium.org/1207453002
Cr-Commit-Position: refs/heads/master@{#29236}
2015-06-23 15:08:50 +00:00
verwaest
c49659b008
Don't insert elements transitions into normalized maps
...
BUG=chromium:499790
LOG=n
Review URL: https://codereview.chromium.org/1203653003
Cr-Commit-Position: refs/heads/master@{#29233}
2015-06-23 14:33:11 +00:00
ishell
47421760f4
Map::ReconfigureProperty() should mark map as unstable when it returns a different map.
...
BUG=chromium:502930
LOG=N
Review URL: https://codereview.chromium.org/1200003002
Cr-Commit-Position: refs/heads/master@{#29226}
2015-06-23 11:30:58 +00:00
ishell
5c4aae390f
Global handle leak in Realm.create() fixed.
...
BUG=chromium:501808
LOG=N
Review URL: https://codereview.chromium.org/1197403002
Cr-Commit-Position: refs/heads/master@{#29224}
2015-06-23 11:04:21 +00:00
dslomov
e7cdb615ae
[destructuring] Implement parameter pattern matching.
...
Scoping for initializers is yet incorrect. Defaults are not supported.
R=arv@chromium.org ,rossberg@chromium.org
BUG=v8:811
LOG=N
Committed: https://crrev.com/42f30f4ded2b1ca0c4caa7639e6206e93c78ee70
Cr-Commit-Position: refs/heads/master@{#29184}
Review URL: https://codereview.chromium.org/1189743003
Cr-Commit-Position: refs/heads/master@{#29192}
2015-06-22 14:16:02 +00:00
caitpotter88
5337508fe3
[es6] ship Rest Parameters
...
BUG=v8:2159
LOG=N
R=arv@chromium.org , dslomov@chromium.org , rossberg@chromium.org
Review URL: https://codereview.chromium.org/1191653008
Cr-Commit-Position: refs/heads/master@{#29191}
2015-06-22 13:43:26 +00:00
machenbach
82e8060515
Revert of [destructuring] Implement parameter pattern matching. (patchset #7 id:120001 of https://codereview.chromium.org/1189743003/ )
...
Reason for revert:
[Sheriff] Breaks tsan:
http://build.chromium.org/p/client.v8/builders/V8%20Linux64%20TSAN/builds/4392
Original issue's description:
> [destructuring] Implement parameter pattern matching.
>
> Scoping for initializers is yet incorrect. Defaults are not supported.
>
> R=arv@chromium.org ,rossberg@chromium.org
> BUG=v8:811
> LOG=N
>
> Committed: https://crrev.com/42f30f4ded2b1ca0c4caa7639e6206e93c78ee70
> Cr-Commit-Position: refs/heads/master@{#29184}
TBR=arv@chromium.org ,rossberg@chromium.org,caitpotter88@gmail.com,wingo@igalia.com,dslomov@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=v8:811
Review URL: https://codereview.chromium.org/1195163007
Cr-Commit-Position: refs/heads/master@{#29188}
2015-06-22 13:14:24 +00:00
dslomov
42f30f4ded
[destructuring] Implement parameter pattern matching.
...
Scoping for initializers is yet incorrect. Defaults are not supported.
R=arv@chromium.org ,rossberg@chromium.org
BUG=v8:811
LOG=N
Review URL: https://codereview.chromium.org/1189743003
Cr-Commit-Position: refs/heads/master@{#29184}
2015-06-22 12:07:13 +00:00
machenbach
a002cbd743
Revert of Ship Harmony Array/TypedArray methods (patchset #6 id:100001 of https://codereview.chromium.org/1187543003/ )
...
Reason for revert:
[Sheriff] Breaks gcstress and mac asan:
http://build.chromium.org/p/client.v8/builders/V8%20GC%20Stress%20-%203/builds/3896
http://build.chromium.org/p/client.v8/builders/V8%20Mac64%20ASAN/builds/1774
Original issue's description:
> Ship Harmony Array/TypedArray methods
>
> CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_rel_ng;tryserver.blink:linux_blink_rel
> BUG=v8:3578
> LOG=Y
> R=adamk
>
> Committed: https://crrev.com/7142b0d211b732e1c119fded80f43fbbd9cea0f8
> Cr-Commit-Position: refs/heads/master@{#29170}
TBR=adamk@chromium.org ,littledan@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=v8:3578
Review URL: https://codereview.chromium.org/1195163002
Cr-Commit-Position: refs/heads/master@{#29171}
2015-06-20 07:25:27 +00:00
littledan
7142b0d211
Ship Harmony Array/TypedArray methods
...
CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_rel_ng;tryserver.blink:linux_blink_rel
BUG=v8:3578
LOG=Y
R=adamk
Review URL: https://codereview.chromium.org/1187543003
Cr-Commit-Position: refs/heads/master@{#29170}
2015-06-20 00:02:02 +00:00
binji
e6fed5e895
Fix cluster-fuzz bug introduced in refs/heads/master@{#28796}
...
Don't DCHECK in the atomic runtime functions.
BUG=chromium:501809,chromium:497295
R=jarin@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/1189223003
Cr-Commit-Position: refs/heads/master@{#29159}
2015-06-19 16:14:15 +00:00
yangguo
c166945083
Keep a canonical list of shared function infos.
...
Each Script object now keeps a WeakFixedArray of SharedFunctionInfo
objects created from this script.
This way, when compiling a function, we do not create duplicate shared
function info objects when recompiling with either compiler.
This fixes a class of issues in the debugger, where we set break points
on one shared function info, but functions from duplicate shared function
infos are not affected.
LOG=N
BUG=v8:4132
Review URL: https://codereview.chromium.org/1183733006
Cr-Commit-Position: refs/heads/master@{#29151}
2015-06-19 14:40:32 +00:00
caitpotter88
b61e9812c3
[es6] ship Object.assign
...
BUG=v8:4007
LOG=N
R=rossberg@chromium.org , arv@chromium.org
CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_rel_ng;tryserver.blink:linux_blink_rel
Committed: https://crrev.com/12e194860a56d47a10d89ae34761a4af6b6166bb
Cr-Commit-Position: refs/heads/master@{#29118}
Review URL: https://codereview.chromium.org/1191003003
Cr-Commit-Position: refs/heads/master@{#29150}
2015-06-19 14:39:13 +00:00
yangguo
4b7d5dc4bb
Protect error message formatter against invalid string length.
...
R=mstarzinger@chromium.org
BUG=chromium:500980
LOG=N
Review URL: https://codereview.chromium.org/1191263002
Cr-Commit-Position: refs/heads/master@{#29135}
2015-06-19 08:31:31 +00:00
ulan
fda60dc214
ARM: make predictable code size scope more precise in DoDeferredInstanceOfKnownGlobal.
...
We block constant pool up to the call stub instruction, but the check for code size
includes the next instruction after the call instruction. That instruction can
emit constant pool.
BUG=chromium:500831
LOG=NO
TEST=mjsunit/regress/regress-500831
Review URL: https://codereview.chromium.org/1189123003
Cr-Commit-Position: refs/heads/master@{#29132}
2015-06-19 04:54:51 +00:00
ulan
19cdd00d09
ARM64: remove stack pushes without frame in RegExpExecStub.
...
RegExpExecStub pushes callee-saved registers without setting up a frame. This confuses the stack iterator.
Other architectures do not save these registers.
BUG=chromium:487981
LOG=NO
TEST=mjsunit/regress/regress-487981
Review URL: https://codereview.chromium.org/1183593005
Cr-Commit-Position: refs/heads/master@{#29120}
2015-06-18 15:45:32 +00:00
jkummerow
5de595a603
[test] Fix gc-stress failures of regress-crbug-500497.js
...
R=machenbach@chromium.org
NOTRY=y
Review URL: https://codereview.chromium.org/1175123003
Cr-Commit-Position: refs/heads/master@{#29091}
2015-06-17 14:24:36 +00:00
jkummerow
5fca3947cf
Hydrogen object literals: always initialize in-object properties
...
This fixes a bug where new-space GC could be triggered by non-folded allocations for some of the in-object properties, while the object was only partially initialized.
BUG=chromium:500497
LOG=y
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/1182113007
Cr-Commit-Position: refs/heads/master@{#29079}
2015-06-17 11:24:24 +00:00
verwaest
bb1b54a776
Only walk the hidden prototype chain for private nonexistent symbols
...
BUG=chromium:479528
LOG=n
Review URL: https://codereview.chromium.org/1185373004
Cr-Commit-Position: refs/heads/master@{#29075}
2015-06-17 10:20:52 +00:00
verwaest
72cdb99346
Rely on the map being a dictionary map rather than not having a backpointer
...
BUG=chromium:500173
LOG=n
Review URL: https://codereview.chromium.org/1194513003
Cr-Commit-Position: refs/heads/master@{#29074}
2015-06-17 10:14:01 +00:00
machenbach
b4d3e1ceba
Revert of Add %TypedArray% to proto chain (patchset #6 id:100001 of https://codereview.chromium.org/1186733002/ )
...
Reason for revert:
[Sheriff] Changes layout tests:
http://build.chromium.org/p/client.v8.fyi/builders/V8-Blink%20Linux%2032/builds/429
See e.g.:
https://storage.googleapis.com/chromium-layout-test-archives/V8-Blink_Linux_32/429/layout-test-results/inspector/console/console-big-array-pretty-diff.html
Please upload a blink side needsmanualrebaseline change first for these tests if the change is intended. Please also add a blink trybot on a reland of this CL.
Original issue's description:
> Add %TypedArray% to proto chain
>
> According to the ES6 spec, the main methods and getters shouldn't
> be properties of the individual TypedArray objects and prototypes
> but instead on %TypedArray% and %TypedArray%.prototype. This
> difference is observable through introspection. This patch moves
> some methods and getters to the proper place, with the exception
> of %TypedArray%.prototype.subarray and harmony methods. These will
> be moved in follow-on patches.
>
> BUG=v8:4085
> LOG=Y
> R=adamk
>
> Committed: https://crrev.com/a10590158260737b256fac3254b4939f48f90095
> Cr-Commit-Position: refs/heads/master@{#29057}
TBR=adamk@chromium.org ,arv@chromium.org,littledan@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=v8:4085
Review URL: https://codereview.chromium.org/1192433003
Cr-Commit-Position: refs/heads/master@{#29070}
2015-06-17 09:05:51 +00:00
littledan
a105901582
Add %TypedArray% to proto chain
...
According to the ES6 spec, the main methods and getters shouldn't
be properties of the individual TypedArray objects and prototypes
but instead on %TypedArray% and %TypedArray%.prototype. This
difference is observable through introspection. This patch moves
some methods and getters to the proper place, with the exception
of %TypedArray%.prototype.subarray and harmony methods. These will
be moved in follow-on patches.
BUG=v8:4085
LOG=Y
R=adamk
Review URL: https://codereview.chromium.org/1186733002
Cr-Commit-Position: refs/heads/master@{#29057}
2015-06-16 23:39:10 +00:00
bmeurer
21a1975542
[turbofan] Work around negative parameter count.
...
BUG=chromium:500824
LOG=n
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/1186333002
Cr-Commit-Position: refs/heads/master@{#29043}
2015-06-16 09:44:28 +00:00
bmeurer
45439b92e7
[crankshaft] Fix wrong bailout points in for-in loop body.
...
R=jochen@chromium.org
BUG=chromium:500435
LOG=y
Review URL: https://codereview.chromium.org/1183683004
Cr-Commit-Position: refs/heads/master@{#29040}
2015-06-16 08:08:42 +00:00
yangguo
75350f1ef0
Debugger: require debugger to be active when dealing with breaks.
...
This invariant will save us some head ache.
The changes to test-debug/DebugStub is due to the fact that it abuses
the ability to set break points in code that has no debug break slots.
This is now no longer possible.
R=ulan@chromium.org
BUG=v8:4132
LOG=N
Review URL: https://codereview.chromium.org/1181013007
Cr-Commit-Position: refs/heads/master@{#29038}
2015-06-16 07:11:21 +00:00
dusan.milosavljevic
b7d8cb4a51
MIPS: Remove unsafe EmitLoadRegister usage in AddI/SubI for constant right operand.
...
TEST=test/mjsunit/regress/regress-500176
BUG=chromium:500176
LOG=N
Review URL: https://codereview.chromium.org/1185143002
Cr-Commit-Position: refs/heads/master@{#29030}
2015-06-15 17:58:43 +00:00
machenbach
06ac599d1e
Revert of Fix clobbered register when setting this_function variable. (patchset #2 id:20001 of https://codereview.chromium.org/1185703002/ )
...
Reason for revert:
[Sheriff] Makes mjsunit/es6/block-const-assign flaky, e.g.:
http://build.chromium.org/p/client.v8/builders/V8%20Linux/builds/4082
Original issue's description:
> Fix clobbered register when setting this_function variable.
>
> R=arv@chromium.org
> TEST=mjsunit/regress/regress-crbug-498022
> BUG=chromium:498022
> LOG=N
>
> Committed: https://crrev.com/bf2bbc8ba508ccd21edf3c08d2e4192c4764ae91
> Cr-Commit-Position: refs/heads/master@{#29020}
TBR=arv@chromium.org ,rossberg@chromium.org,mstarzinger@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=chromium:498022
Review URL: https://codereview.chromium.org/1184093003
Cr-Commit-Position: refs/heads/master@{#29022}
2015-06-15 11:56:25 +00:00
mstarzinger
bf2bbc8ba5
Fix clobbered register when setting this_function variable.
...
R=arv@chromium.org
TEST=mjsunit/regress/regress-crbug-498022
BUG=chromium:498022
LOG=N
Review URL: https://codereview.chromium.org/1185703002
Cr-Commit-Position: refs/heads/master@{#29020}
2015-06-15 10:18:57 +00:00
bmeurer
d19410f8e7
[mjsunit] Remove unsupported flag --turbo-deoptimization from tests.
...
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/1183123002
Cr-Commit-Position: refs/heads/master@{#29018}
2015-06-15 09:43:11 +00:00
bmeurer
e30b351d7b
[mjsunit] Remove obsolete nosse2 tests.
...
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/1186713003
Cr-Commit-Position: refs/heads/master@{#29017}
2015-06-15 09:32:01 +00:00
ishell
4cc4bc591c
Map::TryUpdate() must be in sync with Map::Update().
...
This CL fixes elements kind transitions handling in Map::TryUpdate().
BUG=v8:4121
LOG=Y
Review URL: https://codereview.chromium.org/1181163002
Cr-Commit-Position: refs/heads/master@{#28999}
2015-06-12 12:36:40 +00:00
wingo
103fcfaa40
Add script context with context-allocated "const this"
...
This is a reapplication of https://codereview.chromium.org/1173333004 .
R=rossberg@chromium.org
LOG=N
BUG=498811
Review URL: https://codereview.chromium.org/1178903003
Cr-Commit-Position: refs/heads/master@{#28998}
2015-06-12 12:34:24 +00:00
arv
37e268732d
Bound functions should also have configurable length
...
BUG=v8:4116
LOG=N
R=adamk@chromium.org
Review URL: https://codereview.chromium.org/1180873002
Cr-Commit-Position: refs/heads/master@{#28961}
2015-06-11 20:07:15 +00:00
erikcorry
05507cc3ea
Reland II of 'Optimize trivial regexp disjunctions' CL 1176453002
...
This change rewrites regexps like (ab|ac|z|ad|ae|af) into (a[b-f]|z). We can only reorder disjunctions like this for case-dependent regexps. For case-independent regexps, the disjunctions should be pre-sorted for best results.
R=yangguo@chromium.org
BUG=chromium:482998
LOG=n
Review URL: https://codereview.chromium.org/1180433003
Cr-Commit-Position: refs/heads/master@{#28902}
2015-06-10 09:55:31 +00:00
binji
4d6c309777
Fix cluster-fuzz bug introduced in refs/heads/master@{#28796}.
...
Don't DCHECK when neutering that the buffer is not a SharedArrayBuffer;
instead, just return early.
BUG=chromium:498142,chromium:497295
R=jarin@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/1174753002
Cr-Commit-Position: refs/heads/master@{#28892}
2015-06-10 07:33:55 +00:00
mstarzinger
eb0593e137
[turbofan] Fix context chain extension for top-level code.
...
For top-level code the closure passed into context allocation methods
needs to be replaced with a sentinel to canonicalize is to the empty
function object.
R=bmeurer@chromium.org
TEST=mjsunit/regress/regress-4169
BUG=v8:4169
LOG=N
Review URL: https://codereview.chromium.org/1172013002
Cr-Commit-Position: refs/heads/master@{#28888}
2015-06-10 06:03:14 +00:00
erikcorry
b75bf6cd7e
Revert of Optimize trivial regexp disjunctions (patchset #10 id:180001 of https://codereview.chromium.org/1176453002/ )
...
Reason for revert:
ASAN failure
Original issue's description:
> Optimize trivial regexp disjunctions
>
> R=yangguo@chromium.org
> BUG=chromium:482998
> LOG=n
>
> Committed: https://crrev.com/5f1f7c15b3207f6c51d187692690aeb09d3e36b5
> Cr-Commit-Position: refs/heads/master@{#28871}
TBR=yangguo@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=chromium:482998
Review URL: https://codereview.chromium.org/1174603002
Cr-Commit-Position: refs/heads/master@{#28878}
2015-06-09 17:16:01 +00:00
mstarzinger
f45f24d259
[turbofan] Fix one mean typo in kResolvePossiblyDirectEval.
...
R=titzer@chromium.org
TEST=mjsunit/regress/regress-eval-context
Review URL: https://codereview.chromium.org/1169853006
Cr-Commit-Position: refs/heads/master@{#28877}
2015-06-09 17:14:52 +00:00
erikcorry
5f1f7c15b3
Optimize trivial regexp disjunctions
...
R=yangguo@chromium.org
BUG=chromium:482998
LOG=n
Review URL: https://codereview.chromium.org/1176453002
Cr-Commit-Position: refs/heads/master@{#28871}
2015-06-09 15:58:00 +00:00
mstarzinger
c14ba5ec48
Drop computed handler count and index from AST.
...
These values were computed by the parser and hence out of sync with any
visitor over the AST. Our AST visitor aborts visitation of statement
lists as soon as a jump statement has been reached. Now handler tables
are guaranteed to be dense and fully populated.
R=ishell@chromium.org
TEST=mjsunit/regress/regress-crbug-493290
BUG=chromium:493290
LOG=N
Review URL: https://codereview.chromium.org/1157213004
Cr-Commit-Position: refs/heads/master@{#28846}
2015-06-08 18:19:40 +00:00
yangguo
f2cce3c41f
Check for null and undefined when getting type name for stack trace.
...
R=svenpanne@chromium.org
BUG=v8:3718
LOG=N
Review URL: https://codereview.chromium.org/1164933005
Cr-Commit-Position: refs/heads/master@{#28840}
2015-06-08 13:02:27 +00:00
ishell
050e8880f5
A couple of other "stack overflow" vs. "has_pending_exception()" issues fixed.
...
BUG=chromium:471659, chromium:494158
LOG=N
Review URL: https://codereview.chromium.org/1151333005
Cr-Commit-Position: refs/heads/master@{#28816}
2015-06-05 15:52:20 +00:00
ishell
5606fefe12
Fixed noi18n build.
...
Review URL: https://codereview.chromium.org/1159553011
Cr-Commit-Position: refs/heads/master@{#28792}
2015-06-03 16:23:08 +00:00
ishell
405844b5f2
Fixed memory-leak in d8. It did not clean evaluation context used for executing shell commands.
...
BUG=chromium:493284
LOG=N
Review URL: https://codereview.chromium.org/1147343004
Cr-Commit-Position: refs/heads/master@{#28790}
2015-06-03 14:34:58 +00:00
ishell
65ada9fa0b
Mark proxy map as unstable during proxy fixing (freezing, sealing or preventing extensions).
...
BUG=chromium:493568
LOG=N
Review URL: https://codereview.chromium.org/1158023003
Cr-Commit-Position: refs/heads/master@{#28759}
2015-06-02 11:29:27 +00:00
verwaest
2fb894fa58
Use GetProperty for getting elements.
...
This also fixes issues with
- kMaxUint32 being a valid length but not index cornercases
- exotic integer objects masking "exotic indexes" even though its in the prototype chain
- concating of holey sloppy arguments
BUG=v8:4137
LOG=n
Review URL: https://codereview.chromium.org/1159433003
Cr-Commit-Position: refs/heads/master@{#28754}
2015-06-02 10:42:29 +00:00