[all-commits] [llvm/llvm-project] ec2a91: [libc] Modular printf option (float only)
Daniel Thornburgh via All-commits
all-commits at lists.llvm.org
Tue Nov 25 16:22:07 PST 2025
Branch: refs/heads/users/mysterymath/modular-printf/libc
Home: https://github.com/llvm/llvm-project
Commit: ec2a91be71a6f78007936e1f8318ff6f29798890
https://github.com/llvm/llvm-project/commit/ec2a91be71a6f78007936e1f8318ff6f29798890
Author: Daniel Thornburgh <dthorn at google.com>
Date: 2025-11-25 (Tue, 25 Nov 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: d15f36939747e4129b006f2964ca37321ac2cf7e
https://github.com/llvm/llvm-project/commit/d15f36939747e4129b006f2964ca37321ac2cf7e
Author: Daniel Thornburgh <dthorn at google.com>
Date: 2025-11-25 (Tue, 25 Nov 2025)
Changed paths:
M libc/src/stdio/printf_core/vfprintf_internal.h
Log Message:
-----------
Fix missed SPLIT->MODULAR rename
Commit: efcd5b3b588aeb87f5cbc385367e6c4bb100522f
https://github.com/llvm/llvm-project/commit/efcd5b3b588aeb87f5cbc385367e6c4bb100522f
Author: Daniel Thornburgh <dthorn at google.com>
Date: 2025-11-25 (Tue, 25 Nov 2025)
Changed paths:
M libc/src/stdio/printf_core/float_impl.cpp
Log Message:
-----------
Add missing file header
Commit: d47e9f2d7a75bf91000df9e2a304925a920950c6
https://github.com/llvm/llvm-project/commit/d47e9f2d7a75bf91000df9e2a304925a920950c6
Author: Daniel Thornburgh <dthorn at google.com>
Date: 2025-11-25 (Tue, 25 Nov 2025)
Changed paths:
M libc/src/stdio/printf_core/printf_main.h
Log Message:
-----------
Use LIBC_INLINE_ASM macro
Commit: 6f4b0b157a84c357880aa3d4c660f1fdc35a2c23
https://github.com/llvm/llvm-project/commit/6f4b0b157a84c357880aa3d4c660f1fdc35a2c23
Author: Daniel Thornburgh <dthorn at google.com>
Date: 2025-11-25 (Tue, 25 Nov 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
Commit: c54d02403a3451eb2551dd744f9b2cd32011bafe
https://github.com/llvm/llvm-project/commit/c54d02403a3451eb2551dd744f9b2cd32011bafe
Author: Daniel Thornburgh <dthorn at google.com>
Date: 2025-11-25 (Tue, 25 Nov 2025)
Changed paths:
M libc/src/stdio/baremetal/CMakeLists.txt
M libc/src/stdio/baremetal/printf.cpp
A libc/src/stdio/baremetal/printf_modular.cpp
M libc/src/stdio/generic/CMakeLists.txt
R libc/src/stdio/generic/printf_modular.cpp
M libc/src/stdio/gpu/CMakeLists.txt
Log Message:
-----------
Move support to baremetal only
Commit: 4b4e98fe661eb8c8e8f17852b0abe6f0a05d440d
https://github.com/llvm/llvm-project/commit/4b4e98fe661eb8c8e8f17852b0abe6f0a05d440d
Author: Daniel Thornburgh <dthorn at google.com>
Date: 2025-11-25 (Tue, 25 Nov 2025)
Changed paths:
M libc/utils/hdrgen/hdrgen/header.py
M libc/utils/hdrgen/tests/expected_output/test_header.h
M libc/utils/hdrgen/tests/expected_output/test_small.json
M libc/utils/hdrgen/tests/input/merge1.yaml
Log Message:
-----------
Allow function-style attribute macros
Commit: 8b7b3f6d0b062d425792d5249154e4904e7830a1
https://github.com/llvm/llvm-project/commit/8b7b3f6d0b062d425792d5249154e4904e7830a1
Author: Daniel Thornburgh <dthorn at google.com>
Date: 2025-11-25 (Tue, 25 Nov 2025)
Changed paths:
M libc/include/CMakeLists.txt
M libc/include/llvm-libc-macros/CMakeLists.txt
A libc/include/llvm-libc-macros/_LIBC_MODULAR_FORMAT_PRINTF-disable.h
A libc/include/llvm-libc-macros/_LIBC_MODULAR_FORMAT_PRINTF.h
M libc/include/stdio.yaml
Log Message:
-----------
Add attribute to printf
Commit: 94a9bb77e62278122bd2e03b7d3adc52eb926073
https://github.com/llvm/llvm-project/commit/94a9bb77e62278122bd2e03b7d3adc52eb926073
Author: Daniel Thornburgh <dthorn at google.com>
Date: 2025-11-25 (Tue, 25 Nov 2025)
Changed paths:
M libc/include/stdio.yaml
M libc/src/stdio/baremetal/CMakeLists.txt
M libc/src/stdio/baremetal/vprintf.cpp
A libc/src/stdio/baremetal/vprintf_modular.cpp
M libc/src/stdio/vprintf.h
Log Message:
-----------
Modularize baremetal vprintf
Commit: e047ba3658d40657543cf550ac90925c4ebcd359
https://github.com/llvm/llvm-project/commit/e047ba3658d40657543cf550ac90925c4ebcd359
Author: Daniel Thornburgh <dthorn at google.com>
Date: 2025-11-25 (Tue, 25 Nov 2025)
Changed paths:
M libc/include/stdio.yaml
M libc/src/stdio/CMakeLists.txt
M libc/src/stdio/snprintf.cpp
M libc/src/stdio/snprintf.h
A libc/src/stdio/snprintf_modular.cpp
Log Message:
-----------
Modularize snprintf
Commit: 65c2a9d50c6274baf979664e769b5dac2aaaebe1
https://github.com/llvm/llvm-project/commit/65c2a9d50c6274baf979664e769b5dac2aaaebe1
Author: Daniel Thornburgh <dthorn at google.com>
Date: 2025-11-25 (Tue, 25 Nov 2025)
Changed paths:
M libc/include/stdio.yaml
M libc/src/stdio/CMakeLists.txt
M libc/src/stdio/asprintf.cpp
M libc/src/stdio/asprintf.h
A libc/src/stdio/asprintf_modular.cpp
M libc/src/stdio/printf_core/vasprintf_internal.h
Log Message:
-----------
Modularize asprintf
Commit: eb1efcd04e1c59fc94bfa7654bd5518a9b6b999c
https://github.com/llvm/llvm-project/commit/eb1efcd04e1c59fc94bfa7654bd5518a9b6b999c
Author: Daniel Thornburgh <dthorn at google.com>
Date: 2025-11-25 (Tue, 25 Nov 2025)
Changed paths:
M libc/include/stdio.yaml
M libc/src/stdio/CMakeLists.txt
M libc/src/stdio/sprintf.cpp
M libc/src/stdio/sprintf.h
A libc/src/stdio/sprintf_modular.cpp
Log Message:
-----------
Modularize sprintf
Commit: 0420f03b956a491a52b77122927958beb34fe45d
https://github.com/llvm/llvm-project/commit/0420f03b956a491a52b77122927958beb34fe45d
Author: Daniel Thornburgh <dthorn at google.com>
Date: 2025-11-25 (Tue, 25 Nov 2025)
Changed paths:
M libc/include/stdio.yaml
M libc/src/stdio/CMakeLists.txt
M libc/src/stdio/vasprintf.cpp
M libc/src/stdio/vasprintf.h
A libc/src/stdio/vasprintf_modular.cpp
Log Message:
-----------
Modularize vasprintf
Commit: 7d3b55b6e8d04b905a29d4d8089391c259864dec
https://github.com/llvm/llvm-project/commit/7d3b55b6e8d04b905a29d4d8089391c259864dec
Author: Daniel Thornburgh <dthorn at google.com>
Date: 2025-11-25 (Tue, 25 Nov 2025)
Changed paths:
M libc/include/stdio.yaml
M libc/src/stdio/CMakeLists.txt
M libc/src/stdio/vsnprintf.cpp
M libc/src/stdio/vsnprintf.h
A libc/src/stdio/vsnprintf_modular.cpp
Log Message:
-----------
Modularize vsnprintf
Commit: cdae60de64960de84b4d811e86f06eeb8260925c
https://github.com/llvm/llvm-project/commit/cdae60de64960de84b4d811e86f06eeb8260925c
Author: Daniel Thornburgh <dthorn at google.com>
Date: 2025-11-25 (Tue, 25 Nov 2025)
Changed paths:
M libc/include/stdio.yaml
M libc/src/stdio/CMakeLists.txt
M libc/src/stdio/vsprintf.cpp
M libc/src/stdio/vsprintf.h
A libc/src/stdio/vsprintf_modular.cpp
Log Message:
-----------
Modularize vsprintf
Compare: https://github.com/llvm/llvm-project/compare/40cbed774962...cdae60de6496
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