1. 23 Jul, 2022 1 commit
  2. 22 Jul, 2022 3 commits
  3. 19 Jul, 2022 1 commit
  4. 18 Jul, 2022 2 commits
  5. 15 Jul, 2022 2 commits
  6. 14 Jul, 2022 3 commits
  7. 13 Jul, 2022 2 commits
  8. 12 Jul, 2022 1 commit
  9. 11 Jul, 2022 3 commits
    • Samuel Groß's avatar
      [sandbox] Prepare ExternalPointerTable rollout · 8a59678b
      Samuel Groß authored
      This CL does the following:
      - It enables (i.e. allocates and initializes) the per-Isolate
        ExternalPointerTable when the sandbox is enabled.
      - It refactors the list of external pointer tags to mark them as
        "sandboxed" or "unsandboxed". An unsandboxed external pointer has a
        null tag.
      - It changes V8_SANDBOXED_EXTERNAL_POINTERS to now essentially just
        enable sandboxing for all available tags.
      - It modifies all low-level external pointer accessors to perform the
        ExternalPointerLookup only if the tag is non-zero and otherwise treat
        the slot as containing a raw pointer.
      
      This now allows rolling out external pointer sandboxing incrementally
      (separately for each external pointer type), which will in turn allow
      for more precise performance measurements of the impact of the sandbox.
      
      Note: when an external pointer tag is now marked as sandboxed (and
      V8_SANDBOXED_EXTERNAL_POINTERS is not enabled), the underlying slots are
      still 64-bits in size. This simplifies the implementation as we would
      otherwise need to deal with variably-sized external pointer slots. Local
      benchmarking suggests that the benefits from 32-bit external pointer
      slots are insignificant on typical benchmarks, so this should be ok.
      
      Drive-by: rename kExternalPointerSize to kExternalPointerSlotSize to
      make it more clear what it refers to (the on-heap storage size). Also
      delete CodeStubAssembler::InitializeExternalPointerField as it is not
      currently used and the implementation is fairly inefficient.
      
      Bug: v8:10391
      Change-Id: I7c38729c7e9048d737a1a8ced84749f5b1f7feab
      Cq-Include-Trybots: luci.v8.try:v8_linux64_heap_sandbox_dbg_ng,v8_linux_arm64_sim_heap_sandbox_dbg_ng
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3736447Reviewed-by: 's avatarIgor Sheludko <ishell@chromium.org>
      Reviewed-by: 's avatarMichael Lippautz <mlippautz@chromium.org>
      Reviewed-by: 's avatarLeszek Swirski <leszeks@chromium.org>
      Reviewed-by: 's avatarAndreas Haas <ahaas@chromium.org>
      Commit-Queue: Samuel Groß <saelo@chromium.org>
      Reviewed-by: 's avatarNico Hartmann <nicohartmann@chromium.org>
      Cr-Commit-Position: refs/heads/main@{#81636}
      8a59678b
    • Lu Yahan's avatar
      [riscv64] Fix build error · 1807aa5c
      Lu Yahan authored
      Change-Id: I9cc2df6108b08aacf0b017f85128a9475022cedf
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3754286
      Auto-Submit: Yahan Lu <yahan@iscas.ac.cn>
      Commit-Queue: ji qiu <qiuji@iscas.ac.cn>
      Reviewed-by: 's avatarji qiu <qiuji@iscas.ac.cn>
      Commit-Queue: Yahan Lu <yahan@iscas.ac.cn>
      Cr-Commit-Position: refs/heads/main@{#81625}
      1807aa5c
    • Liu Yu's avatar
      [loong64][mips64] Remove some unused includes (4) · 5c19b19c
      Liu Yu authored
      Port commit 0ed101e0
      
      Bug: v8:13006
      Change-Id: I4e0cba2e9a6cbef6ce01fbc81ce1b1ee71303474
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3754284
      Auto-Submit: Liu Yu <liuyu@loongson.cn>
      Commit-Queue: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn>
      Reviewed-by: 's avatarZhao Jiazhong <zhaojiazhong-hf@loongson.cn>
      Cr-Commit-Position: refs/heads/main@{#81624}
      5c19b19c
  10. 08 Jul, 2022 1 commit
  11. 07 Jul, 2022 3 commits
  12. 06 Jul, 2022 2 commits
  13. 05 Jul, 2022 3 commits
  14. 04 Jul, 2022 1 commit
  15. 01 Jul, 2022 1 commit
    • Toon Verwaest's avatar
      [api] Cached properties are read of the receiver · 078f3fb4
      Toon Verwaest authored
      The optimization was initially designed to support only the case where
      the receiver is the holder, so make this explicit:
      
      Cached properties were implemented before super property access and
      Reflect.get, or at least around the same time, not realising it
      conflicted. Cached properties are optimizations for known accessors
      globalThis.window and globalThis.document. They store the result of
      calling those accessors. The result of calling those accessors depends
      on the receiver passed to the call, so we shouldn't simply read the
      cached property off of the _holder_ of the accessor, but only do so if
      the holder is the same as the receiver.
      
      Bug: chromium:1305302
      Change-Id: Iea6f4437e09d5a293798041adcb310469589d00f
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3738744Reviewed-by: 's avatarLeszek Swirski <leszeks@chromium.org>
      Auto-Submit: Toon Verwaest <verwaest@chromium.org>
      Commit-Queue: Leszek Swirski <leszeks@chromium.org>
      Cr-Commit-Position: refs/heads/main@{#81498}
      078f3fb4
  16. 30 Jun, 2022 3 commits
  17. 28 Jun, 2022 1 commit
  18. 24 Jun, 2022 1 commit
  19. 23 Jun, 2022 3 commits
  20. 22 Jun, 2022 1 commit
    • Luis Fernando Pardo Sixtos's avatar
      [shared-struct] Shared Array Initial prototype · afb26623
      Luis Fernando Pardo Sixtos authored
      Initial implementation for concurrent shared arrays. Current implementation exposes a `SharedArray` constructor, but its syntax might
      change in the future.
      
      Shared arrays can be shared across Isolates, have a fixed size, have no
      prototype, have no constructor, and can only store primitives, shared structs and other shared arrays. With this CL shared structs are also allowed to store shared arrays.
      
      The Backing storage for the SharedArrays is a `FixedArrayBase`. This CL introdces a new ElementKind: `SHARED_ARRAY_ELEMENTS`. The new kind should match the overall functionality of the `PACKED_SEALED_ELEMENTS` kind, but having it as standalone kind allows for easier branching in CSA and turbofan code.
      
      Bug: v8:12547
      Change-Id: I054a04624d4cf1f37bc26ae4b92b6fe33408538a
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3585353Reviewed-by: 's avatarTobias Tebbi <tebbi@chromium.org>
      Reviewed-by: 's avatarIgor Sheludko <ishell@chromium.org>
      Commit-Queue: Luis Fernando Pardo Sixtos <lpardosixtos@microsoft.com>
      Reviewed-by: 's avatarShu-yu Guo <syg@chromium.org>
      Cr-Commit-Position: refs/heads/main@{#81285}
      afb26623
  21. 21 Jun, 2022 2 commits