- 03 May, 2019 29 commits
-
-
Z Duong Nguyen-Huu authored
We should allow the following code to compile transitioning javascript builtin ProxyRevoke(context: Context): Undefined {...} transitioning javascript builtin ProxyRevoke(implicit context: Context)(): Undefined {...} Bug: v8:9007 Change-Id: I8729b4adc91e6a9fb49a50edf2974d84ec4e10ec Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1591343 Commit-Queue: Z Nguyen-Huu <duongn@microsoft.com> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#61218}
-
Maciej Goszczycki authored
This reverts commit 964edc25. Reason for revert: chromium:959190 Original change's description: > [heap] Set read-only space's and its pages' heap_ to null. > > Various small changes are required to enable this. > > HeapObject::GetReadOnlyRoots no longer uses the Space's heap when > possible (see comment in ReadOnlyHeap::GetReadOnlyRoots definition). > This requires that ReadOnlyRoots be construct-able using a raw pointer > to the read-only space's roots array. > > Global read-only heap state is now cleared by tests where appropriate > and extra DCHECKs in ReadOnlyHeap::SetUp should make catching future > issues easier. > > String padding is now always cleared just before read-only space is > sealed when not deserializing. > > Change-Id: I7d1db1c11567be5df06ff7066f3a699125f8b372 > Bug: v8:7464 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1535830 > Commit-Queue: Maciej Goszczycki <goszczycki@google.com> > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Reviewed-by: Dan Elphick <delphick@chromium.org> > Cr-Commit-Position: refs/heads/master@{#61188} TBR=ulan@chromium.org,hpayer@chromium.org,delphick@chromium.org,goszczycki@google.com Change-Id: I53cecf3976dfeabae309040313351385f651f010 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:7464, chromium:959190 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1591608Reviewed-by: Adam Klein <adamk@chromium.org> Commit-Queue: Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/master@{#61217}
-
Deepti Gandluri authored
Change-Id: If590a86118970d31814c12148bfa16f1c0389c2d Bug: v8:9083 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1591344Reviewed-by: Bill Budge <bbudge@chromium.org> Commit-Queue: Deepti Gandluri <gdeepti@chromium.org> Cr-Commit-Position: refs/heads/master@{#61216}
-
Clemens Hammacher authored
This is a reland of b6fb2707. Unchanged reland, TSan issue were fixed in https://crrev.com/c/1593340 and https://crrev.com/c/1594553. Original change's description: > [wasm][gc] Free WasmCode objects > > This adds the next step to freeing code: We free the actual C++ > {WasmCode} objects. This will cause UAF if any C++ code uses stale > references. > The underlying machine code will still not be freed. > > For simplicity, this CL changes the vector of owned_code to an ordered > set, such that lookup and removal is much simpler. The drawback is that > insertion is now more expensive. > > R=mstarzinger@chromium.org > > Bug: v8:8217 > Change-Id: I07fc81167816637fbaad6c06ff79e3f952f2fde8 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1593080 > Commit-Queue: Clemens Hammacher <clemensh@chromium.org> > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > Cr-Commit-Position: refs/heads/master@{#61165} TBR=mstarzinger@chromium.org Bug: v8:8217 Change-Id: I809832bb609663d794c7aafcf071823db7fb6212 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1594436 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#61215}
-
Johannes Henkel authored
Keep the existing method for compatibility, by converting to json from CBOR using the inspector_protocol_encoding library, via a v8 specific interface library that directs routines for converting between strings and doubles to v8's implementations. This change also brings in the encoding.h / encoding.cc files from the upstream inspector_protocol project. The only modification here are the header guards, and the namespace. I will fix roll.py to make it so that we pick up future changes. third_party/inspector_protocol/BUILD.gn is specific to v8, by necessity. third_party/inspector_protocol/.clang-format is a copy of the upstream file. If we don't put this, we'll find ourselves auto-formatting the roll, which is annoying. This is a reland of https://chromium-review.googlesource.com/c/v8/v8/+/1590627 with the only modification in the DEPS file; this time I'm including third_party/inspector_protocol/encoding/encoding{.h,cc} in addition to the relative include there. Not sure why this is needed but I'm hoping it gets me past the presubmit which may resolve the include path relative to the V8 base (the ../../third_party is needed for when V8 is embedded into Chromium). Change-Id: Ic76b2b5faa7e1cbdceb15aff3f369e9a303e3e85 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1593646Reviewed-by: Alexei Filippov <alph@chromium.org> Reviewed-by: Dmitry Gozman <dgozman@chromium.org> Commit-Queue: Johannes Henkel <johannes@chromium.org> Cr-Commit-Position: refs/heads/master@{#61214}
-
Clemens Hammacher authored
This reverts commit 289b2576. Reason for revert: Fails gc-stress: https://ci.chromium.org/p/v8/builders/ci/V8%20Mac64%20GC%20Stress/7143 Original change's description: > [Test] Update tests to work with lazy feedback allocation. > > This adds either %EnsureFeedbackVectorForFunction or > %PrepareFunctionForOptimization to allocate feedback vectors when testing > optimization, allocation sites, IC transitions etc., > > Bug: v8:8394 > Change-Id: I6ad1b6d460e4abda693b326cddb87754e080a0a1 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1593303 > Commit-Queue: Mythri Alle <mythria@chromium.org> > Auto-Submit: Mythri Alle <mythria@chromium.org> > Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> > Cr-Commit-Position: refs/heads/master@{#61212} TBR=rmcilroy@chromium.org,mythria@chromium.org Change-Id: I2a78bfd3ee6102c1d2062957970f425308050d3d No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:8394 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1594565Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#61213}
-
Mythri A authored
This adds either %EnsureFeedbackVectorForFunction or %PrepareFunctionForOptimization to allocate feedback vectors when testing optimization, allocation sites, IC transitions etc., Bug: v8:8394 Change-Id: I6ad1b6d460e4abda693b326cddb87754e080a0a1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1593303 Commit-Queue: Mythri Alle <mythria@chromium.org> Auto-Submit: Mythri Alle <mythria@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#61212}
-
Michael Achenbach authored
TBR=tmrts@chromium.org NOTRY=true Bug: v8:9145 Change-Id: Ica93b2c8dc9b90121802c6109c7e102435210e3d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1591607Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#61211}
-
Maciej Goszczycki authored
CodeBuilder was calling AllocateRawWithLightRetry when it should have been calling AllocateRawWithRetryOrFail (and vice versa). Also improved variable naming. Bug: chromium:957934 Change-Id: I03a95165f6d5b44c1f47d08d338d48bcc37c6d04 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1590075 Commit-Queue: Maciej Goszczycki <goszczycki@google.com> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Dan Elphick <delphick@chromium.org> Cr-Commit-Position: refs/heads/master@{#61210}
-
Peter Marshall authored
Based on Primiano's prototype: https://chromium-review.googlesource.com/c/v8/v8/+/1290549 This is still behind a build flag. I'll add functionality incrementally rather than land everything in one giant CL. This CL sets up the basic classes that will be used for the Perfetto implementation, e.g. the producer, consumer, controller and task runner. This implementation produces a binary proto file in the current directory named v8_trace.proto. It doesn't yet produce JSON output, that is coming in a following CL. Currently the old tracing and perfetto tracing are both run alongside each other if the build flag is enabled. Cq-Include-Trybots: luci.v8.try:v8_linux64_perfetto_dbg_ng Bug: v8:8339 Change-Id: I0eb9ecefa191ceead60aadd5b591d75c99395a6e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1408995Reviewed-by: Yang Guo <yangguo@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Peter Marshall <petermarshall@chromium.org> Cr-Commit-Position: refs/heads/master@{#61209}
-
Michael Achenbach authored
TBR=sigurds@chromium.org NOTRY=true Bug: v8:7783 Change-Id: I8151fa71b7661be61f4437fdaabe525b31a1915c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1591606Reviewed-by: Michael Achenbach <machenbach@chromium.org> Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#61208}
-
Michael Lippautz authored
Change-Id: I1b386a11d4a9d1319ac18efd53108aea851f8897 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1594561 Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Auto-Submit: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#61207}
-
Sigurd Schneider authored
Both MSVC and Clang require a mainCRTStartup symbol for the cctest executable to compile. All objects from the cctest_sources source set are bundled into a library which does not contain this symbol. Bug: v8:7854 Change-Id: I88cd26209114daa84574e3b20046613b1560fa98 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1357039 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Reviewed-by: Sergiy Belozorov <sergiyb@chromium.org> Cr-Commit-Position: refs/heads/master@{#61206}
-
Clemens Hammacher authored
TSan reports errors if one thread changes the ref count using relaxed semantics, then another thread frees the code object. Acquire-release semantics fix this, as they impose an ordering between the memory accesses of different threads. R=mstarzinger@chromium.org Bug: v8:8217, v8:9200 Change-Id: I30ce150154e6459c2c64e16be603f29187af1dcd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1594553 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#61205}
-
Clemens Hammacher authored
Between determining the set of wasm code objects to free, and actually freeing them, we should not give up the mutex of the wasm engine. Otherwise, a NativeModule can die in-between, and we would access a stale pointer. This fixes some flakes seen on the TSan bots with --stress-wasm-code-gc. R=mstarzinger@chromium.org Bug: v8:8217, v8:9200 Change-Id: Iad5b47379b5be6269180094cfeb2a2f2dfefb425 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1593340Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#61204}
-
Georg Neis authored
Bug: v8:9197 Change-Id: I7d2062d9c1000d17f7010786edfc50b5d82b1631 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1594559Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#61203}
-
Frederik Gossen authored
Fix function name in error messages thrown by the streaming API. The API functions {WebAssembly.compileStreaming} and {WebAssembly.instantiateStreaming} are now mentioned where needed. Bug: v8:9184 Change-Id: I70b27efe1c027d119fa7b5b9be27988a92304682 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1588468Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Frederik Gossen <frgossen@google.com> Cr-Commit-Position: refs/heads/master@{#61202}
-
Georg Neis authored
... from JSNativeContextSpecialization. Bug: v8:9197 Change-Id: I332ba27e78b0c10b3406cf39e9a2178c8c74fede Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1593339 Commit-Queue: Georg Neis <neis@chromium.org> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#61201}
-
Ross McIlroy authored
Bug: v8:8801, v8:8394 Change-Id: I6bb46ecafe1bd94adbf0409f13c9b2e558da0823 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1594558 Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Commit-Queue: Mythri Alle <mythria@chromium.org> Auto-Submit: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Mythri Alle <mythria@chromium.org> Cr-Commit-Position: refs/heads/master@{#61200}
-
Georg Neis authored
Bug: v8:9197 Change-Id: If72dbf1507f68fa344db389c08ad8614bca6667e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1593337 Auto-Submit: Georg Neis <neis@chromium.org> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#61199}
-
Sigurd Schneider authored
Notry: true Bug: v8:9179, v8:9180 Change-Id: I2f79bd6d4f2ad53d70955f2e22739b1b8873ae12 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1591598Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#61198}
-
Simon Zünd authored
This new function forwards to v8::Object::CreationContext but has special handling for JSGlobalProxy objects to prevent the former from crashing. R=yangguo@chromium.org Bug: chromium:952057 Change-Id: I5ade682976efd1724c13f52b468e4fb30bb9ade7 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1569425 Commit-Queue: Simon Zünd <szuend@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#61197}
-
Jaroslav Sevcik authored
Bug: chromium:958725 Change-Id: I02d2f3ad19fa60482f8fdd8a539205091f428b68 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1594434Reviewed-by: Georg Neis <neis@chromium.org> Commit-Queue: Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#61196}
-
Andreas Haas authored
This CL adds decoding and code generation for the table.size instruction. R=mstarzinger@chromium.org Bug: v8:7581 Change-Id: I0e689a993d25db72281ebba0854454be12f4d350 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1593302 Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#61195}
-
Sigurd Schneider authored
This reverts commit bbd740f0. Reason for revert: blocks lkgr due to layout test failure: https://ci.chromium.org/p/v8/builders/ci/V8-Blink%20Linux%2064/31607 Original change's description: > Reland "[json] Speed up json parsing" > > This is a reland of b0c4a876 > > Original change's description: > > [json] Speed up json parsing > > > > - scan using raw data pointers + GC callback > > - scan using scanner tables > > - cap internalizing large string values > > - inline fast transitioning logic > > > > Fixes previous CL by moving AllowHeapAllocation to callers of > > ReportUnexpectedCharacter where needed to make it clear we need to exit. > > > > Tbr: ulan@chromium.org > > Change-Id: Icfbb7cd536e0fbe153f34acca5d0fab6b5453d71 > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1591778 > > Reviewed-by: Igor Sheludko <ishell@chromium.org> > > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > > Commit-Queue: Toon Verwaest <verwaest@chromium.org> > > Cr-Commit-Position: refs/heads/master@{#61159} > > Tbr: verwaest@chromium.org > Cq-Include-Trybots: luci.v8.try:v8_linux64_msan_rel > Change-Id: Ic7d0057178c649fc45b8c8f4587ee9128e351515 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1593292 > Commit-Queue: Igor Sheludko <ishell@chromium.org> > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Reviewed-by: Igor Sheludko <ishell@chromium.org> > Cr-Commit-Position: refs/heads/master@{#61179} TBR=ulan@chromium.org,ishell@google.com,verwaest@google.com,ishell@chromium.org,verwaest@chromium.org Change-Id: I3ae8f9ce8214bebe7fab9d87c5daf8cdfdb94199 No-Presubmit: true No-Tree-Checks: true No-Try: true Cq-Include-Trybots: luci.v8.try:v8_linux64_msan_rel Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1594438 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#61194}
-
Sigurd Schneider authored
This reverts commit a87a971b. Reason for revert: required for revert of bbd740f0 Original change's description: > [runtime] Inline SeqOneByteSubStringKey IsMatch and AsHandle > > The performance actually matters to JSON parsing and this improves it by a % or > 2. > > In the longer run we should probably share the IsMatch implementation in > StringTableKey directly and call a virtual GetBytes on the key implementation. > > Change-Id: I838a106f9c8c52f0385057a52a8c0b9141ae025b > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1589977 > Commit-Queue: Toon Verwaest <verwaest@chromium.org> > Auto-Submit: Toon Verwaest <verwaest@chromium.org> > Reviewed-by: Igor Sheludko <ishell@chromium.org> > Cr-Commit-Position: refs/heads/master@{#61183} TBR=ishell@chromium.org,verwaest@chromium.org Change-Id: I8797310ef7834c04b44c735ce60813e3fb596013 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1594440Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#61193}
-
Andreas Haas authored
This CL add decoding and code generation for the table.grow instruction. For code generation we just generate a runtime call. The implementation is quite straight-forward. However, I did several small cleanups along the way. I hope it's still acceptable. I could also split out some cleanups into separate CLs. R=mstarzinger@chromium.org Bug: v8:7581 Change-Id: Id885b7e70eb4f5bccfe779eb216f7cc9302ea3a5 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1593078 Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#61192}
-
Raul Tambre authored
The script still works with Python 2. There are no intended behaviour changes. Bug: chromium:941669 Change-Id: I5ec63564fdb29a326c64d6ac7465f86b30ef16c1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1585857Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Yang Guo <yangguo@chromium.org> Auto-Submit: Raul Tambre <raul@tambre.ee> Cr-Commit-Position: refs/heads/master@{#61191}
-
v8-ci-autoroll-builder authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/d6fe3ed..aba3ab5 Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/5a34ef7..bf6e6c9 Rolling v8/third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools/+log/fe1dbe1..9c06201 Rolling v8/tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang/+log/210f1dc..0ab75b6 TBR=machenbach@chromium.org,hablich@chromium.org,sergiyb@chromium.org Change-Id: Ic51ecc5069b24ee9db1033cd186c9b9bfd038db5 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1594194Reviewed-by: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Commit-Queue: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Cr-Commit-Position: refs/heads/master@{#61190}
-
- 02 May, 2019 11 commits
-
-
Johannes Henkel authored
This reverts commit b7134d3a. Reason for revert: breaks presubmit Original change's description: > [DevTools] Add V8InspectorSession::state(), which returns binary (CBOR). > > Keep the existing method for compatibility, by converting > to json from CBOR using the inspector_protocol_encoding library, > via a v8 specific interface library that directs routines for > converting between strings and doubles to v8's implementations. > > This change also brings in the encoding.h / encoding.cc files from the > upstream inspector_protocol project. The only modification here > are the header guards, and the namespace. I will fix roll.py to > make it so that we pick up future changes. > > third_party/inspector_protocol/BUILD.gn is specific to v8, by necessity. > third_party/inspector_protocol/.clang-format is a copy of the upstream > file. If we don't put this, we'll find ourselves auto-formatting the roll, > which is annoying. > > Change-Id: I20fa8759164e7a39f8a7c30e0d2a3f8a7e4be227 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1590627 > Reviewed-by: Alexei Filippov <alph@chromium.org> > Reviewed-by: Dmitry Gozman <dgozman@chromium.org> > Commit-Queue: Johannes Henkel <johannes@chromium.org> > Cr-Commit-Position: refs/heads/master@{#61187} TBR=dgozman@chromium.org,alph@chromium.org,caseq@chromium.org,johannes@chromium.org Change-Id: I67f297ef8454499036c94bf88e0d23657a579140 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1592130Reviewed-by: Dmitry Gozman <dgozman@chromium.org> Commit-Queue: Johannes Henkel <johannes@chromium.org> Cr-Commit-Position: refs/heads/master@{#61189}
-
Maciej Goszczycki authored
Various small changes are required to enable this. HeapObject::GetReadOnlyRoots no longer uses the Space's heap when possible (see comment in ReadOnlyHeap::GetReadOnlyRoots definition). This requires that ReadOnlyRoots be construct-able using a raw pointer to the read-only space's roots array. Global read-only heap state is now cleared by tests where appropriate and extra DCHECKs in ReadOnlyHeap::SetUp should make catching future issues easier. String padding is now always cleared just before read-only space is sealed when not deserializing. Change-Id: I7d1db1c11567be5df06ff7066f3a699125f8b372 Bug: v8:7464 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1535830 Commit-Queue: Maciej Goszczycki <goszczycki@google.com> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Dan Elphick <delphick@chromium.org> Cr-Commit-Position: refs/heads/master@{#61188}
-
Johannes Henkel authored
Keep the existing method for compatibility, by converting to json from CBOR using the inspector_protocol_encoding library, via a v8 specific interface library that directs routines for converting between strings and doubles to v8's implementations. This change also brings in the encoding.h / encoding.cc files from the upstream inspector_protocol project. The only modification here are the header guards, and the namespace. I will fix roll.py to make it so that we pick up future changes. third_party/inspector_protocol/BUILD.gn is specific to v8, by necessity. third_party/inspector_protocol/.clang-format is a copy of the upstream file. If we don't put this, we'll find ourselves auto-formatting the roll, which is annoying. Change-Id: I20fa8759164e7a39f8a7c30e0d2a3f8a7e4be227 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1590627Reviewed-by: Alexei Filippov <alph@chromium.org> Reviewed-by: Dmitry Gozman <dgozman@chromium.org> Commit-Queue: Johannes Henkel <johannes@chromium.org> Cr-Commit-Position: refs/heads/master@{#61187}
-
Seth Brenith authored
On Windows, expanding the stack by more than 4 KB at a time can cause access violations. This change fixes a few known cases (and includes unit tests for those), and attempts to make stack expansion more consistent overall by using the AllocateStackSpace helper method everywhere we can, even when the offset is a small constant. On arm64, there was already a consistent method for stack pointer manipulation using the Claim and Drop methods, so Claim is updated to touch every page. Bug: v8:9017 Change-Id: I2dbbceeebbdefaf45803e9b621fe83f52234a395 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1570666 Commit-Queue: Seth Brenith <seth.brenith@microsoft.com> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#61186}
-
Maciej Goszczycki authored
Code relocation info is now always allocated in old-space. Before relocation info allocated for placeholders and builtins (which get replaced with trampolines in nosnap builds) would become unreachable. Since read-only space is not GCed and ReadOnlyHeapIterator doesn't check for reachability, ValidateSnapshot would fail finding unreachable objects returned by ReadOnlyHeapIterator. Because trampoline relocation info gets replaced with canonical one, this only affects no-embdded-builtins nosnap builds, which don't get much benefit from read-only relocation info anyway. A new check has been added to the read-only deserializer to verify that every read-only object is reachable at mksnapshot-time. The CombinedHeapIterator iteration order was changed to iterate over read-only space first, because that's how HeapIterator worked. This is a reland of 3d1d8eae Original change's description: > [heap] Skip ro-space from heap iterators, add CombinedHeapIterator. > > Read-only space sharing requires an iterator independent of heap. This > also enables future removal of read-only space from heap. > > Bug: v8:7464 > Change-Id: Ia07a9369494ea2c547d12c01ffa1d7b8b6bbeabc > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1552795 > Commit-Queue: Maciej Goszczycki <goszczycki@google.com> > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Reviewed-by: Dan Elphick <delphick@chromium.org> > Cr-Commit-Position: refs/heads/master@{#60819} Bug: v8:7464 Change-Id: I49ae070955b77956962334a84f762ab29052d5ff Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1566513Reviewed-by: Dan Elphick <delphick@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Maciej Goszczycki <goszczycki@google.com> Cr-Commit-Position: refs/heads/master@{#61185}
-
Hannes Payer authored
The registry right now has no users. In a follow-up CL I will remove the skip list for code pages and make users of the skip list use the registry. Bug: v8:9093 Change-Id: I23a2b9e0d4158e2ffa89626e71f58d3bb5a41201 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1593074Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Hannes Payer <hpayer@chromium.org> Cr-Commit-Position: refs/heads/master@{#61184}
-
Toon Verwaest authored
The performance actually matters to JSON parsing and this improves it by a % or 2. In the longer run we should probably share the IsMatch implementation in StringTableKey directly and call a virtual GetBytes on the key implementation. Change-Id: I838a106f9c8c52f0385057a52a8c0b9141ae025b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1589977 Commit-Queue: Toon Verwaest <verwaest@chromium.org> Auto-Submit: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#61183}
-
Ross McIlroy authored
Bug: v8:8801, v8:8394 Change-Id: I7f27cb0a9dcbdd1ba0e3f90735472408c22185e1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1593304 Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Commit-Queue: Mythri Alle <mythria@chromium.org> Auto-Submit: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Mythri Alle <mythria@chromium.org> Cr-Commit-Position: refs/heads/master@{#61182}
-
Sigurd Schneider authored
This ensures that the parent class' field 'elements' is not shadowed. Bug: v8:9194 Change-Id: Ibb53dedc0205cbb4c61e810e2d5822a94843c605 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1593076 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#61181}
-
Santiago Aboy Solanes authored
This is the first CL that aims to eliminate the straggler tagged loads and stores. Cq-Include-Trybots: luci.v8.try:v8_linux64_pointer_compression_rel_ng Cq-Include-Trybots: luci.v8.try:v8_linux64_arm64_pointer_compression_rel_ng Bug: v8:8977, v8:7703 Change-Id: If3782c0c7047d4c7d8669e12fb423cc0c74bc58a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1587392Reviewed-by: Michael Stanton <mvstanton@chromium.org> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Cr-Commit-Position: refs/heads/master@{#61180}
-
Toon Verwaest authored
This is a reland of b0c4a876 Original change's description: > [json] Speed up json parsing > > - scan using raw data pointers + GC callback > - scan using scanner tables > - cap internalizing large string values > - inline fast transitioning logic > > Fixes previous CL by moving AllowHeapAllocation to callers of > ReportUnexpectedCharacter where needed to make it clear we need to exit. > > Tbr: ulan@chromium.org > Change-Id: Icfbb7cd536e0fbe153f34acca5d0fab6b5453d71 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1591778 > Reviewed-by: Igor Sheludko <ishell@chromium.org> > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Commit-Queue: Toon Verwaest <verwaest@chromium.org> > Cr-Commit-Position: refs/heads/master@{#61159} Tbr: verwaest@chromium.org Cq-Include-Trybots: luci.v8.try:v8_linux64_msan_rel Change-Id: Ic7d0057178c649fc45b8c8f4587ee9128e351515 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1593292 Commit-Queue: Igor Sheludko <ishell@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#61179}
-