public inbox for libc-alpha@sourceware.org
 help / color / mirror / Atom feed
* [PATCH v6 00/11] vfprintf refactor
@ 2022-12-16 20:15 Florian Weimer
  2022-12-16 20:15 ` [PATCH v6 01/11] locale: Implement struct grouping_iterator Florian Weimer
                   ` (10 more replies)
  0 siblings, 11 replies; 27+ messages in thread
From: Florian Weimer @ 2022-12-16 20:15 UTC (permalink / raw)
  To: libc-alpha

This should address Adhemerval's review comments, I hope.

I retested it on latest master on i686-linux-gnu and x86_64-linux-gnu.
Built with build-many-glibcs.py.  The tests included “elf: Fix
tst-relro-symbols.py argument passing” (thanks for that!).

Thanks,
Florian

Florian Weimer (11):
  locale: Implement struct grouping_iterator
  stdio-common: Introduce buffers for implementing printf
  stdio-common: Add __printf_function_invoke
  stdio-common: Add __translated_number_width
  stdio-common: Convert vfprintf and related functions to buffers
  stdio-common: Add lock optimization to vfprintf and vfwprintf
  libio: Convert __vsprintf_internal to buffers
  libio: Convert __vasprintf_internal to buffers
  libio: Convert __vdprintf_internal to buffers
  libio: Convert __obstack_vprintf_internal to buffers (bug 27124)
  libio: Convert __vswprintf_internal to buffers (bug 27857)

 elf/Makefile                                  |   7 +-
 include/printf.h                              |  52 +-
 include/printf_buffer.h                       | 358 +++++++++
 libio/iovdprintf.c                            |  67 +-
 libio/iovsprintf.c                            |  70 +-
 libio/obprintf.c                              | 170 ++--
 libio/strfile.h                               |   3 -
 libio/tst-vtables-common.c                    |   9 +-
 libio/tst_swprintf.c                          |  31 +-
 libio/vasprintf.c                             | 141 ++--
 libio/vsnprintf.c                             | 131 ++--
 libio/vswprintf.c                             | 100 +--
 manual/stdio.texi                             |   7 +-
 stdio-common/Makefile                         |  28 +-
 stdio-common/Xprintf_buffer_done.c            |  40 +
 stdio-common/Xprintf_buffer_flush.c           |  72 ++
 stdio-common/Xprintf_buffer_pad_1.c           |  44 ++
 stdio-common/Xprintf_buffer_putc_1.c          |  29 +
 stdio-common/Xprintf_buffer_puts_1.c          |  38 +
 stdio-common/Xprintf_buffer_write.c           |  44 ++
 stdio-common/Xprintf_function_invoke.c        |  58 ++
 stdio-common/grouping_iterator.c              | 126 +++
 stdio-common/grouping_iterator.h              |  65 ++
 stdio-common/printf_buffer-char.h             |  24 +
 stdio-common/printf_buffer-wchar_t.h          |  24 +
 stdio-common/printf_buffer_as_file.c          | 148 ++++
 stdio-common/printf_buffer_as_file.h          |  87 +++
 stdio-common/printf_buffer_done.c             |  21 +
 stdio-common/printf_buffer_flush.c            |  81 ++
 stdio-common/printf_buffer_pad_1.c            |  21 +
 stdio-common/printf_buffer_putc_1.c           |  21 +
 stdio-common/printf_buffer_puts_1.c           |  21 +
 stdio-common/printf_buffer_to_file.c          | 122 +++
 stdio-common/printf_buffer_to_file.h          |  57 ++
 stdio-common/printf_buffer_write.c            |  21 +
 stdio-common/printf_fp.c                      | 736 ++++++++----------
 stdio-common/printf_fphex.c                   | 260 +++----
 stdio-common/printf_function_invoke.c         |  22 +
 stdio-common/translated_number_width.c        |  42 +
 stdio-common/tst-grouping_iterator.c          | 262 +++++++
 stdio-common/vfprintf-internal.c              | 672 +++++-----------
 stdio-common/vfprintf-process-arg.c           | 172 ++--
 stdio-common/wprintf_buffer_as_file.c         | 153 ++++
 stdio-common/wprintf_buffer_done.c            |  21 +
 stdio-common/wprintf_buffer_flush.c           |  42 +
 stdio-common/wprintf_buffer_pad_1.c           |  21 +
 stdio-common/wprintf_buffer_putc_1.c          |  21 +
 stdio-common/wprintf_buffer_puts_1.c          |  21 +
 stdio-common/wprintf_buffer_to_file.c         |  55 ++
 stdio-common/wprintf_buffer_write.c           |  21 +
 stdio-common/wprintf_function_invoke.c        |  22 +
 stdlib/strfmon_l.c                            | 196 ++---
 stdlib/strfrom-skeleton.c                     |  38 +-
 sysdeps/ia64/fpu/printf_fphex.c               |   8 +-
 .../ieee754/ldbl-128/printf_fphex_macros.h    |  36 +-
 sysdeps/ieee754/ldbl-128ibm/printf_fphex.c    |  36 +-
 sysdeps/ieee754/ldbl-96/printf_fphex.c        |  22 +-
 sysdeps/x86_64/fpu/printf_fphex.c             |  21 +-
 58 files changed, 3421 insertions(+), 1817 deletions(-)
 create mode 100644 include/printf_buffer.h
 create mode 100644 stdio-common/Xprintf_buffer_done.c
 create mode 100644 stdio-common/Xprintf_buffer_flush.c
 create mode 100644 stdio-common/Xprintf_buffer_pad_1.c
 create mode 100644 stdio-common/Xprintf_buffer_putc_1.c
 create mode 100644 stdio-common/Xprintf_buffer_puts_1.c
 create mode 100644 stdio-common/Xprintf_buffer_write.c
 create mode 100644 stdio-common/Xprintf_function_invoke.c
 create mode 100644 stdio-common/grouping_iterator.c
 create mode 100644 stdio-common/grouping_iterator.h
 create mode 100644 stdio-common/printf_buffer-char.h
 create mode 100644 stdio-common/printf_buffer-wchar_t.h
 create mode 100644 stdio-common/printf_buffer_as_file.c
 create mode 100644 stdio-common/printf_buffer_as_file.h
 create mode 100644 stdio-common/printf_buffer_done.c
 create mode 100644 stdio-common/printf_buffer_flush.c
 create mode 100644 stdio-common/printf_buffer_pad_1.c
 create mode 100644 stdio-common/printf_buffer_putc_1.c
 create mode 100644 stdio-common/printf_buffer_puts_1.c
 create mode 100644 stdio-common/printf_buffer_to_file.c
 create mode 100644 stdio-common/printf_buffer_to_file.h
 create mode 100644 stdio-common/printf_buffer_write.c
 create mode 100644 stdio-common/printf_function_invoke.c
 create mode 100644 stdio-common/translated_number_width.c
 create mode 100644 stdio-common/tst-grouping_iterator.c
 create mode 100644 stdio-common/wprintf_buffer_as_file.c
 create mode 100644 stdio-common/wprintf_buffer_done.c
 create mode 100644 stdio-common/wprintf_buffer_flush.c
 create mode 100644 stdio-common/wprintf_buffer_pad_1.c
 create mode 100644 stdio-common/wprintf_buffer_putc_1.c
 create mode 100644 stdio-common/wprintf_buffer_puts_1.c
 create mode 100644 stdio-common/wprintf_buffer_to_file.c
 create mode 100644 stdio-common/wprintf_buffer_write.c
 create mode 100644 stdio-common/wprintf_function_invoke.c


base-commit: 71e408e45dcacf429a94b2807f75aaadd8d37cb9
-- 
2.38.1


^ permalink raw reply	[flat|nested] 27+ messages in thread

end of thread, other threads:[~2023-01-30 11:06 UTC | newest]

Thread overview: 27+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-12-16 20:15 [PATCH v6 00/11] vfprintf refactor Florian Weimer
2022-12-16 20:15 ` [PATCH v6 01/11] locale: Implement struct grouping_iterator Florian Weimer
2022-12-16 20:15 ` [PATCH v6 02/11] stdio-common: Introduce buffers for implementing printf Florian Weimer
2022-12-16 20:41   ` Noah Goldstein
2022-12-16 20:59     ` Florian Weimer
2022-12-16 21:14       ` Noah Goldstein
2022-12-16 22:32         ` Florian Weimer
2022-12-17  0:32           ` Noah Goldstein
2022-12-17 12:55             ` Florian Weimer
2022-12-16 20:15 ` [PATCH v6 03/11] stdio-common: Add __printf_function_invoke Florian Weimer
2022-12-16 20:15 ` [PATCH v6 04/11] stdio-common: Add __translated_number_width Florian Weimer
2023-01-30  9:40   ` Dmitry V. Levin
2023-01-30 10:42     ` Florian Weimer
2023-01-30 10:51       ` Dmitry V. Levin
2023-01-30 11:03         ` Florian Weimer
2023-01-30 11:06           ` Dmitry V. Levin
2022-12-16 20:15 ` [PATCH v6 05/11] stdio-common: Convert vfprintf and related functions to buffers Florian Weimer
2022-12-16 20:15 ` [PATCH v6 06/11] stdio-common: Add lock optimization to vfprintf and vfwprintf Florian Weimer
2022-12-16 20:15 ` [PATCH v6 07/11] libio: Convert __vsprintf_internal to buffers Florian Weimer
2022-12-16 20:15 ` [PATCH v6 08/11] libio: Convert __vasprintf_internal " Florian Weimer
2022-12-19 16:37   ` Adhemerval Zanella Netto
2022-12-16 20:15 ` [PATCH v6 09/11] libio: Convert __vdprintf_internal " Florian Weimer
2022-12-19 16:39   ` Adhemerval Zanella Netto
2022-12-16 20:15 ` [PATCH v6 10/11] libio: Convert __obstack_vprintf_internal to buffers (bug 27124) Florian Weimer
2022-12-19 17:37   ` Adhemerval Zanella Netto
2022-12-16 20:15 ` [PATCH v6 11/11] libio: Convert __vswprintf_internal to buffers (bug 27857) Florian Weimer
2022-12-19 17:53   ` Adhemerval Zanella Netto

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).