[all-commits] [llvm/llvm-project] 35025a: [libc] Modular printf option (float only)

Daniel Thornburgh via All-commits all-commits at lists.llvm.org
Tue Jul 22 15:02:54 PDT 2025


  Branch: refs/heads/users/mysterymath/modular-printf/libc
  Home:   https://github.com/llvm/llvm-project
  Commit: 35025a0736bde725a40b2edf86d02fae86bc1134
      https://github.com/llvm/llvm-project/commit/35025a0736bde725a40b2edf86d02fae86bc1134
  Author: Daniel Thornburgh <dthorn at google.com>
  Date:   2025-07-22 (Tue, 22 Jul 2025)

  Changed paths:
    M libc/config/config.json
    M libc/docs/configure.rst
    M libc/src/stdio/generic/CMakeLists.txt
    A libc/src/stdio/generic/printf_modular.cpp
    M libc/src/stdio/printf.h
    M libc/src/stdio/printf_core/CMakeLists.txt
    M libc/src/stdio/printf_core/float_dec_converter.h
    M libc/src/stdio/printf_core/float_dec_converter_limited.h
    M libc/src/stdio/printf_core/float_hex_converter.h
    A libc/src/stdio/printf_core/float_impl.cpp
    M libc/src/stdio/printf_core/parser.h
    M libc/src/stdio/printf_core/printf_config.h
    M libc/src/stdio/printf_core/printf_main.h
    M libc/src/stdio/printf_core/vfprintf_internal.h

  Log Message:
  -----------
  [libc] Modular printf option (float only)

This adds LIBC_CONF_PRINTF_MODULAR, which causes floating point support
(later, others) to be weakly linked into the implementation.
__printf_modular becomes the main entry point of the implementaiton, an
printf itself wraps __printf_modular. printf it also contains a
BFD_RELOC_NONE relocation to bring in the float aspect.

See issue #146159 for context.


  Commit: 634f4423ee55503515c9cea293b1d2f1b66a3460
      https://github.com/llvm/llvm-project/commit/634f4423ee55503515c9cea293b1d2f1b66a3460
  Author: Daniel Thornburgh <dthorn at google.com>
  Date:   2025-07-22 (Tue, 22 Jul 2025)

  Changed paths:
    M libc/src/stdio/printf_core/vfprintf_internal.h

  Log Message:
  -----------
  Fix missed SPLIT->MODULAR rename


  Commit: b980f03fdc28ad5e9e385d573e6d06e4d52729cf
      https://github.com/llvm/llvm-project/commit/b980f03fdc28ad5e9e385d573e6d06e4d52729cf
  Author: Daniel Thornburgh <dthorn at google.com>
  Date:   2025-07-22 (Tue, 22 Jul 2025)

  Changed paths:
    M libc/src/stdio/printf_core/float_impl.cpp

  Log Message:
  -----------
  Add missing file header


  Commit: 4f6d8eefd4b2173a85e0ead2496d85c53a75a074
      https://github.com/llvm/llvm-project/commit/4f6d8eefd4b2173a85e0ead2496d85c53a75a074
  Author: Daniel Thornburgh <dthorn at google.com>
  Date:   2025-07-22 (Tue, 22 Jul 2025)

  Changed paths:
    M libc/src/stdio/printf_core/printf_main.h

  Log Message:
  -----------
  Use LIBC_INLINE_ASM macro


  Commit: 0d06e44774cb6b587a7057495f7c5c4158b9e9f1
      https://github.com/llvm/llvm-project/commit/0d06e44774cb6b587a7057495f7c5c4158b9e9f1
  Author: Daniel Thornburgh <dthorn at google.com>
  Date:   2025-07-22 (Tue, 22 Jul 2025)

  Changed paths:
    M libc/src/stdio/printf_core/float_dec_converter.h
    M libc/src/stdio/printf_core/float_dec_converter_limited.h
    M libc/src/stdio/printf_core/float_hex_converter.h
    M libc/src/stdio/printf_core/parser.h

  Log Message:
  -----------
  LIBC_INLINE for modular fn definitions


Compare: https://github.com/llvm/llvm-project/compare/814d276c6c93...0d06e44774cb

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