[builtins] Add fast paths to String.p.matchAll
Add fast paths when RegExp and RegExp result are fast wherever possible. As shown below, this CL improves the performance of calling S.p.matchAll and iterating over matches. Before: StringMatchAllBuiltinRegExpIteratorCreation-Strings(Score): 5002 StringMatchAllBuiltinStringIteratorCreation-Strings(Score): 13798 StringMatchAllBuiltinString-Strings(Score): 197 StringMatchAllManualString-Strings(Score): 454 StringMatchAllBuiltinRegExp-Strings(Score): 193 StringMatchAllManualRegExp-Strings(Score): 453 StringMatchAllBuiltinZeroWidth-Strings(Score): 97.2 StringMatchAllBuiltinZeroWidthUnicode-Strings(Score): 95.9 After: StringMatchAllBuiltinRegExpIteratorCreation-Strings(Score): 15437 StringMatchAllBuiltinStringIteratorCreation-Strings(Score): 16708 StringMatchAllBuiltinString-Strings(Score): 392 StringMatchAllManualString-Strings(Score): 452 StringMatchAllBuiltinRegExp-Strings(Score): 394 StringMatchAllManualRegExp-Strings(Score): 484 StringMatchAllBuiltinZeroWidth-Strings(Score): 409 StringMatchAllBuiltinZeroWidthUnicode-Strings(Score): 413 Bug: v8:6890 Change-Id: I6fcc1003a471314cf412aac456d42286b2926810 Reviewed-on: https://chromium-review.googlesource.com/1005400 Commit-Queue: Peter Wong <peter.wm.wong@gmail.com> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#52581}
Showing
This diff is collapsed.
Please
register
or
sign in
to comment