[all-commits] [llvm/llvm-project] 7302c8: [libc][i386] FPBit support for 96b long double (#1...

Nick Desaulniers via All-commits all-commits at lists.llvm.org
Tue Nov 12 08:20:10 PST 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 7302c8dbe71b7c03b73a35a21fa4b415fa1f4505
      https://github.com/llvm/llvm-project/commit/7302c8dbe71b7c03b73a35a21fa4b415fa1f4505
  Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
  Date:   2024-11-12 (Tue, 12 Nov 2024)

  Changed paths:
    M libc/src/__support/FPUtil/FPBits.h
    M libc/src/__support/FPUtil/generic/sqrt_80_bit_long_double.h
    M libc/src/__support/big_int.h
    M libc/src/__support/float_to_string.h
    M libc/src/__support/integer_literals.h
    M libc/src/__support/str_to_float.h
    M libc/test/UnitTest/LibcTest.cpp
    M libc/test/src/__support/FPUtil/fpbits_test.cpp
    M libc/test/src/__support/big_int_test.cpp
    M libc/test/src/__support/str_to_long_double_test.cpp
    M libc/test/src/math/smoke/CanonicalizeTest.h
    M libc/test/src/stdlib/strtold_test.cpp

  Log Message:
  -----------
  [libc][i386] FPBit support for 96b long double (#115084)

`long double` is haunted on most architectures, but it is especially so on
i386-linux-gnu. While have 80b of significant data, on i386-linux-gnu this type
has 96b of storage.

Fixes for supporting printf family of conversions for `long double` on
i386-linux-gnu. This allows the libc-stdlib-tests and libc_stdio_unittests
ninja target tests to pass on i386-linux-gnu.

Fixes: #110894
Link: #93709
Co-authored-by: Michael Jones <michaelrj at google.com>



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list