This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [PATCH] Add vector ABI tests to gnu_vector.exp
- From: "Ulrich Weigand" <uweigand at de dot ibm dot com>
- To: arnez at linux dot vnet dot ibm dot com (Andreas Arnez)
- Cc: gdb-patches at sourceware dot org, sergiodj at redhat dot com (Sergio Durigan Junior)
- Date: Fri, 12 Jun 2015 17:48:53 +0200 (CEST)
- Subject: Re: [PATCH] Add vector ABI tests to gnu_vector.exp
- Authentication-results: sourceware.org; auth=none
Andreas Arnez wrote:
> So far the gnu_vector test was limited to "static" aspects of GDB's
> vector support, like evaluating vector-valued expressions. This patch
> enriches the test and adds checks for GDB's vector ABI support as well.
> The new checks particularly verify inferior function calls with vector
> arguments and GDB's handling of vector return values.
>
> The test now attempts to compile for the target's "native" architecture,
> such that a hardware vector ABI is used if available.
This is certainly a good idea. (In fact, the tests uncovered a bug in
the ABI implementation on PowerPC. I've just committed a fix for that.)
> Since GDB has no vector ABI support for x86 and x86_64 targets, most of
> the new checks are XFAILed there.
As this due to a known GDB problem and not something in the environment,
that should be a KFAIL, not an XFAIL.
> gdb/testsuite/ChangeLog:
>
> * gdb.base/gnu_vector.c: Include stdarg.h and stdio.h.
> (VECTOR): New macro. Use it...
> (int4, uint4, char4, float4, int2, longlong2, float2, double2):
> ...for these typedefs.
> (int8, char1, int1, double1): New typedefs.
> (struct just_int2, struct two_int2): New structures.
> (add_some_intvecs, add_many_charvecs, add_various_floatvecs,
> (add_structvecs, add_singlevecs): New functions.
> (main): Call add_some_intvecs twice.
> * gdb.base/gnu_vector.exp: Drop GCC version check; just attempt
> the compile and exit upon failure. Try compiling for the "native"
> architecture. Test inferior function calls with vector arguments
> and vector return value handling with "finish" and "return".
Otherwise, this looks good.
Bye,
Ulrich
--
Dr. Ulrich Weigand
GNU/Linux compilers and toolchain
Ulrich.Weigand@de.ibm.com