bug-gnulib
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: FYI: s390x: Require GCC 7.1 or later to build glibc due to __builtin


From: Stefan Liebler
Subject: Re: FYI: s390x: Require GCC 7.1 or later to build glibc due to __builtin_add_overflow
Date: Thu, 7 Jan 2021 18:00:33 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.5.0

On 12/18/20 7:32 PM, Bruno Haible wrote:
> Paul Eggert wrote:
>>> Thanks for the heads-up. Indeed, what I understand from this bug report is 
>>> that
>>> the condition code handling (required by __builtin_add_overflow on many
>>> platforms) was unreliable before 2017-01-27, i.e. in GCC versions < 7.
>>> So, gnulib shouldn't make use of it in these GCC versions.
>>
>> So the problem is on all platforms, not just s390x?
> 
> That's my understanding, from the cited
> <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98269>.
> Even if I'm wrong, given that GCC 5 and 6 are in decreasing use, I feel it's
> better to err on the safe side.
> 
> Bruno
> 

According to Andreas comment in the gcc-bugzilla 98269, the issue was
fixed with a common-code patch. On s390x this issue was hidden due to a
s390-specific patch (committed before the common-code fix).

Thus, I also think, that this bug could happen on all platforms, but I
don't know if this really happens anywhere.

The gcc-bugzilla 78559 (=> common-code patch) was reported on aarch64
for gcc > 6.2.1 && <= 7.0. (If you have an aarch64 system, you could try it)

I've just build and run tst-gcc-addoverflow.c (attached to the
gcc-bugzilla 98269) on x86_64 with
gcc version 6.5.0 20181026 (Ubuntu 6.5.0-2ubuntu1~18.04)
=> __builtin_add_overflow() SUCCEED

Florian Weimer added the usage of __builtin_add_overflow which fails
with gcc 6.5 on s390x. After reporting the issue, he said, that he did
not recognize the issue on other platforms. But I don't know which gcc
versions or platforms he has used for testing.

Thanks,
Stefan



reply via email to

[Prev in Thread] Current Thread [Next in Thread]