[webkit-changes] [WebKit/WebKit] 6c01e6: Update fast_float to v5.2.0

Yusuke Suzuki noreply at github.com
Wed Aug 23 15:01:16 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 6c01e6175739acfed8f7da021d7b80694aeab989
      https://github.com/WebKit/WebKit/commit/6c01e6175739acfed8f7da021d7b80694aeab989
  Author: Yusuke Suzuki <ysuzuki at apple.com>
  Date:   2023-08-23 (Wed, 23 Aug 2023)

  Changed paths:
    M Source/WTF/WTF.xcodeproj/project.pbxproj
    M Source/WTF/wtf/FastFloat.cpp
    M Source/WTF/wtf/FastFloat.h
    M Source/WTF/wtf/dtoa.cpp
    M Source/WTF/wtf/dtoa.h
    M Source/WTF/wtf/fast_float/ascii_number.h
    M Source/WTF/wtf/fast_float/bigint.h
    A Source/WTF/wtf/fast_float/constexpr_feature_detect.h
    M Source/WTF/wtf/fast_float/decimal_to_binary.h
    M Source/WTF/wtf/fast_float/digit_comparison.h
    M Source/WTF/wtf/fast_float/fast_float.h
    M Source/WTF/wtf/fast_float/fast_table.h
    M Source/WTF/wtf/fast_float/float_common.h
    M Source/WTF/wtf/fast_float/parse_number.h

  Log Message:
  -----------
  Update fast_float to v5.2.0
https://bugs.webkit.org/show_bug.cgi?id=260604
rdar://114310405

Reviewed by Justin Michaud.

This patch updates WTF's fast_float to v5.2.0[1].

1. This offers 3% improvement in JSTests/microbenchmarks/json-parse-double.js micro benchmark.
2. New fast_float can offer a way to parse UTF-16 directly. We use this instead of converting UTF-16 chars into LChars.

[1]: https://github.com/fastfloat/fast_float/releases/tag/v5.2.0

* Source/WTF/WTF.xcodeproj/project.pbxproj:
* Source/WTF/wtf/fast_float/ascii_number.h:
(fast_float::has_simd_opt):
(fast_float::byteswap):
(fast_float::read8_to_u64):
(fast_float::simd_read8_to_u64):
(fast_float::write_u64):
(fast_float::parse_eight_digits_unrolled):
(fast_float::FASTFLOAT_ENABLE_IF):
(fast_float::loop_parse_if_eight_digits):
(fast_float::read_u64): Deleted.
* Source/WTF/wtf/fast_float/bigint.h:
(fast_float::stackvec::stackvec):
(fast_float::bigint::bigint):
* Source/WTF/wtf/fast_float/constexpr_feature_detect.h: Added.
* Source/WTF/wtf/fast_float/decimal_to_binary.h:
* Source/WTF/wtf/fast_float/digit_comparison.h:
* Source/WTF/wtf/fast_float/fast_float.h:
(): Deleted.
(fast_float::parse_options::parse_options): Deleted.
* Source/WTF/wtf/fast_float/fast_table.h:
* Source/WTF/wtf/fast_float/float_common.h:
(fast_float::parse_options_t::parse_options_t):
(fast_float::cpp20_and_in_constexpr):
(fast_float::fastfloat_strncasecmp):
(fast_float::span::span):
(fast_float::value128::value128):
(fast_float::leading_zeroes_generic):
(fast_float::leading_zeroes):
(fast_float::emulu):
(fast_float::umul128_generic):
(fast_float::_umul128):
(fast_float::full_multiplication):
(fast_float::adjusted_mantissa::operator== const):
(fast_float::adjusted_mantissa::operator!= const):
(fast_float::binary_format<double>::min_exponent_fast_path):
(fast_float::binary_format<float>::min_exponent_fast_path):
(fast_float::binary_format<double>::max_mantissa_fast_path):
(fast_float::binary_format<float>::max_mantissa_fast_path):
(fast_float::binary_format<double>::exact_power_of_ten):
(fast_float::binary_format<float>::exact_power_of_ten):
(fast_float::to_float):
(fast_float::is_space):
(fast_float::int_cmp_zeros):
(fast_float::int_cmp_len):
(fast_float::str_const_nan):
(fast_float::str_const_nan<char>):
(fast_float::str_const_nan<wchar_t>):
(fast_float::str_const_nan<char16_t>):
(fast_float::str_const_nan<char32_t>):
(fast_float::str_const_inf):
(fast_float::str_const_inf<char>):
(fast_float::str_const_inf<wchar_t>):
(fast_float::str_const_inf<char16_t>):
(fast_float::str_const_inf<char32_t>):
* Source/WTF/wtf/fast_float/parse_number.h:

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




More information about the webkit-changes mailing list