Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Thu, 4 May 2023 11:50:34 -0400
From: Jeffrey Walton <noloader@...il.com>
To: musl@...ts.openwall.com
Cc: Rich Felker <dalias@...c.org>
Subject: Re: patches for C23

On Wed, May 3, 2023 at 5:13 AM Jₑₙₛ Gustedt <jens.gustedt@...ia.fr> wrote:
>
> [...]
> > Language/compiler baseline for building musl is not going to go up, so
> > this complicates some things, especially implementing the int128
> > stuff. This will need pop_arg to call out to an arch-provided asm
> > function that bypasses the C type system to get the nonexistent-type
> > argument off the va_list and store it in a pair of uint64_t.
>
> I don't see that. `pop_arg` just uses `va_arg` and that in turn is
> fixed to `__builtin_va_arg`. The proposed patches assume that if
> `__SIZEOF_INT128__` is defined by the compiler that then the compiler
> provides the `__int128` types and knows how to deal with them in
> `__builtin_va_arg`. Is there anything wrong with that assumtion?

It may be worth mentioning the GCC folks say the test is
__SIZEOF_INT128__ >= 16, and not merely defining __SIZEOF_INT128__.[1]

And __SIZEOF_INT128__ will only show up on 64-bit platforms at the
moment. 32-bit platforms will lack the define.

Jeff

[1] 128-bit integer - nonsensical documentation?,
https://gcc.gnu.org/legacy-ml/gcc-help/2015-08/msg00176.html

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.