- 12 Oct, 2018 1 commit
-
-
Sathya Gunasekaran authored
When trying to print the scope information for the class fields initializer function, the debugger asks the parser to parse the class literal as a function literal (to get the scope info) ... which doesn't quite work. Instead of adding support for parsing the class literal, we just short cicruit this parsing step by just returning an empty context. This works fine because initializer function doesn't have any variables in it's local scope. The one caveat is that the objects in the scope above this function (like the global) are now missing. This trade off is possibly fine for now, as adding parsing support for class literal to only produce would be a lot of code for not enough use. As a follow up to this change, the devtools UI needs to be updated to handle this empty context cleanly. Currently, it doesn't show the `this` object if no context exists even if the `this` object is correctly passed to the UI from the backend. Bug: v8:5367, v8:8122 Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;master.tryserver.blink:linux_trusty_blink_rel Change-Id: I52965f26241bbf6abdc988783aa0fc44bb36901f Reviewed-on: https://chromium-review.googlesource.com/c/1274268 Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Reviewed-by:
Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Cr-Commit-Position: refs/heads/master@{#56611}
-
- 10 Oct, 2018 2 commits
-
-
Clemens Hammacher authored
Before adding another test for removing breakpoint, this CL modernizes the existing test for setting breakpoints. R=kozy@chromium.org CC=ahaas@chromium.org Bug: chromium:837572 Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;master.tryserver.blink:linux_trusty_blink_rel Change-Id: I642f9673f327f4ec569a4f67a61b5e264cf25b8f Reviewed-on: https://chromium-review.googlesource.com/c/1264636Reviewed-by:
Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Reviewed-by:
Andreas Haas <ahaas@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#56514}
-
Benedikt Meurer authored
This change introduces new intrinsics used to desugar async functions in the Parser and the BytecodeGenerator, namely we introduce a new %_AsyncFunctionEnter intrinsic that constructs the generator object for the async function (and in the future will also create the outer promise for the async function). This generator object is internal and never escapes to user code, plus since async functions don't have a "prototype" property, we can just a single map here instead of tracking the prototype/initial_map on every async function. This saves one word per async function plus one initial_map per async function that was invoked at least once. We also introduce two new intrinsics %_AsyncFunctionReject, which rejects the outer promise with the caught exception, and another %_AsyncFunctionResolve, which resolves the outer promise with the right hand side of the `return` statement. These functions also perform the DevTools part of the job (aka popping from the promise stack and sending the debug event). This allows us to get rid of the implicit try-finally from async functions completely; because the finally block only called to the %AsyncFunctionPromiseRelease builtin, which was used to inform DevTools. In essence we now turn an async function like ```js async function f(x) { return await bar(x); } ``` into something like this (in Parser and BytecodeGenerator respectively): ``` function f(x) { .generator_object = %_AsyncFunctionEnter(.closure, this); .promise = %AsyncFunctionCreatePromise(); try { .tmp = await bar(x); return %_AsyncFunctionResolve(.promise, .tmp); } catch (e) { return %_AsyncFunctionReject(.promise, e); } } ``` Overall the bytecode for async functions gets significantly shorter already (and will get even shorter once we put the outer promise into the async function generator object). For example the bytecode for a simple async function ```js async function f(x) { return await x; } ``` goes from 175 bytes to 110 bytes (a ~38% reduction in size), which is in particular due to the simplification around the try-finally removal. Overall this seems to improve the doxbee-async-es2017-native test by around 2-3%. On the test case mentioned in v8:8276 we go from 1124ms to 441ms, which corresponds to a 60% reduction in total execution time! Tbr: marja@chromium.org Bug: v8:7253, v8:7522, v8:8276 Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;luci.chromium.try:linux_chromium_rel_ng;master.tryserver.blink:linux_trusty_blink_rel Change-Id: Id29dc92de7490b387ff697860c900cee44c9a7a4 Reviewed-on: https://chromium-review.googlesource.com/c/1269041 Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Sathya Gunasekaran <gsathya@chromium.org> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Reviewed-by:
Maya Lekova <mslekova@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#56502}
-
- 01 Oct, 2018 2 commits
-
-
Aseem Garg authored
For wasm modules with non-absolute sourceMappingURL, the source needs to be empty so that devtools can look for the source map at the origin of the module. R=clemensh@chromium.org,adamk@chromium.org Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;master.tryserver.blink:linux_trusty_blink_rel Change-Id: I74c40addc1a7cb1be0442e9f2b272590c0b81f60 Reviewed-on: https://chromium-review.googlesource.com/1250402 Commit-Queue: Aseem Garg <aseemgarg@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#56326}
-
Mathias Bynens authored
It was shipped in Chrome 67. Bug: v8:6791, v8:8238 Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;luci.chromium.try:linux_chromium_rel_ng;luci.v8.try:v8_linux_noi18n_rel_ng;master.tryserver.blink:linux_trusty_blink_rel Change-Id: I94d8f0aa18570452403a35dea270b18f155c970a Reviewed-on: https://chromium-review.googlesource.com/1253604Reviewed-by:
Georg Neis <neis@chromium.org> Commit-Queue: Mathias Bynens <mathias@chromium.org> Cr-Commit-Position: refs/heads/master@{#56310}
-
- 28 Sep, 2018 1 commit
-
-
Alexey Kozyatinskiy authored
Sometimes we do not have promise on stack, e.g. Promise.reject call, but we need to attribute this pause with promise rejection. TBR=yangguo@chromium.org Bug: chromium:755728 Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;master.tryserver.blink:linux_trusty_blink_rel Change-Id: I03ca1e1cd6c21677f0a12ece626e2c8a1938437b Reviewed-on: https://chromium-review.googlesource.com/1249942Reviewed-by:
Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Cr-Commit-Position: refs/heads/master@{#56293}
-
- 25 Sep, 2018 1 commit
-
-
Alexey Kozyatinskiy authored
.. otherwise V8 crashes on attempt to use imported function as part of expression passed to Debugger.evaluateOnCallFrame. R=neis@chromium.org Bug: chromium:878029 Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;master.tryserver.blink:linux_trusty_blink_rel Change-Id: I61b837f5c7b84a80d91a9cdaaac0422a24aa1620 Reviewed-on: https://chromium-review.googlesource.com/1241475Reviewed-by:
Georg Neis <neis@chromium.org> Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Cr-Commit-Position: refs/heads/master@{#56216}
-
- 21 Sep, 2018 1 commit
-
-
Alexey Kozyatinskiy authored
After total liveedit rewrite, liveedit works with module, we can remove the guard. R=dgozman@chromium.org Bug: chromium:806261 Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;master.tryserver.blink:linux_trusty_blink_rel Change-Id: Ide15eca2ab6d8ba7df4e7fae541c4a65794eeea8 Reviewed-on: https://chromium-review.googlesource.com/1238914Reviewed-by:
Dmitry Gozman <dgozman@chromium.org> Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Cr-Commit-Position: refs/heads/master@{#56151}
-
- 20 Sep, 2018 1 commit
-
-
Alexey Kozyatinskiy authored
This property might be useful for fast '===' check. R=dgozman@chromium.org,yangguo@chromium.org Bug: none Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;luci.chromium.try:linux_chromium_rel_ng;master.tryserver.blink:linux_trusty_blink_rel Change-Id: Iabc3555ce1ec2c14cf0ccd40b7d964ae144e7352 Reviewed-on: https://chromium-review.googlesource.com/1226411Reviewed-by:
Dmitry Gozman <dgozman@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Cr-Commit-Position: refs/heads/master@{#56095}
-
- 17 Sep, 2018 1 commit
-
-
Sathya Gunasekaran authored
Add tests. Bug: v8:5367 Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;master.tryserver.blink:linux_trusty_blink_rel Change-Id: I2a4215a87ba1dae98c4b25547494165f534b4a66 Reviewed-on: https://chromium-review.googlesource.com/1218046 Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> Reviewed-by:
Adam Klein <adamk@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Reviewed-by:
Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Reviewed-by:
Mythri Alle <mythria@chromium.org> Cr-Commit-Position: refs/heads/master@{#55974}
-
- 13 Sep, 2018 1 commit
-
-
Aseem Garg authored
This CL enables source maps support for wasm. Devtools should be able to pick up source_mapping_url parsed here and load the corresponding source maps. R=kozyatinskiy@chromium.org,clemensh@chromium.org,titzer@chromium.org,yangguo@chromium.org BUG=v8:8081 Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;luci.chromium.try:linux_chromium_rel_ng;master.tryserver.blink:linux_trusty_blink_rel Change-Id: I1db0ff597d229e7db8d383fe9ee081c7fa4e7648 Reviewed-on: https://chromium-review.googlesource.com/1185973 Commit-Queue: Aseem Garg <aseemgarg@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Cr-Commit-Position: refs/heads/master@{#55878}
-
- 03 Sep, 2018 1 commit
-
-
Yang Guo authored
This reverts commit 1b3b808a. Reason for revert: crbug/879988 TBR=kozy@chromium.org Original change's description: > inspector: find magic comment using V8 scanner > > Inspector tries to provide sourceURL and sourceMappingURL for scripts > with parser errors. Without this CL we convert source of each script > to inspector string and search for magic comment there. Some web sites > use pattern when they get some data from network and constantly try to > parse this data as JSON, in this case we do a lot of useless work. > > So we can parse magic comments on V8 side only for compilation errors > (excluding parse JSON errors), to do it we can reuse scanner by running > it on each potential comment. > > R=alph@chromium.org,verwaest@chromium.org,yangguo@chromium.org > > Bug: chromium:873865,v8:7731 > Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;master.tryserver.blink:linux_trusty_blink_rel > Change-Id: I77c270fd0e95cd7b2c9ee4b7f72ef344bc1fa104 > Reviewed-on: https://chromium-review.googlesource.com/1182446 > Reviewed-by: Toon Verwaest <verwaest@chromium.org> > Reviewed-by: Alexei Filippov <alph@chromium.org> > Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> > Cr-Commit-Position: refs/heads/master@{#55280} TBR=alph@chromium.org,yangguo@chromium.org,kozyatinskiy@chromium.org,verwaest@chromium.org # Not skipping CQ checks because original CL landed > 1 day ago. Bug: chromium:873865, v8:7731, chromium:879988 Change-Id: Ia7ac766e19f9b58562d9430811f10b25c4556a46 Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;master.tryserver.blink:linux_trusty_blink_rel Reviewed-on: https://chromium-review.googlesource.com/1202583 Commit-Queue: Yang Guo <yangguo@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#55594}
-
- 31 Aug, 2018 2 commits
-
-
Alexey Kozyatinskiy authored
We can use Seek + Advance instead on source stream. TBR=verwaest@chromium.org Bug: chromium:879550 Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;master.tryserver.blink:linux_trusty_blink_rel Change-Id: Ic6ad12a86105ce68ea404e313b74d11417928cf0 Reviewed-on: https://chromium-review.googlesource.com/1196686 Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Reviewed-by:
Maya Lekova <mslekova@chromium.org> Reviewed-by:
Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Cr-Commit-Position: refs/heads/master@{#55552}
-
Alexey Kozyatinskiy authored
DebugEvaluate contains code since 2009 that bypasses JSGlobalProxy and returns JSGlobalObject when result of expression is global proxy. This behavior may be dangerous: - JSGlobalObject does not perform security checks, - some parts of V8 code do not ready for JSGlobalObject, e.g., SetHashAndUpdateProperties function will crash on DCHECK if we will try to store JSGlobalObject to map. At the same time it looks like there is no any valid use case for it. R=yangguo@chromium.org Bug: none Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;master.tryserver.blink:linux_trusty_blink_rel Change-Id: Ib0e35d5ae9ef47318c866e44c5c6856e34ed05a5 Reviewed-on: https://chromium-review.googlesource.com/1198764Reviewed-by:
Yang Guo <yangguo@chromium.org> Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Cr-Commit-Position: refs/heads/master@{#55550}
-
- 29 Aug, 2018 2 commits
-
-
Alexey Kozyatinskiy authored
This is a reland of 1b3b808a Original change's description: > inspector: find magic comment using V8 scanner > > Inspector tries to provide sourceURL and sourceMappingURL for scripts > with parser errors. Without this CL we convert source of each script > to inspector string and search for magic comment there. Some web sites > use pattern when they get some data from network and constantly try to > parse this data as JSON, in this case we do a lot of useless work. > > So we can parse magic comments on V8 side only for compilation errors > (excluding parse JSON errors), to do it we can reuse scanner by running > it on each potential comment. > > R=alph@chromium.org,verwaest@chromium.org,yangguo@chromium.org > > Bug: chromium:873865,v8:7731 > Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;master.tryserver.blink:linux_trusty_blink_rel > Change-Id: I77c270fd0e95cd7b2c9ee4b7f72ef344bc1fa104 > Reviewed-on: https://chromium-review.googlesource.com/1182446 > Reviewed-by: Toon Verwaest <verwaest@chromium.org> > Reviewed-by: Alexei Filippov <alph@chromium.org> > Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> > Cr-Commit-Position: refs/heads/master@{#55280} TBR=alph@chromium.org,verwaest@chromium.org,yangguo@chromium.org Bug: chromium:873865, v8:7731 Change-Id: I097678fda0ebdcbd35a85be0bb6cf0fcb052bcbd Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;master.tryserver.blink:linux_trusty_blink_rel Reviewed-on: https://chromium-review.googlesource.com/1195533 Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Reviewed-by:
Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Cr-Commit-Position: refs/heads/master@{#55507}
-
Toon Verwaest authored
They are properly initialized upon creation. Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;master.tryserver.blink:linux_trusty_blink_rel Change-Id: I10ac441580bf957e97ce663c9c3ad268ddeae935 Reviewed-on: https://chromium-review.googlesource.com/1188573 Commit-Queue: Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Cr-Commit-Position: refs/heads/master@{#55492}
-
- 22 Aug, 2018 1 commit
-
-
Maya Lekova authored
This reverts commit 1b3b808a. Reason for revert: Speculatively reverting because of https://ci.chromium.org/p/v8/builders/luci.v8.ci/V8-Blink%20Linux%2064%20(dbg)/13264 Original change's description: > inspector: find magic comment using V8 scanner > > Inspector tries to provide sourceURL and sourceMappingURL for scripts > with parser errors. Without this CL we convert source of each script > to inspector string and search for magic comment there. Some web sites > use pattern when they get some data from network and constantly try to > parse this data as JSON, in this case we do a lot of useless work. > > So we can parse magic comments on V8 side only for compilation errors > (excluding parse JSON errors), to do it we can reuse scanner by running > it on each potential comment. > > R=alph@chromium.org,verwaest@chromium.org,yangguo@chromium.org > > Bug: chromium:873865,v8:7731 > Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;master.tryserver.blink:linux_trusty_blink_rel > Change-Id: I77c270fd0e95cd7b2c9ee4b7f72ef344bc1fa104 > Reviewed-on: https://chromium-review.googlesource.com/1182446 > Reviewed-by: Toon Verwaest <verwaest@chromium.org> > Reviewed-by: Alexei Filippov <alph@chromium.org> > Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> > Cr-Commit-Position: refs/heads/master@{#55280} TBR=alph@chromium.org,yangguo@chromium.org,kozyatinskiy@chromium.org,verwaest@chromium.org Change-Id: I60ab243107d5fcce100064232d0e278a51f38db9 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: chromium:873865, v8:7731 Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;master.tryserver.blink:linux_trusty_blink_rel Reviewed-on: https://chromium-review.googlesource.com/1184921Reviewed-by:
Maya Lekova <mslekova@chromium.org> Commit-Queue: Maya Lekova <mslekova@chromium.org> Cr-Commit-Position: refs/heads/master@{#55300}
-
- 21 Aug, 2018 1 commit
-
-
Alexey Kozyatinskiy authored
Inspector tries to provide sourceURL and sourceMappingURL for scripts with parser errors. Without this CL we convert source of each script to inspector string and search for magic comment there. Some web sites use pattern when they get some data from network and constantly try to parse this data as JSON, in this case we do a lot of useless work. So we can parse magic comments on V8 side only for compilation errors (excluding parse JSON errors), to do it we can reuse scanner by running it on each potential comment. R=alph@chromium.org,verwaest@chromium.org,yangguo@chromium.org Bug: chromium:873865,v8:7731 Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;master.tryserver.blink:linux_trusty_blink_rel Change-Id: I77c270fd0e95cd7b2c9ee4b7f72ef344bc1fa104 Reviewed-on: https://chromium-review.googlesource.com/1182446Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Alexei Filippov <alph@chromium.org> Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Cr-Commit-Position: refs/heads/master@{#55280}
-
- 09 Aug, 2018 1 commit
-
-
Alexey Kozyatinskiy authored
Some clients (see Node.js) use platform path as ScriptOrigin. Reporting platform path in protocol makes using protocol much harder. This CL introduced V8InspectorClient::resourceNameToUrl method that is called for any reported using protocol url. V8Inspector uses url internally as well so protocol client may generate pattern for blackboxing with file urls only and does not need to build complicated regexp that covers files urls and platform paths on different platforms. R=lushnikov@chromium.org TBR=yangguo@chromium.org Bug: none Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;luci.chromium.try:linux_chromium_rel_ng;master.tryserver.blink:linux_trusty_blink_rel Change-Id: Iff302e7441df922fa5d689fe510f5a9bfd470b9b Reviewed-on: https://chromium-review.googlesource.com/1164624 Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Reviewed-by:
Alexei Filippov <alph@chromium.org> Cr-Commit-Position: refs/heads/master@{#55029}
-
- 25 Jul, 2018 1 commit
-
-
Joyee Cheung authored
This is a reland of 18d0d7f6 without any changes. This used to break the custom snapshot build but the bug seems to be fixed elsewhere. Original change's description: > Ship Symbol.prototype.description > > Intent to ship: > https://groups.google.com/forum/#!msg/v8-users/9U2kEQw8pb8/Sn91yUx5BQAJ > > Bug: v8:7807 > Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;master.tryserver.blink:linux_trusty_blink_rel > Change-Id: Ia9e73495b08b432371dfb0ccc571af969ae4d59f > Reviewed-on: https://chromium-review.googlesource.com/1107210 > Commit-Queue: Joyee Cheung <joyee@igalia.com> > Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> > Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> > Reviewed-by: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> > Cr-Commit-Position: refs/heads/master@{#53933} Bug: v8:7807 Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;master.tryserver.blink:linux_trusty_blink_rel Change-Id: I1225b9c8619c1a628149c9b54058798aab93a2a8 Reviewed-on: https://chromium-review.googlesource.com/1131156 Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Reviewed-by:
Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Reviewed-by:
Sathya Gunasekaran <gsathya@chromium.org> Cr-Commit-Position: refs/heads/master@{#54691}
-
- 05 Jul, 2018 1 commit
-
-
Alexey Kozyatinskiy authored
- rewritten couple tests, - migrated JSMessageObject to real Script instead of wrapper, - removed wrapper. R=yangguo@chromium.org TBR=ulan@chromium.org Bug: v8:5530 Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;luci.chromium.try:linux_chromium_rel_ng;master.tryserver.blink:linux_trusty_blink_rel Change-Id: Ia95492344c7b5978a940e2ab007b389384537148 Reviewed-on: https://chromium-review.googlesource.com/1112851Reviewed-by:
Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Cr-Commit-Position: refs/heads/master@{#54274}
-
- 03 Jul, 2018 3 commits
-
-
Alexey Kozyatinskiy authored
This is a reland of 3dfaf826 Original change's description: > [debug] liveedit in native > > Liveedit step-by-step: > 1. calculate diff between old source and new source, > 2. map function literals from old source to new source, > 3. create new script for new_source, > 4. mark literals with changed code as changed, all others as unchanged, > 5. check that for changed literals there are no: > - running generators in the heap, > - non droppable frames (e.g. running generator) above them on stack. > 6. mark the bottom most frame with changed function as scheduled for > restart if any. > 7. for unchanged functions: > - deoptimize, > - remove from cache, > - update source positions, > - move to new script, > - reset feedback information and preparsed scope information if any, > - replace any sfi in constant pool with changed one if any. > 8. for changed functions: > - deoptimize > - remove from cache, > - reset feedback information, > - update all links from js functions to old shared with new one. > 9. swap scripts. > > TBR=ulan@chromium.org > > Bug: v8:7862,v8:5713 > Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;luci.chromium.try:linux_chromium_rel_ng;master.tryserver.blink:linux_trusty_blink_rel > Change-Id: I8f6f6156318cc82d6f36d7ebc1c9f7d5f3aa1461 > Reviewed-on: https://chromium-review.googlesource.com/1105493 > Reviewed-by: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> > Reviewed-by: Dmitry Gozman <dgozman@chromium.org> > Reviewed-by: Yang Guo <yangguo@chromium.org> > Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> > Cr-Commit-Position: refs/heads/master@{#54146} TBR=dgozman@chromium.org Bug: v8:7862, v8:5713 Change-Id: I163ed2fd2ca3115ba0de74cb35a6fac9e40fdd94 Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;luci.chromium.try:linux_chromium_rel_ng;master.tryserver.blink:linux_trusty_blink_rel Reviewed-on: https://chromium-review.googlesource.com/1124879 Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Reviewed-by:
Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Cr-Commit-Position: refs/heads/master@{#54187}
-
Yang Guo authored
This reverts commit 3dfaf826. Reason for revert: Failures - https://ci.chromium.org/p/v8/builders/luci.v8.ci/V8%20Linux%20gcc%204.8/20394 Original change's description: > [debug] liveedit in native > > Liveedit step-by-step: > 1. calculate diff between old source and new source, > 2. map function literals from old source to new source, > 3. create new script for new_source, > 4. mark literals with changed code as changed, all others as unchanged, > 5. check that for changed literals there are no: > - running generators in the heap, > - non droppable frames (e.g. running generator) above them on stack. > 6. mark the bottom most frame with changed function as scheduled for > restart if any. > 7. for unchanged functions: > - deoptimize, > - remove from cache, > - update source positions, > - move to new script, > - reset feedback information and preparsed scope information if any, > - replace any sfi in constant pool with changed one if any. > 8. for changed functions: > - deoptimize > - remove from cache, > - reset feedback information, > - update all links from js functions to old shared with new one. > 9. swap scripts. > > TBR=ulan@chromium.org > > Bug: v8:7862,v8:5713 > Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;luci.chromium.try:linux_chromium_rel_ng;master.tryserver.blink:linux_trusty_blink_rel > Change-Id: I8f6f6156318cc82d6f36d7ebc1c9f7d5f3aa1461 > Reviewed-on: https://chromium-review.googlesource.com/1105493 > Reviewed-by: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> > Reviewed-by: Dmitry Gozman <dgozman@chromium.org> > Reviewed-by: Yang Guo <yangguo@chromium.org> > Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> > Cr-Commit-Position: refs/heads/master@{#54146} TBR=dgozman@chromium.org,ulan@chromium.org,yangguo@chromium.org,kozyatinskiy@chromium.org Change-Id: I45df5b6f3abaf29e593c6ac11edefbd0177d0109 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:7862, v8:5713 Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;luci.chromium.try:linux_chromium_rel_ng;master.tryserver.blink:linux_trusty_blink_rel Reviewed-on: https://chromium-review.googlesource.com/1124159Reviewed-by:
Yang Guo <yangguo@chromium.org> Commit-Queue: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#54151}
-
Alexey Kozyatinskiy authored
Liveedit step-by-step: 1. calculate diff between old source and new source, 2. map function literals from old source to new source, 3. create new script for new_source, 4. mark literals with changed code as changed, all others as unchanged, 5. check that for changed literals there are no: - running generators in the heap, - non droppable frames (e.g. running generator) above them on stack. 6. mark the bottom most frame with changed function as scheduled for restart if any. 7. for unchanged functions: - deoptimize, - remove from cache, - update source positions, - move to new script, - reset feedback information and preparsed scope information if any, - replace any sfi in constant pool with changed one if any. 8. for changed functions: - deoptimize - remove from cache, - reset feedback information, - update all links from js functions to old shared with new one. 9. swap scripts. TBR=ulan@chromium.org Bug: v8:7862,v8:5713 Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;luci.chromium.try:linux_chromium_rel_ng;master.tryserver.blink:linux_trusty_blink_rel Change-Id: I8f6f6156318cc82d6f36d7ebc1c9f7d5f3aa1461 Reviewed-on: https://chromium-review.googlesource.com/1105493Reviewed-by:
Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Reviewed-by:
Dmitry Gozman <dgozman@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Cr-Commit-Position: refs/heads/master@{#54146}
-
- 21 Jun, 2018 3 commits
-
-
Yang Guo authored
This reverts commit 18d0d7f6. Reason for revert: Tentative revert. This has somehow broken the custom snapshot build https://ci.chromium.org/p/v8/builders/luci.v8.ci/V8%20Linux64%20GC%20Stress%20-%20custom%20snapshot/19822 Original change's description: > Ship Symbol.prototype.description > > Intent to ship: > https://groups.google.com/forum/#!msg/v8-users/9U2kEQw8pb8/Sn91yUx5BQAJ > > Bug: v8:7807 > Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;master.tryserver.blink:linux_trusty_blink_rel > Change-Id: Ia9e73495b08b432371dfb0ccc571af969ae4d59f > Reviewed-on: https://chromium-review.googlesource.com/1107210 > Commit-Queue: Joyee Cheung <joyee@igalia.com> > Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> > Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> > Reviewed-by: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> > Cr-Commit-Position: refs/heads/master@{#53933} TBR=kozyatinskiy@chromium.org,gsathya@chromium.org,luoe@chromium.org,joyee@igalia.com Change-Id: I28835d35d594ed8e14d824627e6aadb0360618f7 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:7807 Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;master.tryserver.blink:linux_trusty_blink_rel Reviewed-on: https://chromium-review.googlesource.com/1110237Reviewed-by:
Yang Guo <yangguo@chromium.org> Commit-Queue: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#53937}
-
Alexey Kozyatinskiy authored
After this CL all liveedit tests call the same LiveEdit::PatchScript method. This method will be updated later. As well some new liveedit cctests added, unfortunately part of them do not work with current implementation. R=dgozman@chromium.org,yangguo@chromium.org Bug: v8:7862 Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;luci.chromium.try:linux_chromium_rel_ng;master.tryserver.blink:linux_trusty_blink_rel Change-Id: I3521af12b0f95b39d13aaafb1d1cf60f3f642a97 Reviewed-on: https://chromium-review.googlesource.com/1108382 Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Reviewed-by:
Dmitry Gozman <dgozman@chromium.org> Cr-Commit-Position: refs/heads/master@{#53936}
-
Joyee Cheung authored
Intent to ship: https://groups.google.com/forum/#!msg/v8-users/9U2kEQw8pb8/Sn91yUx5BQAJ Bug: v8:7807 Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;master.tryserver.blink:linux_trusty_blink_rel Change-Id: Ia9e73495b08b432371dfb0ccc571af969ae4d59f Reviewed-on: https://chromium-review.googlesource.com/1107210 Commit-Queue: Joyee Cheung <joyee@igalia.com> Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> Reviewed-by:
Sathya Gunasekaran <gsathya@chromium.org> Reviewed-by:
Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Cr-Commit-Position: refs/heads/master@{#53933}
-
- 20 Jun, 2018 2 commits
-
-
Maya Lekova authored
This is a reland of 21c0d77e Original change's description: > [async] Optimize await and AsyncFromSyncIterator > > Simplify the promise wrapping in await and > %AsyncFromSyncIteratorPrototype%.next/return/throw to reuse the PromiseResolve > primitive. Now await takes 1 tick instead of 3 on the microtask queue. > > Change-Id: I7e99b8689eb8fcb09c48915b11c1e06684dc0f1a > Reviewed-on: https://chromium-review.googlesource.com/1090272 > Commit-Queue: Maya Lekova <mslekova@chromium.org> > Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> > Reviewed-by: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> > Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> > Reviewed-by: Mathias Bynens <mathias@chromium.org> > Cr-Commit-Position: refs/heads/master@{#53853} Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;master.tryserver.blink:linux_trusty_blink_rel Change-Id: Ifa5b2fb8b2fb84b635b2dc1b6455d6aaf154cbfd Reviewed-on: https://chromium-review.googlesource.com/1106977 Commit-Queue: Maya Lekova <mslekova@chromium.org> Reviewed-by:
Sathya Gunasekaran <gsathya@chromium.org> Cr-Commit-Position: refs/heads/master@{#53900}
-
Alexey Kozyatinskiy authored
Extracted from https://chromium-review.googlesource.com/c/v8/v8/+/1105493 R=dgozman@chromium.org Bug: v8:7862 Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;master.tryserver.blink:linux_trusty_blink_rel Change-Id: Ibd2fb5341e617929b07b26abea31a1579a456d93 Reviewed-on: https://chromium-review.googlesource.com/1107312Reviewed-by:
Dmitry Gozman <dgozman@chromium.org> Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Cr-Commit-Position: refs/heads/master@{#53899}
-
- 19 Jun, 2018 2 commits
-
-
Bill Budge authored
This reverts commit 21c0d77e. Reason for revert: Compile failure in bootstrapper.cc Original change's description: > [async] Optimize await and AsyncFromSyncIterator > > Simplify the promise wrapping in await and > %AsyncFromSyncIteratorPrototype%.next/return/throw to reuse the PromiseResolve > primitive. Now await takes 1 tick instead of 3 on the microtask queue. > > Change-Id: I7e99b8689eb8fcb09c48915b11c1e06684dc0f1a > Reviewed-on: https://chromium-review.googlesource.com/1090272 > Commit-Queue: Maya Lekova <mslekova@chromium.org> > Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> > Reviewed-by: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> > Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> > Reviewed-by: Mathias Bynens <mathias@chromium.org> > Cr-Commit-Position: refs/heads/master@{#53853} TBR=kozyatinskiy@chromium.org,littledan@chromium.org,gsathya@chromium.org,bmeurer@chromium.org,domenic@chromium.org,mathias@chromium.org,mslekova@chromium.org Change-Id: Ia631acdfcd5c1f9c28c1540c8da16cdf076abf87 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/1106566Reviewed-by:
Bill Budge <bbudge@chromium.org> Commit-Queue: Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#53855}
-
Maya Lekova authored
Simplify the promise wrapping in await and %AsyncFromSyncIteratorPrototype%.next/return/throw to reuse the PromiseResolve primitive. Now await takes 1 tick instead of 3 on the microtask queue. Change-Id: I7e99b8689eb8fcb09c48915b11c1e06684dc0f1a Reviewed-on: https://chromium-review.googlesource.com/1090272 Commit-Queue: Maya Lekova <mslekova@chromium.org> Reviewed-by:
Sathya Gunasekaran <gsathya@chromium.org> Reviewed-by:
Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Mathias Bynens <mathias@chromium.org> Cr-Commit-Position: refs/heads/master@{#53853}
-
- 18 Jun, 2018 4 commits
-
-
Alexey Kozyatinskiy authored
This is a reland of 4363a693 Original change's description: > [inspector] fixed location of top level function return > > We should pass false as has_braces argument to create FunctionLiteral > for top level function. > > R=dgozman@chromium.org,bmeurer@chromium.org > TBR=bmeurer@chromium.org > > Bug: none > Change-Id: I397f31b562d32c71f3a12bfc9ceeed16c367aa80 > Reviewed-on: https://chromium-review.googlesource.com/1098018 > Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> > Reviewed-by: Dmitry Gozman <dgozman@chromium.org> > Reviewed-by: Yang Guo <yangguo@chromium.org> > Cr-Commit-Position: refs/heads/master@{#53769} TBR=dgozman@chromium.org Bug: v8:7858 Change-Id: Ie636bc101f9d29d9d40bd10b96e62da6505c2734 Reviewed-on: https://chromium-review.googlesource.com/1104497 Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Reviewed-by:
Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Cr-Commit-Position: refs/heads/master@{#53808}
-
Toon Verwaest authored
Don't expose GetFunction on the scope iterator. Simply take it into account for GetFunctionDebugName This is a step towards avoiding materializing function_ altogether if we deoptimize. Typically we only need the SharedFunctionInfo. Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;master.tryserver.blink:linux_trusty_blink_rel Change-Id: Idee78f02d1afe3d2cb70e93a6d96a5a33907f892 Reviewed-on: https://chromium-review.googlesource.com/1100474 Commit-Queue: Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#53789}
-
Toon Verwaest authored
Reland "[debugger] Rewrite the ScopeIterator/DebugEvaluate to use Scope rather than ScopeInfo for inner scopes." Change-Id: I0ad97057600d0a0f1dd4c71d5f8245dafb908154 Reviewed-on: https://chromium-review.googlesource.com/1103576Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Commit-Queue: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#53781}
-
Clemens Hammacher authored
This reverts commit 4363a693. Reason for revert: Seems to break layout tests: https://ci.chromium.org/buildbot/client.v8.fyi/V8-Blink%20Linux%2064/24146 Original change's description: > [inspector] fixed location of top level function return > > We should pass false as has_braces argument to create FunctionLiteral > for top level function. > > R=dgozman@chromium.org,bmeurer@chromium.org > TBR=bmeurer@chromium.org > > Bug: none > Change-Id: I397f31b562d32c71f3a12bfc9ceeed16c367aa80 > Reviewed-on: https://chromium-review.googlesource.com/1098018 > Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> > Reviewed-by: Dmitry Gozman <dgozman@chromium.org> > Reviewed-by: Yang Guo <yangguo@chromium.org> > Cr-Commit-Position: refs/heads/master@{#53769} TBR=dgozman@chromium.org,yangguo@chromium.org,kozyatinskiy@chromium.org # Not skipping CQ checks because original CL landed > 1 day ago. Bug: none Change-Id: I4495f6723daed63b7a38b0d3c3637724f6c2d484 Reviewed-on: https://chromium-review.googlesource.com/1104017Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#53775}
-
- 15 Jun, 2018 3 commits
-
-
Alexey Kozyatinskiy authored
We should pass false as has_braces argument to create FunctionLiteral for top level function. R=dgozman@chromium.org,bmeurer@chromium.org TBR=bmeurer@chromium.org Bug: none Change-Id: I397f31b562d32c71f3a12bfc9ceeed16c367aa80 Reviewed-on: https://chromium-review.googlesource.com/1098018 Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Reviewed-by:
Dmitry Gozman <dgozman@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#53769}
-
Yang Guo authored
Revert "[debugger] Rewrite the ScopeIterator/DebugEvaluate to use Scope rather than ScopeInfo for inner scopes." This reverts commit 9e27d473. Reason for revert: Layout Test failures: https://ci.chromium.org/buildbot/client.v8.fyi/V8-Blink%20Linux%2064/24123 Original change's description: > [debugger] Rewrite the ScopeIterator/DebugEvaluate to use Scope rather than ScopeInfo for inner scopes. > > This CL also bottlenecks all current scope handling in the ScopeIterator, and cleans up frame handling in debug-frames and the deoptimizer. > > Change-Id: I061922a356ce17794262f8d77d5d7c824558fc50 > Reviewed-on: https://chromium-review.googlesource.com/1095094 > Commit-Queue: Toon Verwaest <verwaest@chromium.org> > Reviewed-by: Georg Neis <neis@chromium.org> > Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> > Reviewed-by: Yang Guo <yangguo@chromium.org> > Cr-Commit-Position: refs/heads/master@{#53741} TBR=yangguo@chromium.org,jarin@chromium.org,neis@chromium.org,jgruber@chromium.org,verwaest@chromium.org Change-Id: I892856056258e3c68b36409b8b2d69e7686fc385 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/1102377 Commit-Queue: Yang Guo <yangguo@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#53756}
-
Toon Verwaest authored
Reland "[debugger] Rewrite the ScopeIterator/DebugEvaluate to use Scope rather than ScopeInfo for inner scopes." This is a reland of 9e27d473 Original change's description: > [debugger] Rewrite the ScopeIterator/DebugEvaluate to use Scope rather than ScopeInfo for inner scopes. > > This CL also bottlenecks all current scope handling in the ScopeIterator, and cleans up frame handling in debug-frames and the deoptimizer. > > Change-Id: I061922a356ce17794262f8d77d5d7c824558fc50 > Reviewed-on: https://chromium-review.googlesource.com/1095094 > Commit-Queue: Toon Verwaest <verwaest@chromium.org> > Reviewed-by: Georg Neis <neis@chromium.org> > Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> > Reviewed-by: Yang Guo <yangguo@chromium.org> > Cr-Commit-Position: refs/heads/master@{#53741} Change-Id: I05262fef66d852876b9bb2869339053629c9b51d Reviewed-on: https://chromium-review.googlesource.com/1102297Reviewed-by:
Yang Guo <yangguo@chromium.org> Commit-Queue: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#53751}
-
- 14 Jun, 2018 2 commits
-
-
Clemens Hammacher authored
Revert "[debugger] Rewrite the ScopeIterator/DebugEvaluate to use Scope rather than ScopeInfo for inner scopes." This reverts commit 9e27d473. Reason for revert: Fails MSan (use of uninitialized value): https://ci.chromium.org/buildbot/client.v8/V8%20Linux%20-%20arm64%20-%20sim%20-%20MSAN/21562 Original change's description: > [debugger] Rewrite the ScopeIterator/DebugEvaluate to use Scope rather than ScopeInfo for inner scopes. > > This CL also bottlenecks all current scope handling in the ScopeIterator, and cleans up frame handling in debug-frames and the deoptimizer. > > Change-Id: I061922a356ce17794262f8d77d5d7c824558fc50 > Reviewed-on: https://chromium-review.googlesource.com/1095094 > Commit-Queue: Toon Verwaest <verwaest@chromium.org> > Reviewed-by: Georg Neis <neis@chromium.org> > Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> > Reviewed-by: Yang Guo <yangguo@chromium.org> > Cr-Commit-Position: refs/heads/master@{#53741} TBR=yangguo@chromium.org,jarin@chromium.org,neis@chromium.org,jgruber@chromium.org,verwaest@chromium.org Change-Id: Ief87c1e79fa2ec40f52fd747ec4ebbacf0da798b No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/1101377Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#53743}
-
Toon Verwaest authored
[debugger] Rewrite the ScopeIterator/DebugEvaluate to use Scope rather than ScopeInfo for inner scopes. This CL also bottlenecks all current scope handling in the ScopeIterator, and cleans up frame handling in debug-frames and the deoptimizer. Change-Id: I061922a356ce17794262f8d77d5d7c824558fc50 Reviewed-on: https://chromium-review.googlesource.com/1095094 Commit-Queue: Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Georg Neis <neis@chromium.org> Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#53741}
-