- 24 Aug, 2021 1 commit
-
-
Dan Elphick authored
This is a reland of d1b27019 Fixes include: Adding missing file to bazel build Forward-declaring classing before friend-classing them to fix win/gcc Add missing v8-isolate.h include for vtune builds Original change's description: > [include] Split out v8.h > > This moves every single class/function out of include/v8.h into a > separate header in include/, which v8.h then includes so that > externally nothing appears to have changed. > > Every include of v8.h from inside v8 has been changed to a more > fine-grained include. > > Previously inline functions defined at the bottom of v8.h would call > private non-inline functions in the V8 class. Since that class is now > in v8-initialization.h and is rarely included (as that would create > dependency cycles), this is not possible and so those methods have been > moved out of the V8 class into the namespace v8::api_internal. > > None of the previous files in include/ now #include v8.h, which means > if embedders were relying on this transitive dependency then it will > give compile failures. > > v8-inspector.h does depend on v8-scripts.h for the time being to ensure > that Chrome continue to compile but that change will be reverted once > those transitive #includes in chrome are changed to include it directly. > > Full design: > https://docs.google.com/document/d/1rTD--I8hCAr-Rho1WTumZzFKaDpEp0IJ8ejZtk4nJdA/edit?usp=sharing > > Bug: v8:11965 > Change-Id: I53b84b29581632710edc80eb11f819c2097a2877 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3097448 > Reviewed-by: Yang Guo <yangguo@chromium.org> > Reviewed-by: Camillo Bruni <cbruni@chromium.org> > Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> > Reviewed-by: Leszek Swirski <leszeks@chromium.org> > Reviewed-by: Michael Lippautz <mlippautz@chromium.org> > Commit-Queue: Dan Elphick <delphick@chromium.org> > Cr-Commit-Position: refs/heads/main@{#76424} Cq-Include-Trybots: luci.v8.try:v8_linux_vtunejit Bug: v8:11965 Change-Id: I99f5d3a73bf8fe25b650adfaf9567dc4e44a09e6 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3113629Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Reviewed-by:
Camillo Bruni <cbruni@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Simon Zünd <szuend@chromium.org> Commit-Queue: Dan Elphick <delphick@chromium.org> Cr-Commit-Position: refs/heads/main@{#76460}
-
- 23 Aug, 2021 2 commits
-
-
Dan Elphick authored
This reverts commit d1b27019. Reason for revert: Broke vtune build, tsan build and possibly others Original change's description: > [include] Split out v8.h > > This moves every single class/function out of include/v8.h into a > separate header in include/, which v8.h then includes so that > externally nothing appears to have changed. > > Every include of v8.h from inside v8 has been changed to a more > fine-grained include. > > Previously inline functions defined at the bottom of v8.h would call > private non-inline functions in the V8 class. Since that class is now > in v8-initialization.h and is rarely included (as that would create > dependency cycles), this is not possible and so those methods have been > moved out of the V8 class into the namespace v8::api_internal. > > None of the previous files in include/ now #include v8.h, which means > if embedders were relying on this transitive dependency then it will > give compile failures. > > v8-inspector.h does depend on v8-scripts.h for the time being to ensure > that Chrome continue to compile but that change will be reverted once > those transitive #includes in chrome are changed to include it directly. > > Full design: > https://docs.google.com/document/d/1rTD--I8hCAr-Rho1WTumZzFKaDpEp0IJ8ejZtk4nJdA/edit?usp=sharing > > Bug: v8:11965 > Change-Id: I53b84b29581632710edc80eb11f819c2097a2877 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3097448 > Reviewed-by: Yang Guo <yangguo@chromium.org> > Reviewed-by: Camillo Bruni <cbruni@chromium.org> > Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> > Reviewed-by: Leszek Swirski <leszeks@chromium.org> > Reviewed-by: Michael Lippautz <mlippautz@chromium.org> > Commit-Queue: Dan Elphick <delphick@chromium.org> > Cr-Commit-Position: refs/heads/main@{#76424} Bug: v8:11965 Change-Id: Id57313ae992e720c8b19abc975cd69729e1344aa No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3113627 Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Owners-Override: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#76428}
-
Dan Elphick authored
This moves every single class/function out of include/v8.h into a separate header in include/, which v8.h then includes so that externally nothing appears to have changed. Every include of v8.h from inside v8 has been changed to a more fine-grained include. Previously inline functions defined at the bottom of v8.h would call private non-inline functions in the V8 class. Since that class is now in v8-initialization.h and is rarely included (as that would create dependency cycles), this is not possible and so those methods have been moved out of the V8 class into the namespace v8::api_internal. None of the previous files in include/ now #include v8.h, which means if embedders were relying on this transitive dependency then it will give compile failures. v8-inspector.h does depend on v8-scripts.h for the time being to ensure that Chrome continue to compile but that change will be reverted once those transitive #includes in chrome are changed to include it directly. Full design: https://docs.google.com/document/d/1rTD--I8hCAr-Rho1WTumZzFKaDpEp0IJ8ejZtk4nJdA/edit?usp=sharing Bug: v8:11965 Change-Id: I53b84b29581632710edc80eb11f819c2097a2877 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3097448Reviewed-by:
Yang Guo <yangguo@chromium.org> Reviewed-by:
Camillo Bruni <cbruni@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Dan Elphick <delphick@chromium.org> Cr-Commit-Position: refs/heads/main@{#76424}
-
- 19 Jul, 2021 1 commit
-
-
Igor Sheludko authored
... for visiting slots containing pointers to Code objects when external code space mode is enabled. These slots will require different handling once the code space is moved out of the V8 heap cage. This CL also introduces IsValidCodeObject() predicate similar to IsValidHeapObject() for checking if given HeapObject is a valid Code object. Tbr: cbruni@chromium.org Bug: v8:11880 Change-Id: I430940f4503cebfd2a6d387e44349810991a93e9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3032085Reviewed-by:
Igor Sheludko <ishell@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#75787}
-
- 06 Jul, 2021 1 commit
-
-
Wenyu Zhao authored
This CL make TPH be able to access some heap private interfaces, by marking TPH classes as friend classes. Bug: v8:11641 Change-Id: I72aebf267c8f36593f50279bec5dccb44cda9528 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2994220 Auto-Submit: Wenyu Zhao <wenyu.zhao@anu.edu.au> Reviewed-by:
Dominik Inführ <dinfuehr@chromium.org> Commit-Queue: Wenyu Zhao <wenyu.zhao@anu.edu.au> Cr-Commit-Position: refs/heads/master@{#75572}
-
- 03 Jul, 2021 1 commit
-
-
Wenyu Zhao authored
* Fix IsPendingAllocation check * Fix IsImmovable check * Skip some space checks in Heap::CompactWeakArrayLists and Heap::ExternalStringTable::CleanUpAll -- They assumes some objects are allocated to old or new space, which may not be true for TPH. Bug: v8:11641 Change-Id: I21d9e3a71f6169bfd19e9a521ee378d7b9f74fa8 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2994221Reviewed-by:
Dominik Inführ <dinfuehr@chromium.org> Commit-Queue: Wenyu Zhao <wenyu.zhao@anu.edu.au> Cr-Commit-Position: refs/heads/master@{#75542}
-
- 17 May, 2021 1 commit
-
-
Wenyu Zhao authored
This CL fixes a failed DCHECK due to incorrect heap capacity. Also skips three new tests that create multiple isolates. Bug: v8:11641 Change-Id: I1061b3370efbe2b272bd490705fc728d6bb26910 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2896644 Auto-Submit: Wenyu Zhao <wenyu.zhao@anu.edu.au> Commit-Queue: Dominik Inführ <dinfuehr@chromium.org> Reviewed-by:
Dominik Inführ <dinfuehr@chromium.org> Cr-Commit-Position: refs/heads/master@{#74583}
-
- 03 May, 2021 1 commit
-
-
Wenyu Zhao authored
* Mostly are heap/space/page checks. Bug: v8:11641 Change-Id: Ia1726f414109ac5e8a3bdb18ccaa46a63db6bc95 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2849823 Commit-Queue: Wenyu Zhao <wenyu.zhao@anu.edu.au> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#74317}
-
- 13 Oct, 2020 1 commit
-
-
Javad Amiri authored
Bug: v8:9533 Change-Id: I87d653147896530a4b5115b126d652f626dd4665 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2463005Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#70481}
-
- 21 Apr, 2020 1 commit
-
-
Ben Noordhuis authored
Provide a stub `third_party_heap::Heap` implementation to work around linker erors with Visual Studio. cl.exe in debug mode seems to eliminate dead code not as aggressively as clang or gcc, resulting in references to `third_party_heap::Heap` remaining in unreachable code paths. Refs: https://github.com/bnoordhuis/v8-cmake/issues/10 Bug: v8:10427 Change-Id: I61fde11697adc663b182f60c132eda435a7f11bd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2159490 Commit-Queue: Ben Noordhuis <info@bnoordhuis.nl> Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Auto-Submit: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#67293}
-
- 06 Feb, 2020 1 commit
-
-
Steve Blackburn authored
Code ranges are currently accessed from outside the heap via an internal structure of the heap. This change lifts the accessor function a level higher. This should have no cost, but will maintain abstraction better and allow the TPH interface to work more readily. Bug: v8:9533 Change-Id: I154d93ce46f5137b3e3b7ecc6bed7e5b8b0343a6 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2039351Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Steve Blackburn <steveblackburn@google.com> Cr-Commit-Position: refs/heads/master@{#66152}
-
- 04 Feb, 2020 1 commit
-
-
Steve Blackburn authored
Change the TPH API so that it uses v8::internal::Isolate rather than v8::isolate. The third party heap is within the internal namespace and ultimately needs access to v8::internal::Isolate to do things such as adding code ranges. There's no reason for it to use v8:Isolate. Bug: v8:9533 Change-Id: I8c3ecd6278081f03133013d4e3b02fb3ed228baf Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2036088Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Steve Blackburn <steveblackburn@google.com> Cr-Commit-Position: refs/heads/master@{#66113}
-
- 27 Jan, 2020 1 commit
-
-
Steve Blackburn authored
Bug: v8:9533 Change-Id: Id51430bb2ad7a782cf30542d0d7117d271079423 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2019164Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Steve Blackburn <steveblackburn@google.com> Cr-Commit-Position: refs/heads/master@{#65996}
-
- 23 Jan, 2020 1 commit
-
-
Steve Blackburn authored
The TPH needs to support the idea of 'code' objects, and the ability to query whether an object is of this type. Bug: v8:9533 Change-Id: Ic36b235bd9640aa675a3ef0d8c3f6c98dd8cd862 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2013116Reviewed-by:
Peter Marshall <petermarshall@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Steve Blackburn <steveblackburn@google.com> Cr-Commit-Position: refs/heads/master@{#65948}
-
- 22 Jan, 2020 1 commit
-
-
Steve Blackburn authored
Bug: v8:9533 Change-Id: Ia2239a591abf68f64efe4a993671b7184a5cf5cf Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2013115 Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#65932}
-
- 17 Jan, 2020 1 commit
-
-
Steve Blackburn authored
Bug: v8:9533 Change-Id: I11ae71b552d2ba96606e99261092d99dc92e680f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1995266 Commit-Queue: Steve Blackburn <steveblackburn@google.com> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#65843}
-
- 22 Nov, 2019 1 commit
-
-
Steve Blackburn authored
This CL adds build flags for pluging in third-party heap implementation. Additionally it redirects allocation requests when the flags are on. Bug: v8:9533 Change-Id: I7ef300ca9dc2b5f498a13211611ae4b4b3df8fa0 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1928860 Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#65114}
-