- 18 Jun, 2020 1 commit
-
-
Jakob Gruber authored
Introduced in https://crrev.com/c/2250243. CONSTEXPR_DCHECK(cond) replaces the longer #if V8_HAS_CXX14_CONSTEXPR DCHECK(cond); #endif pattern. Change-Id: I636e5b4b40bffb29b2e82c81285b2ef78a822745 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2250244Reviewed-by:
Clemens Backes <clemensb@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#68402}
-
- 16 Jun, 2020 1 commit
-
-
Georgia Kouveli authored
The C++ code uses the A instruction key for return address signing, which is the default for Clang and GCC when the -mbranch-protection option is used (although this can be configured to use the B key). Using the B key for JS means that it's not possible to use an A key signing gadget to replace a return address signed with the B key and vice-versa. This should offer a degree of separation from the C++ side. Bug: v8:10026 Change-Id: Ia9dcc7ae7096c96b4a271efbe25fc02940f6fc8e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2242953Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Reviewed-by:
Georg Neis <neis@chromium.org> Commit-Queue: Georgia Kouveli <georgia.kouveli@arm.com> Cr-Commit-Position: refs/heads/master@{#68360}
-
- 15 Jun, 2020 4 commits
-
-
Milad Farazmand authored
Change-Id: I1b045c2c3e9b199d3f24b191639b5f8c28e8ac5b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2247038Reviewed-by:
Junliang Yan <jyan@ca.ibm.com> Commit-Queue: Milad Farazmand <miladfar@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#68351}
-
Ng Zhi An authored
Implements f32x4 and f64x2 ceil, floor, trunc, nearestint for ia32. Bug: v8:10553 Change-Id: I272c20441297b9aebd39bc7ff96870b40e8ac653 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2227257 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by:
Deepti Gandluri <gdeepti@chromium.org> Cr-Commit-Position: refs/heads/master@{#68347}
-
Ng Zhi An authored
This is a reland of 3692bef9 Integer overflow in the test code is fixed by using MulWithWraparound. Original change's description: > [wasm-simd][x64] Prototype i32x4.dot_i16x8_s > > This implements I32x4DotI16x8S for x64 and interpreter. > > Bug: v8:10583 > Change-Id: I404ac68c19c1686a93f29c3f4fc2d661c9558c67 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2229056 > Reviewed-by: Tobias Tebbi <tebbi@chromium.org> > Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> > Commit-Queue: Zhi An Ng <zhin@chromium.org> > Cr-Commit-Position: refs/heads/master@{#68244} Bug: v8:10583 Change-Id: Ie7d0032f5398b6f725c02b572764258adacc8578 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2236962Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Reviewed-by:
Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#68343}
-
Jakob Gruber authored
... to OptimizedCompilationInfo, BytecodeGraphBuilder, and JSHeapBroker. Also add first uses of these flags in pipeline.cc by skipping certain phases when nci is enabled. With this change, tests in the NCI variant will start to fail since generic lowering is not fully implemented. These implementations will follow incrementally in the next days. Bug: v8:8888 Change-Id: I3f570fb92f09059d1f1f4015f88ffe80ccf746ad Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2239572 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#68339}
-
- 10 Jun, 2020 4 commits
-
-
Milad Farazmand authored
Change-Id: Iae7b56504366c7867439b7d7956f1202b2a8dc5a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2239369Reviewed-by:
Junliang Yan <jyan@ca.ibm.com> Commit-Queue: Milad Farazmand <miladfar@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#68305}
-
Ng Zhi An authored
This is a reland of f7f72b7b This was reverted because of a test timing out on slow_path variant (https://crrev.com/c/2237131 for details). Turns out the test is just really slow, and was skipped on this variant in https://crrev.com/c/2237628. Relanding without changes. Original change's description: > [wasm-simd] Prototype f64x2 rounding instructions > > Implements f64x2 ceil, floor, trunc, nearestint, for interpreter and > x64. > > Bug: v8:10553 > Change-Id: I12a260a3b1d728368e5525d317d30fc9581cae04 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2213082 > Commit-Queue: Zhi An Ng <zhin@chromium.org> > Reviewed-by: Tobias Tebbi <tebbi@chromium.org> > Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> > Cr-Commit-Position: refs/heads/master@{#68241} Tbr: tebbi@chromium.org Bug: v8:10553 Change-Id: I4cdc23d0556f11310d32fa066f40b057fd49d2d7 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2237350 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by:
Deepti Gandluri <gdeepti@chromium.org> Reviewed-by:
Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/master@{#68304}
-
Jakob Gruber authored
... for more consistent naming and less boilerplate. Getters now use the `lower_case_flag()` style. Setters now use the `set_lower_case_flag()` style. Bug: v8:8888 Change-Id: I5af35b13a013bf303c4ca8d86f926754af28bfce Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2237139 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#68293}
-
Leszek Swirski authored
Remove error reporting from parsing::Parse*, since in most cases we didn't actually want them (clear errors afterward), and there was an issue where Compiler::Compile would try to report errors already reported in ParseAny, which ended up triggering unreachable code. As a drive-by, move some one-off parse exception handling in test-parsing into a CHECKED_PARSE_PROGRAM macro which replaces all the "necessarily positive" calls to parsing::ParseProgram. Bug: chromium:1091656 Change-Id: I4d463ec363312aea36ab92f1322cf66a416b9888 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2237134Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Auto-Submit: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#68281}
-
- 09 Jun, 2020 10 commits
-
-
Clemens Backes authored
The existing {OwnedVector::New} value-initializes all elements, which means zeroing them in case on integral types. In many cases though we know that we will overwrite the content anyway, so the initialization is redundant. In the case of assembly buffers for wasm compilation, this zeroing showed up with several percent of execution times for some benchmarks. Hence this CL introduces a new {OwnedVector::NewForOverwrite} (along the lines of {std::make_unique_for_overwrite}), which only default-initializes the values (meaning no initialization for integral values). R=thibaudm@chromium.org Bug: v8:10576 Change-Id: I8d2806088acebe8a264dea2c7ed74b0423671d4f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2237140 Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by:
Thibaud Michaud <thibaudm@chromium.org> Cr-Commit-Position: refs/heads/master@{#68268}
-
Milad Farazmand authored
Change-Id: I782f5b0dd8ed374df406fb615f6e74efed8b5368 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2235658Reviewed-by:
Junliang Yan <jyan@ca.ibm.com> Commit-Queue: Milad Farazmand <miladfar@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#68267}
-
Leszek Swirski authored
Landing this simple fix rather than reverting Tbr: rmcilroy@chromium.org No-Presubmit: true No-Tree-Checks: true No-Try: true Change-Id: I230300c32bf6a97cd82376c46461735dd34378b9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2237632 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#68262}
-
Ambroise Vincent authored
This includes the instruction opcode, its use in TF, its support in the simulator and the detection of the associated CPU feature. The instruction can be tested in the simulator with the new --sim-arm64-optional-features flag. Change-Id: I6047fa16696394fe0ced4535f7788d2c8716a18c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2222348Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Reviewed-by:
Georg Neis <neis@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#68261}
-
Clemens Backes authored
The {NONE} reloc info is the one used most often, i.e. for every assembler call that takes an {Immediate} on x64 which is not relocatable. Hence assign value 0 to {NONE} such that constructing such immediates is faster and also checking for this most common case is faster. R=ishell@chromium.org Bug: v8:10576 Change-Id: I3c048710b80dd31fa5b5d3b1415d72a24d95cb90 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2237136Reviewed-by:
Igor Sheludko <ishell@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#68259}
-
Santiago Aboy Solanes authored
Change-Id: Ic6130cee088d3bc12fdfb4a5f947138b34466456 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2232545 Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#68249}
-
Leszek Swirski authored
This reverts commit f7f72b7b. Reason for revert: Flaky timeouts of slow-path tests -- specifically, mjsunit/regress/wasm/regress-9017, which appears to have regressed from ~2 min to ~3-4 min https://logs.chromium.org/logs/v8/buildbucket/cr-buildbucket.appspot.com/8878016799136124416/+/steps/Check_-_slow_path__flakes_/0/logs/regress-9017/0 Original change's description: > [wasm-simd] Prototype f64x2 rounding instructions > > Implements f64x2 ceil, floor, trunc, nearestint, for interpreter and > x64. > > Bug: v8:10553 > Change-Id: I12a260a3b1d728368e5525d317d30fc9581cae04 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2213082 > Commit-Queue: Zhi An Ng <zhin@chromium.org> > Reviewed-by: Tobias Tebbi <tebbi@chromium.org> > Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> > Cr-Commit-Position: refs/heads/master@{#68241} TBR=gdeepti@chromium.org,tebbi@chromium.org,zhin@chromium.org Change-Id: I9915dd375c7f0e08b5414189efb29ed1c90cb96d No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:10553 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2237131Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#68248}
-
Andreas Haas authored
This CL * Adds the xadd instruction to the ia32 assembler and disassembler; * Implements the AtomicAdd instructions, except AtomicAddU64, on ia32; R=clemensb@chromium.org Bug: v8:10108 Change-Id: Ic8653a9f96148282951104fefb4185c4c0db89a3 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2232719Reviewed-by:
Clemens Backes <clemensb@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#68247}
-
Zhi An Ng authored
This reverts commit 3692bef9. Reason for revert: https://ci.chromium.org/p/v8/builders/ci/V8%20Linux64%20UBSan/11514? Original change's description: > [wasm-simd][x64] Prototype i32x4.dot_i16x8_s > > This implements I32x4DotI16x8S for x64 and interpreter. > > Bug: v8:10583 > Change-Id: I404ac68c19c1686a93f29c3f4fc2d661c9558c67 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2229056 > Reviewed-by: Tobias Tebbi <tebbi@chromium.org> > Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> > Commit-Queue: Zhi An Ng <zhin@chromium.org> > Cr-Commit-Position: refs/heads/master@{#68244} TBR=gdeepti@chromium.org,tebbi@chromium.org,zhin@chromium.org Change-Id: I8760d480a783ba6c8a2ec2eaeb0131c7d4e11159 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:10583 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2236961Reviewed-by:
Zhi An Ng <zhin@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#68245}
-
Ng Zhi An authored
This implements I32x4DotI16x8S for x64 and interpreter. Bug: v8:10583 Change-Id: I404ac68c19c1686a93f29c3f4fc2d661c9558c67 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2229056Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Reviewed-by:
Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#68244}
-
- 08 Jun, 2020 1 commit
-
-
Ng Zhi An authored
Implements f64x2 ceil, floor, trunc, nearestint, for interpreter and x64. Bug: v8:10553 Change-Id: I12a260a3b1d728368e5525d317d30fc9581cae04 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2213082 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Reviewed-by:
Deepti Gandluri <gdeepti@chromium.org> Cr-Commit-Position: refs/heads/master@{#68241}
-
- 06 Jun, 2020 1 commit
-
-
Zhou, Zhiguo authored
Bug: v8:9909 Change-Id: I99c599ac1d872a8b4e7c154a942026b52ecb0bd5 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2219688 Commit-Queue: Zhiguo Zhou <zhiguo.zhou@intel.com> Reviewed-by:
Clemens Backes <clemensb@chromium.org> Reviewed-by:
Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#68220}
-
- 05 Jun, 2020 2 commits
-
-
Milad Farazmand authored
Change-Id: I346d237515c589c65e2c073eea55cdbfc301688e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2233179Reviewed-by:
Junliang Yan <jyan@ca.ibm.com> Commit-Queue: Milad Farazmand <miladfar@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#68214}
-
Yu Yin authored
All these functions need to do is just write the value to the memory, but EmitHelper will do something more than this, EmitHelper will check if it need generate trampoline code while code generating and it will insert trampoline code at current pc offset, this means there maybe have trampoline code between two consecutive dd()'s target memory(pc), this is not we want. Change-Id: I5537f133be78aabdc4d53d4de07f388fa50f4a64 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2224963 Commit-Queue: Yu Yin <xwafish@gmail.com> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#68188}
-
- 03 Jun, 2020 5 commits
-
-
Milad Farazmand authored
Change-Id: I8962c08329c57367ff82d4669880c7efb1db8875 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2229304Reviewed-by:
Junliang Yan <jyan@ca.ibm.com> Commit-Queue: Milad Farazmand <miladfar@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#68158}
-
Ng Zhi An authored
vroundps assembly is incorrect: - the signature was wrong, vroundps takes 2 operands and 1 immediate - when calling vinstr, should always pass xmm0, this wasn't causing issues because our test cases were restricted enough that it was always xmm0 anyway - the macro assembler should use AVX_OP_SSE4_1, since roundps requires SSE4_1 - drive-by fix for roundss and roundsd to be AVX_OP_SSE4_1 - add disasm for roundps and vroundps, and test them Bug: v8:10553 Change-Id: I4046eb81a9f18d5af7137bbd46bfa0478e5a9ab2 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2227252Reviewed-by:
Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#68157}
-
Mythri A authored
This is a followup of the cl [1] that fixes a bug where bytecode was getting flushed when allocating feedback vector. The fix added IsCompiledScope before allocating a new feedback vector. We now pass IsCompiledScope to JSFunction::EnsureFeedbackVector. This makes it explicit that EnsureFeedbackVector expects a function that is compiled and the bytecode shouldn't be flushed during the allocation.Also adds a test. [1] https://chromium-review.googlesource.com/c/v8/v8/+/2218066 Bug: v8:10560 Change-Id: I552c449a57555dffa625b2e4efa04c2c276fc0b4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2222347 Commit-Queue: Mythri Alle <mythria@chromium.org> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#68142}
-
Thibaud Michaud authored
On x86-64, we spend significant time constructing and copying operands in Liftoff (around 5% locally). Inlining the constructor and helper functions removes most of the overhead. R=clemensb@chromium.org Bug: v8:10576 Change-Id: I1663e3e92abe7683eba9320e77fce9be8f84b4ca Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2225023 Commit-Queue: Thibaud Michaud <thibaudm@chromium.org> Reviewed-by:
Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#68130}
-
Iain Ireland authored
https://crrev.com/c/2072858 rewrote the implementation of non-unicode ignore-case matches to comply with the JS spec in some corner cases. It fixed character matches and character class matches. We missed a similar bug in the implementation of back references. This CL fixes that bug. The main change is in regexp-macro-assembler.cc, where CaseInsensitiveCompareUC16 is split into CaseInsensitiveCompareUnicode (which has the same semantics as before) and CaseInsensitiveCompareNonUnicode (which has the semantics described here: https://tc39.es/ecma262/#sec-runtime-semantics-canonicalize-ch). Most of the rest of the patch undoes https://crrev.com/c/2081816 to once again make the unicode flag available to the macroassembler, so that we can decide which helper function to call. The testcase is a version of test/intl/regress-10248.js, modified to test backreferences. Bug: v8:10573 Change-Id: I70ef7d134d37f99b1f75a5eba17020e82d59f1b9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2219284Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#68129}
-
- 02 Jun, 2020 3 commits
-
-
Clemens Backes authored
The SourcePositionTableBuilder unconditionally allocates heap memory for every Liftoff compilation. This shows up with 1-2% of compilation time in profiles. Hence move the vector contained in the SourcePositionTableBuilder into the compilation zone. Such a zone already exists for both Liftoff and TurboFan, so we can easily save allocations this way. R=thibaudm@chromium.org Bug: v8:10576 Change-Id: Ia83d05cc8c36c775ebff6ec2064e9c3f8cc4d384 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2224221 Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by:
Thibaud Michaud <thibaudm@chromium.org> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#68112}
-
Ng Zhi An authored
This relands commit d04b5e47. The fix here is in the assembler for pmovmskb, emit_optional_rex_32 should be called after emitting the prefix byte. Original change's description: > [wasm-simd][liftoff][ia32][x64] Implement bitmask > > Implements i8x16 i16x8 i32x4 bitmask. > > This was merged into the proposal in > https://github.com/WebAssembly/simd/pull/201/. > > Bug: v8:9909,v8:10308 > Change-Id: I882f0c2697213cdf593e745112e0897cee252009 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2222607 > Commit-Queue: Zhi An Ng <zhin@chromium.org> > Reviewed-by: Clemens Backes <clemensb@chromium.org> > Cr-Commit-Position: refs/heads/master@{#68090} Bug: v8:9909, v8:10308 Change-Id: I4897585c86b87f72dc8f142b275171276d135a24 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2225090Reviewed-by:
Clemens Backes <clemensb@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#68106}
-
Jakob Gruber authored
If --turbo-nci is enabled, use compare op builtins with feedback collection during generic lowering. Bug: v8:8888 Change-Id: I886020e2ee280f65388d9987c70958546f99e0f3 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2215821Reviewed-by:
Georg Neis <neis@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#68100}
-
- 30 May, 2020 1 commit
-
-
Tobias Tebbi authored
Bug: chromium:1086890 Change-Id: I8345f209d8f4e40a57df166664f403a6cf6c6652 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2222346 Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Auto-Submit: Tobias Tebbi <tebbi@chromium.org> Reviewed-by:
Michael Stanton <mvstanton@chromium.org> Cr-Commit-Position: refs/heads/master@{#68085}
-
- 28 May, 2020 5 commits
-
-
Ng Zhi An authored
Implements f32x4 ceil, floor, trunc, nearestint, for interpreter and x64. Bug: v8:10553 Change-Id: Iab747cbd2a872aa6cd4ad23c5b8334d5c8e4da61 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2212435Reviewed-by:
Deepti Gandluri <gdeepti@chromium.org> Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#68054}
-
Mike Stanton authored
Bug: v8:8906 Change-Id: Ie83540f9dd9448a09c5a8af0c7b7e1ea58aaf497 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2110029Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Michael Stanton <mvstanton@chromium.org> Cr-Commit-Position: refs/heads/master@{#68040}
-
Nico Hartmann authored
This is a reland of 6204768b The original issue exposed the problem that NumberEqual performs implicit conversion of oddballs to numbers, which is incorrect for abstract equality comparison (i.e. 0 == null must not be true). This reland fixes this by applying the following steps: * Introduced a new kNumberOrBoolean value for CompareOperationFeedback, CompareOperationHint, TypeCheckKind and CheckedTaggedInputMode. * In CodeStubAssembler::Equal: Further distinguish between boolean and non-boolean oddballs and set feedback accoringly. * In JSTypedLowering: Construct [Speculative]NumberEqual operator with CompareOperationHint::kNumberOrBoolean, when this feedback is present. JSOperatorBuilder and operator cache are extended accordingly. * In SimplifiedLowering: Propagate a UseInfo with new TypeCheckKind::kNumberOrBoolean. * This leads to the generation of CheckedTaggedToFloat64 in RepresentationChanger with new CheckedTaggedInputMode::kNumberOrBoolean. * In EffectControlLinearizer: Handle this new mode. Accept and convert number and boolean and deopt for rest. Original change's description: > [turbofan] Improve equality on NumberOrOddball > > This CL cleans up CompareOperationFeedback by replacing it with a > composable set of flags. The interpreter is changed to collect > more specific feedback for abstract equality, especially if oddballs > are involved. > > TurboFan is changed to construct SpeculativeNumberEqual operator > instead of the generic JSEqual in many more cases. This change has > shown a local speedup of a factor of 3-10, because the specific > operator is way faster than calling into the generic builtin, but > it also enables additional optimizations, further improving > runtime performance. > > Bug: v8:5660 > Change-Id: I856752caa707e9a4f742c6e7a9c75552fb431d28 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2162854 > Reviewed-by: Mythri Alle <mythria@chromium.org> > Reviewed-by: Georg Neis <neis@chromium.org> > Commit-Queue: Nico Hartmann <nicohartmann@chromium.org> > Cr-Commit-Position: refs/heads/master@{#67645} TBR: tebbi@chromium.org Bug: v8:5660 Change-Id: I12e733149a1d2773cafb781a1d4b10aa1eb242a7 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2193713 Commit-Queue: Georg Neis <neis@chromium.org> Reviewed-by:
Mythri Alle <mythria@chromium.org> Reviewed-by:
Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#68037}
-
Marja Hölttä authored
See https://github.com/tc39/proposal-promise-any/pull/64/ Bug: v8:9808 Change-Id: I5f11a5e306d17372ba7c24f313165de985444470 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2214826 Commit-Queue: Marja Hölttä <marja@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Reviewed-by:
Maya Lekova <mslekova@chromium.org> Reviewed-by:
Shu-yu Guo <syg@chromium.org> Cr-Commit-Position: refs/heads/master@{#68034}
-
Deepti Gandluri authored
This reverts commit b9d2c22a. Reason for revert: Reverting due to regressions in multiple JS performance/memory benchmarks. Original change's description: > [codegen] Reduce kScratchDoubleReg usage > > Bug: v8:10506 > Change-Id: I3fccaf640e23b5fcc7722164e2437b247684f824 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2207919 > Reviewed-by: Zhi An Ng <zhin@chromium.org> > Commit-Queue: Deepti Gandluri <gdeepti@chromium.org> > Cr-Commit-Position: refs/heads/master@{#67909} TBR=gdeepti@chromium.org,zhin@chromium.org # Not skipping CQ checks because original CL landed > 1 day ago. Bug: v8:10506 Change-Id: I9a1c960c577f0e0d42c817d03bc56895268a0718 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2219339Reviewed-by:
Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Deepti Gandluri <gdeepti@chromium.org> Cr-Commit-Position: refs/heads/master@{#68031}
-
- 27 May, 2020 2 commits
-
-
Milad Farazmand authored
Port 043ac205 Original Commit Message: Implement i8x16.bitmask, i16x8.bitmask, i32x4.bitmask on x64. R=zhin@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com BUG= LOG=N Change-Id: I1bb6439abb3db27c50e1f06a833954c473119bcd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2219007Reviewed-by:
Junliang Yan <jyan@ca.ibm.com> Reviewed-by:
Zhi An Ng <zhin@chromium.org> Commit-Queue: Milad Farazmand <miladfar@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#68023}
-
Santiago Aboy Solanes authored
Bug: v8:9708, v8:6949 Change-Id: I80fa9b813d6ce80e52a42a02b42f8c98e2f3f75f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2212267 Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Reviewed-by:
Dan Elphick <delphick@chromium.org> Cr-Commit-Position: refs/heads/master@{#68016}
-