[testsuite, i386] Always check for target i?86 and x86_64

Rainer Orth ro@CeBiTec.Uni-Bielefeld.DE
Thu Jun 15 10:51:00 GMT 2017


I happened to notice that recently a couple of testcases have sneaked in
that are restricted to x86_64-*-* targets only.  This is always wrong:
it should be i?86-*-* and x86_64-*-* alike, eventually restricing the
test to ilp32 or lp64.  There were also instances of i?86-*-* only,
which I've handled as well.

Most of the changes are straightforward, with a few exceptions:

* g++.dg/cpp0x/alignas4.C was restricted to x86_64-*-*-gnu, but it
  passes just as well on i386-pc-solaris2.12 (both multilibs).  However,
  it fails on x86_64-apple-darwin which uses

  .zerofill __DATA,__pu_bss3,_a,8,3

  instead of

  .align 8

  so there may be more fallout from that change.

* pic-macro-define.c has nothing Darwin specific in it if it's
  restricted to fpic targets.

* gcc.target/i386/darwin-fpmath.c already FAILs on
  i386-apple-darwin11.4.2 -m32 and also now on x86_64-apple-darwin11.4.2
  -m32 so there's something amiss here even before this patch.

* The gcc.dg/attr-ms_struct*, gcc.dg/bf-ms-layout*, and
  gcc.target/i386/bitfield* tests work on all x86 targets, so there's no
  need to artifically restrict them to *-*-mingw* *-*-cygwin*
  i?86-*-darwin*.

  The gcc.dg/bf-no-ms-layout.c test FAILs to execute on both
  i386-pc-solaris2.12 and x86_64-pc-linux-gnu (-m32 only), so I've left
  it alone.

* In gfortran.dg/fmt_pf.f90, I've removed i?86-*-solaris2.9* from an
  xfail since that target has long been removed.

This leaves us with two i386-*-freebsd* xfails in
gfortran.dg/ieee/ieee_4.f90 and gfortran.dg/round_4.f90 which I haven't
touched since I cannot say if they are still relevant and why they
shouldn't apply to x86_64-*-freebsd* -m32 as well.

There's one group of targets I've omitted completely because I know
nothing about them and cannot test them:
{i?86,x86_64}-*-{cygwin,mingw}*.  There are quite a number of testcases
restricted to either the i?86 or x86_64 variant of them with no way (for
me) to tell what the intention was.  I'll defer to the Cygwin/MingW
maintainer to figure this out.  Here's the list:

gcc/testsuite/gcc.dg/array-quals-1.c		x86_64-*-mingw*
gcc/testsuite/gcc.dg/lto/20091013-1_1.c		dto.
gcc/testsuite/gcc.dg/lto/20091013-1_2.c		dto.
gcc/testsuite/gcc.dg/pr32370.c			dto.
gcc/testsuite/gcc.dg/pr50251.c			dto.
gcc/testsuite/gcc.dg/tls/thr-cse-1.c		dto., separate i?86-*-mingw*
gcc/testsuite/gcc.dg/weak/weak-15.c		x86_64-*-mingw*
gcc/testsuite/gcc.dg/weak/weak-16.c		dto.
gcc/testsuite/gcc.dg/weak/weak-2.c		dto.
gcc/testsuite/gcc.dg/weak/weak-3.c		dto.
gcc/testsuite/gcc.dg/weak/weak-4.c		dto.
gcc/testsuite/gcc.dg/weak/weak-5.c		dto.
libffi/testsuite/libffi.call/cls_longdouble_va.c dto.

gcc/testsuite/g++.dg/abi/bitfield3.C		i?86-*-mingw*
gcc/testsuite/g++.dg/ext/dllexport3.C		i?86-*-cygwin, *-*-mingw
gcc/testsuite/g++.dg/ext/selectany1.C		i?86-pc-cygwin, i?86-*-mingw*,
						x86_64-*-mingw*, dg-do twice!?
gcc/testsuite/g++.dg/ext/selectany2.C		dto.
gcc/testsuite/g++.old-deja/g++.ext/attrib5.C	i?86-pc-cygwin
gcc/testsuite/gcc.dg/dll-3.c			i?86-pc-cygwin
gcc/testsuite/gcc.dg/dll-4.c			dto.
gcc/testsuite/gcc.dg/dll-5.c			dto.
gcc/testsuite/gcc.dg/dll-8.c			dto.
gcc/testsuite/gcc.dg/tree-ssa/loop-1.c		separate x86_64-*-mingw*
gcc/testsuite/gcc.target/i386/fastcall-1.c	i?86-*-mingw32*,
						i?86-*-cygwin*

Also note that the target triplet is spelled differently in different
tests; this should certainly be regularized.

The following patch fixes the non-Cygwin/MingW part.  Bootstrapped
without regressions on i386-pc-solaris2.12 and x86_64-pc-linux-gnu, plus
some manual x86_64-apple-darwin11.4.2 testing which is currently
massively hampered by PR bootstrap/81033.

I think I can just apply this based on my testsuite maintainership but
still would be grateful for comments.

	Rainer

-- 
-----------------------------------------------------------------------------
Rainer Orth, Center for Biotechnology, Bielefeld University


2017-06-14  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>

	libstdc++-v3:
	* testsuite/20_util/variant/index_type.cc: Allow for i?86-*-* target.

	gcc/testsuite:
	* c-c++-common/fold-masked-cmp-1.c: Allow for i?86-*-* target.
	* c-c++-common/fold-masked-cmp-2.c: Likewise.
	* c-c++-common/fold-masked-cmp-3.c: Likewise.
	* g++.dg/cpp0x/alignas4.C: Allow for i?86-*-* target, don't
	restrict to x86_64-*-*-gnu.
	Skip scan-assembler on *-*-darwin*.
	* g++.dg/vect/pr70944.cc: Allow for i?86-*-* target.
	* gcc.dg/loop-invariant.c: Likewise.
	* gcc.dg/lto/pr70955_0.c: Likewise.
	* gcc.dg/tree-ssa/pr69196-1.c: Likewise.
	* gcc.dg/tree-ssa/pr79803.c: Likewise.
	* gfortran.dg/pr68078.f90: Allow for i?86-*-linux*.

	* g++.dg/debug/dwarf2/const2b.C: Allow for x86_64-*-* target.
	* gcc.dg/attr-ms_struct-1.c: Allow for all i?86-*-*, x86_64-*-*
	targets.
	* gcc.dg/attr-ms_struct-2.c: Likewise.
	* gcc.dg/attr-ms_struct-packed1.c: Likewise.
	* gcc.dg/bf-ms-layout.c: Likewise.
	* gcc.dg/bf-ms-layout-2.c: Likewise.
	* gcc.dg/pic-macro-define.c: Remove target restrictions.
	Require fpic support.
	* gcc.target/i386/bitfield1.c: Allow for all i?86-*-*, x86_64-*-*
	targets.
	* gcc.target/i386/bitfield2.c: Likewise.
	* gcc.target/i386/darwin-fpmath.c: Allow for x86_64-*-darwin*
	targets.
	* gfortran.dg/fmt_pf.f90: Remove i?86-*-solaris2.9* from xfail.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: testsuite-i386-i86-x86_64.patch
Type: text/x-patch
Size: 10264 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/fortran/attachments/20170615/4008b864/attachment.bin>


More information about the Fortran mailing list