1. 09 Feb, 2021 2 commits
  2. 08 Feb, 2021 12 commits
  3. 07 Feb, 2021 1 commit
  4. 06 Feb, 2021 2 commits
  5. 05 Feb, 2021 16 commits
  6. 04 Feb, 2021 7 commits
    • Ng Zhi An's avatar
      [wasm-simd][arm64] Prototype i32x4.widen_i8x16_{s,u} · 74362ae3
      Ng Zhi An authored
      This prototypes i32x4.widen_i8x16_s and i32x4.widen_i8x16_u for arm64.
      
      Bug: v8:11297
      Change-Id: Ib9be5086c8ea98340c9bb1980c319626d7072c1e
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2664994Reviewed-by: 's avatarDeepti Gandluri <gdeepti@chromium.org>
      Commit-Queue: Zhi An Ng <zhin@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#72537}
      74362ae3
    • Ng Zhi An's avatar
      [wasm-simd][x64] Fix F64x2ConvertLowI32x4U isel and codegen · 5ce3afe2
      Ng Zhi An authored
      The previous instruction selection was too loose, it only required
      registers for the inputs. The codegen also used Unpcklps(dst, mask), and
      failed to use src at all. The test case was accidentally passing
      because dst == src (xmm0) by chance.
      
      We fix this bug requiring that for AVX, any register is fine, but for
      SSE, require dst == src. Also redefine Unpcklps to check dst == src in
      the no AVX case.
      
      Bug: v8:11265
      Change-Id: I1988b2d2da8263512bf6e675e6297c50f55663f7
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2668918Reviewed-by: 's avatarDeepti Gandluri <gdeepti@chromium.org>
      Commit-Queue: Zhi An Ng <zhin@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#72536}
      5ce3afe2
    • Ng Zhi An's avatar
      [wasm-simd][ia32] Implement double precision conversions · fec9c5d6
      Ng Zhi An authored
      Implement these 6 instructions:
      
      - f64x2.convert_low_i32x4_s
      - f64x2.convert_low_i32x4_u
      - i32x4.trunc_sat_f64x2_s_zero
      - i32x4.trunc_sat_f64x2_u_zero
      - f32x4.demote_f64x2_zero
      - f64x2.promote_low_f32x4
      
      The code sequences are exactly the same as on x64.
      
      Needed to add some more instructions, and we don't have macro lists for
      these instructions yet, so individually define them for now. We can
      factor them into lists in a future change.
      
      Bug: v8:11265
      Change-Id: I606e1226201e3c5ecdc7e3f611315437e917d77c
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2668913Reviewed-by: 's avatarDeepti Gandluri <gdeepti@chromium.org>
      Commit-Queue: Zhi An Ng <zhin@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#72535}
      fec9c5d6
    • Toon Verwaest's avatar
      [feedbackvector] Don't drop the interrupt budget when using a OneClosureCell · a8091a05
      Toon Verwaest authored
      Change-Id: I783c41ca4192d686454728b7c8356935bc67cc98
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2675922
      Commit-Queue: Toon Verwaest <verwaest@chromium.org>
      Commit-Queue: Mythri Alle <mythria@chromium.org>
      Auto-Submit: Toon Verwaest <verwaest@chromium.org>
      Reviewed-by: 's avatarMythri Alle <mythria@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#72534}
      a8091a05
    • Jakob Gruber's avatar
      [deoptimizer] Add translation array compression behind a flag · b62bbd16
      Jakob Gruber authored
      TranslationArrays (TA) are large and rarely used, thus could benefit
      from compression. This CL adds a --turbo-compress-translation-arrays
      flag (off by default) to experiment with that.
      
      Each optimized Code object has an associated translation array
      (Code->DeoptimizationData->TranslationArray). These translation arrays
      have roughly the same size as the Code object itself. They are
      used only rarely: when deoptimizing, and when traversing the stack and
      looking into optimized frames. Neither of these code paths are
      especially performance critical. TA's contain only immutable, untagged
      data. They are thus good candidates for compression.
      
      The trade-off is between TA memory consumption and time spent
      in decompression/compression. This CL keeps everything on the main
      thread, but it would also be possible to move compression (the more
      expensive operation by a factor of 5 to 10) to a worker thread.
      
      Numbers from a local Octane2 run:
      
      Sum of Code instructions sizes: 4.6MB
      Sum of uncompressed TA sizes:   4.1MB
      Sum of compressed TA sizes:     0.6MB
      
      Compression times depend on the selected compression quality, but
      roughly:
      
      Compression:   50ms (40us avg per compilation)
      Decompression:        7us avg per compilation
      
      Drive-by: Translation arrays currently use run-length encoding;
      I disabled this for when --turbo-compress-translation-arrays is
      enabled (no need to compress twice).
      
      Bug: v8:11354
      Change-Id: I7828d7d91eb074816b383b02f883c5d7b7e318b7
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2652497
      Commit-Queue: Jakob Gruber <jgruber@chromium.org>
      Reviewed-by: 's avatarMichael Stanton <mvstanton@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#72533}
      b62bbd16
    • Michael Achenbach's avatar
      [test] Prepare removing gpu defaults for tester bots · 5e80ce59
      Michael Achenbach authored
      We want to remove the gpu:none default as we want to switch to
      Mac Minis in the Mac pool that have gpus.
      
      This starts a 3-way change:
      1. This CL: Add the gpu dimension for Mac source side.
      2. Remove setting it as default for Mac in infra.
      3. Flip the value for gpu source side.
      
      This requires merging to beta/stable.
      
      No-Try: true
      Bug: chromium:1174040
      Change-Id: I81f2f5863593aa93fa668b4534d1116a11768f31
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2673402
      Auto-Submit: Michael Achenbach <machenbach@chromium.org>
      Commit-Queue: Maya Lekova <mslekova@chromium.org>
      Reviewed-by: 's avatarMaya Lekova <mslekova@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#72532}
      5e80ce59
    • Thibaud Michaud's avatar
      [wasm][eh] Fix catch_all encoding · a12e9329
      Thibaud Michaud authored
      In the latest spec, catch_all is encoded as 0x05. This is the same
      opcode as "else", but they do not conflict because "else" is not valid
      in the context of a try block.
      
      The 0x0a opcode now corresponds to the "unwind" instruction, which
      currently has the same semantics as "catch_all".
      
      R=clemensb@chromium.org
      
      Bug: v8:11392
      Change-Id: Ie9cd06c9a2001a02d8bea5be7a3c016e3a58ee3d
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2674007
      Commit-Queue: Thibaud Michaud <thibaudm@chromium.org>
      Reviewed-by: 's avatarClemens Backes <clemensb@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#72531}
      a12e9329