- 11 Sep, 2017 1 commit
-
-
Georg Neis authored
BigInt is a new primitive type of arbitrary precision integers, proposed in https://tc39.github.io/proposal-bigint. This CL introduces a corresponding instance type, map, and C++ class to V8 and adds BigInt support to a few operations (see the test file). Much more is to come. Also, the concrete representation of BigInts is not yet fixed, currently a BigInt is simply a wrapped Smi. Bug: v8:6791 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: Ia2901948efd7808f17cfc945f0d56e23e8ae0b45 Reviewed-on: https://chromium-review.googlesource.com/657022Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#47956}
-
- 31 Aug, 2017 2 commits
-
-
Sathya Gunasekaran authored
Bug: v8:5046 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: I586dad351c950c119ec4d16693ce2a82395a8272 Reviewed-on: https://chromium-review.googlesource.com/640011 Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#47726}
-
Sathya Gunasekaran authored
This patch introduces a new container type ScriptOrModule which provides the name and the host defined options of the script/module. This patch also introduces a new PrimitivesArray that can hold Primitive values, which the embedder can use to store metadata. The HostDefinedOptions is passed to V8 through the ScriptOrigin, and passed back to the embedder through HostImportModuleDynamically for module loading. Bug: v8:5785, v8:6658, v8:6683 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: I56c26fc9a680b273ac0a6691e5ad75f15b8dc80a Reviewed-on: https://chromium-review.googlesource.com/622158Reviewed-by:
Adam Klein <adamk@chromium.org> Reviewed-by:
Georg Neis <neis@chromium.org> Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> Cr-Commit-Position: refs/heads/master@{#47724}
-
- 30 Aug, 2017 1 commit
-
-
Benedikt Meurer authored
Introduce a proper empty_descriptor_array, which has the proper layout (length is 2 and the two fields are set properly). Also add a special EnumCache class and a matching empty_enum_cache. The contract now is that we only need to check the EnumLength on the map to know whether we are allowed to use the enum cache. This greatly simplifies the handling of the enum cache (and also the descriptor arrays), especially for the future work on optimizing keyed access via the enum cache indices. Bug: v8:6702 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: I5ef517a3041163cd65ef003f691139ea52233e83 Reviewed-on: https://chromium-review.googlesource.com/641030 Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Reviewed-by:
Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/master@{#47697}
-
- 28 Aug, 2017 1 commit
-
-
Benedikt Meurer authored
There's no need to have the StringLengthProtector as a PropertyCell, since it's only used to guard against deoptimization loops. This also allows us to remove the use of the CompilationDependencies from the JSTypedLowering. R=jarin@chromium.org Bug: v8:6759 Change-Id: I54a37be6b8064ca3475e3b321f928b6a9903f209 Tbr: mstarzinger@chromium.org Reviewed-on: https://chromium-review.googlesource.com/637303 Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#47633}
-
- 22 Aug, 2017 2 commits
-
-
Marja Hölttä authored
This reverts commit fe50e817. Reason for revert: Too close to branch point Original change's description: > [parser] Tentative: turn on FLAG_preparser_scope_analysis. > > The main motivation is to get bug reports / crashes from Canary. > > This commit is expected to break all kinds of things! The most typical failure > modes are crashes, CHECK failures and JavaScript executing incorrectly. > > BUG=v8:5516 > > Change-Id: Ifa02b420ad4e8eda46002b334bed2665c8ceeeb2 > Reviewed-on: https://chromium-review.googlesource.com/623751 > Reviewed-by: Camillo Bruni <cbruni@chromium.org> > Commit-Queue: Marja Hölttä <marja@chromium.org> > Cr-Commit-Position: refs/heads/master@{#47502} TBR=adamk@chromium.org,marja@chromium.org,cbruni@chromium.org Change-Id: I98d2d186cbde6e185b05ef0d3460115a654b6b45 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:5516 Reviewed-on: https://chromium-review.googlesource.com/626796Reviewed-by:
Marja Hölttä <marja@chromium.org> Commit-Queue: Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/master@{#47519}
-
Marja Hölttä authored
The main motivation is to get bug reports / crashes from Canary. This commit is expected to break all kinds of things! The most typical failure modes are crashes, CHECK failures and JavaScript executing incorrectly. BUG=v8:5516 Change-Id: Ifa02b420ad4e8eda46002b334bed2665c8ceeeb2 Reviewed-on: https://chromium-review.googlesource.com/623751Reviewed-by:
Camillo Bruni <cbruni@chromium.org> Commit-Queue: Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/master@{#47502}
-
- 09 Aug, 2017 2 commits
-
-
Michael Achenbach authored
This reverts commit 2e9f7253. Reason for revert: Done experimenting... Original change's description: > [parser] Turn FLAG_experimental_preparser_scope_analysis on. > > Experimental run, just for getting data from RuntimeCallstats bots. > > To be reverted soon - expected to break various things. > > BUG=v8:5516 > NOTREECHECKS=true > > Change-Id: I6d235fddee36b0f0efe70065166d25ed40d6e163 > Reviewed-on: https://chromium-review.googlesource.com/557863 > Commit-Queue: Michael Achenbach <machenbach@chromium.org> > Commit-Queue: Marja Hölttä <marja@chromium.org> > Reviewed-by: Michael Achenbach <machenbach@chromium.org> > Reviewed-by: Adam Klein <adamk@chromium.org> > Cr-Commit-Position: refs/heads/master@{#47248} TBR=adamk@chromium.org,machenbach@chromium.org,marja@chromium.org Change-Id: I871d8a68442597b777e8f9e3d04ba3298ae87549 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:5516 Reviewed-on: https://chromium-review.googlesource.com/608190Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#47249}
-
Marja Hölttä authored
Experimental run, just for getting data from RuntimeCallstats bots. To be reverted soon - expected to break various things. BUG=v8:5516 NOTREECHECKS=true Change-Id: I6d235fddee36b0f0efe70065166d25ed40d6e163 Reviewed-on: https://chromium-review.googlesource.com/557863 Commit-Queue: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Marja Hölttä <marja@chromium.org> Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Reviewed-by:
Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/master@{#47248}
-
- 07 Aug, 2017 1 commit
-
-
Clemens Hammacher authored
The interpreter was not able to call imported wasm functions (hitting UNIMPLEMENTED). This CL fixes this by creating a "CWasmEntry", which is signature-specific. It has JS linkage and receives the wasm code object to call and a buffer containing all arguments (similar to the interpreter entry). It loads all arguments from the buffer and calls the given code object. The c-wasm-entry code objects are cached per instance, such that we only create them once per signature. These wasm entry stubs will also allow us to call back to compiled code from the interpreter, which we might want to do to reduce the slowdown of executing wasm for debugging. R=titzer@chromium.org Bug: chromium:735792 Change-Id: I7fecec3a7bec62a9de40fff115b684759b12a28b Reviewed-on: https://chromium-review.googlesource.com/600308 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#47195}
-
- 03 Aug, 2017 1 commit
-
-
Ben L. Titzer authored
R=mstarzinger@chromium.org Bug: Change-Id: Ia416acd8c12a3c8e3fdfabc56a4cd31cb946c88c Reviewed-on: https://chromium-review.googlesource.com/599949 Commit-Queue: Ben Titzer <titzer@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#47135}
-
- 27 Jul, 2017 3 commits
-
-
Vyacheslav Chigrin authored
We must ensure required root objects will be filled when such objects will be deserialized. Change-Id: I25136d31cb2e0c0a69a51c5635192f17bbe2a9ba Reviewed-on: https://chromium-review.googlesource.com/579768 Commit-Queue: Vyacheslav Chigrin <vchigrin@yandex-team.ru> Reviewed-by:
Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#46944}
-
Leszek Swirski authored
Instead of having feedback vector as a subtype of FixedArray with reserved slots, make it a first-class variable-sized object with a fixed-size header. This allows us to compress counters to ints in the header, rather than forcing them to be Smis. Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: Icc5f088ffbc2e2651b845bc71ea42060639e3e48 Reviewed-on: https://chromium-review.googlesource.com/585129 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Reviewed-by:
Michael Stanton <mvstanton@chromium.org> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#46935}
-
Ulan Degenbaev authored
This replaces the linked list of weak cells with a worklist. TBR=yangguo@chromium.org BUG=chromium:694255 Change-Id: Ia877e25010ebbec9c05fbbe48cff460a92d3a132 Reviewed-on: https://chromium-review.googlesource.com/587067 Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#46929}
-
- 25 Jul, 2017 2 commits
-
-
Georg Neis authored
This must throw for uninitialized properties. R=adamk@chromium.org Bug: v8:1569, v8:5487 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng;master.tryserver.v8:v8_linux_noi18n_rel_ng Change-Id: I8beb8bf6a197870eb5c038102ab474dd12f6b6eb Reviewed-on: https://chromium-review.googlesource.com/582013 Commit-Queue: Georg Neis <neis@chromium.org> Reviewed-by:
Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/master@{#46870}
-
Yang Guo authored
This is so that we can distinguish hash tables by instance type. We can then introduce maps for each kind of hash tables to further distinguish. R=mstarzinger@chromium.org Bug: v8:6593 Change-Id: Ice9e6bb7b85d825207ac489b6930ac9020d60db8 Reviewed-on: https://chromium-review.googlesource.com/582814Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#46861}
-
- 24 Jul, 2017 2 commits
-
-
Yang Guo authored
This reverts commit 990dd947. Reason for revert: <INSERT REASONING HERE> Original change's description: > Introduce HASH_TABLE_TYPE instance type. > > This is so that we can distinguish hash tables by instance type. We can > then introduce maps for each kind of hash tables to further distinguish. > > R=mstarzinger@chromium.org > > Bug: v8:6593 > Change-Id: I1a532884758e571abdfe2e2743fc5ea611d12f7e > Reviewed-on: https://chromium-review.googlesource.com/581009 > Commit-Queue: Yang Guo <yangguo@chromium.org> > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > Cr-Commit-Position: refs/heads/master@{#46828} TBR=yangguo@chromium.org,mstarzinger@chromium.org Change-Id: Ia47d408e5cf47983940227b4cc445a704d7f8d19 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:6593 Reviewed-on: https://chromium-review.googlesource.com/581493Reviewed-by:
Yang Guo <yangguo@chromium.org> Commit-Queue: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#46833}
-
Yang Guo authored
This is so that we can distinguish hash tables by instance type. We can then introduce maps for each kind of hash tables to further distinguish. R=mstarzinger@chromium.org Bug: v8:6593 Change-Id: I1a532884758e571abdfe2e2743fc5ea611d12f7e Reviewed-on: https://chromium-review.googlesource.com/581009 Commit-Queue: Yang Guo <yangguo@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#46828}
-
- 21 Jul, 2017 1 commit
-
-
Yang Guo authored
And alpha-sort some lists. R=jgruber@chromium.org Change-Id: I01fcf01cf8e1eb1e6c99202156c1013e92bf4e7e Reviewed-on: https://chromium-review.googlesource.com/579711 Commit-Queue: Yang Guo <yangguo@chromium.org> Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#46809}
-
- 13 Jul, 2017 1 commit
-
-
Yang Guo authored
This also makes sure 6.0 and 6.1 have the same constants exposed in v8.h. Bug: v8:6592 R=bmeurer@chromium.org Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: I3afc0e5e4495594c76229555aab148ac78388f80 Reviewed-on: https://chromium-review.googlesource.com/569618 Commit-Queue: Yang Guo <yangguo@chromium.org> Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#46642}
-
- 11 Jul, 2017 1 commit
-
-
Sathya Gunasekaran authored
This patch changes the backing store of slow properties to be a new instance type called PropertyArray. Currently the only difference between this and a FixedArray is the map. A future patch will change the length property to store the hash code. Bug: v8:5717, v8:6404 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: Iaebc98f42e6d93c1392772e6f837787beb64afec Reviewed-on: https://chromium-review.googlesource.com/539028Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Camillo Bruni <cbruni@chromium.org> Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> Cr-Commit-Position: refs/heads/master@{#46569}
-
- 10 Jul, 2017 2 commits
-
-
Benedikt Meurer authored
This is the next step towards faster Map and Set iteration. It introduces the appropriate instance types for Map and Set iterators (following the pattern for Array iterators) and migrates the following builtins to the CodeStubAssembler: - Set.prototype.entries - Set.prototype.values - Map.prototype.entries - Map.prototype.keys - Map.prototype.values - %SetIteratorPrototype%.next - %MapIteratorPrototype%.next This already provides a significant performance boost for regular for-of iteration of Sets and Maps, by a factor of 5-10 depending on the input. The final step will be to inline some fast-paths into TurboFan. Drive-by-fix: Remove obsolete %IsJSSetIterator and %IsJSMapIterator intrinsics and runtime functions. TBR=jgruber@chromium.org Bug: v8:6344, v8:6571, chromium:740122 Change-Id: I3ab0ee49e2afe8d4295707a5ecbd51adda621918 Reviewed-on: https://chromium-review.googlesource.com/563626 Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#46497}
-
Michael Achenbach authored
This reverts commit 3f22832b. Reason for revert: Layout tests: https://build.chromium.org/p/client.v8.fyi/builders/V8-Blink%20Linux%2064/builds/16849 Original change's description: > [builtins] Port Map and Set iterators to CodeStubAssembler. > > This is the next step towards faster Map and Set iteration. It > introduces the appropriate instance types for Map and Set > iterators (following the pattern for Array iterators) and migrates > the following builtins to the CodeStubAssembler: > > - Set.prototype.entries > - Set.prototype.values > - Map.prototype.entries > - Map.prototype.keys > - Map.prototype.values > - %SetIteratorPrototype%.next > - %MapIteratorPrototype%.next > > This already provides a significant performance boost for regular > for-of iteration of Sets and Maps, by a factor of 5-10 depending > on the input. The final step will be to inline some fast-paths > into TurboFan. > > Drive-by-fix: Remove obsolete %IsJSSetIterator and %IsJSMapIterator > intrinsics and runtime functions. > > Bug: v8:6571, chromium:740122 > Change-Id: Iad7a7dec643d8f8b5799327f89a351108ae856bf > Reviewed-on: https://chromium-review.googlesource.com/563399 > Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > Cr-Commit-Position: refs/heads/master@{#46492} TBR=jgruber@chromium.org,bmeurer@chromium.org # Not skipping CQ checks because original CL landed > 1 day ago. Bug: v8:6571, chromium:740122 Change-Id: Iadb48d72e3b85ec8ad880e50ab7912c5502caf07 Reviewed-on: https://chromium-review.googlesource.com/564419Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#46495}
-
- 08 Jul, 2017 1 commit
-
-
Benedikt Meurer authored
This is the next step towards faster Map and Set iteration. It introduces the appropriate instance types for Map and Set iterators (following the pattern for Array iterators) and migrates the following builtins to the CodeStubAssembler: - Set.prototype.entries - Set.prototype.values - Map.prototype.entries - Map.prototype.keys - Map.prototype.values - %SetIteratorPrototype%.next - %MapIteratorPrototype%.next This already provides a significant performance boost for regular for-of iteration of Sets and Maps, by a factor of 5-10 depending on the input. The final step will be to inline some fast-paths into TurboFan. Drive-by-fix: Remove obsolete %IsJSSetIterator and %IsJSMapIterator intrinsics and runtime functions. Bug: v8:6571, chromium:740122 Change-Id: Iad7a7dec643d8f8b5799327f89a351108ae856bf Reviewed-on: https://chromium-review.googlesource.com/563399 Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#46492}
-
- 07 Jul, 2017 1 commit
-
-
titzer authored
This CL refactors the internal representation of JavaScript-exposed WebAssembly objects to be more like other such objects in V8. By introducing a new instance type for each of the JS-exposed types, we get more robust typechecking without using embedder fields (which were previously used when these objects where instance type JS_API_OBJECT). In addition to the new instance types, the subclasses X of JSObject (WasmInstanceObject, WasmMemoryObject, WasmModuleObject, WasmTableObject) now have appropriate Is##X() methods on Object and are now robust. BUG=v8:6547 CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_chromium_rel_ng Review-Url: https://codereview.chromium.org/2964943002 Cr-Commit-Position: refs/heads/master@{#46475}
-
- 30 Jun, 2017 1 commit
-
-
Marja Hölttä authored
This way, each lazy function needs to handle only the data relevant to itself. This reduced data handling overheads. Other changes: 1) Don't deserialize the data; once it's on the heap, it can stay there. Lazy function compilation is only done in the main thread. 2) Separate ProducedPreParsedScopeData and ConsumedPreParsedScopeData. It's clearer, because: - The data looks fundamentally different when we're producing it and when we're consuming it. - Cleanly separates the operations we can do in the "producing phase" and in the "consuming phase". Bug: v8:5516 Change-Id: I6985a6621f71b348a55155724765624b5d5f7c33 Reviewed-on: https://chromium-review.googlesource.com/528094 Commit-Queue: Marja Hölttä <marja@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/master@{#46347}
-
- 28 Jun, 2017 1 commit
-
-
Mike Stanton authored
To be able to use this in optimized code dependency relationships. Bug: Change-Id: Ia099a68994b1252de3c72c8d688862ca17ca76d9 Reviewed-on: https://chromium-review.googlesource.com/548716 Commit-Queue: Michael Stanton <mvstanton@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#46277}
-
- 27 Jun, 2017 1 commit
-
-
Toon Verwaest authored
Bug: Change-Id: I56bfd921d63783ddaa74133dde5f3daf776e68ca Reviewed-on: https://chromium-review.googlesource.com/548115 Commit-Queue: Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/master@{#46250}
-
- 26 Jun, 2017 1 commit
-
-
Michael Starzinger authored
This removes support for code-stub to tail-call into the runtime via the deoptimizer. The Hydrogen code-stubs would trigger a deopt in order to materialize a trampoline frame, which would then continue execution in a runtime function associated with each stub. This is no longer needed for code-stubs built with the CSA. R=jarin@chromium.org BUG=v8:6408 Change-Id: I1ff8dc03ac716200b28e962259a3e233aeda1234 Reviewed-on: https://chromium-review.googlesource.com/548375Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#46223}
-
- 21 Jun, 2017 1 commit
-
-
Toon Verwaest authored
Bug: Change-Id: Ica3ebd998ad44d24c401cfb74cf5cbe3a6164c47 Reviewed-on: https://chromium-review.googlesource.com/541344 Commit-Queue: Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Camillo Bruni <cbruni@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#46099}
-
- 20 Jun, 2017 1 commit
-
-
Sathya Gunasekaran authored
Bug: v8:6443 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: I20b1006a5c5ff24a730f15286cf0f340ba047b78 Reviewed-on: https://chromium-review.googlesource.com/526001Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Camillo Bruni <cbruni@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> Cr-Commit-Position: refs/heads/master@{#46034}
-
- 08 Jun, 2017 1 commit
-
-
Mythri authored
ThrowIfHole bytecodes were handled by introducing deopt points to check for a hole. To avoid deopt loops a hole check protector was used to generate control flow if there was a deopt due to a hole. However, the normal control flow version should be as fast as the deopt version in general. The deopt version could potentially consume less compile time but it may not be worth the complexity added. Hence simplifying it to only construct the control flow. Bug: v8:6383 Change-Id: Icace11f7a6e21e64e1cebd104496e3f559bc85f7 Reviewed-on: https://chromium-review.googlesource.com/525573Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Mythri Alle <mythria@chromium.org> Cr-Commit-Position: refs/heads/master@{#45783}
-
- 07 Jun, 2017 1 commit
-
-
danno authored
This CL contains a few pieces: - A new mechanism to create "BuiltinContinuation" checkpoints in TurboFan graphs, which--when triggered--swizzle the values in the the FrameState to be parameters to a typically TF-generated builtin that resumes execution to finish the slow-case functionality. - Continuation builtins that have special handling in the deoptimizer and their own new frame type to ensure that the values they need to begin executing can be stashed away and restored immediately before the builtin is called via a trampoline that runs when the continuation builtin's frame execution resumes. - An implementation of Array.prototype.forEach in TurboFan that can be used to inline it. The inlined forEach implementation uses the checkpoints mechanism described above to deopt in the middle of the forEach in the cases that optimization invariants are violated. There is a slightly different continuation stub for each deopt point in the forEach implementation to ensure the correct side-effects, i.e. that the deopt of the builtin isn't programmatically observable. Review-Url: https://codereview.chromium.org/2803853005 Cr-Commit-Position: refs/heads/master@{#45764}
-
- 06 Jun, 2017 1 commit
-
-
Mythri authored
Introduces ThrowReferenceErrorIfHole / ThrowSuperNotCalledIfHole / ThrowSuperAlreadyCalledIfNotHole bytecodes to handle hole checks. In the bytecode-graph builder they are handled by introducing a deopt point instead of adding explicit control flow. JumpIfNotHole / JumpIfNotHoleConstant bytecodes are removed since they are no longer required. Bug: v8:4280, v8:6383 Change-Id: I58b70c556b0ffa30e41a0cd44016874c3e9c5fe1 Reviewed-on: https://chromium-review.googlesource.com/509613 Commit-Queue: Mythri Alle <mythria@chromium.org> Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#45720}
-
- 29 May, 2017 1 commit
-
-
Sathya Gunasekaran authored
Implements the Allocate, Add, and HasKey operations. Also, adds GC support for this new instance type. Bug: v8:6443 Change-Id: I1cc7ba2faead2a11f7b0381a57858629e123aee6 Reviewed-on: https://chromium-review.googlesource.com/500447 Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Hannes Payer <hpayer@chromium.org> Reviewed-by:
Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/master@{#45551}
-
- 23 May, 2017 1 commit
-
-
georgia.kouveli authored
This patch also adds sharing of code target entries, which requires sharing the RelocInfo for those entries as well. The disassembler is also modified in order to print comments for the RelocInfo that is now shared. This improves the snapshot size for arm by about 4%. BUG= Review-Url: https://codereview.chromium.org/2869683004 Cr-Commit-Position: refs/heads/master@{#45497}
-
- 16 May, 2017 1 commit
-
-
Georg Neis authored
... by only looking at the handle. This is in preparation for running code generation off the main thread. Bug: v8:6048 Change-Id: I19b105c13278a2821a0b2395033e54abf5552a43 Reviewed-on: https://chromium-review.googlesource.com/506190Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#45333}
-
- 20 Apr, 2017 1 commit
-
-
yangguo authored
- Migrate make grokdump to GYP and GN - Move code from d8 into stand-alone execution - Add test case to ensure it's up-to-date Review-Url: https://codereview.chromium.org/2809653003 Cr-Original-Original-Commit-Position: refs/heads/master@{#44687} Committed: https://chromium.googlesource.com/v8/v8/+/0cc0c130fa56f129c90c2a74cb01bda85df5e42a Review-Url: https://codereview.chromium.org/2809653003 Cr-Original-Commit-Position: refs/heads/master@{#44710} Committed: https://chromium.googlesource.com/v8/v8/+/477f00557458d383bd9ebef281890ba485ee882a Review-Url: https://codereview.chromium.org/2809653003 Cr-Commit-Position: refs/heads/master@{#44738}
-
- 19 Apr, 2017 2 commits
-
-
machenbach authored
Revert of Introduce mkgrokdump to update tools/v8heapconst.py. (patchset #21 id:390001 of https://codereview.chromium.org/2809653003/ ) Reason for revert: Test driver runs into assert: https://build.chromium.org/p/client.v8/builders/V8%20Win64/builds/17082 Original issue's description: > Introduce mkgrokdump to update tools/v8heapconst.py. > > - Migrate make grokdump to GYP and GN > - Move code from d8 into stand-alone execution > - Add test case to ensure it's up-to-date > > Review-Url: https://codereview.chromium.org/2809653003 > Cr-Original-Commit-Position: refs/heads/master@{#44687} > Committed: https://chromium.googlesource.com/v8/v8/+/0cc0c130fa56f129c90c2a74cb01bda85df5e42a > Review-Url: https://codereview.chromium.org/2809653003 > Cr-Commit-Position: refs/heads/master@{#44710} > Committed: https://chromium.googlesource.com/v8/v8/+/477f00557458d383bd9ebef281890ba485ee882a TBR=mstarzinger@chromium.org,yangguo@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review-Url: https://codereview.chromium.org/2826743003 Cr-Commit-Position: refs/heads/master@{#44711}
-
yangguo authored
- Migrate make grokdump to GYP and GN - Move code from d8 into stand-alone execution - Add test case to ensure it's up-to-date Review-Url: https://codereview.chromium.org/2809653003 Cr-Original-Commit-Position: refs/heads/master@{#44687} Committed: https://chromium.googlesource.com/v8/v8/+/0cc0c130fa56f129c90c2a74cb01bda85df5e42a Review-Url: https://codereview.chromium.org/2809653003 Cr-Commit-Position: refs/heads/master@{#44710}
-