qemu-s390x
[Top][All Lists]
Advanced

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

Re: [PATCH] Fix tcg_out_vec_op argument type


From: Richard Henderson
Subject: Re: [PATCH] Fix tcg_out_vec_op argument type
Date: Thu, 11 Nov 2021 11:53:00 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.13.0

On 11/11/21 11:46 AM, David Hildenbrand wrote:
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>

Queued to tcg-next, thanks.


r~




reply via email to

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