- 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}
-
- 13 Feb, 2020 1 commit
-
-
Leszek Swirski authored
This is a reland of 453e1a3b Added canonical "empty" arrays to ScannerStream::ForTesting, for the zero-length nullptr data case. Original change's description: > [offthread] Add SFI support to OffThreadFactory > > Add support for off-thread SharedFunctionInfo allocation, which > includes UncompiledData and PreparseData allocation. > > Bug: chromium:1011762 > Change-Id: Ia10f9ce762c7d7eb1108b9e71da75131dce919b7 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2050393 > Commit-Queue: Leszek Swirski <leszeks@chromium.org> > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Reviewed-by: Igor Sheludko <ishell@chromium.org> > Cr-Commit-Position: refs/heads/master@{#66246} TBR=ulan@chromium.org Bug: chromium:1011762 Change-Id: I37d2c6b9317548922913887940a0164cc2067efb Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2054085Reviewed-by: Igor Sheludko <ishell@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#66253}
-
- 12 Feb, 2020 2 commits
-
-
Maya Lekova authored
This reverts commit 453e1a3b. Reason for revert: Makes UBSan unhappy - https://ci.chromium.org/p/v8/builders/ci/V8%20Linux64%20UBSan/9893 Original change's description: > [offthread] Add SFI support to OffThreadFactory > > Add support for off-thread SharedFunctionInfo allocation, which > includes UncompiledData and PreparseData allocation. > > Bug: chromium:1011762 > Change-Id: Ia10f9ce762c7d7eb1108b9e71da75131dce919b7 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2050393 > Commit-Queue: Leszek Swirski <leszeks@chromium.org> > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Reviewed-by: Igor Sheludko <ishell@chromium.org> > Cr-Commit-Position: refs/heads/master@{#66246} TBR=ulan@chromium.org,leszeks@chromium.org,ishell@chromium.org Change-Id: I26bc40ec1c351613f19745aed83f0c3a9fdd9a20 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: chromium:1011762 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2052172Reviewed-by: Maya Lekova <mslekova@chromium.org> Commit-Queue: Maya Lekova <mslekova@chromium.org> Cr-Commit-Position: refs/heads/master@{#66247}
-
Leszek Swirski authored
Add support for off-thread SharedFunctionInfo allocation, which includes UncompiledData and PreparseData allocation. Bug: chromium:1011762 Change-Id: Ia10f9ce762c7d7eb1108b9e71da75131dce919b7 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2050393 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#66246}
-
- 13 Sep, 2019 1 commit
-
-
Clemens Hammacher authored
After https://crrev.com/c/1800575 and https://crrev.com/c/1803343, which tried to fix this on occuring compile errors, this CL systematically adds the <memory> include to each header that uses {std::unique_ptr}. R=sigurds@chromium.org TBR=mlippautz@chromium.org,alph@chromium.org,rmcilroy@chromium.org,verwaest@chromium.org Bug: v8:9396 Change-Id: If7f9c3140842f9543135dddd7344c0f357999da0 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1803349Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#63767}
-
- 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 Sep, 2018 2 commits
-
-
Ross McIlroy authored
This is a reland of 31228a69 TBR=yangguo@chromium.org,verwaest@chromium.org Original change's description: > [Compile] Refactor BackgroundCompileTask to enable its use by CompilerDispatcher > > Splits background compilation data out of ScriptStreamingData and into > BackgroundCompileTask. Also makes BackgroundCompileTask no longer a sub-class > of ScriptStreamingTask, and instead have ScriptStreamingTask delegate to a > BackgroundCompileTask. > > As part of this change, we now create the CharacterStream on the main thread, > and therefore have to set the (thread-local) runtime_call_stats on the already > created CharacterStream when the BackgroundCompileTask is run on the background > thread. As such, changes to CharacterStream were needed to feed the > runtime_call_stats through appropriately. > > Deprecates Source::GetCachedData and StreamedSource::GetCachedData since they are > no longer used, and the streamed source never has cached data (streaming is > suppressed if cached data is available). Also removes Utf8ChunkedStream which > is dead code. > > BUG=v8:8041, v8:8015 > TBR=yangguo@chromium.org > > Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng > Change-Id: Ifcc723ebf930a1dc01135fcb70929d6168471cb3 > Reviewed-on: https://chromium-review.googlesource.com/1236353 > Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> > Reviewed-by: Toon Verwaest <verwaest@chromium.org> > Cr-Commit-Position: refs/heads/master@{#56182} Bug: v8:8041, v8:8015 Change-Id: Ied5132c537d4c25c6e355f289c2a9cc1f8ff98e9 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Reviewed-on: https://chromium-review.googlesource.com/1242097 Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Maya Lekova <mslekova@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#56201}
-
Maya Lekova authored
This reverts commit 31228a69. Reason for revert: Introduces new pretty consistent flakes on Linux sanitizers, one of which block LKGR. Please see https://crbug.com/v8/8219 Original change's description: > [Compile] Refactor BackgroundCompileTask to enable its use by CompilerDispatcher > > Splits background compilation data out of ScriptStreamingData and into > BackgroundCompileTask. Also makes BackgroundCompileTask no longer a sub-class > of ScriptStreamingTask, and instead have ScriptStreamingTask delegate to a > BackgroundCompileTask. > > As part of this change, we now create the CharacterStream on the main thread, > and therefore have to set the (thread-local) runtime_call_stats on the already > created CharacterStream when the BackgroundCompileTask is run on the background > thread. As such, changes to CharacterStream were needed to feed the > runtime_call_stats through appropriately. > > Deprecates Source::GetCachedData and StreamedSource::GetCachedData since they are > no longer used, and the streamed source never has cached data (streaming is > suppressed if cached data is available). Also removes Utf8ChunkedStream which > is dead code. > > BUG=v8:8041, v8:8015 > TBR=yangguo@chromium.org > > Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng > Change-Id: Ifcc723ebf930a1dc01135fcb70929d6168471cb3 > Reviewed-on: https://chromium-review.googlesource.com/1236353 > Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> > Reviewed-by: Toon Verwaest <verwaest@chromium.org> > Cr-Commit-Position: refs/heads/master@{#56182} TBR=rmcilroy@chromium.org,yangguo@chromium.org,verwaest@chromium.org Change-Id: Ib05bcbde2e9a588bd4008d2155f75cdac5cc47f5 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:8041, v8:8015 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Reviewed-on: https://chromium-review.googlesource.com/1241958Reviewed-by: Maya Lekova <mslekova@chromium.org> Commit-Queue: Maya Lekova <mslekova@chromium.org> Cr-Commit-Position: refs/heads/master@{#56187}
-
- 24 Sep, 2018 1 commit
-
-
Ross McIlroy authored
Splits background compilation data out of ScriptStreamingData and into BackgroundCompileTask. Also makes BackgroundCompileTask no longer a sub-class of ScriptStreamingTask, and instead have ScriptStreamingTask delegate to a BackgroundCompileTask. As part of this change, we now create the CharacterStream on the main thread, and therefore have to set the (thread-local) runtime_call_stats on the already created CharacterStream when the BackgroundCompileTask is run on the background thread. As such, changes to CharacterStream were needed to feed the runtime_call_stats through appropriately. Deprecates Source::GetCachedData and StreamedSource::GetCachedData since they are no longer used, and the streamed source never has cached data (streaming is suppressed if cached data is available). Also removes Utf8ChunkedStream which is dead code. BUG=v8:8041, v8:8015 TBR=yangguo@chromium.org Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: Ifcc723ebf930a1dc01135fcb70929d6168471cb3 Reviewed-on: https://chromium-review.googlesource.com/1236353 Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#56182}
-
- 21 Aug, 2018 1 commit
-
-
Toon Verwaest authored
This reverts the following 3 CLs: Revert "[scanner] Templatize scan functions by encoding" Revert "[asm] Remove invalid static cast of character stream" Revert "[scanner] Prepare CharacterStreams for specializing scanner and parser by character type" The original idea behind this work was to avoid copying, converting and buffering characters to be scanned by specializing the scanner functions. The additional benefit was for scanner functions to have a bigger window over the input. Even though we can get a pretty nice speedup from having a larger window, in practice this rarely helps. The cost is a larger binary. Since we can't eagerly convert utf8 to utf16 due to memory overhead, we'd also need to have a specialized version of the scanner just for utf8. That's pretty complex, and likely won't be better than simply bulk converting and buffering utf8 as utf16. Change-Id: Ic3564683932a0097e3f9f51cd88f62c6ac879dcb Reviewed-on: https://chromium-review.googlesource.com/1183190Reviewed-by: Andreas Haas <ahaas@chromium.org> Reviewed-by: Marja Hölttä <marja@chromium.org> Commit-Queue: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#55258}
-
- 20 Aug, 2018 1 commit
-
-
Toon Verwaest authored
This way we can avoid reencoding everything to utf16 (buffered) and avoid the overhead of needing to check the encoding for each character individually. This may result in a minor asm.js scanning regression due to one-byte tokens possibly being more common. Change-Id: I90b51c256d56d4f4fa2d235d7e1e58fc01e43f31 Reviewed-on: https://chromium-review.googlesource.com/1172437 Commit-Queue: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#55217}
-
- 16 Aug, 2018 1 commit
-
-
Toon Verwaest authored
Change-Id: Ic70a83335c60ba2f1f656398fc6b19db7af99348 Reviewed-on: https://chromium-review.googlesource.com/1175915 Commit-Queue: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#55157}
-
- 01 Aug, 2018 1 commit
-
-
Toon Verwaest authored
This templatizes CharacterStream by char type, and makes them subclass ScannerStream. Methods that are widely used by tests are marked virtual on ScannerStream and final on CharacterStream<T> so the specialized scanner will know what to call. ParseInfo passes around ScannerStream, but the scanner requires the explicit CharacterStream<T>. Since AdvanceUntil is templatized by FunctionType, I couldn't mark that virtual; so instead I adjusted those tests to operate directly on ucs2 (not utf8 since we'll drop that in the future). In the end no functionality was changed. Some calls became virtual in tests. This is mainly just preparation. Change-Id: I0b4def65d3eb8fa5c806027c7e9123a590ebbdb5 Reviewed-on: https://chromium-review.googlesource.com/1156690 Commit-Queue: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/master@{#54848}
-
- 05 Jul, 2018 2 commits
-
-
Toon Verwaest authored
Additionally now we only scan over flat heap strings. Change-Id: Ia73c538a3c7923ec66089e16efa529ef3cea2d06 Reviewed-on: https://chromium-review.googlesource.com/1126938 Commit-Queue: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/master@{#54258}
-
Yang Guo authored
This reverts commit 5f2f418d. Reason for revert: Speculative revert for LayoutTest timeouts https://ci.chromium.org/buildbot/client.v8.fyi/V8-Blink%20Linux%2064/24596 https://ci.chromium.org/p/v8/builders/luci.v8.ci/V8-Blink%20Linux%2064%20-%20future/4707 https://ci.chromium.org/buildbot/client.v8.fyi/V8-Blink%20Linux%2064%20(dbg)/12467 Original change's description: > [scanner] Rewrite character streams by separating underlying bytestreams from buffering. > > Additionally now we only scan over flat heap strings. > > Change-Id: Ic449b19aecd7fc3f283a04a3df6a39772d471565 > Reviewed-on: https://chromium-review.googlesource.com/1125854 > Reviewed-by: Marja Hölttä <marja@chromium.org> > Commit-Queue: Toon Verwaest <verwaest@chromium.org> > Cr-Commit-Position: refs/heads/master@{#54224} TBR=marja@chromium.org,verwaest@chromium.org Change-Id: Ica3026f318a85ec6bb24a38a8cd998f12c146d7e No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/1126819Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#54231}
-
- 04 Jul, 2018 1 commit
-
-
Toon Verwaest authored
Additionally now we only scan over flat heap strings. Change-Id: Ic449b19aecd7fc3f283a04a3df6a39772d471565 Reviewed-on: https://chromium-review.googlesource.com/1125854Reviewed-by: Marja Hölttä <marja@chromium.org> Commit-Queue: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#54224}
-
- 16 Mar, 2017 1 commit
-
-
bradnelson authored
Adding a custom lexer for asm.js parsing. It takes advantage of a number of asm.js properties to simply things: * Assumes 'use asm' is the only string. * Does not handle unicode for now (tools don't emit it). * Combines global + local string table with lexer. R=marja@chromium.org,vogelheim@chromium.org,kschimpf@chromium.org BUG=v8:4203 BUG=v8:6090 Review-Url: https://codereview.chromium.org/2751693002 Cr-Commit-Position: refs/heads/master@{#43874}
-
- 27 Jan, 2017 1 commit
-
-
marja authored
These headers only need forward declarations. BUG=v8:5294 Review-Url: https://codereview.chromium.org/2654253002 Cr-Commit-Position: refs/heads/master@{#42740}
-
- 05 Dec, 2016 1 commit
-
-
verwaest authored
BUG= Review-Url: https://codereview.chromium.org/2549083002 Cr-Commit-Position: refs/heads/master@{#41492}
-
- 16 Sep, 2016 1 commit
-
-
vogelheim authored
- Smaller, more consistent streams API (Advance, Back, pos, Seek) - Remove implementations from the header, in favor of creation functions. Observe: - Performance: - All Utf16CharacterStream methods have an inlinable V8_LIKELY w/ a body of only a few instructions. I expect most calls to end up there. - There used to be performance problems w/ bookmarking, particularly with copying too much data on SetBookmark w/ UTF-8 streaming streams. All those copies are gone. - The old streaming streams implementation used to copy data even for 2-byte input. It no longer does. - The only remaining 'slow' method is the Seek(.) slow case for utf-8 streaming streams. I don't expect this to be called a lot; and even if, I expect it to be offset by the gains in the (vastly more frequent) calls to the other methods or the 'fast path'. - If it still bothers us, there are several ways to speed it up. - API & code cleanliness: - I want to remove the 'old' API in a follow-up CL, which should mostly delete code, or replace it 1:1. - In a 2nd follow-up I want to delete much of the UTF-8 handling in Blink for streaming streams. - The "bookmark" is now always implemented (and mostly very fast), so we should be able to use it for more things. - Testing & correctness: - The unit tests now cover all stream implementations, and are pretty good and triggering all the edge cases. - Vastly more DCHECKs of the invariants. BUG=v8:4947 Review-Url: https://codereview.chromium.org/2314663002 Cr-Commit-Position: refs/heads/master@{#39464}
-
- 23 Aug, 2016 1 commit
-
-
vogelheim authored
- The static method CopyChars was actually used and has been extracted. - It was used in tests, where it's been replaced w/ ExternalOneByteString... - Only one test actually relied on Utf8 handling (as opposed to ASCII only), and that was the test testing Utf8ToUtf16CharacterStream itself. +66 -277 LOC :) BUG=v8:4947 Review-Url: https://codereview.chromium.org/2256273002 Cr-Commit-Position: refs/heads/master@{#38824}
-
- 29 Jul, 2016 1 commit
-
-
jochen authored
In contrast to the generic stream, this character stream works without accessing the heap, and can be used on a background thread. BUG=v8:5215 R=vogelheim@chromium.org,marja@chromium.org Review-Url: https://codereview.chromium.org/2184393002 Cr-Commit-Position: refs/heads/master@{#38154}
-
- 03 May, 2016 1 commit
-
-
vogelheim authored
PushBack(end-of-input) is a little weird, but since Utf16CharacterStream::Advance will advance pos_m, but not buffer_cursor_ when at the end of the stream, pushing back the end-of-input token needs to do the exact inverse. (The reason Advance does not advance buffer_cursor_ is that buffer_cursor_ is often dereferenced directly to access memory and so always needs to point to, well, memory.) (The PushBack implementation for all other streams looks correct.) R=rossberg@chromium.org BUG=chromium:607903 LOG=Y Review-Url: https://codereview.chromium.org/1941843002 Cr-Commit-Position: refs/heads/master@{#35968}
-
- 26 Nov, 2015 1 commit
-
-
rossberg authored
Moves all files related to AST and scopes into ast/, and all files related to scanner & parser to parsing/. Also eliminates a couple of spurious dependencies. R=mstarzinger@chromium.org BUG= Review URL: https://codereview.chromium.org/1481613002 Cr-Commit-Position: refs/heads/master@{#32351}
-
- 04 Nov, 2015 1 commit
-
-
ishell authored
Review URL: https://codereview.chromium.org/1412223018 Cr-Commit-Position: refs/heads/master@{#31785}
-
- 30 Sep, 2015 1 commit
-
-
mstarzinger authored
This enables linter checking for "readability/namespace" violations during presubmit and instead marks the few known exceptions that we allow explicitly. R=bmeurer@chromium.org Review URL: https://codereview.chromium.org/1371083003 Cr-Commit-Position: refs/heads/master@{#31019}
-
- 16 Sep, 2015 1 commit
-
-
vogelheim authored
BUG=v8:4422 R=jochen@chromium.org LOG=Y Review URL: https://codereview.chromium.org/1346613002 Cr-Commit-Position: refs/heads/master@{#30763}
-
- 20 Aug, 2015 1 commit
-
-
mstarzinger authored
R=bmeurer@chromium.org Review URL: https://codereview.chromium.org/1285183010 Cr-Commit-Position: refs/heads/master@{#30263}
-
- 27 May, 2015 1 commit
-
-
vogelheim authored
The DCHECK was a lie. The idea was that - when a bookmark is set - the scanner must clearly be at a character boundary and hence the bookmark does not need to save a 'partial' UTF-8 code point. The first part is true - the Scanner is always at a character boundary - but the 'partial' UTF-8 code point is at the end of a block, not at the current character position of the Scanner. Hence, the 'partial' character needs to be saved as well. jkummerow: Thanks for noticing. BUG=chromium:470930 R=jochen@chromium.org, jkummerow@chromium.org LOG=N Review URL: https://codereview.chromium.org/1154773004 Cr-Commit-Position: refs/heads/master@{#28661}
-
- 26 May, 2015 1 commit
-
-
vogelheim authored
(Requires the embedder's ExternalSourceStream implementation to cooperate. See crrev.com/1154883003 for Blink.) R=jochen@chromium.org BUG=chromium:470930 LOG=Y Review URL: https://codereview.chromium.org/1156733002 Cr-Commit-Position: refs/heads/master@{#28610}
-
- 06 May, 2015 1 commit
-
-
vogelheim authored
long and trivial functions, so that they can be eagerly compiled after all. This essentially allows the parser to renege on its earlier decision to lazy-parse, if additional information suggests it was a bad decision. BUG=chromium:470930 LOG=Y Review URL: https://codereview.chromium.org/1102523003 Cr-Commit-Position: refs/heads/master@{#28252}
-
- 20 Apr, 2015 1 commit
-
-
Ross McIlroy authored
R=jochen@chromium.org Review URL: https://codereview.chromium.org/1088993003 Cr-Commit-Position: refs/heads/master@{#27937}
-
- 05 Feb, 2015 1 commit
-
-
marja authored
size_t is the correct data type for this purpose. Our APIs (in particular ExternalSourceStream::GetMoreData) are already using it, and there were some static_casts to convert between them. This CL doesn't intend to fix all of V8, just the minimal sense-making part around scanner character streams. BUG= Review URL: https://codereview.chromium.org/864273005 Cr-Commit-Position: refs/heads/master@{#26449}
-
- 12 Dec, 2014 1 commit
-
-
svenpanne authored
FINAL implies OVERRIDE, which in turn implies virtual, so there's no need to use more than one of these. The Google C++ style guide even requires this, see http://google-styleguide.googlecode.com/svn/trunk/cppguide.html#Inheritance. While we're here, port r24662 to x87. The net result is that v8 compiles again with a current clang. BUG=v8:3753 LOG=y Review URL: https://codereview.chromium.org/797943002 Cr-Commit-Position: refs/heads/master@{#25792}
-
- 29 Oct, 2014 1 commit
-
-
jkummerow@chromium.org authored
Namely, -Winconsistent-missing-override. No behavior change. BUG=v8:3658 LOG=N R=jkummerow@chromium.org Review URL: https://codereview.chromium.org/688533002 Cr-Commit-Position: refs/heads/master@{#24994} git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24994 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 12 Sep, 2014 1 commit
-
-
marja@chromium.org authored
Blink will use this API to stream script data into V8 as the scripts load. During loading, V8 can already parse the scripts. They will be then compiled and executed when the loading is complete. This is a reincarnation of https://codereview.chromium.org/366153002/ with fixes. BUG= R=jochen@chromium.org, rossberg@chromium.org, svenpanne@chromium.org, yangguo@chromium.org Review URL: https://codereview.chromium.org/566553002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23904 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 11 Sep, 2014 2 commits
-
-
marja@chromium.org authored
This reverts r23865 Revert "Fix compilation after r23865." This reverts r23867 Reason: the test contains characters too special for Windows's taste. TBR=ulan@chromium.org BUG= Review URL: https://codereview.chromium.org/545203003 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23868 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
marja@chromium.org authored
Blink will use this API to stream script data into V8 as the scripts load. During loading, V8 can already parse the scripts. They will be then compiled and executed when the loading is complete. BUG= R=jochen@chromium.org, rossberg@chromium.org, svenpanne@chromium.org, yangguo@chromium.org Review URL: https://codereview.chromium.org/366153002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23865 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-