1. 01 Feb, 2021 1 commit
    • Peter Wong's avatar
      [torque] Port String.prototype.includes/indexOf and StringIndexOf · 5a2c53f9
      Peter Wong authored
      - Removed no longer used StringBuiltinAssembler methods (DispatchOnStringEncodings, PointerToStringDataAtIndex)
      - Removed no longer used Runtime functions (StringIncludes, StringIndexOf, StringIndexOfUnchecked).
      - Overall builtin code size is reduced (652 bytes on Mac x64.release build), builtin size breakdown:
      
      BEFORE
      ======
      TFS Builtin, StringIndexOf, 1092
      TFJ Builtin, StringPrototypeIncludes, 1784
      TFJ Builtin, StringPrototypeIndexOf, 1536
      Total = 4412
      
      AFTER
      =====
      TFC Builtin, StringIndexOf, 2036 (+944)
      TFJ Builtin, StringPrototypeIncludes, 1072 (-712)
      TFJ Builtin, StringPrototypeIndexOf, 652 (-884)
      Total = 3760 (-652)
      
      
      Bug: v8:8996
      Change-Id: I9a88c095e2097f7d570e58e744d6692dc524ddf4
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2660995
      Commit-Queue: Peter Wong <peter.wm.wong@gmail.com>
      Reviewed-by: 's avatarJakob Gruber <jgruber@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#72456}
      5a2c53f9
  2. 21 Jan, 2021 1 commit
  3. 17 Dec, 2020 1 commit
  4. 04 Dec, 2020 1 commit
    • Tobias Tebbi's avatar
      [torque] uniform flattening and string access in Torque · 65d2c4b4
      Tobias Tebbi authored
      Port String::Flatten to Torque (using a fast C call for the
      non-allocating part) and provide fast and easy access to sequential
      string data in Torque: GetStringData() flattens if necessary and
      computes slices that allow direct access.
      
      Applications: String.prototype.replaceAll, String.prototype.endsWith,
        and String.prototype.beginsWith now use GetStringData() and direct
        slice access instead of the slow StringCharCodeAt and they no
        longer bail out to the runtime for flattening.
      
      Drive-by changes:
        - Expose String instance type bits as bitfields and enums in Torque.
        - Fix method lookup in Torque to include superclass methods.
        - Use char8 and char16 types in more places.
        - Allow fast C calls with void return type.
        - Add Torque macros to create subslices.
        - Add no-GC scopes to runtime functions loading external string data.
      
      
      Bug: v8:7793
      Change-Id: I763b9b24212770307c9b2fe9f070f21f65d68d58
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2565515
      Commit-Queue: Tobias Tebbi <tebbi@chromium.org>
      Reviewed-by: 's avatarJakob Gruber <jgruber@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#71611}
      65d2c4b4
  5. 12 May, 2020 1 commit
  6. 06 May, 2020 1 commit
  7. 02 Apr, 2020 1 commit
  8. 26 Dec, 2019 1 commit
  9. 18 Dec, 2019 1 commit
    • Nico Hartmann's avatar
      [torque] Enum language feature · fdc9fade
      Nico Hartmann authored
      This CL implements enums in Torque in three steps:
      
      1.) It implements necessary changes to Torque's type system. In
      particular, the constraints on constexpr types are relaxed such that
      constexpr types can exist without a corresponding non-constexpr
      version. Furthermore, constexpr and their non-constexpr counterpart
      need not be of the same kind of type. This allows an AbstractType to
      have a UnionType as its non-constexpr counterpart.
      
      2.) The enum feature itself is realized as a pure desugaring in the
      parser, where all required types, constants and macro specializations
      (like FromConstexpr<>) are generated from a simple enum declaration,
      such that enum entries are not just constants, but are namespace
      scoped and have distinct types so that they can be used within
      typeswitch constructs.
      
      3.) Almost all of the existing constants defined in torque
      (.tq files) are ported to new enum definitions.
      
      Bug: v8:10053
      Change-Id: I72426d3b1434f301fd690847e15603de0dc1021b
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1964392
      Commit-Queue: Nico Hartmann <nicohartmann@chromium.org>
      Reviewed-by: 's avatarTobias Tebbi <tebbi@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#65503}
      fdc9fade
  10. 27 Nov, 2019 1 commit
  11. 20 Nov, 2019 1 commit
  12. 13 Nov, 2019 1 commit
  13. 05 Nov, 2019 1 commit