- 17 Dec, 2020 1 commit
-
-
Nico Hartmann authored
This CL changes SharedFunctionInfo::GetBytecodeArray to a function template, which is specialized for Isolate and LocalIsolate arguments. This allows main thread only uses to avoid taking a lock. Bug: v8:7790, chromium:1154603 Change-Id: I3462c4e36b66073e09393c01c765dd8a018a98f0 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2595307 Commit-Queue: Nico Hartmann <nicohartmann@chromium.org> Reviewed-by:
Michael Stanton <mvstanton@chromium.org> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#71833}
-
- 02 Dec, 2020 1 commit
-
-
Jakob Gruber authored
This reverts commit 3599cce1. Originally landed in https://chromium-review.googlesource.com/c/v8/v8/+/2531775 Work on NCI is suspended, remove unused complexity. We may want to share native-context-independent feedback in the future, but probably through other means. Bug: v8:8888 Change-Id: I23dfb67f6f01b4891af87bc42a9e62f99d0bf044 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2567701Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Mythri Alle <mythria@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#71553}
-
- 17 Nov, 2020 1 commit
-
-
Jakob Gruber authored
This CL enables a first batch of feedback-based optimizations in NCI code. Specifically, optimizations based on unary, binary, compare, for-in-next, and for-in-prepare feedback are now enabled. This has two main implications: 1. NCI code can now deopt. Deoptimized code is currently thrown away permanently and cannot be reused. Now that shared/cached NCI code can deopt, this leads to an interesting question of what should happen with deoptimized NCI code. The answer in this CL is to remove the cache entry (it may later be re-added). 2. Tiering up from NCI to TF still requires feedback; since NCI code, starting with this CL, no longer collects full feedback, feedback must be created in some other way. This is solved by sharing a context-independent encoding of feedback across native contexts. Feedback is shared through a new SerializedFeedback object type, essentially a byte array of serialized feedback. Currently, only smi-based feedback is shared, but map-based feedback will be added in the future. SerializedFeedback is kept in the NCI cache alongside NCI Code objects. It is created on NCI cache insertion, and deserialized upon NCI cache hits. Bug: v8:8888 Change-Id: Ic0d5fbea3aa4d3b0a165624dab9d0283b07dcee7 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2531775Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Mythri Alle <mythria@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#71224}
-
- 04 Nov, 2020 1 commit
-
-
Jakob Gruber authored
The various compilation caches are tricky to understand. Hopefully some addtl. documentation helps. Bug: v8:8888 Change-Id: I20f2778b5548fcc38724aca600ccf770c240758d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2516476 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Auto-Submit: Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Mythri Alle <mythria@chromium.org> Cr-Commit-Position: refs/heads/master@{#70966}
-
- 03 Nov, 2020 1 commit
-
-
Jakob Gruber authored
Rename files to match contents (src/objects/compilation-cache-table*), and extract implementations from objects.cc into dedicated .cc file. Bug: v8:8888 Change-Id: I02915316ee62186f94373b1859c7d8119a1953f1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2516473 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Dominik Inführ <dinfuehr@chromium.org> Auto-Submit: Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Dominik Inführ <dinfuehr@chromium.org> Cr-Commit-Position: refs/heads/master@{#70944}
-
- 13 Jul, 2020 1 commit
-
-
Jakob Gruber authored
This adds a new Code section to the compilation cache (aka isolate cache), and inserts generated native context independent code into it. Cache consumption will be implemented in a following CL. Bug: v8:8888 Change-Id: I997c13da0fe547f395627a48f1cb7e5f19dfc3ba Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2288851Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#68824}
-
- 10 Jul, 2020 1 commit
-
-
Leszek Swirski authored
Rather than marking deleted GlobalDictionary entries with a "The Hole" valued PropertyCell, we now remove those PropertyCells entirely and use the standard HashTable deleted item marker (also the Hole). This comes with several simplifications: 1) We no longer need a customizable IsKey method on HastTable shapes, which was only used by GlobalDictionary to mark "The Hole" cells as not real keys, 2) We can get rid of IsLive/IsKey from the Shape entirely, and define it directly in the HashTable, which will also allow us (in the future) to encourage caching of "undefined" and "Hole" where used for IsKey checks, 3) PropertyCell invalidation doesn't necessarily have to allocate a new replacement cell (specifically, on deletion), nor does it have to deal with cells that contain the Hole, 4) kNeedsHoleCheck is renamed to kMatchNeedsHoleCheck (to be explicit that this is only needed to guard IsMatch, which may do an indentity comparison and thus not need the HoleCheck guard). It's also moved out of BaseShape and into the various shapes that define IsMatch, to make them more explicitly think about the value, 5) Modified some while loops into for loops to allow clearer use of "continue" on successful hole checks. Change-Id: If591cbb6b49d59726bdc615413aba4f78fd64632 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2292230 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Auto-Submit: Leszek Swirski <leszeks@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#68807}
-
- 06 Jul, 2020 1 commit
-
-
Leszek Swirski authored
This will allow it to take an OffThreadIsolate in the future, without requiring GetIsolate on SharedFunctionInfo. Change-Id: I7db56d5f0587585f829b26e60683c133760d8ff1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2282534Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Auto-Submit: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#68696}
-
- 12 Jun, 2020 1 commit
-
-
Ng Zhi An authored
This default constructor is used in a couple of places (e.g. compilation-cache.cc) to hold a default value that is later overwritten. See https://chromium.googlesource.com/chromium/src/+/HEAD/styleguide/c++/c++-dos-and-donts.md#prefer-to-use. Bug: v8:10488 Change-Id: Ibe4741cebdcf7c350580de3e6b0bd10fd8b7be73 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2240504Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#68327}
-
- 03 Mar, 2020 1 commit
-
-
Leszek Swirski authored
Remove Isolate parameters from some dictionary methods, and change others to use ReadOnlyRoots instead, to prepare for Isolate templatization in a future patch. One small side-effect is that the global dictionary's property cell's dependent code deoptimization has to dynamically get the Isolate when it needs to actually mark code for deoptimization, for method signature consistency. Given that this is the slow path anyway, it shouldn't matter. Bug: chromium:1011762 Change-Id: I707de9a74ca3b30423a1e5830a10729d6a404786 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2080369 Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Auto-Submit: Leszek Swirski <leszeks@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#66574}
-
- 02 Mar, 2020 1 commit
-
-
Leszek Swirski authored
Use macros to unify how HashTable (and subclasses) are marked as externally specialised, and how those specialisations are initialised. This cleanup will make it easier in the future to also add specialisations of HashTable methods for Isolate/OffThreadIsolate. Bug: chromium:1011762 Change-Id: Ibb62cf30d3ba40170e1d35ab72ada0f74963a5c4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2083023 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Auto-Submit: Leszek Swirski <leszeks@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#66528}
-
- 24 May, 2019 1 commit
-
-
Yang Guo authored
TBR=mvstanton@chromium.org,neis@chromium.org,ahaas@chromium.org Bug: v8:9247 Change-Id: I5433c863a54f3412d73df0d38aba3fdbcfac7ebe Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1627973 Commit-Queue: Yang Guo <yangguo@chromium.org> Auto-Submit: Yang Guo <yangguo@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#61830}
-
- 25 Feb, 2019 1 commit
-
-
Maciej Goszczycki authored
This means ReadOnlyDeserializer can be made isolate independent. Without this Isolate is needed for rehashing read-only space. Bug: v8:7464 Change-Id: Id2c9968a0ecfa2362f499ded6c7e0f7b2be00dfb Reviewed-on: https://chromium-review.googlesource.com/c/1483054 Commit-Queue: Maciej Goszczycki <goszczycki@google.com> Reviewed-by:
Dan Elphick <delphick@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#59823}
-
- 09 Jan, 2019 1 commit
-
-
Jakob Kummerow authored
The incremental migration required several pairs of functionally equivalent macros. This patch consolidates everything onto the respective new version and drops the obsolete versions. Bug: v8:3770 Change-Id: I4fb05ff223e8250c83a13f46840810b0893f410b Reviewed-on: https://chromium-review.googlesource.com/c/1398223Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Andreas Haas <ahaas@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#58659}
-
- 26 Dec, 2018 1 commit
-
-
Jakob Kummerow authored
Tbr: ahaas@chromium.org,leszeks@chromium.org,verwaest@chromium.org Bug: v8:3770 Change-Id: Ia6530fbb70dac05e9972283781c3550d8b50e1eb Reviewed-on: https://chromium-review.googlesource.com/c/1390116 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Alexei Filippov <alph@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#58470}
-
- 17 Dec, 2018 1 commit
-
-
Jakob Kummerow authored
FeedbackCell, FunctionTemplateRareData, TemplateInfo, FunctionTemplateInfo, ObjectTemplateInfo Bug: v8:3770 Change-Id: Ic30ff2563fe30088b7740d5e98ade03cdae7fdd8 Reviewed-on: https://chromium-review.googlesource.com/c/1377459 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#58274}
-
- 30 Nov, 2018 3 commits
-
-
Ross McIlroy authored
This is a reland of 10ea3f8a Original change's description: > [Compiler] Introduce IsCompiledScope which prevents flushing of compiled code > > Introduces a IsCompiledScope object which can be used to check whether a > function is compiled, and ensure it remains compiled for the lifetime > of the scope without being uncompiled by bytecode flushing. The Compile > functions are modified to take a scope so that calling code can ensure > the function remains compiled for the lifetime they require. > > Also, don't allocate a feedback vector for asm-wasm code as this > is never used, and will be reallocated if the asm-wasm code fails to > instantiate the module and we fallback to regular JavaScript. > > Also restructure Compiler::PostInstantiation() to allocate the feedback > vector once, and do the optimized code check before optimizing for > always opt. > > BUG=v8:8395 > > Change-Id: I3f1a71143fcae3d1a0c01eefe91ebb4b8594221a > Reviewed-on: https://chromium-review.googlesource.com/c/1352295 > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> > Cr-Commit-Position: refs/heads/master@{#57971} TBR=jgruber@chromium.org,mstarzinger@chromium.org Bug: v8:8395 Change-Id: I8dc00798a5680997990c879c3380fe4febd47297 Reviewed-on: https://chromium-review.googlesource.com/c/1357045 Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#57982}
-
Ross McIlroy authored
This reverts commit 10ea3f8a. Reason for revert: Causing failure on gc_stress bot: https://logs.chromium.org/logs/v8/buildbucket/cr-buildbucket.appspot.com/8928421099411850688/+/steps/Bisect_10ea3f8a/0/steps/Retry/0/logs/collections-construct../0 Original change's description: > [Compiler] Introduce IsCompiledScope which prevents flushing of compiled code > > Introduces a IsCompiledScope object which can be used to check whether a > function is compiled, and ensure it remains compiled for the lifetime > of the scope without being uncompiled by bytecode flushing. The Compile > functions are modified to take a scope so that calling code can ensure > the function remains compiled for the lifetime they require. > > Also, don't allocate a feedback vector for asm-wasm code as this > is never used, and will be reallocated if the asm-wasm code fails to > instantiate the module and we fallback to regular JavaScript. > > Also restructure Compiler::PostInstantiation() to allocate the feedback > vector once, and do the optimized code check before optimizing for > always opt. > > BUG=v8:8395 > > Change-Id: I3f1a71143fcae3d1a0c01eefe91ebb4b8594221a > Reviewed-on: https://chromium-review.googlesource.com/c/1352295 > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> > Cr-Commit-Position: refs/heads/master@{#57971} TBR=rmcilroy@chromium.org,mstarzinger@chromium.org,jgruber@chromium.org Change-Id: I1449a02a0aceb9757440757628e586df33972a40 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:8395 Reviewed-on: https://chromium-review.googlesource.com/c/1357042Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#57974}
-
Ross McIlroy authored
Introduces a IsCompiledScope object which can be used to check whether a function is compiled, and ensure it remains compiled for the lifetime of the scope without being uncompiled by bytecode flushing. The Compile functions are modified to take a scope so that calling code can ensure the function remains compiled for the lifetime they require. Also, don't allocate a feedback vector for asm-wasm code as this is never used, and will be reallocated if the asm-wasm code fails to instantiate the module and we fallback to regular JavaScript. Also restructure Compiler::PostInstantiation() to allocate the feedback vector once, and do the optimized code check before optimizing for always opt. BUG=v8:8395 Change-Id: I3f1a71143fcae3d1a0c01eefe91ebb4b8594221a Reviewed-on: https://chromium-review.googlesource.com/c/1352295Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#57971}
-
- 28 Nov, 2018 1 commit
-
-
Jakob Kummerow authored
Bug: v8:3770 Change-Id: If405611d359d29ae1958beebd9202e068434a621 Reviewed-on: https://chromium-review.googlesource.com/c/1350286 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#57918}
-
- 27 Nov, 2018 1 commit
-
-
Jakob Kummerow authored
Bug: v8:3770 Change-Id: I4da6404aa968adca1fbb49029fc304622101d6c3 Reviewed-on: https://chromium-review.googlesource.com/c/1349112 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#57853}
-
- 23 Nov, 2018 1 commit
-
-
Jakob Kummerow authored
Bug: v8:3770 Change-Id: I9a3f289ac6236b88476167150565e8183d6f5461 Reviewed-on: https://chromium-review.googlesource.com/c/1345326 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#57764}
-
- 05 Nov, 2018 1 commit
-
-
Jakob Kummerow authored
and split Smi out of objects.h into smi.h. Bug: v8:3770, v8:5402 Change-Id: I5ff7461495d29c785a76c79aca2616816a29ab1e Reviewed-on: https://chromium-review.googlesource.com/c/1313035Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Reviewed-by:
Hannes Payer <hpayer@chromium.org> Reviewed-by:
Adam Klein <adamk@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#57252}
-
- 31 Oct, 2018 1 commit
-
-
Toon Verwaest authored
We'd flatten upon compile anyway; and hashing the cons string also creates a local flattened version that's not cached. Change-Id: Ib5c82385ab009464b45bf1ceb289d04caaa77fcf Reviewed-on: https://chromium-review.googlesource.com/c/1309827Reviewed-by:
Igor Sheludko <ishell@chromium.org> Commit-Queue: Maya Lekova <mslekova@chromium.org> Cr-Commit-Position: refs/heads/master@{#57182}
-
- 14 Sep, 2018 1 commit
-
-
Georg Neis authored
Change-Id: If90c13658713cbfdf06200e49773e67495dce85b Reviewed-on: https://chromium-review.googlesource.com/1225754Reviewed-by:
Michael Stanton <mvstanton@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#55891}
-
- 13 Sep, 2018 1 commit
-
-
Clemens Hammacher authored
HeapObject::GetHeap and HeapObject::GetIsolate are gone since https://crrev.com/c/1140319 (landed in July), hence we can clean up the using declarations to force use of the methods declared in NeverReadOnlySpaceObject. R=delphick@chromium.org Bug: v8:7786 Change-Id: Iec4edd394ac57a3f378dd1a9a100320e82cf8ea5 Reviewed-on: https://chromium-review.googlesource.com/1224414Reviewed-by:
Dan Elphick <delphick@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#55863}
-
- 13 Jul, 2018 1 commit
-
-
Dan Elphick authored
All auto-generated with some fix-ups including marking the following classes as NeverReadOnlySpaceObject so their GetIsolate/GetHeap methods are safe to use: Code, CodeDataContainer, AbstractCode, DeoptimizationData, CompilationCacheTable, NormalizedMapCache, Script, SharedFunctionInfo TBR=yangguo@chromium.org Bug: v8:7786 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: I6cb5dcca88a0bc99b5afe80f553e06a661b5da3c Reviewed-on: https://chromium-review.googlesource.com/1135306 Commit-Queue: Dan Elphick <delphick@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#54439}
-
- 12 Jul, 2018 1 commit
-
-
Dan Elphick authored
Bug: v8:7786 Change-Id: If9615f5dffc40937f9f35a209730d530be6b424b Reviewed-on: https://chromium-review.googlesource.com/1134986Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Reviewed-by:
Peter Marshall <petermarshall@chromium.org> Commit-Queue: Dan Elphick <delphick@chromium.org> Cr-Commit-Position: refs/heads/master@{#54407}
-
- 03 May, 2018 1 commit
-
-
Toon Verwaest authored
There are likely cleanups that can be done after this CL: - context-related functions in the interpreter and compiler take ScopeInfo as well as ScopeType and slot-count as input. The latter 2 should be directly derived from the former. We should be able to drop FunctionContextParameters. - ContextExtension is probably not needed anymore, since we now always have the correct scope_info directly in the SCOPE_INFO_INDEX slot. Bug: v8:7066 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng;master.tryserver.blink:linux_trusty_blink_rel Change-Id: Ie1f6134c686a9f2183e54730d9cdd598a9e5ab67 Reviewed-on: https://chromium-review.googlesource.com/785151 Commit-Queue: Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Hannes Payer <hpayer@chromium.org> Reviewed-by:
Adam Klein <adamk@chromium.org> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#52952}
-
- 22 Feb, 2018 1 commit
-
-
Benedikt Meurer authored
This is preparatory cleanup work for eventually tracking the functions (rather than concrete closures) in the CALL_IC, also for builtins like the default PromiseCapability [[Resolve]] and [[Reject]] functions. It adds a new FeedbackCell type, which is used by JSFunctions consistently now to reference the feedback vector (or undefined if not the function is not compiled yet or is a native/asm.js function). This also changes the calling convention for FastNewClosure builtin and the JSCreateClosure operator in TurboFan to carry the FeedbackCell here instead of the parent FeedbackVector and the slot index. In addition we eliminate the now unused %InterpreterNewClosure runtime function. Bug: v8:2206, v8:7253, v8:7310 Change-Id: Ib4ce456e276e0273e57c163dcdd0b33abf863656 Reviewed-on: https://chromium-review.googlesource.com/928403 Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Michael Stanton <mvstanton@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#51474}
-
- 21 Feb, 2018 1 commit
-
-
Ross McIlroy authored
The compilation logic never used the saved FeedbackVector for Script compiles when looking up the CompilationCache, so remove it and simplify the return value of LookupScript to be a MaybeHandle<SharedFunctionInfo> Change-Id: Ib1d833f997b299e2e79621bd8509bdfd911d4e10 Reviewed-on: https://chromium-review.googlesource.com/924002 Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by:
Michael Stanton <mvstanton@chromium.org> Cr-Commit-Position: refs/heads/master@{#51443}
-
- 17 Oct, 2017 1 commit
-
-
Marja Hölttä authored
BUG=v8:5402,v8:6921 Change-Id: Iab2509554718a6beca73217f80cafedf650bd066 Reviewed-on: https://chromium-review.googlesource.com/718741Reviewed-by:
Andreas Haas <ahaas@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/master@{#48629}
-
- 29 Jun, 2017 1 commit
-
-
titzer authored
R=marja@chromium.org BUG= Review-Url: https://codereview.chromium.org/2961253002 Cr-Commit-Position: refs/heads/master@{#46321}
-
- 22 Jun, 2017 1 commit
-
-
Toon Verwaest authored
Bug: Change-Id: I52bd9573735ac7c28a03e070064fe89b38d479ef Reviewed-on: https://chromium-review.googlesource.com/544957Reviewed-by:
Camillo Bruni <cbruni@chromium.org> Commit-Queue: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#46141}
-
- 13 Jun, 2017 1 commit
-
-
Toon Verwaest authored
Bug: Change-Id: I9f0329b69693749c243c05b27c542c4ccdd71a11 Reviewed-on: https://chromium-review.googlesource.com/531244Reviewed-by:
Camillo Bruni <cbruni@chromium.org> Commit-Queue: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#45891}
-
- 12 Jun, 2017 2 commits
-
-
Toon Verwaest authored
Distinguish the compilation caches instead by the shape of the key (cow fixed array map meaning eval or script cache). This allows us to remove the odd "key" argument from Shrink, EnsureCapacity and Rehash. Bug: v8:6474 Change-Id: Ibcad22813063c3a9050da13dc51359f5b59e1254 Reviewed-on: https://chromium-review.googlesource.com/531184Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Camillo Bruni <cbruni@chromium.org> Commit-Queue: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#45873}
-
Toon Verwaest authored
Only the CompilationCache doesn't actually specialize the table to the point where it knows how to hash stored keys. This moves the virtual HashForObject down from HashTableKey to CompilationCacheKey, and moves previous virtual implementations to the respective shapes. Bug: v8:6474 Change-Id: I0a1ae26a224d602d16692d2b09c96a2ab193f07f Reviewed-on: https://chromium-review.googlesource.com/529110Reviewed-by:
Camillo Bruni <cbruni@chromium.org> Commit-Queue: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#45842}
-
- 09 Jun, 2017 1 commit
-
-
Toon Verwaest authored
Shape also contains the Key type. Read it through there instead. Bug: v8:6474 Also-By: cbruni@chromium.org Change-Id: Ia47f6143c671c104901a714d4151c9fe9f525b5f Reviewed-on: https://chromium-review.googlesource.com/529305Reviewed-by:
Camillo Bruni <cbruni@chromium.org> Commit-Queue: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#45818}
-
- 06 Apr, 2017 1 commit
-
-
Marja Hölttä authored
BUG=v8:5402 R=mstarzinger@chromium.org Change-Id: I8ce43504fee83dcb6859418a526b2c7aea52e778 Reviewed-on: https://chromium-review.googlesource.com/468968 Commit-Queue: Marja Hölttä <marja@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#44436}
-