From: Jens Gustedt <Jens.Gustedt@inria.fr>
To: musl@lists.openwall.com
Subject: [musl] [C23 128 bit 0/4] implement the library part of 128 bit support
Date: Wed, 31 May 2023 16:15:46 +0200 [thread overview]
Message-ID: <cover.1685536608.git.Jens.Gustedt@inria.fr> (raw)
This does not implement full featured support for 128 bit types or
functions. It only enables the support that is necessary, such that
compilers can claim [u]int128_t types and their functionality.
All 128 types and arithmetic has to be provided by the compilers.
Jens Gustedt (4):
add an emulation for 128 bit arithmetic as needed for C library
support
C23: implement w128 and wf128 support for printf
C23: implement w128 and wf128 for scanf and similar
C23: implement proper support for int128_t and uint128_t
include/inttypes.h | 55 ++++++++
include/stdint.h | 37 +++++
src/internal/intscan.c | 105 +++++++++++---
src/internal/intscan.h | 4 +-
src/internal/uwide128.c | 213 +++++++++++++++++++++++++++++
src/internal/uwide128.h | 57 ++++++++
src/internal/x86_64/uwide128_pop.s | 27 ++++
src/stdio/vfprintf.c | 113 +++++++++------
src/stdio/vfscanf.c | 25 ++--
src/stdio/vfwprintf.c | 45 +++---
src/stdio/vfwscanf.c | 19 ++-
src/stdlib/strtol.c | 12 +-
src/stdlib/wcstol.c | 12 +-
13 files changed, 611 insertions(+), 113 deletions(-)
create mode 100644 src/internal/uwide128.c
create mode 100644 src/internal/uwide128.h
create mode 100644 src/internal/x86_64/uwide128_pop.s
--
2.34.1
next reply other threads:[~2023-05-31 14:16 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-05-31 14:15 Jens Gustedt [this message]
2023-05-31 14:15 ` [musl] [C23 128 bit 1/4] add an emulation for 128 bit arithmetic as needed for C library support Jens Gustedt
2023-05-31 14:15 ` [musl] [C23 128 bit 2/4] C23: implement w128 and wf128 support for printf Jens Gustedt
2023-05-31 14:15 ` [musl] [C23 128 bit 3/4] C23: implement w128 and wf128 for scanf and similar Jens Gustedt
2023-05-31 14:15 ` [musl] [C23 128 bit 4/4] C23: implement proper support for int128_t and uint128_t Jens Gustedt
2023-05-31 14:27 ` Rich Felker
2023-05-31 14:29 ` Rich Felker
2023-05-31 14:36 ` Jₑₙₛ Gustedt
2023-05-31 14:41 ` Rich Felker
2023-05-31 14:55 ` Jₑₙₛ Gustedt
2023-05-31 14:57 ` Rich Felker
2023-05-31 15:07 ` Jₑₙₛ Gustedt
2023-05-31 15:14 ` Rich Felker
2023-05-31 15:37 ` Jₑₙₛ Gustedt
2023-05-31 15:40 ` Rich Felker
2023-05-31 15:56 ` Jₑₙₛ Gustedt
2023-05-31 16:30 ` Alexander Monakov
2023-05-31 16:58 ` Jens Gustedt
2023-05-31 17:03 ` Rich Felker
2023-05-31 17:09 ` Alexander Monakov
2023-06-01 7:24 ` Jₑₙₛ Gustedt
2023-05-31 14:42 ` Jₑₙₛ Gustedt
2023-05-31 14:47 ` Rich Felker
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=cover.1685536608.git.Jens.Gustedt@inria.fr \
--to=jens.gustedt@inria.fr \
--cc=musl@lists.openwall.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.vuxu.org/mirror/musl/
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 NNTP newsgroup(s).