[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH] include/fpu/softfloat: Fix compilation with Cla
From: |
Thomas Huth |
Subject: |
Re: [Qemu-devel] [PATCH] include/fpu/softfloat: Fix compilation with Clang on s390x |
Date: |
Mon, 14 Jan 2019 18:03:36 +0100 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.9.1 |
On 2019-01-14 17:37, Alex Bennée wrote:
>
> Philippe Mathieu-Daudé <address@hidden> writes:
>
>> On 1/14/19 1:12 PM, Thomas Huth wrote:
>>> Clang v7.0.1 does not like the __int128 variable type for inline
>>> assembly on s390x:
>>>
>>> In file included from fpu/softfloat.c:97:
>>> include/fpu/softfloat-macros.h:647:9: error: inline asm error:
>>> This value type register class is not natively supported!
>>> asm("dlgr %0, %1" : "+r"(n) : "r"(d));
>>> ^
>>>
>>> Disable this code part there now when compiling with Clang, so that
>>> the generic code gets used instead.
>>>
>>> Signed-off-by: Thomas Huth <address@hidden>
>>> ---
>>> include/fpu/softfloat-macros.h | 2 +-
>>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>>
>>> diff --git a/include/fpu/softfloat-macros.h b/include/fpu/softfloat-macros.h
>>> index b1d772e..bd5b641 100644
>>> --- a/include/fpu/softfloat-macros.h
>>> +++ b/include/fpu/softfloat-macros.h
>>> @@ -641,7 +641,7 @@ static inline uint64_t udiv_qrnnd(uint64_t *r, uint64_t
>>> n1,
>>> uint64_t q;
>>> asm("divq %4" : "=a"(q), "=d"(*r) : "0"(n0), "1"(n1), "rm"(d));
>>> return q;
>>> -#elif defined(__s390x__)
>>> +#elif defined(__s390x__) && !defined(__clang__)
>>
>> Can we rather check if __int128 is natively supported? So this part get
>> compiled once Clang do support it, else we'll never use it...
>
> We already define CONFIG_INT128 so you could just use that.
>
> Thomas does the s390 clang leave CONFIG_INT128=y in config-host.mak?
Yes, CONFIG_INT128=y is also set with Clang on s390x. It's really just
that it does not like __int128 to be passed as parameters for inline
assembly...
Thomas
- [Qemu-devel] [PATCH] include/fpu/softfloat: Fix compilation with Clang on s390x, Thomas Huth, 2019/01/14
- Re: [Qemu-devel] [PATCH] include/fpu/softfloat: Fix compilation with Clang on s390x, Philippe Mathieu-Daudé, 2019/01/14
- Re: [Qemu-devel] [PATCH] include/fpu/softfloat: Fix compilation with Clang on s390x, Alex Bennée, 2019/01/14
- Re: [Qemu-devel] [PATCH] include/fpu/softfloat: Fix compilation with Clang on s390x,
Thomas Huth <=
- Re: [Qemu-devel] [PATCH] include/fpu/softfloat: Fix compilation with Clang on s390x, Alex Bennée, 2019/01/14
- Re: [Qemu-devel] [PATCH] include/fpu/softfloat: Fix compilation with Clang on s390x, Richard Henderson, 2019/01/14
- Re: [Qemu-devel] [PATCH] include/fpu/softfloat: Fix compilation with Clang on s390x, Alex Bennée, 2019/01/14
- Re: [Qemu-devel] [PATCH] include/fpu/softfloat: Fix compilation with Clang on s390x, Peter Maydell, 2019/01/15
- Re: [Qemu-devel] [PATCH] include/fpu/softfloat: Fix compilation with Clang on s390x, Alex Bennée, 2019/01/15
- Re: [Qemu-devel] [PATCH] include/fpu/softfloat: Fix compilation with Clang on s390x, Thomas Huth, 2019/01/15
- Re: [Qemu-devel] [PATCH] include/fpu/softfloat: Fix compilation with Clang on s390x, Alex Bennée, 2019/01/15
- Re: [Qemu-devel] [PATCH] include/fpu/softfloat: Fix compilation with Clang on s390x, Emilio G. Cota, 2019/01/15
- Re: [Qemu-devel] [PATCH] include/fpu/softfloat: Fix compilation with Clang on s390x, Thomas Huth, 2019/01/16
- Re: [Qemu-devel] [PATCH] include/fpu/softfloat: Fix compilation with Clang on s390x, Alex Bennée, 2019/01/16