yangguo@chromium.org
326bc2a533
Add mechanism to postpone interrupts selectively.
...
BUG=v8:3408
LOG=N
R=yurys@chromium.org
Review URL: https://codereview.chromium.org/359723005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22073 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-30 06:27:20 +00:00
danno@chromium.org
9176485c8b
Support non-internalized string key lookups in Hydrogen KeyedLoadIC
...
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/356213003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22070 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-28 00:33:04 +00:00
verwaest@chromium.org
8945c69855
Don't leak the global object in the Function constructor.
...
BUG=
R=dcarney@chromium.org
Review URL: https://codereview.chromium.org/359713005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22065 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-27 13:50:37 +00:00
verwaest@chromium.org
63431b23d1
Split SetProperty(...attributes, strictmode) into DefineProperty(...attributes) and SetProperty(...strictmode)
...
BUG=
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/351853005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22064 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-27 13:48:37 +00:00
yangguo@chromium.org
0133d96be3
Remove script collected debug event.
...
R=yurys@chromium.org
Review URL: https://codereview.chromium.org/358873005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22063 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-27 12:10:43 +00:00
mstarzinger@chromium.org
7a4054b7d7
Allow inlining of functions containing %_Arguments.
...
R=svenpanne@chromium.org
TEST=mjsunit/compiler/inline-arguments
Review URL: https://codereview.chromium.org/356773002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22060 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-27 11:04:35 +00:00
svenpanne@chromium.org
23f747b953
Unbreak Win64 build (hopefully).
...
cpplint, our fragile overloading of CheckEqualsHelper and Win64 don't
really play together very well...
TBR=marja@chromium.org
Review URL: https://codereview.chromium.org/354143003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22056 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-27 10:01:44 +00:00
svenpanne@chromium.org
e25f833496
Added slim versions of output streams.
...
R=bmeurer@chromium.org , mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/352823003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22049 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-27 08:42:17 +00:00
yurys@chromium.org
0339d069d9
Add OnCompileError handler and v8::CompileError debug event.
...
This event is generated when the parser can not generate code.
R=vsevik@chromium.org , yangguo@chromium.org , yurys@chromium.org
Review URL: https://codereview.chromium.org/264333007
Patch from Alexey Kozyatinskiy <kozyatinskiy@google.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22043 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-26 16:03:52 +00:00
rossberg@chromium.org
cb2419c615
Infer whether a variable is assigned in inner functions
...
R=titzer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/345573002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22039 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-26 11:59:42 +00:00
yangguo@chromium.org
e26102ac24
Suppress GC stress failure for a test that asserts code being optimized.
...
The reason is that GC stress causes additional deopts that the test
originally did not foresee.
R=marja@chromium.org
Review URL: https://codereview.chromium.org/355973003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22034 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-26 09:49:17 +00:00
yangguo@chromium.org
a2d15ce518
Compile optimized code with active debugger but no break points.
...
R=ulan@chromium.org
BUG=386492
LOG=Y
Review URL: https://codereview.chromium.org/356713004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22029 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-26 06:32:51 +00:00
danno@chromium.org
8313c523b3
Optimize Map/Set.prototype.forEach
...
Instead of using an iterator result object and an entries array
(for Map) we introduce a new runtime function that uses an array
as an out param.
On the Map ForEach perf test this leads to a 2.5x performance
improvement. On the overall Map and Set tests this leads to a 18%
and 13% improvement respectively.
BUG=None
LOG=Y
R=danno@chromium.org
Review URL: https://codereview.chromium.org/355663002
Patch from Erik Arvidsson <arv@chromium.org>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22027 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-26 00:40:45 +00:00
danno@chromium.org
eaca750b29
Remove distinction between hidden and normal runtime functions
...
R=jkummerow@chromium.org , mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/346413004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22018 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-25 15:26:10 +00:00
yangguo@chromium.org
7e9fc63d66
Reorder full code for while loops to better reflect statement positions.
...
R=jkummerow@chromium.org
BUG=v8:2047
LOG=N
Review URL: https://codereview.chromium.org/353823002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22013 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-25 12:42:28 +00:00
yangguo@chromium.org
6f2368627c
Blacklist failing test from GC stress runs.
...
The test expects a function not to deopt. However GC stress causes
the code to be marked for deopt for a reason we are not testing against.
R=marja@chromium.org
Review URL: https://codereview.chromium.org/354853002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22010 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-25 12:18:19 +00:00
wingo@igalia.com
3454a45f5d
Test that trailing commas in object literals are allowed
...
ES6 will allow trailing commas in object literals. It turns out that V8
already allowed it, too, as does JSC and SpiderMonkey.
R=marja@chromium.org
BUG=
Review URL: https://codereview.chromium.org/350353002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22005 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-25 10:13:10 +00:00
yangguo@chromium.org
3247a71c78
Do not unnecessarily expose execution state in debug event data.
...
When we fire a debug event, we create duplicate execution state objects,
one as argument for the debug event listener, one as property on the
debug event data object. The latter is never used by chrome.
R=yurys@chromium.org
Review URL: https://codereview.chromium.org/355793002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22001 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-25 09:13:09 +00:00
yangguo@chromium.org
50cc3a5ba8
Suppress ASAN for non-compatible test case.
...
This test calls quit() to exit d8 without proper tear down.
R=machenbach@chromium.org
Review URL: https://codereview.chromium.org/356623003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22000 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-25 09:05:28 +00:00
wingo@igalia.com
bf8e802f1a
Add @@iterator, .entries(), .values(), .keys() support to typed arrays
...
R=arv@chromium.org , rossberg@chromium.org
BUG=
Review URL: https://codereview.chromium.org/336403002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21999 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-25 08:46:53 +00:00
yangguo@chromium.org
4fa6a27ae2
Fix mjsunit's assertOptimized and assertUnoptimized.
...
This was broken some time ago by a refactor.
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/349423003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21995 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-25 08:01:13 +00:00
wingo@igalia.com
699bc8f73d
Add @@iterator support for strings
...
R=rossberg@chromium.org
BUG=
Review URL: https://codereview.chromium.org/335423002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21994 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-25 07:43:14 +00:00
wingo@igalia.com
f6dfa63c9d
Add @@iterator to Array.prototype
...
R=rossberg@chromium.org
BUG=
Review URL: https://codereview.chromium.org/338323003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21993 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-25 07:32:57 +00:00
alph@chromium.org
65e585fa38
CPU profiler: increase the max number of captured frames.
...
LOG=N
R=jkummerow@chromium.org , loislo@chromium.org , yurys@chromium.org
Review URL: https://codereview.chromium.org/357443003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21986 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-24 16:00:51 +00:00
marja@chromium.org
62ffc7de20
New try: Parser: Delay internalizing strings and values
...
This is a reincarnation of r21841.
The previous try was https://codereview.chromium.org/314603004/ but it regressed
JSBench and morejs.
BUG=
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/335293004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21972 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-24 14:03:24 +00:00
yangguo@chromium.org
58bf19e9d5
Remove bogus assertions in HCompareObjectEqAndBranch.
...
R=jkummerow@chromium.org , danno@chromium.org
BUG=387636
LOG=Y
Review URL: https://codereview.chromium.org/331863015
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21959 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-24 09:33:05 +00:00
yangguo@chromium.org
438f49a322
Do not eagerly update allow_osr_at_loop_nesting_level.
...
Having debug break points prevents OSR. That causes
allow_osr_at_loop_nesting_level and the actually patched state
to go out of sync.
R=jkummerow@chromium.org
BUG=387599
LOG=Y
Review URL: https://codereview.chromium.org/346223007
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21958 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-24 09:31:30 +00:00
haitao.feng@intel.com
5970d4fa10
Add X32 port into V8
...
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/18014003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21955 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-24 05:27:44 +00:00
adamk@chromium.org
257adcf0ed
Map/Set: Implement constructor parameter handling
...
When an iterable object is passed in as the argument to the Map and Set
constructor the elements of the iterable object are used to populate the
Map and Set.
http://people.mozilla.org/~jorendorff/es6-draft.html#sec-map-iterable
http://people.mozilla.org/~jorendorff/es6-draft.html#sec-set-iterable
BUG=v8:3398
LOG=Y
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/345613003
Patch from Erik Arvidsson <arv@chromium.org>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21950 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-23 18:05:57 +00:00
vogelheim@chromium.org
7b7bb25a24
Support external startup data in V8.
...
[Re-retry of r21696 and r21739]
If the embedder chooses, the 'natives' (library sources) and the
precompiled startup blob can be written to files during the build
process and handed over to V8 at startup. The main purpose would be
to reduce the size of the compiled binary for space constrained
platforms.
The build-time option is off by default. Nothing should change if
it's not enabled.
BUG=
R=jochen@chromium.org
Review URL: https://codereview.chromium.org/334913004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21941 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-23 13:52:17 +00:00
alph@chromium.org
f61854fe0a
Support LiveEdit on Arm64
...
BUG=368580
LOG=Y
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/339663007
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21937 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-23 13:20:26 +00:00
yangguo@chromium.org
2411bc9447
Harden %FunctionBindArguments wrt optimized code cache.
...
R=jkummerow@chromium.org
BUG=387627
LOG=N
Review URL: https://codereview.chromium.org/345463005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21936 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-23 13:17:42 +00:00
yangguo@chromium.org
9e3ba659d9
Run JS micro tasks in the appropriate context.
...
R=jochen@chromium.org
BUG=385349
LOG=Y
Review URL: https://codereview.chromium.org/332923003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21933 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-23 11:47:20 +00:00
verwaest@chromium.org
bd5f13ebc3
Remove specialized access checks and overwrites altogether. They are already handled by GetOwnPropertyAttributes (and GetPropertyAttributesWithFailedAccessChecks)
...
BUG=
R=dcarney@chromium.org
Review URL: https://codereview.chromium.org/331693006
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21922 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-23 09:11:45 +00:00
mvstanton@chromium.org
c0179a50da
Re-land "Clusterfuzz identified overflow check needed in dehoisting."
...
BUG=380092
LOG=N
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/335063005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21920 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-23 09:09:05 +00:00
verwaest@chromium.org
d06afb3ce0
Remove AccessControl from AccessorPairs, as it's an invalid usecase of AllCan*
...
BUG=
R=dcarney@chromium.org
Review URL: https://codereview.chromium.org/332863003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21918 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-23 09:02:16 +00:00
verwaest@chromium.org
d611bd896b
Simplify access checks performed by GetOwnProperty
...
BUG=
R=dcarney@chromium.org
Review URL: https://codereview.chromium.org/339553002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21917 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-23 08:53:27 +00:00
hpayer@chromium.org
100b9d836f
An object should only be promoted to the old generation if it survived a scavenge operation.
...
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/345523002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21915 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-23 08:50:54 +00:00
yangguo@chromium.org
ba2d7da5a9
Introduce intrinsic to expose debug state to generated code.
...
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/332673002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21908 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-23 07:10:25 +00:00
jarin@chromium.org
e56faa9909
Add missing map check to optimized f.apply(...)
...
This is a cutdown version of https://codereview.chromium.org/346473002/ , which aimed to fix f.call and f.apply. Optimized f.call was removed by r21887, this is what was left.
BUG=386034
LOG=N
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/348623002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21907 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-23 05:50:06 +00:00
palfia@homejinni.com
57d0b53eed
MIPS: Support LiveEdit.
...
Port r21895 (210f7aa)
BUG=368580
LOG=Y
R=jkummerow@chromium.org , palfia@homejinni.com
Review URL: https://codereview.chromium.org/349703002
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21905 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-20 20:52:57 +00:00
jkummerow@chromium.org
1d35d6d871
Array.concat: properly go to dictionary mode when required
...
BUG=chromium:387031
LOG=y
R=danno@chromium.org
Review URL: https://codereview.chromium.org/342333002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21903 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-20 15:40:21 +00:00
wingo@igalia.com
b7d18d0eff
Fix stack capture on overflow for Error.stackTraceLimit == Infinity
...
Bug found by Andrew Paprocki <andrew@ishiboo.com>.
R=mstarzinger@chromium.org , yangguo@chromium.org
Review URL: https://codereview.chromium.org/345533002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21902 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-20 14:27:55 +00:00
marja@chromium.org
0f8251e1b8
test-parsing: Add functionality to specify "always true flags".
...
Many parsing tests need to pin a certain flag, and apart from the pinned flag,
we want to keep the "test with all combinations" behavior for the non-pinned
flags.
R=ulan@chromium.org
BUG=
Review URL: https://codereview.chromium.org/349603004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21900 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-20 12:28:13 +00:00
mstarzinger@chromium.org
5eb7ce9040
Remove obsolete --harmony-promises flag from tests.
...
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/345053002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21898 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-20 10:47:50 +00:00
alph@chromium.org
969759fd3f
Support LiveEdit on ARM
...
BUG=368580
LOG=Y
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/344573004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21895 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-20 09:41:14 +00:00
mstarzinger@chromium.org
fec6e62dfb
Check alpha-sorting of includes during presubmit.
...
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/333013002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21894 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-20 08:40:11 +00:00
yurys@chromium.org
a862f7819b
Added Message::GetScripOrigin.
...
Replaced Message::GetResourceName with GetScriptOrigin().ResourceName().
Now, GetScriptOrigin().ResourceName() function returns the resource name or sourceURL (from //# sourceURL=) for the script from where the function causing the error originates.
Method GetScriptResourceName() deprecated. Use GetScriptOrigin()->ResourceName() instead.
Function used in Blink: https://codereview.chromium.org/260513004/
R=yangguo@chromium.org , yurys@chromium.org
Review URL: https://codereview.chromium.org/265593002
Patch from Alexey Kozyatinskiy <kozyatinskiy@google.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21893 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-20 07:44:05 +00:00
dcarney@chromium.org
bd3f8a524e
Revert "Optimize Function.prototype.call"
...
This reverts commit r21840.
R=danno@chromium.org
LOG=y
BUG=chromium:385565
Review URL: https://codereview.chromium.org/347573002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21887 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-18 14:04:41 +00:00
marja@chromium.org
9ad39a8043
Revert "Parser: Delay internalizing strings and values." (r21841)
...
Plus the fixes on top.
Reason: regresses benchmarks (JSBench) and perf (morejs).
TBR=rossberg@chromium.org
BUG=385404
LOG=N
Review URL: https://codereview.chromium.org/345513003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21882 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-18 07:30:56 +00:00