All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] meson: Adjust check for __int128_t
@ 2023-05-23 22:38 Richard Henderson
  2023-05-24 10:30 ` Peter Maydell
  2023-05-24 12:31 ` Paolo Bonzini
  0 siblings, 2 replies; 6+ messages in thread
From: Richard Henderson @ 2023-05-23 22:38 UTC (permalink / raw)
  To: qemu-devel

Remove the signed * signed check, leaving the signed * unsigned check.
This link test runs foul of -fsanitize=undefined, where clang-11 has
an undefined reference to __muloti4 to check for signed overflow.

This failure prevents us properly detecting atomic128 support.

Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
---
 meson.build | 2 --
 1 file changed, 2 deletions(-)

diff --git a/meson.build b/meson.build
index ef181ff2df..865bdd8d11 100644
--- a/meson.build
+++ b/meson.build
@@ -2542,10 +2542,8 @@ has_int128 = cc.links('''
   int main (void) {
     a = a + b;
     b = a * b;
-    a = a * a;
     return 0;
   }''')
-
 config_host_data.set('CONFIG_INT128', has_int128)
 
 if has_int128
-- 
2.34.1



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

* Re: [PATCH] meson: Adjust check for __int128_t
  2023-05-23 22:38 [PATCH] meson: Adjust check for __int128_t Richard Henderson
@ 2023-05-24 10:30 ` Peter Maydell
  2023-05-24 12:37   ` Paolo Bonzini
  2023-05-24 12:31 ` Paolo Bonzini
  1 sibling, 1 reply; 6+ messages in thread
From: Peter Maydell @ 2023-05-24 10:30 UTC (permalink / raw)
  To: Richard Henderson; +Cc: qemu-devel

On Tue, 23 May 2023 at 23:39, Richard Henderson
<richard.henderson@linaro.org> wrote:
>
> Remove the signed * signed check, leaving the signed * unsigned check.
> This link test runs foul of -fsanitize=undefined, where clang-11 has
> an undefined reference to __muloti4 to check for signed overflow.

If you can't do a signed * signed multiply then that sounds
to me like "int128_t doesn't work on this compiler". We
specifically added this check to catch "some clang with
-fsanitize=undefined don't actually correctly compile
int128_t * int128_t" in commit 464e3671f9.

-- PMM


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

* Re: [PATCH] meson: Adjust check for __int128_t
  2023-05-23 22:38 [PATCH] meson: Adjust check for __int128_t Richard Henderson
  2023-05-24 10:30 ` Peter Maydell
@ 2023-05-24 12:31 ` Paolo Bonzini
  2023-05-24 12:33   ` Peter Maydell
  1 sibling, 1 reply; 6+ messages in thread
From: Paolo Bonzini @ 2023-05-24 12:31 UTC (permalink / raw)
  To: Richard Henderson; +Cc: qemu-devel

Queued, thanks.

Paolo



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

* Re: [PATCH] meson: Adjust check for __int128_t
  2023-05-24 12:31 ` Paolo Bonzini
@ 2023-05-24 12:33   ` Peter Maydell
  2023-05-24 12:41     ` Paolo Bonzini
  0 siblings, 1 reply; 6+ messages in thread
From: Peter Maydell @ 2023-05-24 12:33 UTC (permalink / raw)
  To: Paolo Bonzini; +Cc: Richard Henderson, qemu-devel

On Wed, 24 May 2023 at 13:32, Paolo Bonzini <pbonzini@redhat.com> wrote:
>
> Queued, thanks.

Can you unqueue it, please? This is reverting a fix we
deliberately put in in commit 464e3671f9d5c.

thanks
-- PMM


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

* Re: [PATCH] meson: Adjust check for __int128_t
  2023-05-24 10:30 ` Peter Maydell
@ 2023-05-24 12:37   ` Paolo Bonzini
  0 siblings, 0 replies; 6+ messages in thread
From: Paolo Bonzini @ 2023-05-24 12:37 UTC (permalink / raw)
  To: Peter Maydell, Richard Henderson; +Cc: qemu-devel

On 5/24/23 12:30, Peter Maydell wrote:
> On Tue, 23 May 2023 at 23:39, Richard Henderson
> <richard.henderson@linaro.org> wrote:
>>
>> Remove the signed * signed check, leaving the signed * unsigned check.
>> This link test runs foul of -fsanitize=undefined, where clang-11 has
>> an undefined reference to __muloti4 to check for signed overflow.
> 
> If you can't do a signed * signed multiply then that sounds
> to me like "int128_t doesn't work on this compiler". We
> specifically added this check to catch "some clang with
> -fsanitize=undefined don't actually correctly compile
> int128_t * int128_t" in commit 464e3671f9.

Oops, missed this reply before queuing (and will leave the patch aside 
until the discussion is over).

As long as -fsanitize=undefined is properly covered by CI and we don't 
need int128_t * int128_t multiplication, removing the test is ok IMO, 
though perhaps it should have a comment about why it's avoided.

Paolo



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

* Re: [PATCH] meson: Adjust check for __int128_t
  2023-05-24 12:33   ` Peter Maydell
@ 2023-05-24 12:41     ` Paolo Bonzini
  0 siblings, 0 replies; 6+ messages in thread
From: Paolo Bonzini @ 2023-05-24 12:41 UTC (permalink / raw)
  To: Peter Maydell; +Cc: Richard Henderson, qemu-devel

On 5/24/23 14:33, Peter Maydell wrote:
> On Wed, 24 May 2023 at 13:32, Paolo Bonzini <pbonzini@redhat.com> wrote:
>>
>> Queued, thanks.
> 
> Can you unqueue it, please? This is reverting a fix we
> deliberately put in in commit 464e3671f9d5c.

Yes, I have done so.

Paolo



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

end of thread, other threads:[~2023-05-24 12:41 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-05-23 22:38 [PATCH] meson: Adjust check for __int128_t Richard Henderson
2023-05-24 10:30 ` Peter Maydell
2023-05-24 12:37   ` Paolo Bonzini
2023-05-24 12:31 ` Paolo Bonzini
2023-05-24 12:33   ` Peter Maydell
2023-05-24 12:41     ` Paolo Bonzini

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.