[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] Fix tcg_out_vec_op argument type
From: |
David Hildenbrand |
Subject: |
Re: [PATCH] Fix tcg_out_vec_op argument type |
Date: |
Thu, 11 Nov 2021 11:46:04 +0100 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.2.0 |
On 11.11.21 11:42, Thomas Huth wrote:
> On 27/10/2021 10.56, Miroslav Rezanina wrote:
>> Newly defined tcg_out_vec_op (34ef767609 tcg/s390x: Add host vector
>> framework)
>> for s390x uses pointer argument definition.
>> This fails on gcc 11 as original declaration uses array argument:
>>
>> In file included from ../tcg/tcg.c:430:
>> /builddir/build/BUILD/qemu-6.1.50/tcg/s390x/tcg-target.c.inc:2702:42: error:
>> argument 5 of type 'const TCGArg *' {aka 'const long unsigned int *'}
>> declared as a pointer [-Werror=array-parameter=]
>> 2702 | const TCGArg *args, const int
>> *const_args)
>> | ~~~~~~~~~~~~~~^~~~
>> ../tcg/tcg.c:121:41: note: previously declared as an array 'const
>> TCGArg[16]' {aka 'const long unsigned int[16]'}
>> 121 | const TCGArg args[TCG_MAX_OP_ARGS],
>> | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
>> In file included from ../tcg/tcg.c:430:
>> /builddir/build/BUILD/qemu-6.1.50/tcg/s390x/tcg-target.c.inc:2702:59: error:
>> argument 6 of type 'const int *' declared as a pointer
>> [-Werror=array-parameter=]
>> 2702 | const TCGArg *args, const int
>> *const_args)
>> | ~~~~~~~~~~~^~~~~~~~~~
>> ../tcg/tcg.c:122:38: note: previously declared as an array 'const int[16]'
>> 122 | const int const_args[TCG_MAX_OP_ARGS]);
>> | ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
>>
>> Fixing argument type to pass build.
>>
>> Signed-off-by: Miroslav Rezanina <mrezanin@redhat.com>
>> ---
>> tcg/s390x/tcg-target.c.inc | 3 ++-
>> 1 file changed, 2 insertions(+), 1 deletion(-)
>>
>> diff --git a/tcg/s390x/tcg-target.c.inc b/tcg/s390x/tcg-target.c.inc
>> index 8938c446c8..57e803e339 100644
>> --- a/tcg/s390x/tcg-target.c.inc
>> +++ b/tcg/s390x/tcg-target.c.inc
>> @@ -2699,7 +2699,8 @@ static void tcg_out_dupi_vec(TCGContext *s, TCGType
>> type, unsigned vece,
>>
>> static void tcg_out_vec_op(TCGContext *s, TCGOpcode opc,
>> unsigned vecl, unsigned vece,
>> - const TCGArg *args, const int *const_args)
>> + const TCGArg args[TCG_MAX_OP_ARGS],
>> + const int const_args[TCG_MAX_OP_ARGS])
>> {
>> TCGType type = vecl + TCG_TYPE_V64;
>> TCGArg a0 = args[0], a1 = args[1], a2 = args[2];
>
> Reviewed-by: Thomas Huth <thuth@redhat.com>
>
Acked-by: David Hildenbrand <david@redhat.com>
--
Thanks,
David / dhildenb