- 03 Apr, 2019 23 commits
-
-
Mythri A authored
With lazy feedback allocation we load the interrupt budget from the ClosureFeedbackCellArray instead of the bytecode array. The factory method that constructs the ClosureFeedbackCellArray ensures we have a field for interrupt budget. So, it is safe to omit bounds check here. Including the bounds check increases the size of all jump bytecode handlers by around ~120 bytes. This translates to ~9-10KB of the native code size on Android. Bug: chromium:948835 Change-Id: I8e10b3f630097728ae9e520bfb0d85dfc0f806ea Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1550403Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Mythri Alle <mythria@chromium.org> Cr-Commit-Position: refs/heads/master@{#60603}
-
Jaroslav Sevcik authored
On arm processors, we need to have some kind of subexpression elimination running after memory optimizer, so that we reuse index calculation for loads and stores. This CL introduces a small cleanup phase after memory optimizer. Bug: chromium:947225 Change-Id: Ifda7b348d968d58f31947a4ba139863059f4112d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1547664Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#60602}
-
Michael Starzinger authored
This seals any surrounding {HandleScope} when the interpreter enters the main interpreter loop. It ensures that there are no accidental leaks of handles into the surrounding scope and enforces that operations dealing with handles open their own scope. R=clemensh@chromium.org Change-Id: I43d479129bef60beb7565022b24577f8bf1dc522 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1550401Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#60601}
-
Peter Marshall authored
Bug: v8:8834 Change-Id: I1d7451a6306bc34e6254383fd79e8411bffd26ce Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1545894Reviewed-by: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Commit-Queue: Peter Marshall <petermarshall@chromium.org> Cr-Commit-Position: refs/heads/master@{#60600}
-
Clemens Hammacher authored
Reading --verify_predictable makes me sad, whereas --verify-predictable makes me happy. This CL introduces more happiness. R=machenbach@chromium.org Bug: v8:8834 Change-Id: Id51a75f32e6d5a2f87aed81e058a8b6dff189758 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1550399Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#60599}
-
Michael Starzinger authored
This adds preliminary support for handling the "br_on_exn" opcode in the interpreter. It also makes "catch" and "rethrow" use a proper exception reference instead of a dummy value. To that end this also adds {Handle<>} as a new kind of {WasmValue} which is intended to pass reference values (e.g. "anyref" or "except_ref") to the runtime system. Therefore lifetime of such a {WasmValue} is directly coupled to any surrounding {HandleScope}. For now we just store {Handle<>} directly on the simulated operand stack of the interpreter. This is of course bogus, since the surrounding scope does not outlive the interpreter activation. Decoupling the lifetime of the operand stack from a {HandleScope} will be done in a follow-up CL. As a drive-by this change also implements support for the "ref_null" and the "ref_is_null" opcodes as a proof-of-concept that the new {WasmValue} is also applicable to the "anyref" reference type. R=clemensh@chromium.org TEST=cctest/test-run-wasm-interpreter/ReferenceTypeLocals BUG=v8:8091,v8:7581 Change-Id: I2307e0689a19c4aab1d67f1ba6742cb3cc31aa3c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1550299 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#60598}
-
Daniel Clifford authored
In the process turn the Torque's Arguments type into a real struct and add interoperability with it and CSA's CodeStubArguments. This change is motivated by the desire to include Arguments in structs (e.g. iterators), which is not possible for constexpr fields. Bug: v8:7793 Change-Id: I840538b84c4c58fee75e0b9cd3bdbb3b96a6b948 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1549162 Commit-Queue: Daniel Clifford <danno@chromium.org> Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#60597}
-
Maciej Goszczycki authored
Bug: v8:8834 Change-Id: Iac747d915f50c64bb91ca7b8365a51d96eacd2ed Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1549161Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Maciej Goszczycki <goszczycki@google.com> Cr-Commit-Position: refs/heads/master@{#60596}
-
Toon Verwaest authored
- Use IsInRange - Convert scale to index using >>1 which works for 1, 2, 4 - Use mask to check Reads/Writes accumulator Change-Id: Iaeb2236a2d179dc70b62fa599c08984800170336 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1541039 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Auto-Submit: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#60595}
-
v8-ci-autoroll-builder authored
Rolling v8/base/trace_event/common: https://chromium.googlesource.com/chromium/src/base/trace_event/common/+log/c69a8ff..ebb658a Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/a72af28..c2f2e5a Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/5b63b1f..e1fc0b0 Rolling v8/third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools/+log/8d3ba46..865445e Rolling v8/third_party/googletest/src: https://chromium.googlesource.com/external/github.com/google/googletest/+log/a18ac39..b617b27 Rolling v8/tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang/+log/82dbc02..b823d94 TBR=machenbach@chromium.org,hablich@chromium.org,sergiyb@chromium.org Change-Id: If24d37b7a86a73dcb3526e0a75513b0659758aa7 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1549791Reviewed-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@{#60594}
-
Clemens Hammacher authored
During instantiation, exceptions can be thrown when looking up the imports, e.g. because of proxies. If the exception is thrown internally, before actually calling out to JS code, it won't be externally caught. This CL removes the DCHECK that errornously checked that a pending exception was externally caught. R=mstarzinger@chromium.org Bug: chromium:948228 Change-Id: Idbdb340167c1943f78397cc9b310ef5743755726 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1547855Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#60593}
-
Daniel Clifford authored
Const-qualified fields are allowed in both classes and structs. In both cases, const fields can only be set via initialization during construction. Drive-by: unitialized -> uninitialized Bug: v8:7793 Change-Id: Idec08df30f7897c756b7dd6f2b10bb6012fefb6a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1547853 Commit-Queue: Daniel Clifford <danno@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#60592}
-
Frederik Gossen authored
The tiers are now consistently referred to as baselin and top tier. Bug: v8:9003 Change-Id: I74ad1867aca63bee9eb83b7f0f9fbaf2b1523dcb Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1547667 Commit-Queue: Frederik Gossen <frgossen@google.com> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#60591}
-
Andrew Comminos authored
Adds the notion of a "source type" to CpuProfileNode instances, hinting at the underlying source of the function or state that resulted in the generation of the node. Bug: v8:9001 Change-Id: Ie14c54d41b99eb02f54b423fa5d939e9d7f63785 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1510576 Commit-Queue: Peter Marshall <petermarshall@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Peter Marshall <petermarshall@chromium.org> Reviewed-by: Alexei Filippov <alph@chromium.org> Cr-Commit-Position: refs/heads/master@{#60590}
-
Sigurd Schneider authored
This CL uses MemCopy in CopyElements, because we think that the input FixedArrays can never overlap. This CL also adds a DCHECK to ensure this. If our assumption is wrong, it will be interesting to learn why. Change-Id: Ib8258b934f43b82b1281481c592762e43b35938f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1549154 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Hannes Payer <hpayer@chromium.org> Cr-Commit-Position: refs/heads/master@{#60589}
-
Clemens Hammacher authored
The cache also needs to keep the code alive. The code objects are import wrappers and not wasm functions (which we will focus on first), but eventually we would also like to collect unused import wrappers. This CL explicitly increments the ref count when {WasmCode} is added to the cache, and derements all ref counts in the destructor. R=titzer@chromium.org Bug: v8:8217 Change-Id: I1bfb276b25b359d83900147e75ec47788e1fa8de Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1535825Reviewed-by: Ben Titzer <titzer@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#60588}
-
Santiago Aboy Solanes authored
Includes both changing from compressed pointers and to compressed pointers. Also added tests to the representation changer test B Cq-Include-Trybots: luci.v8.try:v8_linux64_pointer_compression_rel_ng,v8_linux64_arm64_pointer_compression_rel_ng Bug: v8:8977 Change-Id: I8a13f6b7ec2208442aa354949173cc9061bce168 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1533866Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Cr-Commit-Position: refs/heads/master@{#60587}
-
Michael Starzinger authored
This introduces a helper class for the immediates to a "br_on_exn" instruction. It is basically a wrapper around a pair of existing immediates to simplify PC offset calculations. This is similar to what is being done for e.g. {MemoryCopyImmediate} already. R=clemensh@chromium.org BUG=v8:8091 Change-Id: I85a552baa6bfa78304abc6cf9509aef365d47057 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1547865Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#60586}
-
Clemens Hammacher authored
Even though both are allowed in the style guide, it recommends to use 'using', as its syntax is more consistent with the rest of C++. This CL turns all typedefs in src/regexp to 'using' declarations. R=jgruber@chromium.org Bug: v8:8834 Change-Id: I2765c3465fec7e8c42c3a84b924522f220ab5676 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1545904Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#60585}
-
Clemens Hammacher authored
All standard containers provide a method named {empty} to check whether the container is empty. On {base::Vector}, that method is named {is_empty}, while {empty} is an unused factory method for creating an empty {Vector}. This CL renames {is_empty} to {empty} and removes the unused factory method. R=leszeks@chromium.org Bug: v8:8834 Change-Id: I686bd07527801fbe783c412bc241221d8ec3660a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1547862 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#60584}
-
Michael Lippautz authored
They are already filtered by the incremental marker. Change-Id: If43a16d54a2b0eb7d6a36482d3439fc7191c31a6 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1549160 Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Hannes Payer <hpayer@chromium.org> Cr-Commit-Position: refs/heads/master@{#60583}
-
Igor Sheludko authored
This is a reland of 4f051fd5 Relanding after fixing Chromium 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 > Cq-Include-Trybots: luci.v8.try:v8_linux64_ubsan_rel_ng,v8_linux64_tsan_rel > 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} Bug: v8:7703 Change-Id: Ic2d1c2ae41ec645f34963f5f561c33199c72ef4b Cq-Include-Trybots: luci.v8.try:v8_linux64_ubsan_rel_ng,v8_linux64_tsan_rel Cq-Include-Trybots: luci.chromium.try:fuchsia_x64,linux-rel Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1535819 Commit-Queue: Igor Sheludko <ishell@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#60582}
-
Paolo Severini authored
This is a reland of 3cda21de Original change's description: > V8 x64 backend doesn't emit ABI compliant stack frames > > 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/+/1469329 > Reviewed-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} Bug: v8:3598 Change-Id: If988baf7d3e4af165b919d6e54c1ad985f8e25e3 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1534618Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Paolo Severini <paolosev@microsoft.com> Cr-Commit-Position: refs/heads/master@{#60581}
-
- 02 Apr, 2019 17 commits
-
-
Sathya Gunasekaran authored
Bug: v8:7317 Change-Id: I54c0505bcdd4354a896a317ce756bc7121f61d48 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1548580Reviewed-by: Adam Klein <adamk@chromium.org> Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> Cr-Commit-Position: refs/heads/master@{#60580}
-
Michael Lippautz authored
Adds the following UMA counters: - V8.GCMarkingSum: Overall time spent in marking per GC cycle - V8.GCMainThreadMarkingThroughput: Overall marking throughput considering marking time spent on the main thread and allocated bytes after GC. Only reported if more than 1MB of live objects have been marked in the cycle. Bug: chromium:945806 Change-Id: I24a37bf59f02da9aba984bed9de62fdb39be8882 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1547657 Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Hannes Payer <hpayer@chromium.org> Cr-Commit-Position: refs/heads/master@{#60579}
-
Mythri A authored
There was a negation missing in the check. Bug: chromium:948559 Change-Id: I54cfdd8b83771d80aebe506e4c2793cef301e48b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1549164 Auto-Submit: Mythri Alle <mythria@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Hannes Payer <hpayer@chromium.org> Commit-Queue: Mythri Alle <mythria@chromium.org> Cr-Commit-Position: refs/heads/master@{#60578}
-
Tobias Tebbi authored
This reverts commit 6beea97e. Reason for revert: https://crbug.com/942497 Original change's description: > Reland^2 "[build] disable C++ optimization for mksnapshot code." > > This is a reland of a6b95a6a > > In addition to UBSan, also ASAN needs optimizations. > So this CL doesn't disable optimizations for all sanitizer builds. > > Original change's description: > > Reland "[build] disable C++ optimization for mksnapshot code." > > > > This is a reland of cee2f772 > > > > Original change's description: > > > [build] disable C++ optimization for mksnapshot code. > > > > > > By disabling C++ optimizations for code that's only run in mksnapshot, > > > that is, CSA and Torque-generated code, we can save compile time. > > > I observed up to 2x improvements of compile time for some files, > > > while the mksnapshot time did not increase significantly. > > > > > > Bug: v8:7629 > > > Change-Id: I96be2966611b2471b68023e0dd9e351d94f0013c > > > Reviewed-on: https://chromium-review.googlesource.com/c/1460941 > > > Reviewed-by: Yang Guo <yangguo@chromium.org> > > > Reviewed-by: Sigurd Schneider <sigurds@chromium.org> > > > Commit-Queue: Tobias Tebbi <tebbi@chromium.org> > > > Cr-Commit-Position: refs/heads/master@{#59585} > > > > Bug: v8:7629 > > Change-Id: I8330f93173ab3d7b400e15ea4935bbe8256b250f > > Reviewed-on: https://chromium-review.googlesource.com/c/1473292 > > Commit-Queue: Tobias Tebbi <tebbi@chromium.org> > > Commit-Queue: Sigurd Schneider <sigurds@chromium.org> > > Reviewed-by: Sigurd Schneider <sigurds@chromium.org> > > Cr-Commit-Position: refs/heads/master@{#59606} > > Bug: v8:7629 > Change-Id: I42175c472d8e41345573df81645dfe3accc9d8c4 > Reviewed-on: https://chromium-review.googlesource.com/c/1475396 > Reviewed-by: Sigurd Schneider <sigurds@chromium.org> > Commit-Queue: Tobias Tebbi <tebbi@chromium.org> > Cr-Commit-Position: refs/heads/master@{#59632} TBR=yangguo@chromium.org,sigurds@chromium.org,tebbi@chromium.org # Not skipping CQ checks because original CL landed > 1 day ago. Bug: v8:7629 chromium:942497 Change-Id: Ie51d7b53440230b41fb763541908cb1162d8850d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1549158 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#60577}
-
Sigurd Schneider authored
This reverts commit d746be9c. Reason for revert: Speculative revert because this CL *might* cause timeouts on several bots: https://ci.chromium.org/p/v8/builders/ci/V8%20Linux%20-%20predictable/23351 Original change's description: > [wasm] Use work-stealing queues for background compilation > > This reduces contention on the mutex protecting the {CompilationState} > by splitting the compilation unit queues into several queues (one per > background task). Each task executes its own queue first, and steals > from other queues once it runs out of work. > The implementation of the set of work-stealing queues is encapsulated > in the new {CompilationUnitQueues} class in module-compiler.cc. > > R=titzer@chromium.org > > Bug: v8:8916 > Change-Id: I5a40314917e7d4a35d7ff9e8ec124ec212beacab > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1543350 > Commit-Queue: Clemens Hammacher <clemensh@chromium.org> > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > Cr-Commit-Position: refs/heads/master@{#60572} TBR=mstarzinger@chromium.org,titzer@chromium.org,clemensh@chromium.org Change-Id: I92d8862ec0ff0002160a62ed9df9b044fc95c93d No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:8916 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1549166Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#60576}
-
peterwmwong authored
This is a reland of 660d8287 Original change's description: > [debug] Mark toLocaleString and TA#join builtins as side-effect free. > > Bug: chromium:940373 > Change-Id: If5f90ff5f873f0687c6a6a4063e0d09d6bbbd556 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1533157 > Reviewed-by: Yang Guo <yangguo@chromium.org> > Commit-Queue: Peter Wong <peter.wm.wong@gmail.com> > Cr-Commit-Position: refs/heads/master@{#60440} Bug: chromium:940373 Change-Id: I03fe4c06cad9848db211739170462d52ce3f7acf Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1538791Reviewed-by: Simon Zünd <szuend@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Peter Wong <peter.wm.wong@gmail.com> Cr-Commit-Position: refs/heads/master@{#60575}
-
Igor Sheludko authored
... which doesn't respect address hints when reserving an address space region and therefore makes it impossible to fulfill V8 heap alignment requirements. As a workaround we just overreserve address space to ensure that we will be able to find a properly aligned 4GB subregion. Bug: v8:7703 Change-Id: Ibf54e5e13131c2640a448944e3a3bae937c8b938 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1547861 Commit-Queue: Igor Sheludko <ishell@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#60574}
-
Sigurd Schneider authored
Bug: v8:9020 Change-Id: I405d27541f76d1347ae91e5ab426ede72edb1f32 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1541045 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#60573}
-
Clemens Hammacher authored
This reduces contention on the mutex protecting the {CompilationState} by splitting the compilation unit queues into several queues (one per background task). Each task executes its own queue first, and steals from other queues once it runs out of work. The implementation of the set of work-stealing queues is encapsulated in the new {CompilationUnitQueues} class in module-compiler.cc. R=titzer@chromium.org Bug: v8:8916 Change-Id: I5a40314917e7d4a35d7ff9e8ec124ec212beacab Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1543350 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#60572}
-
Peter Marshall authored
Autoroller updated protobuf which has some different files now. Change-Id: If3b2f6452d30e754504e8798de5adb8706371cb5 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1547866 Auto-Submit: Peter Marshall <petermarshall@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#60571}
-
Michael Achenbach authored
This reverts commit 37cdcbcf. Reason for revert: https://crbug.com/948590 Original change's description: > Update V8 DEPS. > > Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/a72af28..af636cf > > Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/5b63b1f..83131f4 > > Rolling v8/third_party/perfetto: https://android.googlesource.com/platform/external/perfetto/+log/21a33af..cb85131 > > Rolling v8/tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang/+log/82dbc02..fdca78e > > TBR=machenbach@chromium.org,hablich@chromium.org,sergiyb@chromium.org > > Change-Id: I28eeadb22b369aab6bc89219bdaa31a3af35a65d > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1548591 > Reviewed-by: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> > Commit-Queue: Michael Achenbach <machenbach@chromium.org> > Cr-Commit-Position: refs/heads/master@{#60563} TBR=machenbach@chromium.org,hablich@chromium.org,sergiyb@chromium.org,v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com Bug: chromium:948590 Change-Id: Ie04943a871ba1bf93094764e452173ea59acb220 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1549157Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#60570}
-
Michael Achenbach authored
TBR=sigurds@chromium.org NOTRY=true Change-Id: I5c6988aa5670deaed59647e2dd4b40ee9c368a20 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1549155Reviewed-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@{#60569}
-
Sigurd Schneider authored
This happened because {EphemeronKeyWriteBarrierFromCode} will also be called if both table and key are in old-space, and key is an evacuation candidate. Bug: chromium:948307, v8:8557 Change-Id: Ic1284209584b74cb343163e4beec632a3f1544b8 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1547858 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#60568}
-
Georg Neis authored
Bug: v8:7790 Change-Id: I44c722357434a32ae9400a0e44dbc522dafe873a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1547849 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@{#60567}
-
Clemens Hammacher authored
This CL adds all the necessary {WasmCodeRefScope}s in the code base, or at least a good approximation. A follow-up CL will enable a check that a {WasmCodeRefScope} exists whenever a pointer to a {WasmCode} object is returned from the {NativeModule}. This should flush out any missing scopes. R=titzer@chromium.org Bug: v8:8217 Change-Id: I54c7eb39aeb1acde38273c399396e6b1390a4cb2 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1533860 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#60566}
-
Leszek Swirski authored
Don't just DCHECK that intrinsic calls are one-byte, but explicitly check and return (a failure) when they are not. Bug: chromium:948248 Change-Id: If2c16f337e9c97e5a585d21a51a985f4abbe1c29 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1547857 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#60565}
-
Frederik Gossen authored
This is a reland of 09fa63a9 Original change's description: > [wasm-hints] Enabled Lazy Compilation by Hint > > Hints for lazy compilation are now taken into consideration. If the > custom hints section suggests lazy compilatin we do so unless the module > consists of a single function. > > Bug: v8:9003 > Change-Id: Ibdc400453cee20d4d5c814733887b38fb675b220 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1535827 > 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@{#60557} Bug: v8:9003 No-Try: true Change-Id: I8d6f4518aa548c815fba4e6e62d2206129336cc6 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1547851 Commit-Queue: Frederik Gossen <frgossen@google.com> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#60564}
-