[webkit-changes] [WebKit/WebKit] 125d5f: [JSC] Use memset_patternN for JSStringJoiner

Yusuke Suzuki noreply at github.com
Tue May 2 02:21:46 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 125d5fe589bd7f8519db69abc80735a1b55280aa
      https://github.com/WebKit/WebKit/commit/125d5fe589bd7f8519db69abc80735a1b55280aa
  Author: Yusuke Suzuki <ysuzuki at apple.com>
  Date:   2023-05-02 (Tue, 02 May 2023)

  Changed paths:
    A JSTests/stress/array-join-16.js
    M Source/JavaScriptCore/runtime/JSStringJoiner.cpp

  Log Message:
  -----------
  [JSC] Use memset_patternN for JSStringJoiner
https://bugs.webkit.org/show_bug.cgi?id=256196
rdar://problem/108770718

Reviewed by Tadeu Zagallo.

Now, JSStringJoiner knows concept of counts of the same element, so let's leverage this information.
This patch adds memset_patternN optimized code to make memset fast for particular sizes.

                                  ToT                     Patched

    array-join-object       12.3455+-0.0249     ^      7.1316+-0.0285        ^ definitely 1.7311x faster

* Source/JavaScriptCore/runtime/JSStringJoiner.cpp:
(JSC::appendStringToDataWithOneCharacterSeparatorRepeatedly):
(JSC::joinStrings):

Canonical link: https://commits.webkit.org/263579@main




More information about the webkit-changes mailing list