- 15 Apr, 2021 1 commit
-
-
Jakob Gruber authored
Some logic still remains, notably in compiler/. Bug: v8:8888 Change-Id: I7e7f10a487e1bc8b90bbbfedbc46bf09bae0717e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2825589 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Dominik Inführ <dinfuehr@chromium.org> Cr-Commit-Position: refs/heads/master@{#73969}
-
- 31 Mar, 2021 1 commit
-
-
Leszek Swirski authored
Remove the requirement to pass the native context into the script cache, simple to be able to access the empty function. Instead, for script cache keys, use Smi::zero() in the 'owner function' slot. This allows CompileUnboundScript to be called outside of a Context scope. Change-Id: I9b4fe6dd43f14944728664f7203b748ced750e76 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2794440 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Auto-Submit: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/master@{#73737}
-
- 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}
-
- 20 Nov, 2020 1 commit
-
-
Leszek Swirski authored
Because of LocalHeap safepoints, our existing assert scopes don't necessarily maintain the same guarantees as desired. In particular, DisallowHeapAllocation no longer guarantees that objects don't move. This patch transitions DisallowHeapAllocation to DisallowGarbageCollection, to ensure that code using this scope is also protected against safepoints. Change-Id: I0411425884f6849982611205fb17bb072881c722 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2540547 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Peter Marshall <petermarshall@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#71319}
-
- 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}
-