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
mstarzinger
d207fcef66
Fix bogus insertion of filler in LO-space by String#replace.
...
R=hpayer@chromium.org
TEST=mjsunit/regress/regress-crbug-493779
BUG=chromium:493779
LOG=N
Review URL: https://codereview.chromium.org/1163793002
Cr-Commit-Position: refs/heads/master@{#28727}
2015-06-01 13:36:11 +00:00
yangguo
3f223ee69b
Debugger: PreservePositionScope should clear positions inside the scope.
...
The point of this change is so that when emitting code for a call in
FullCodegen::VisitCall, the statement position is not associated to
any code that loads the function, but to the actual CallIC.
R=mvstanton@chromium.org
BUG=chromium:481896
LOG=N
Review URL: https://codereview.chromium.org/1157543004
Cr-Commit-Position: refs/heads/master@{#28701}
2015-05-29 12:56:40 +00:00
ishell
c984efe6e3
Reland "Fixed a couple of failing DCHECK(has_pending_exception()). (patchset #1 id:1 of https://codereview.chromium.org/1151373002/ )"
...
BUG=chromium:491062
LOG=N
Review URL: https://codereview.chromium.org/1157273002
Cr-Commit-Position: refs/heads/master@{#28699}
2015-05-29 11:37:23 +00:00
yangguo
dc9f0d4642
Throw illegal exception when formatting with invalid template index.
...
R=arv@chromium.org
BUG=chromium:492526
LOG=N
Review URL: https://codereview.chromium.org/1146923004
Cr-Commit-Position: refs/heads/master@{#28671}
2015-05-28 07:05:12 +00:00
yangguo
36d8363c1c
Do not eagerly convert exception to string when creating a message object
...
R=mstarzinger@chromium.org
BUG=chromium:490680
LOG=Y
Review URL: https://codereview.chromium.org/1157563005
Cr-Commit-Position: refs/heads/master@{#28670}
2015-05-28 06:30:14 +00:00
yangguo
0837b43720
Correctly hook up materialized receiver into the evaluation context chain.
...
R=ulan@chromium.org
BUG=chromium:491943
LOG=Y
Review URL: https://codereview.chromium.org/1157993002
Cr-Commit-Position: refs/heads/master@{#28628}
2015-05-26 13:06:41 +00:00
ishell
d2334e901c
Revert of Fixed a couple of failing DCHECK(has_pending_exception()). (patchset #1 id:1 of https://codereview.chromium.org/1151373002/ )
...
Reason for revert:
Broke V8 Linux - nosnap.
Original issue's description:
> Fixed a couple of failing DCHECK(has_pending_exception()).
>
> BUG=chromium:491062
> LOG=N
>
> Committed: https://crrev.com/62b56507cce3c57a2e1aebce6d34f29b3b64e762
> Cr-Commit-Position: refs/heads/master@{#28617}
TBR=yangguo@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=chromium:491062
Review URL: https://codereview.chromium.org/1148423004
Cr-Commit-Position: refs/heads/master@{#28619}
2015-05-26 10:28:35 +00:00
ishell
62b56507cc
Fixed a couple of failing DCHECK(has_pending_exception()).
...
BUG=chromium:491062
LOG=N
Review URL: https://codereview.chromium.org/1151373002
Cr-Commit-Position: refs/heads/master@{#28617}
2015-05-26 10:06:54 +00:00
jarin
a893a5e59a
Exclude non-optimizable functions from OptimizeFunctionOnNextCall.
...
BUG=chromium:491481
R=mstarzinger@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/1143223004
Cr-Commit-Position: refs/heads/master@{#28614}
2015-05-26 08:47:04 +00:00
yangguo
e56585077b
Use shared container to manage imports/exports.
...
Also changed string.js and math.js to adapt this change.
R=jkummerow@chromium.org
Committed: https://crrev.com/e25058b0b7b9831162579564fc8935d568c1ecdd
Cr-Commit-Position: refs/heads/master@{#28521}
Review URL: https://codereview.chromium.org/1143993003
Cr-Commit-Position: refs/heads/master@{#28533}
2015-05-21 06:15:19 +00:00
jkummerow
1ec5561685
Revert of Use shared container to manage imports/exports. (patchset #2 id:20001 of https://codereview.chromium.org/1143993003/ )
...
Reason for revert:
Breaks nosnap bots
Original issue's description:
> Use shared container to manage imports/exports.
>
> Also changed string.js and math.js to adapt this change.
>
> R=jkummerow@chromium.org
>
> Committed: https://crrev.com/e25058b0b7b9831162579564fc8935d568c1ecdd
> Cr-Commit-Position: refs/heads/master@{#28521}
TBR=yangguo@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/1144163002
Cr-Commit-Position: refs/heads/master@{#28523}
2015-05-20 15:59:37 +00:00
yangguo
e25058b0b7
Use shared container to manage imports/exports.
...
Also changed string.js and math.js to adapt this change.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/1143993003
Cr-Commit-Position: refs/heads/master@{#28521}
2015-05-20 14:58:43 +00:00
ishell
1c673a56c1
Fixed DCHECK in StoreIC::CompileHandler().
...
BUG=chromium:489597
LOG=N
Review URL: https://codereview.chromium.org/1123153005
Cr-Commit-Position: refs/heads/master@{#28518}
2015-05-20 13:36:27 +00:00
mstarzinger
7bd2d3e32e
[turbofan] Fix over-restictive assertion in code generator.
...
R=titzer@chromium.org
TEST=mjsunit/regress/regress-crbug-489293
BUG=chromium:489293
LOG=n
Review URL: https://codereview.chromium.org/1142873005
Cr-Commit-Position: refs/heads/master@{#28486}
2015-05-19 16:14:28 +00:00
ishell
18b60594c4
Another regression test for resolving references to "this" in strict mode.
...
BUG=chromium:487105
LOG=N
Review URL: https://codereview.chromium.org/1136123010
Cr-Commit-Position: refs/heads/master@{#28480}
2015-05-19 12:51:42 +00:00
jkummerow
f8175201da
Fix harmless HGraph verification failure after hoisting inlined bounds checks
...
BUG=chromium:487608
LOG=y
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/1133343003
Cr-Commit-Position: refs/heads/master@{#28463}
2015-05-19 07:32:48 +00:00
yangguo
19312c1631
Do not clear stepping after DebugEvaluate.
...
Clearing stepping was originally introduced in http://codereview.chromium.org/7889039
But DebugEvaluate now also uses a DisableBreak scope, which makes sure we don't step
inside the evaluated code.
R=yurys@chromium.org
BUG=chromium:467180
LOG=N
Review URL: https://codereview.chromium.org/1129363003
Cr-Commit-Position: refs/heads/master@{#28461}
2015-05-19 04:56:08 +00:00
verwaest
4268141ca6
Reland "Mark internal AccessorInfo properties as 'special data properties'"
...
This reverts commit ac5336baca
.
BUG=
Review URL: https://codereview.chromium.org/1138483005
Cr-Commit-Position: refs/heads/master@{#28442}
2015-05-18 12:36:40 +00:00
machenbach
f453416b7f
Revert of Debugger: preserve stepping state after evaluating breakpoint condition. (patchset #1 id:1 of https://codereview.chromium.org/1132643004/ )
...
Reason for revert:
[Sheriff] This breaks TSAN (makes some tests marked as flaky permanently fail):
http://build.chromium.org/p/client.v8/builders/V8%20Linux64%20TSAN/builds/3882
Original issue's description:
> Debugger: preserve stepping state after evaluating breakpoint condition.
>
> R=ulan@chromium.org , yurys@chromium.org
> BUG=chromium:467180
> LOG=N
TBR=ulan@chromium.org ,yurys@chromium.org,yangguo@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=chromium:467180
Review URL: https://codereview.chromium.org/1130123007
Cr-Commit-Position: refs/heads/master@{#28436}
2015-05-17 06:21:39 +00:00
yangguo
ee6666a55a
Debugger: preserve stepping state after evaluating breakpoint condition.
...
R=ulan@chromium.org , yurys@chromium.org
BUG=chromium:467180
LOG=N
Review URL: https://codereview.chromium.org/1132643004
Cr-Commit-Position: refs/heads/master@{#28432}
2015-05-15 22:50:55 +00:00
yangguo
d8e9f3a484
Add regression test for resolving "this" in debug evaluate.
...
R=hablich@chromium.org
BUG=chromium:487289
LOG=N
Review URL: https://codereview.chromium.org/1137293002
Cr-Commit-Position: refs/heads/master@{#28424}
2015-05-15 13:57:31 +00:00
mvstanton
de3a1ca02e
Bug: Runtime_GrowArrayElements provoked unnecessary lazy deopt.
...
Unnecessary, and unhandled as well.
BUG=488398
R=jarin@chromium.org
LOG=N
Review URL: https://codereview.chromium.org/1141163004
Cr-Commit-Position: refs/heads/master@{#28421}
2015-05-15 13:05:00 +00:00
ishell
3c1487db60
Map::ReconfigureProperty() should mark map as unstable when there is an element kind transition somewhere in the middle of the transition tree.
...
BUG=chromium:485548
LOG=N
Review URL: https://codereview.chromium.org/1128043005
Cr-Commit-Position: refs/heads/master@{#28418}
2015-05-15 10:39:51 +00:00
wingo
e73594c7fb
Use ExpressionClassifier to identify valid arrow function formals
...
R=dslomov@chromium.org
LOG=N
BUG=
Review URL: https://codereview.chromium.org/1138153003
Cr-Commit-Position: refs/heads/master@{#28391}
2015-05-13 11:45:02 +00:00
yangguo
46f992ddd0
Reland "Use function wrapper argument to expose internal arrays to native scripts."
...
Review URL: https://codereview.chromium.org/1138173002
Cr-Commit-Position: refs/heads/master@{#28367}
2015-05-12 14:00:45 +00:00
yurys
cf07add227
Don't create debug context if debug listener is not set
...
If there had been no debug listener v8::Debug::GetDebugContext would have created new context and wouln't have kept reference to it. This way we may well end up with several debug contexts and disabled debugger.
As a side effect this change allows to efficiently distinguish debug context from blink contexts by simply comparing handles.
BUG=chromium:482290
LOG=Y
Review URL: https://codereview.chromium.org/1136733002
Cr-Commit-Position: refs/heads/master@{#28356}
2015-05-12 07:33:18 +00:00
yangguo
c39a0a75ad
Revert of Use function wrapper argument to expose internal arrays to native scripts. (patchset #2 id:20001 of https://codereview.chromium.org/1127983003/ )
...
Reason for revert:
custom snapshot builder failing.
Original issue's description:
> Use function wrapper argument to expose internal arrays to native scripts.
>
> R=jkummerow@chromium.org
>
> Committed: https://crrev.com/a9b5a1795449d94387218d25baed2c2b3c4fbadc
> Cr-Commit-Position: refs/heads/master@{#28354}
TBR=jkummerow@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/1123353008
Cr-Commit-Position: refs/heads/master@{#28355}
2015-05-12 07:26:01 +00:00
yangguo
a9b5a17954
Use function wrapper argument to expose internal arrays to native scripts.
...
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/1127983003
Cr-Commit-Position: refs/heads/master@{#28354}
2015-05-12 06:14:18 +00:00
jkummerow
f10b992dab
Let Runtime_GrowArrayElements accept non-Smi numbers as |key|.
...
BUG=chromium:485410
LOG=y
R=mvstanton@chromium.org ,danno@chromium.org
Review URL: https://codereview.chromium.org/1132113004
Cr-Commit-Position: refs/heads/master@{#28327}
2015-05-09 10:30:49 +00:00
titzer
318c1f770c
[turbofan] Fix handling of OsrLoopEntry in ControlReducer::ConnectNTL()
...
R=jarin@chromium.org
LOG=Y
BUG=chromium:485908
Review URL: https://codereview.chromium.org/1138463004
Cr-Commit-Position: refs/heads/master@{#28323}
2015-05-08 15:44:27 +00:00
hpayer
c80d730c71
Initialize sub-array literals first before pointing to it.
...
BUG=484544
LOG=n
Review URL: https://codereview.chromium.org/1132763002
Cr-Commit-Position: refs/heads/master@{#28313}
2015-05-08 09:24:31 +00:00
verwaest
f21ea065b3
Fix smi scanning
...
BUG=chromium:483176
LOG=n
Review URL: https://codereview.chromium.org/1114073003
Cr-Commit-Position: refs/heads/master@{#28202}
2015-05-04 15:02:30 +00:00
yangguo
f42544b768
Set inferred name of bound function to empty string.
...
Otherwise it's whatever the js minifier assigns it to.
R=jkummerow@chromium.org
BUG=chromium:484077
LOG=N
Review URL: https://codereview.chromium.org/1122733002
Cr-Commit-Position: refs/heads/master@{#28190}
2015-05-04 09:55:43 +00:00
yangguo
7681432dbf
JSON serializer should fail gracefully for special value wrappers.
...
R=mstarzinger@chromium.org
BUG=chromium:471702
LOG=N
Review URL: https://codereview.chromium.org/1120573002
Cr-Commit-Position: refs/heads/master@{#28154}
2015-04-30 10:02:21 +00:00
mstarzinger
6b60f19168
[turbofan] Fix frame state for class literal definition.
...
This introduces a bailout point for class literals right after the
%DefineClass function has been called. Otherwise the FrameState after
class literal evaluation might contain the literal itself.
R=jarin@chromium.org
TEST=mjsunit/regress/regress-crbug-480819
BUG=chromium:480819
LOG=N
Review URL: https://codereview.chromium.org/1104673004
Cr-Commit-Position: refs/heads/master@{#28043}
2015-04-24 11:12:57 +00:00
bmeurer
4f9bc2d1c3
[turbofan] Ignore dead cached nodes in the JSGraph.
...
BUG=chromium:480807
LOG=n
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/1101273002
Cr-Commit-Position: refs/heads/master@{#28041}
2015-04-24 10:51:32 +00:00
yangguo
8cf289ca4f
Throw when attaching a stack trace to an object fails.
...
R=jarin@chromium.org
BUG=chromium:478011
LOG=N
Review URL: https://codereview.chromium.org/1077153003
Cr-Commit-Position: refs/heads/master@{#27941}
2015-04-20 14:40:45 +00:00