1. 05 Dec, 2018 1 commit
  2. 04 Dec, 2018 1 commit
  3. 27 Nov, 2018 1 commit
  4. 26 Nov, 2018 1 commit
  5. 25 Nov, 2018 1 commit
  6. 05 Nov, 2018 1 commit
  7. 24 Oct, 2018 1 commit
  8. 16 Oct, 2018 1 commit
  9. 21 Sep, 2018 2 commits
  10. 14 Sep, 2018 1 commit
  11. 03 Aug, 2018 1 commit
  12. 31 Jul, 2018 1 commit
  13. 25 Jul, 2018 3 commits
  14. 03 Jul, 2018 1 commit
  15. 23 Jun, 2018 1 commit
  16. 21 Jun, 2018 1 commit
  17. 31 May, 2018 1 commit
  18. 23 Feb, 2018 1 commit
  19. 13 Feb, 2018 1 commit
    • Sigurd Schneider's avatar
      Reland "[cleanup] Harden the SubString CSA/Runtime implementations." · bb282636
      Sigurd Schneider authored
      This is a reland of 6d5b54df82e27a82811a836dcdbbfe26829f0e6d
      Original change's description:
      > [cleanup] Harden the SubString CSA/Runtime implementations.
      >
      > Remove the self-healing for invalid parameters in the
      > CodeStubAssembler::SubString helper and the %SubString runtime function,
      > which is used as a fallback for the CodeStubAssembler implementation.
      > All call sites must do appropriate parameter validation anyways now that
      > the self-hosted JavaScript builtins using these helpers are gone, and we
      > have proper contracts with the uses.
      >
      > Also remove the context parameter from the CodeStubAssembler::SubString
      > method, which is unnecessary, since this can no longer throw an
      > exception.
      >
      > Bug: v8:5269, v8:6936, v8:7109, v8:7137
      > Change-Id: I19d93bad5f41faa0561c4561a48f78fcba99a549
      > Reviewed-on: https://chromium-review.googlesource.com/795720
      > Reviewed-by: Jakob Gruber <jgruber@chromium.org>
      > Commit-Queue: Benedikt Meurer <bmeurer@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#49702}
      
      Bug: v8:5269, v8:6936, v8:7109, v8:7137
      Change-Id: I5e84998a2dd3990d7981505b401ffc770e0b7ac5
      Reviewed-on: https://chromium-review.googlesource.com/913130Reviewed-by: 's avatarBenedikt Meurer <bmeurer@chromium.org>
      Commit-Queue: Sigurd Schneider <sigurds@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#51265}
      bb282636
  20. 02 Dec, 2017 1 commit
    • Mathias Bynens's avatar
      Normalize casing of hexadecimal digits · 822be9b2
      Mathias Bynens authored
      This patch normalizes the casing of hexadecimal digits in escape
      sequences of the form `\xNN` and integer literals of the form
      `0xNNNN`.
      
      Previously, the V8 code base used an inconsistent mixture of uppercase
      and lowercase.
      
      Google’s C++ style guide uses uppercase in its examples:
      https://google.github.io/styleguide/cppguide.html#Non-ASCII_Characters
      
      Moreover, uppercase letters more clearly stand out from the lowercase
      `x` (or `u`) characters at the start, as well as lowercase letters
      elsewhere in strings.
      
      BUG=v8:7109
      TBR=marja@chromium.org,titzer@chromium.org,mtrofin@chromium.org,mstarzinger@chromium.org,rossberg@chromium.org,yangguo@chromium.org,mlippautz@chromium.org
      NOPRESUBMIT=true
      
      Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_chromium_rel_ng
      Change-Id: I790e21c25d96ad5d95c8229724eb45d2aa9e22d6
      Reviewed-on: https://chromium-review.googlesource.com/804294
      Commit-Queue: Mathias Bynens <mathias@chromium.org>
      Reviewed-by: 's avatarJakob Kummerow <jkummerow@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#49810}
      822be9b2
  21. 29 Nov, 2017 2 commits
    • Michael Achenbach's avatar
      Revert "[cleanup] Harden the SubString CSA/Runtime implementations." · c0a4680d
      Michael Achenbach authored
      This reverts commit 99cb4d35.
      
      Reason for revert:
      https://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20nosnap%20-%20debug/builds/16445
      
      Original change's description:
      > [cleanup] Harden the SubString CSA/Runtime implementations.
      > 
      > Remove the self-healing for invalid parameters in the
      > CodeStubAssembler::SubString helper and the %SubString runtime function,
      > which is used as a fallback for the CodeStubAssembler implementation.
      > All call sites must do appropriate parameter validation anyways now that
      > the self-hosted JavaScript builtins using these helpers are gone, and we
      > have proper contracts with the uses.
      > 
      > Also remove the context parameter from the CodeStubAssembler::SubString
      > method, which is unnecessary, since this can no longer throw an
      > exception.
      > 
      > Bug: v8:5269, v8:6936, v8:7109, v8:7137
      > Change-Id: I19d93bad5f41faa0561c4561a48f78fcba99a549
      > Reviewed-on: https://chromium-review.googlesource.com/795720
      > Reviewed-by: Jakob Gruber <jgruber@chromium.org>
      > Commit-Queue: Benedikt Meurer <bmeurer@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#49702}
      
      TBR=jgruber@chromium.org,bmeurer@chromium.org
      
      Change-Id: I2900b5f087e78f1d321724f03bd063a5ff094183
      No-Presubmit: true
      No-Tree-Checks: true
      No-Try: true
      Bug: v8:5269, v8:6936, v8:7109, v8:7137
      Reviewed-on: https://chromium-review.googlesource.com/796150Reviewed-by: 's avatarMichael Achenbach <machenbach@chromium.org>
      Commit-Queue: Michael Achenbach <machenbach@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#49703}
      c0a4680d
    • Benedikt Meurer's avatar
      [cleanup] Harden the SubString CSA/Runtime implementations. · 99cb4d35
      Benedikt Meurer authored
      Remove the self-healing for invalid parameters in the
      CodeStubAssembler::SubString helper and the %SubString runtime function,
      which is used as a fallback for the CodeStubAssembler implementation.
      All call sites must do appropriate parameter validation anyways now that
      the self-hosted JavaScript builtins using these helpers are gone, and we
      have proper contracts with the uses.
      
      Also remove the context parameter from the CodeStubAssembler::SubString
      method, which is unnecessary, since this can no longer throw an
      exception.
      
      Bug: v8:5269, v8:6936, v8:7109, v8:7137
      Change-Id: I19d93bad5f41faa0561c4561a48f78fcba99a549
      Reviewed-on: https://chromium-review.googlesource.com/795720Reviewed-by: 's avatarJakob Gruber <jgruber@chromium.org>
      Commit-Queue: Benedikt Meurer <bmeurer@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#49702}
      99cb4d35
  22. 26 Oct, 2017 1 commit
  23. 25 Oct, 2017 1 commit
  24. 18 Oct, 2017 2 commits
  25. 20 Sep, 2017 1 commit
  26. 08 Sep, 2017 1 commit
    • Benedikt Meurer's avatar
      [cleanup] Drop obsolete %StringCharCodeAt intrinsic. · 62649c8e
      Benedikt Meurer authored
      The previous %StringCharCodeAt runtime entry (and the inlined intrinsic)
      are obsolete and not used anymore (except in dedicated tests for this
      runtime function), so remove it. And rename the %StringCharCodeAtRT
      function, which is actually used to %StringCharCodeAt instead to have
      a consistent naming scheme for runtime fallbacks.
      
      Bug: v8:5049
      Change-Id: I619429ef54f6efea61fc51ab9ed1d5cfe4417f99
      Reviewed-on: https://chromium-review.googlesource.com/657719
      Commit-Queue: Yang Guo <yangguo@chromium.org>
      Commit-Queue: Benedikt Meurer <bmeurer@chromium.org>
      Reviewed-by: 's avatarYang Guo <yangguo@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#47928}
      62649c8e
  27. 06 Sep, 2017 1 commit
  28. 23 Aug, 2017 1 commit
  29. 24 Jul, 2017 1 commit
  30. 19 Jul, 2017 2 commits
  31. 03 Jul, 2017 1 commit
    • Mathias Bynens's avatar
      [elements] Rename Has*Elements and Is*ElementsKind methods · 7915cf93
      Mathias Bynens authored
      Commit 26c00f4a improved the names of
      most FAST_* elements kinds in the enum. This patch updates the matching
      Has*Elements and Is*ElementsKind method names accordingly.
      
      - HasFastSmiElements => HasSmiElements
      - IsFastSmiElementsKind => IsSmiElementsKind
      - HasFastObjectElements => HasObjectElements
      - IsFastObjectElementsKind => IsObjectElementsKind
      - HasFastSmiOrObjectElements => HasSmiOrObjectElements
      - IsFastSmiOrObjectElementsKind => IsSmiOrObjectElementsKind
      - HasFastDoubleElements => HasDoubleElements
      - IsFastDoubleElementsKind => IsDoubleElementsKind
      - HasFastHoleyElements => HasHoleyElements
      - IsFastHoleyElementsKind => IsHoleyElementsKind
      
      Additionally, FastHoleyElementsUsage is renamed to HoleyElementsUsage.
      
      BUG=v8:6548
      
      Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
      Change-Id: Ie8f3d01eb43e909cbc6c372d88c5fbc4dfc2ac04
      Reviewed-on: https://chromium-review.googlesource.com/558356Reviewed-by: 's avatarBenedikt Meurer <bmeurer@chromium.org>
      Reviewed-by: 's avatarUlan Degenbaev <ulan@chromium.org>
      Commit-Queue: Mathias Bynens <mathias@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#46376}
      7915cf93
  32. 07 Jun, 2017 1 commit
  33. 22 May, 2017 1 commit
  34. 12 Apr, 2017 1 commit
    • jgruber's avatar
      [string] Add a fast path to String.p.replace · f4ba786d
      jgruber authored
      This adds a fast path to skip runtime calls to GetSubstitution when
      the replacer string does not contain a '$' char.
      
      Extended background:
      
      String.prototype.replace is (roughly) structured as follows:
      
      * Check if {searchValue} has a @@replace Symbol, and delegate to that if
        so. We currently implement efficient fast paths when {searchValue} is
        a String or a fast RegExp.
      * A specialized fast path for single-char {searchValue}, "long" subject
        string, and String {replaceValue} that do not contain '$' chars (yes,
        this fast path is very specialized).
      * Check for the location of the first match using StringIndexOf, and
        exit early if no match is found.
      * Finally build the return value, which is 'prefix + replacement +
        suffix', where replacement is either the result of calling {replaceValue}
        (if it is callable), or GetSubstitution(ToString({replaceValue}))
        otherwise.
      
      There's several spots that could be improved.
      
      StringIndexOf currently calls into C++ runtime for all but the simple
      1-byte, 1-char {searchValue} case. We need to finally add support for
      remaining cases.
      
      The runtime call to GetSubstitution can be skipped if the replacer
      string does not contain any '$' syntax. This CL handles that case.
      
      BUG=
      
      Review-Url: https://codereview.chromium.org/2813843002
      Cr-Commit-Position: refs/heads/master@{#44606}
      f4ba786d