1. 29 Aug, 2022 33 commits
  2. 27 Aug, 2022 3 commits
  3. 26 Aug, 2022 4 commits
    • Shu-yu Guo's avatar
      [shared-struct, api] Support shared isolates in API · 31e17fe6
      Shu-yu Guo authored
      Currently the ability to create shared isolates is partially exposed to
      API. Instead of fully exposing it, this CL makes shared isolate and
      shared heap handling transparent to the embedder.
      
      If a flag that requires the shared heap is true (currently
      --shared-string-table and --harmony-struct), the first isolate created
      in the process will create and attach to a process-wide shared isolate.
      Subsequent isolates will attach to that shared isolate. When that first isolate is deleted, the shared isolate is also deleted.
      
      Bug: v8:12547
      Change-Id: Idaf2947bc354066c44f2d10243e10162b1b7e4d6
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3848825Reviewed-by: 's avatarMichael Lippautz <mlippautz@chromium.org>
      Owners-Override: Shu-yu Guo <syg@chromium.org>
      Reviewed-by: 's avatarDominik Inführ <dinfuehr@chromium.org>
      Commit-Queue: Shu-yu Guo <syg@chromium.org>
      Reviewed-by: 's avatarCamillo Bruni <cbruni@chromium.org>
      Cr-Commit-Position: refs/heads/main@{#82756}
      31e17fe6
    • Frank Tang's avatar
      Revert "[Temporal] Use double/int32_t instead of int64_t for duration parsing" · 8ff03afe
      Frank Tang authored
      This reverts commit a165e82e.
      
      Reason for revert: SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ../../src/objects/js-temporal-objects.cc:3837:22  
      
      Original change's description:
      > [Temporal] Use double/int32_t instead of int64_t for duration parsing
      >
      > Use double instead of int64_t and int32_t in duration parsing result
      > so we can parse very large duration fields as infinity and throw RangeError in later stages. The three fractional parts can hold up value from 0 to 999,999,999 so we use int32_t to hold it. Other part could be infinity so we use double to hold it. Also rearrange the order of the three int32_t in the struct ParsedISO8601Duration after all the double
      >
      > Bug: v8:11544
      > Change-Id: I7e5b02f7c7bbb60997f1419f016aed61dd3e0d6c
      > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3840761
      > Reviewed-by: Shu-yu Guo <syg@chromium.org>
      > Commit-Queue: Frank Tang <ftang@chromium.org>
      > Cr-Commit-Position: refs/heads/main@{#82754}
      
      Bug: v8:11544
      Change-Id: Ia9d0a014463b00640d43b051753a554f42171c2b
      No-Presubmit: true
      No-Tree-Checks: true
      No-Try: true
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3858575Reviewed-by: 's avatarShu-yu Guo <syg@chromium.org>
      Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
      Commit-Queue: Shu-yu Guo <syg@chromium.org>
      Cr-Commit-Position: refs/heads/main@{#82755}
      8ff03afe
    • Frank Tang's avatar
      [Temporal] Use double/int32_t instead of int64_t for duration parsing · a165e82e
      Frank Tang authored
      Use double instead of int64_t and int32_t in duration parsing result
      so we can parse very large duration fields as infinity and throw RangeError in later stages. The three fractional parts can hold up value from 0 to 999,999,999 so we use int32_t to hold it. Other part could be infinity so we use double to hold it. Also rearrange the order of the three int32_t in the struct ParsedISO8601Duration after all the double
      
      Bug: v8:11544
      Change-Id: I7e5b02f7c7bbb60997f1419f016aed61dd3e0d6c
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3840761Reviewed-by: 's avatarShu-yu Guo <syg@chromium.org>
      Commit-Queue: Frank Tang <ftang@chromium.org>
      Cr-Commit-Position: refs/heads/main@{#82754}
      a165e82e
    • Matthias Liedtke's avatar
      [wasm-gc] Debugger: Provide type info for structs and arrays in tables · ee9b0f9f
      Matthias Liedtke authored
      This change also modifies the way references are typed: Instead of
      using the static type (which may be a generic type like anyref) the
      actual type based on the referenced object is used.
      While this is very useful for arrays and structs (and somewhat nice for
      i31 not just being a number but also having some type information), it
      means for non-null values that the reference type is "not nullable",
      so it will show e.g. "ref $type0" although the static type  might be
      "ref null $type0".
      
      Bug: v8:7748
      Change-Id: I00c3258b0da6f89ec5efffd2a963889b1f341c3a
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3852485Reviewed-by: 's avatarBenedikt Meurer <bmeurer@chromium.org>
      Commit-Queue: Matthias Liedtke <mliedtke@chromium.org>
      Cr-Commit-Position: refs/heads/main@{#82753}
      ee9b0f9f