qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [Qemu-arm] [PATCH 0/4] softfloat: fix some helper defin


From: Philippe Mathieu-Daudé
Subject: Re: [Qemu-devel] [Qemu-arm] [PATCH 0/4] softfloat: fix some helper definitions
Date: Sat, 4 Nov 2017 13:18:59 -0300
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.4.0

On 11/04/2017 05:55 AM, Laurent Vivier wrote:
> Le 03/11/2017 à 22:51, Philippe Mathieu-Daudé a écrit :
>>> On 11/03/2017 05:26 PM, Laurent Vivier wrote:
>>>> This series fixes some errors found by
>>>> enabling USE_SOFTFLOAT_STRUCT_TYPES.
>> [...]
>>>
>>> I'm getting those errors:
>>>
>>> $ make subdir-arm-softmmu -j2
>>>
>>> /source/qemu/migration/vmstate-types.c:430:5: error: conversion to
>>> non-scalar type requested
>>>      qemu_put_be64(f, float64_val(*v));
>>>      ^~~~~~~~~~~~~
>>> make: *** [migration/vmstate-types.o] Error 1
[...]
> 
> These series doesn't fix all the problems, only the easiest to fix...
> 
> for this one, you need:
> 
> diff --git a/migration/vmstate-types.c b/migration/vmstate-types.c
> index 48184c380d..0c273d616a 100644
> --- a/migration/vmstate-types.c
> +++ b/migration/vmstate-types.c
> @@ -425,7 +425,7 @@ static int get_float64(QEMUFile *f, void *pv, size_t
> size,
>  static int put_float64(QEMUFile *f, void *pv, size_t size, VMStateField
> *field,
>                         QJSON *vmdesc)
>  {
> -    uint64_t *v = pv;
> +    float64 *v = pv;
> 
>      qemu_put_be64(f, float64_val(*v));
>      return 0;

If you respin with this one you can add my Reviewed-by + Tested-by.

Another error:

$ make subdir-aarch64-softmmu
[...]
  CC      target/arm/helper-a64.o
/source/qemu/target/arm/helper-a64.c: In function ‘helper_simd_tbl’:
/source/qemu/target/arm/helper-a64.c:162:38: error: incompatible type
for argument 1 of ‘extract64’
             uint64_t val = extract64(env->vfp.regs[elt], bitidx, 8);
                                      ^~~
In file included from /source/qemu/include/qemu/bitmap.h:16:0,
                 from /source/qemu/include/hw/qdev-core.h:6,
                 from /source/qemu/include/qom/cpu.h:23,
                 from /source/qemu/target/arm/cpu-qom.h:23,
                 from /source/qemu/target/arm/cpu.h:39,
                 from /source/qemu/target/arm/helper-a64.c:21:
/source/qemu/include/qemu/bitops.h:316:24: note: expected ‘uint64_t {aka
long unsigned int}’ but argument is of type ‘float64 {aka struct
<anonymous>}’
 static inline uint64_t extract64(uint64_t value, int start, int length)
                        ^~~~~~~~~
make: *** [target/arm/helper-a64.o] Error 1



reply via email to

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