qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Ilya Leoshkevich <iii@linux.ibm.com>
To: Richard Henderson <richard.henderson@linaro.org>,
	Nicholas Piggin <npiggin@gmail.com>,
	Daniel Henrique Barboza <danielhb413@gmail.com>
Cc: Kewen Lin <linkw@linux.ibm.com>,
	qemu-devel@nongnu.org, qemu-ppc@nongnu.org
Subject: Re: [PATCH] tests/tcg: Replace -mpower8-vector with -mvsx
Date: Wed, 23 Oct 2024 14:17:17 +0200	[thread overview]
Message-ID: <935ba5fe7f761e641e9bcdd2e000c6e6c0c12fba.camel@linux.ibm.com> (raw)
In-Reply-To: <56b09f33-d176-4489-989a-ddf02329636f@linaro.org>

On Mon, 2024-10-21 at 19:59 -0700, Richard Henderson wrote:
> On 10/21/24 07:27, Ilya Leoshkevich wrote:
> > [1] deprecated -mpower8-vector, resulting in:
> > 
> >      powerpc64-linux-gnu-gcc: warning: switch '-mpower8-vector' is
> > no longer supported
> >      qemu/tests/tcg/ppc64/vsx_f2i_nan.c:4:15: error: expected ';'
> > before 'float'
> >          4 | typedef vector float vsx_float32_vec_t;
> >            |               ^~~~~~
> > 
> > Similar to how this was done for the GCC testcases, replace
> > -mpower8-vector with -mvsx.
> > 
> > [1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109987
> > 
> > Signed-off-by: Ilya Leoshkevich <iii@linux.ibm.com>
> > ---
> >   tests/tcg/ppc64/Makefile.target | 10 +++++-----
> >   1 file changed, 5 insertions(+), 5 deletions(-)
> > 
> > diff --git a/tests/tcg/ppc64/Makefile.target
> > b/tests/tcg/ppc64/Makefile.target
> > index 1940886c737..d1b00d2bf09 100644
> > --- a/tests/tcg/ppc64/Makefile.target
> > +++ b/tests/tcg/ppc64/Makefile.target
> > @@ -6,7 +6,7 @@ VPATH += $(SRC_PATH)/tests/tcg/ppc64
> >   
> >   config-cc.mak: Makefile
> >   	$(quiet-@)( \
> > -	    $(call cc-option,-mpower8-vector,  
> > CROSS_CC_HAS_POWER8_VECTOR); \
> > +	    $(call cc-option,-mvsx,             CROSS_CC_HAS_VSX);
> > \
> >   	    $(call cc-option,-mpower10,        
> > CROSS_CC_HAS_POWER10)) 3> config-cc.mak
> 
> I don't think this is quite right.
> I think you need -mpower8 to get OPTION_MASK_P8_VECTOR set.

Do you mean -mcpu=power8? -mpower8 is a GAS option.

> 
> > +ifneq ($(CROSS_CC_HAS_VSX),)
> >   PPC64_TESTS=bcdsub non_signalling_xscv
> 
> bcdsub is not in the base VSX instruction set, for instance.
> 
> 
> r~

I was confused why -mvsx works in practice, so I spent some time and
managed to create a "hostile" gcc build, in which this is now a
problem, using:

    ./configure --target=powerpc64-linux-gnu --enable-checking \
                --disable-bootstrap \
                --with-as="$(which powerpc64-linux-gnu-as)"

The issue is masked by two things:

- GCC passes "-many" to GAS. GCC commit e154242724b0 ("[RS6000] Don't
  pass -many to the assembler") stops --enable-checking builds from
  doing this.

- binutils has the following line:

  /* The minimum supported cpu for 64-bit little-endian is power8.  */
  ppc_cpu |= ppc_parse_cpu (ppc_cpu, &sticky, "power8");

  so one needs to use the big-endian toolchain to see the problem.


I'll send a v2.


  reply	other threads:[~2024-10-23 12:18 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-10-21 14:27 [PATCH] tests/tcg: Replace -mpower8-vector with -mvsx Ilya Leoshkevich
2024-10-22  2:59 ` Richard Henderson
2024-10-23 12:17   ` Ilya Leoshkevich [this message]
2024-10-23 16:20     ` Richard Henderson

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=935ba5fe7f761e641e9bcdd2e000c6e6c0c12fba.camel@linux.ibm.com \
    --to=iii@linux.ibm.com \
    --cc=danielhb413@gmail.com \
    --cc=linkw@linux.ibm.com \
    --cc=npiggin@gmail.com \
    --cc=qemu-devel@nongnu.org \
    --cc=qemu-ppc@nongnu.org \
    --cc=richard.henderson@linaro.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).