- 20 Mar, 2019 26 commits
-
-
Clemens Hammacher authored
This prepares a refactoring to add and publish compilation results in batches. For this, we need to separate the two phases, so that we can lock the module, allocate all the code space, release the lock, copy the code, lock the module, publish the code, and release the lock again. In particular, this CL does the following: 1) It removes the {AddOwnedCode} method. The functionality of creating the {WasmCode} and memcpy'ing the instruction into that is done in the other {Add*Code} methods. Adding to {owned_code_} is done in {PublishCode}. 2) {PublishInterpreterEntry} is now functionally equivalent to {PublishCode}, so it's removed. 3) After {AddCode}, the caller has to call {PublishCode}. In a follow-up CL, this will be called in batches (first {AddCode} them all, then {PublishCode} them all). 4) {AddCompiledCode} now assumes that the {WasmCompilationResult} succeeded. Otherwise, the caller should directly call {SetError} on the {CompilationState}. 5) {PublishCode} is now the chokepoint for installing code to the code table, the owned code vector, the jump table, and setting interpreter redirections. It replaces previous direct calls to {InstallCode} or explicitly adding to {owned_code_}. 6) Increasing the {generated_code_size_} counter is now done in {AllocateForCode}, which is the chokepoint for allocating space for generated code. This way, we will only increase this counter once once we allocate in batches. R=titzer@chromium.org Bug: v8:8916 Change-Id: I71e02e3a838f21797915cee3ebd373804fb12237 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1530817 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#60369}
-
Leszek Swirski authored
This reverts commit 477d88a5. Reason for revert: https://crbug.com/943614 Original change's description: > Update V8 DEPS. > > Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/e8b8ab7..9dba2d4 > > Rolling v8/buildtools: https://chromium.googlesource.com/chromium/src/buildtools/+log/a14f996..a2a4845 > > Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/4e9bccd..bf564e0 > > Rolling v8/third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools/+log/24b5f90..cf9613f > > Rolling v8/third_party/googletest/src: https://chromium.googlesource.com/external/github.com/google/googletest/+log/efecb0b..8b6d3f9 > > Rolling v8/third_party/icu: https://chromium.googlesource.com/chromium/deps/icu/+log/8c67416..b10cc9f > > Rolling v8/tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang/+log/3dd606a..2116ee9 > > Rolling v8/tools/swarming_client: https://chromium.googlesource.com/infra/luci/client-py/+log/7a61cf3..aa60736 > > TBR=machenbach@chromium.org,hablich@chromium.org,sergiyb@chromium.org > > Change-Id: I333f64ffea36d3925757b7c97f425bfc6334f266 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1529938 > Reviewed-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@{#60366} TBR=machenbach@chromium.org,hablich@chromium.org,sergiyb@chromium.org,v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com Change-Id: I012896b00b4fdd593844cf74f076490af58c311e No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1532077Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#60368}
-
Igor Sheludko authored
We also need to deoptimize the code if the embedded 32-bit map dies. Bug: v8:8982, chromium:943823 Change-Id: Iabeac5c943444a7b4d858704c3720228f3d74fe1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1532073 Auto-Submit: Igor Sheludko <ishell@chromium.org> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#60367}
-
v8-ci-autoroll-builder authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/e8b8ab7..9dba2d4 Rolling v8/buildtools: https://chromium.googlesource.com/chromium/src/buildtools/+log/a14f996..a2a4845 Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/4e9bccd..bf564e0 Rolling v8/third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools/+log/24b5f90..cf9613f Rolling v8/third_party/googletest/src: https://chromium.googlesource.com/external/github.com/google/googletest/+log/efecb0b..8b6d3f9 Rolling v8/third_party/icu: https://chromium.googlesource.com/chromium/deps/icu/+log/8c67416..b10cc9f Rolling v8/tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang/+log/3dd606a..2116ee9 Rolling v8/tools/swarming_client: https://chromium.googlesource.com/infra/luci/client-py/+log/7a61cf3..aa60736 TBR=machenbach@chromium.org,hablich@chromium.org,sergiyb@chromium.org Change-Id: I333f64ffea36d3925757b7c97f425bfc6334f266 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1529938Reviewed-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@{#60366}
-
Michael Starzinger authored
This removes the special casing for the lazy compilation stub which used to have its own code kind, just so that the stack walker would properly recognize its frame. Also, by re-using the existing machinery for runtime stubs we no longer need to copy this stub into the native module and get all the niceties that come with embedded builtins for free. Thirdly this will make it easier to start lazy compilation from the background or to do it on a per-function basis without requiring yet more special machinery, since {NativeModule::SetLazyBuiltin} no longer requires access to the Isolate. Kudos for the inspiration for this cleanup go to Frederik, I merely did some of the legwork. R=clemensh@chromium.org BUG=v8:8834 Change-Id: Iac2b51a2e33fb0e88d25d3632fa18998123ee6c3 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1532064Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#60365}
-
Sigurd Schneider authored
This is a reland of b1769313 Original change's description: > [regalloc] Introduce deferred fixed ranges > > Fixed ranges are used to express register constraints in the > allocator. This change splits these fixed ranges into one for > normal code and deferred code. The former are handeled as before > whereas the latter are only made visible while allocating > registers for deferred code. > > This prevents forward looking decisions in normal code to be > impacted by register constraints from deferred code. > > Change-Id: I67d562bb41166194e62765d5ab051bc961054fc7 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1477742 > Commit-Queue: Sigurd Schneider <sigurds@chromium.org> > Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> > Reviewed-by: Sigurd Schneider <sigurds@chromium.org> > Cr-Commit-Position: refs/heads/master@{#60322} Change-Id: I1a31150256eb5608db985b144aab7ea457169d0d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1530810 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#60364}
-
Tamer Tas authored
'third_party/android_tools/sdk' is being replaced with 'third_party/android_sdk/public'. This CL updates our DEPS pointing to the old path. Note: 'android_tools' dependency is duplicated with the new path since there are users of the old and new at the same time. R=machenbach@chromium.org CC=sergiyb@chromium.org Bug: chromium:943614 Change-Id: I9baa2b02900559e64d8f0f99161e23ad5acd0e05 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1532068Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Tamer Tas <tmrts@chromium.org> Cr-Commit-Position: refs/heads/master@{#60363}
-
Andreas Haas authored
This reverts commit 9d167f57. Reason for revert: There is a crash on https://ci.chromium.org/p/v8/builders/ci/V8%20Win32/20026 Original change's description: > [wasm][anyref] Add support of call-indirect for multiple tables > > With this CL it is possible to use any anyfunc table in call-indirect, > not just the first table. > > The current implementation is based on runtime calls. This is just an > initial implementation which should be replaced by a > dispatch-table-based eventually. However, this implementation allows > us to move forward with the anyref proposal implementation. > > R=mstarzinger@chromium.org > > Bug: v8:7581 > Change-Id: I57d09b18add7f525555bf7c949aef17a64b0e7c5 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1530801 > Commit-Queue: Andreas Haas <ahaas@chromium.org> > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > Cr-Commit-Position: refs/heads/master@{#60360} TBR=mstarzinger@chromium.org,ahaas@chromium.org Change-Id: Iba4b84078aa070498be7e79212970b94595f5757 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:7581 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1532069Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#60362}
-
Sven Sauleau authored
Previously, the builtin BigIntToWasmI64 and its calling descriptor had an inconsistent name, not reflecting the signature which is i64 to BigInt. This CL removes BigIntToWasmI64 in favor of I64ToBigInt. Also for consistency the Wasm tranpoline has been renamed from BigIntToWasmI64 to WasmI64ToBigInt. Change-Id: I4125ee99a7358797181770f413db70affa657d5c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1532065 Auto-Submit: Sven Sauleau <ssauleau@igalia.com> Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#60361}
-
Andreas Haas authored
With this CL it is possible to use any anyfunc table in call-indirect, not just the first table. The current implementation is based on runtime calls. This is just an initial implementation which should be replaced by a dispatch-table-based eventually. However, this implementation allows us to move forward with the anyref proposal implementation. R=mstarzinger@chromium.org Bug: v8:7581 Change-Id: I57d09b18add7f525555bf7c949aef17a64b0e7c5 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1530801 Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#60360}
-
Clemens Hammacher authored
The array allocated in {SetInterpreterRedirection} was accidentally left uninitialized, which could result in later calls to {has_interpreter_redirection} to return true. In that case, we would not patch the jump table when publishing the code, and would then crash during execution. This was uncovered by an unrelated change. It's covered by existing tests though, we were just lucky so far that the relevant bits were 0 for some reason. R=mstarzinger@chromium.org Change-Id: I712200cb0c9f2a9c828f6a9a502e6307dc438bd3 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1532060Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#60359}
-
Frederik Gossen authored
This is just one small unit test for now. As we expect to adapt the encoding this is more of an exercise than exhaustive testing. Bug: v8:9003 Change-Id: I8f59043c3f7acbb6169254ec6d6ae13251d1054f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1526010 Commit-Queue: Frederik Gossen <frgossen@google.com> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#60358}
-
Simon Zünd authored
R=jgruber@chromium.org Bug: v8:8834 Change-Id: I4406208b20481e71aaa83070e02017a6184eac25 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1530811Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Simon Zünd <szuend@chromium.org> Cr-Commit-Position: refs/heads/master@{#60357}
-
Michael Achenbach authored
This skips two tests not suitable for gc fuzzing. Previous tests marked PASS,FAIL are also skipped now, since endurance fuzzing was deprecated. NOTRY=true Bug: v8:8959 Change-Id: I0b13212da31457ad4da32fa9c1097dc9e5e9dc11 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1528433Reviewed-by: Tamer Tas <tmrts@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#60356}
-
Michael Achenbach authored
NOTRY=true Bug: chromium:933093 Change-Id: Ic3c164d72a74def2b3ad559a67163d7f497caa9c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1528434Reviewed-by: Tamer Tas <tmrts@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#60355}
-
Vadim Gorbachev (bmsdave) authored
This is a reland of f8962ae1 Original change's description: > Preparing v8 to use with python3 /test > > There are now less that 400 days until the end of life > of Python 2(aka _legacy_ Python) https://pythonclock.org/ . > The code compatibility check for python2 and python3 > used the following tools: futurize, flake8 > You can see the reports here: https://travis-ci.com/bmsdave/v8/builds > > This CL was uploaded by git cl split. > > Bug: v8:8594 > Change-Id: Idbf467daf629a4e808345a6a88036c2a3f259138 > Reviewed-on: https://chromium-review.googlesource.com/c/1470121 > Commit-Queue: Michael Achenbach <machenbach@chromium.org> > Reviewed-by: Michael Achenbach <machenbach@chromium.org> > Reviewed-by: Sergiy Belozorov <sergiyb@chromium.org> > Cr-Commit-Position: refs/heads/master@{#59679} Bug: v8:8594 Change-Id: I8c1a8d6593a4a927d56d37dada2c704062e842cc Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1484300Reviewed-by: Tamer Tas <tmrts@chromium.org> Reviewed-by: Sergiy Belozorov <sergiyb@chromium.org> Commit-Queue: Tamer Tas <tmrts@chromium.org> Cr-Commit-Position: refs/heads/master@{#60354}
-
Sigurd Schneider authored
This reverts commit 62a8bdca. Reason for revert: Test times out on atom Original change's description: > [js-perf-test] Add more WeakMap perf tests > > Change-Id: I46eb94e58fc4da55cb1b2adb9ffdbb09e5e33a5d > Bug: v8:8557 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1530800 > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> > Commit-Queue: Sigurd Schneider <sigurds@chromium.org> > Cr-Commit-Position: refs/heads/master@{#60326} TBR=ulan@chromium.org,jarin@chromium.org,sigurds@chromium.org Change-Id: I88ae85bea2ad04db11137a602bd3d8ee6978fa04 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:8557 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1532061Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#60353}
-
Frederik Gossen authored
Wasm Compilation hints are now used when {--experimental-wasm-compilation-hints} is set to create compilation units as suggested. Hints regarding the compilation strategy, e.g. lazy compilation, are ignored for now. Bug: v8:9003 Change-Id: Id275537db375e425e872b0a05b587931c829c865 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1524202 Commit-Queue: Frederik Gossen <frgossen@google.com> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#60352}
-
Michael Lippautz authored
Omit user roots when raw heap snapshots are used, i.e., when the gn flag v8_enable_raw_heap_snapshots is enabled. For regular Chrome production builds this is not the case. Blink CL: https://crrev.com/c/1529096 Bug: chromium:936797 Change-Id: I5ae0ec1ecfab9a76352d8ce927d1c40e707262cc Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1528994 Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Alexei Filippov <alph@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#60351}
-
Leszek Swirski authored
SaveFlags previously worked by re-setting the flags using the command line. Unfortunately, this could reset flags being used by concurrent processes, which would cause TSAN issues. Now, SaveFlags stores a copy of the state of all flags on creation, and only resets changed flags in its destructor. It does this by (ab)using the flag-definitions.h pseudo-header, adding a new mode to that header which applies an includer-defined macro to each flag definition. Change-Id: I4c156ecb36b4b7c05402138088266465d31e33b6 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1530809Reviewed-by: Igor Sheludko <ishell@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#60350}
-
Tom Anderson authored
This CL includes a revert of [1] with thakis@'s proposed fix at [2]. Verified a build with the below gn args works on Linux: target_os = "win" target_cpu = "x86" is_debug = false is_official_build = true is_component_build = false use_goma = true enable_nacl = false use_custom_libcxx = true [1] https://chromium.googlesource.com/v8/v8.git/+/93ee541417b6f5904072c0ecdfc6fc041811b489 [2] https://bugs.chromium.org/p/chromium/issues/detail?id=942347#c2 BUG=chromium:942347 R=machenbach CC=thakis Change-Id: I34f5744a9f600efbc075f4b5ba8d1c66bff46ae6 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1529250 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Auto-Submit: Thomas Anderson <thomasanderson@chromium.org> Cr-Commit-Position: refs/heads/master@{#60349}
-
Leszek Swirski authored
It doesn't seem to work properly, use _v8_internal_Get_Object until we can think of a better workaround. Bug: v8:8994 Change-Id: I47496d442f5b62e6cb78edcdf35fe1ac1aad2084 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1529005Reviewed-by: Georg Neis <neis@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#60348}
-
Suraj Sharma authored
Converted JSGeneratorObject, JSAsyncFunctionObject , JSAsyncGenerator to torque. Change-Id: I6eb2463d66c118c60fee472776a471120641344c Bug: v8:8952 Change-Id: I6eb2463d66c118c60fee472776a471120641344c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1512472 Commit-Queue: Georg Neis <neis@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#60347}
-
Maya Lekova authored
R=neis@chromium.org,bmeurer@chromium.org Bug: v8:9002 Change-Id: I778585b8a76561531fd8c6713e48b3a96cf40351 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1528233Reviewed-by: Georg Neis <neis@chromium.org> Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Michael Stanton <mvstanton@chromium.org> Cr-Commit-Position: refs/heads/master@{#60346}
-
Ben Smith authored
WasmRunner provides CheckCallViaJS, which calls a wasm function through JS and checks its result. There are currently two overloads, one that takes a variable number of arguments, and another more general 4-argument version that takes an array of arguments. This means if you run code like: r.CheckCallViaJS(0, 0, 0, 0); The overload resolution kicks in, and chooses the general version, which will always segfault. This CL renames the general version to `CheckCallApplyViaJS` so the above example will call the variable-argument version instead. Change-Id: I14a742c467692e09e84f03504cec2306a794fc24 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1529990Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Ben Smith <binji@chromium.org> Cr-Commit-Position: refs/heads/master@{#60345}
-
Z Duong Nguyen-Huu authored
This is a follow-up CL from https://chromium-review.googlesource.com/c/v8/v8/+/1432597 Indices of first and last symbol properties are recorded and used on a second iteration of DescriptorArrayForEach() to potentially reduce the iteration range Bug: v8:6705 Change-Id: Iac73909d138214d1128e935eff686f2f058e17f7 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1516021 Commit-Queue: Z Nguyen-Huu <duongn@microsoft.com> Reviewed-by: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#60344}
-
- 19 Mar, 2019 14 commits
-
-
Michael Achenbach authored
NOTRY=true Bug: v8:8964 Change-Id: I63e2ab53f3466a86b498c56fac1b296f1bd4d904 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1530818 Auto-Submit: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#60343}
-
Deepti Gandluri authored
Change-Id: I94ae52c609c591d95ef0f71cba45e25ef80c9a77 Bug: v8:9008 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1529931Reviewed-by: Bill Budge <bbudge@chromium.org> Commit-Queue: Deepti Gandluri <gdeepti@chromium.org> Cr-Commit-Position: refs/heads/master@{#60342}
-
Andreas Haas authored
R=mstarzinger@chromium.org Bug: v8:7581 Change-Id: I93044dc0065d1d0146ec9b5190e50ca63ce94f4e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1530808Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#60341}
-
Deepti Gandluri authored
This reverts commit 4f051fd5. Reason for revert: Fails with custom snapshot on GC stress - https://ci.chromium.org/p/v8/builders/ci/V8%20Linux64%20GC%20Stress%20-%20custom%20snapshot/24855 Original change's description: > Reland "[ptr-compr][x64] Temporarily enable pointer compression on x64" > > This is a reland of 589d1a6b > > Relanding after fixing TSan and UBSan issues. > > Original change's description: > > [ptr-compr][x64] Temporarily enable pointer compression on x64 > > > > ... and make sure that the x64 ptr-compr bots proceed testing V8 without > > pointer compression in order to keep testing the full pointer mode. > > > > Bug: v8:7703 > > Change-Id: Iee725deda813425a6f0722948b54976154f50909 > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1497139 > > Reviewed-by: Michael Hablich <hablich@chromium.org> > > Reviewed-by: Michael Achenbach <machenbach@chromium.org> > > Commit-Queue: Michael Achenbach <machenbach@chromium.org> > > Cr-Commit-Position: refs/heads/master@{#60230} > > Cq-Include-Trybots: luci.v8.try:v8_linux64_ubsan_rel_ng,v8_linux64_tsan_rel > Bug: v8:7703 > Change-Id: Ied4e7bacf99c9d63e0459613fec522273f595de8 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1523327 > Commit-Queue: Igor Sheludko <ishell@chromium.org> > Auto-Submit: Leszek Swirski <leszeks@chromium.org> > Reviewed-by: Michael Achenbach <machenbach@chromium.org> > Cr-Commit-Position: refs/heads/master@{#60339} TBR=machenbach@chromium.org,hablich@chromium.org,leszeks@chromium.org,ishell@chromium.org,verwaest@chromium.org Change-Id: Ia06829e9dfdf09501ceebc0eef175d3261969d1f No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:7703 Cq-Include-Trybots: luci.v8.try:v8_linux64_ubsan_rel_ng, v8_linux64_tsan_rel Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1531120Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Deepti Gandluri <gdeepti@chromium.org> Cr-Commit-Position: refs/heads/master@{#60340}
-
Igor Sheludko authored
This is a reland of 589d1a6b Relanding after fixing TSan and UBSan issues. Original change's description: > [ptr-compr][x64] Temporarily enable pointer compression on x64 > > ... and make sure that the x64 ptr-compr bots proceed testing V8 without > pointer compression in order to keep testing the full pointer mode. > > Bug: v8:7703 > Change-Id: Iee725deda813425a6f0722948b54976154f50909 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1497139 > Reviewed-by: Michael Hablich <hablich@chromium.org> > Reviewed-by: Michael Achenbach <machenbach@chromium.org> > Commit-Queue: Michael Achenbach <machenbach@chromium.org> > Cr-Commit-Position: refs/heads/master@{#60230} Cq-Include-Trybots: luci.v8.try:v8_linux64_ubsan_rel_ng,v8_linux64_tsan_rel Bug: v8:7703 Change-Id: Ied4e7bacf99c9d63e0459613fec522273f595de8 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1523327 Commit-Queue: Igor Sheludko <ishell@chromium.org> Auto-Submit: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#60339}
-
Igor Sheludko authored
Bug: v8:7703 Change-Id: I497fe7e4ba81acbda8564142959f823c5195c5eb Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1529008Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#60338}
-
Milad Farazmand authored
Due to ppc having a fixed 4 byte instruction length, changing ByteChunk length from 8 to 4 bytes will fix any padding issues while generating the "embed.S" file. Change-Id: Ide799908effd88d5387e97627917b095fcc3051c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1524720 Commit-Queue: Milad Farazmand <miladfar@ca.ibm.com> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#60337}
-
Michael Lippautz authored
Bug: v8:8997 Change-Id: If47a9c4d580b29f67eaadc4b129279b085e428b2 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1530812 Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Auto-Submit: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#60336}
-
Leszek Swirski authored
This reverts commit 89a5dd36. Reason for revert: android_sdk tool path change breaks our build Original change's description: > Update V8 DEPS. > > Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/e8b8ab7..874a2b0 > > Rolling v8/buildtools: https://chromium.googlesource.com/chromium/src/buildtools/+log/a14f996..a2a4845 > > Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/4e9bccd..d8c847c > > Rolling v8/third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools/+log/24b5f90..b542cca > > Rolling v8/third_party/googletest/src: https://chromium.googlesource.com/external/github.com/google/googletest/+log/efecb0b..8b6d3f9 > > Rolling v8/tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang/+log/3dd606a..e110dc2 > > TBR=machenbach@chromium.org,hablich@chromium.org,sergiyb@chromium.org > > Change-Id: I2138e400fecdd7467664ea51ce02b8602f7d7a11 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1530199 > Reviewed-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@{#60333} TBR=machenbach@chromium.org,hablich@chromium.org,sergiyb@chromium.org,v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com Change-Id: I48efece3b21d40c841f3c3d291f86652281a1772 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1530813Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#60335}
-
Igor Sheludko authored
Cq-Include-Trybots: luci.v8.try:v8_linux64_tsan_rel Bug: v8:7703 Change-Id: I3511710cead1c18b75783f71af3127693e7f17fd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1529007 Commit-Queue: Igor Sheludko <ishell@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#60334}
-
v8-ci-autoroll-builder authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/e8b8ab7..874a2b0 Rolling v8/buildtools: https://chromium.googlesource.com/chromium/src/buildtools/+log/a14f996..a2a4845 Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/4e9bccd..d8c847c Rolling v8/third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools/+log/24b5f90..b542cca Rolling v8/third_party/googletest/src: https://chromium.googlesource.com/external/github.com/google/googletest/+log/efecb0b..8b6d3f9 Rolling v8/tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang/+log/3dd606a..e110dc2 TBR=machenbach@chromium.org,hablich@chromium.org,sergiyb@chromium.org Change-Id: I2138e400fecdd7467664ea51ce02b8602f7d7a11 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1530199Reviewed-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@{#60333}
-
Junliang Yan authored
Port 1c154540 Original Commit Message: On LoadCodeObjectEntry check for IsOffHeapTrampoline instead of BuiltinIndexOffset so LoadCodeObjectEntry can correctly jump to the on-heap trampoline when we use --interpreted-frames-native-stack. R=mat@mmarchini.me, joransiu@ca.ibm.com, michael_dawson@ca.ibm.com, miladfar@ca.ibm.com BUG= LOG=N Change-Id: I12cb669743bc674bd4f151f4348f763c5bd73647 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1529258Reviewed-by: Milad Farazmand <miladfar@ca.ibm.com> Commit-Queue: Junliang Yan <jyan@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#60332}
-
Michael Lippautz authored
This way d8 can use a read-only mapping for its input file. Otherwise, it would require write access for reading the sources. Bug: v8:8997 Change-Id: I8e117f0a3d9c125ffd1dc1682d5af04b3f6287c2 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1530804 Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#60331}
-
Paolo Severini authored
On 64 bit Windows, the OS stack walking does not work because the V8 x64 backend doesn't emit unwinding info and also because it doesn't emit ABI compliant stack frames. See https://docs.google.com/document/d/1-wf50jFlii0c_Pr52lm2ZU-49m220nhYMrHDi3vXnh0/edit for more details. This problem can be fixed by observing that V8 frames usually all have the same prolog and epilog: push rbp, mov rbp, rsp ... pop rbp ret N and that it is possible to define XDATA (UNWIND_CODEs) that specify how Windows should walk through V8 frames. Furthermore, since V8 Code objects are all allocated in the same code-range for an Isolate, it is possible to register a single PDATA/XDATA entry to cover stack walking for all the code generated inside that code-range. This PR contains changes required to enable stack walking on Win64: EmbeddedFileWriter now adds assembler directives to the builtins snapshot source file (embedded.cc) to emit additional entries in the .pdata and in the .xdata section of the V8 executable. This takes care of stack walking for embedded builtins. (The case of non-embedded builtins is not supported). The x64 Assembler has been modified to collect the information required to emit this unwind info for builtins. Stack walking for jitted code is handled is Isolate.cpp, by registering dynamically PDATA/XDATA for the whole code-range address space every time a new Isolate is initialized, and by unregistering them when the Isolate is destroyed. Stack walking for WASM jitted code is handled is the same way in wasm::NativeModule (wasm/wasm-code-manager.cpp). It is important to note that Crashpad and Breakpad are already registering PDATA/XDATA to manage and report unhandled exceptions (but not for embedded builtins). Since it is not possible to register multiple PDATA entries for the same address range, a new function is added to the V8 API: SetUnhandledExceptionCallback() can be used by an embedder to register its own unhandled exception handler for exceptions that arise in v8-generated code. V8 embedders should be modified accordingly (code for this is in a separate PR in the Chromium repository: https://chromium-review.googlesource.com/c/chromium/src/+/1474703). All these changes are experimental, behind: the 'v8_win64_unwinding_info' build flag, and the '--win64-unwinding-info' runtime flag. Bug: v8:3598 Change-Id: Iea455ab6d0e2bf1c556aa1cf870841d44ab6e4b1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1469329Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Paolo Severini <paolosev@microsoft.com> Cr-Commit-Position: refs/heads/master@{#60330}
-