[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v1 04/19] include/fpu/softfloat: implement float
From: |
Alex Bennée |
Subject: |
Re: [Qemu-devel] [PATCH v1 04/19] include/fpu/softfloat: implement float16_set_sign helper |
Date: |
Mon, 08 Jan 2018 12:58:14 +0000 |
User-agent: |
mu4e 1.0-alpha3; emacs 26.0.90 |
Alex Bennée <address@hidden> writes:
> Richard Henderson <address@hidden> writes:
>
>> On 12/11/2017 04:56 AM, Alex Bennée wrote:
>>> +static inline float16 float16_set_sign(float16 a, int sign)
>>> +{
>>> + return make_float16((float16_val(a) & 0x7fff) | (sign << 15));
>>> +}
>>> +
>>
>> 1) Do we use this anywhere?
>
> Yes in the target specific helpers
>
>>
>> 2) While this is probably in line with the other implementations,
>> but going to a more qemu-ish style this should use deposit32.
>
> OK, will do.
>
It turns out doing this unleashes a weird circular dependency at we need
qemu/bitops.h but that brings in host-utils.h and bswap.h which tries
to include softfloat.h again.
CHK version_gen.h
CC qga/main.o
In file included from
/home/alex/lsrc/qemu/qemu.git/include/qemu/bitops.h:16:0,
from
/home/alex/lsrc/qemu/qemu.git/include/fpu/softfloat.h:85,
from /home/alex/lsrc/qemu/qemu.git/include/qemu/bswap.h:4,
from qga/main.c:28:
/home/alex/lsrc/qemu/qemu.git/include/qemu/host-utils.h: In function
‘revbit16’:
/home/alex/lsrc/qemu/qemu.git/include/qemu/host-utils.h:293:9: error:
implicit declaration of function ‘bswap16’
[-Werror=implicit-function-declaration]
x = bswap16(x);
^
/home/alex/lsrc/qemu/qemu.git/include/qemu/host-utils.h:293:5: error: nested
extern declaration of ‘bswap16’ [-Werror=nested-externs]
x = bswap16(x);
^
/home/alex/lsrc/qemu/qemu.git/include/qemu/host-utils.h: In function
‘revbit32’:
/home/alex/lsrc/qemu/qemu.git/include/qemu/host-utils.h:312:9: error:
implicit declaration of function ‘bswap32’
[-Werror=implicit-function-declaration]
x = bswap32(x);
^
/home/alex/lsrc/qemu/qemu.git/include/qemu/host-utils.h:312:5: error: nested
extern declaration of ‘bswap32’ [-Werror=nested-externs]
x = bswap32(x);
^
/home/alex/lsrc/qemu/qemu.git/include/qemu/host-utils.h: In function
‘revbit64’:
/home/alex/lsrc/qemu/qemu.git/include/qemu/host-utils.h:331:9: error:
implicit declaration of function ‘bswap64’
[-Werror=implicit-function-declaration]
x = bswap64(x);
^
/home/alex/lsrc/qemu/qemu.git/include/qemu/host-utils.h:331:5: error: nested
extern declaration of ‘bswap64’ [-Werror=nested-externs]
x = bswap64(x);
^
In file included from qga/main.c:28:0:
/home/alex/lsrc/qemu/qemu.git/include/qemu/bswap.h: At top level:
/home/alex/lsrc/qemu/qemu.git/include/qemu/bswap.h:14:24: error: conflicting
types for ‘bswap16’
static inline uint16_t bswap16(uint16_t x)
^
In file included from
/home/alex/lsrc/qemu/qemu.git/include/qemu/bitops.h:16:0,
from
/home/alex/lsrc/qemu/qemu.git/include/fpu/softfloat.h:85,
from /home/alex/lsrc/qemu/qemu.git/include/qemu/bswap.h:4,
from qga/main.c:28:
/home/alex/lsrc/qemu/qemu.git/include/qemu/host-utils.h:293:9: note: previous
implicit declaration of ‘bswap16’ was here
x = bswap16(x);
^
In file included from qga/main.c:28:0:
/home/alex/lsrc/qemu/qemu.git/include/qemu/bswap.h:19:24: error: conflicting
types for ‘bswap32’
static inline uint32_t bswap32(uint32_t x)
^
In file included from
/home/alex/lsrc/qemu/qemu.git/include/qemu/bitops.h:16:0,
from
/home/alex/lsrc/qemu/qemu.git/include/fpu/softfloat.h:85,
from /home/alex/lsrc/qemu/qemu.git/include/qemu/bswap.h:4,
from qga/main.c:28:
/home/alex/lsrc/qemu/qemu.git/include/qemu/host-utils.h:312:9: note: previous
implicit declaration of ‘bswap32’ was here
x = bswap32(x);
^
In file included from qga/main.c:28:0:
/home/alex/lsrc/qemu/qemu.git/include/qemu/bswap.h:24:24: error: conflicting
types for ‘bswap64’
static inline uint64_t bswap64(uint64_t x)
^
In file included from
/home/alex/lsrc/qemu/qemu.git/include/qemu/bitops.h:16:0,
from
/home/alex/lsrc/qemu/qemu.git/include/fpu/softfloat.h:85,
from /home/alex/lsrc/qemu/qemu.git/include/qemu/bswap.h:4,
from qga/main.c:28:
/home/alex/lsrc/qemu/qemu.git/include/qemu/host-utils.h:331:9: note: previous
implicit declaration of ‘bswap64’ was here
x = bswap64(x);
^
cc1: all warnings being treated as errors
/home/alex/lsrc/qemu/qemu.git/rules.mak:66: recipe for target 'qga/main.o'
failed
make: *** [qga/main.o] Error 1
Compilation exited abnormally with code 2 at Mon Jan 8 12:57:41
--
Alex Bennée