[patch testsuite gcc.target/i386 gcc.dg]: PR/44159 and x64 ABI specific adjustments

Ian Lance Taylor ian@airs.com
Sun Jun 6 21:03:00 GMT 2010


Kai Tietz <ktietz70@googlemail.com> writes:

>>> this patch address PR/44159. For x64 ABI there are register-saves, which
>>> can lead to the case that the cpuid check comes after first use of
>>> architecture-dependent instructions. I fixed this by taking care that the
>>> test does not inline into main function.
>>> Rest are adjustments about LLP64 target.
>>>
>>> gcc/testsuite
>>> 2010-06-01  Kai Tietz
>>>
>>>        PR target/44159
>>>        * gcc.target/i386/abi-2.c: Check sysv abi here.
>>>        * gcc.target/i386/aes-avx-check.h: Call test in noinline
>>>        function to avoid failures by different ABIs.
>>>        * gcc.target/i386/aes-check.h: Likewise.
>>>        * gcc.target/i386/avx-check.h: Likewise.
>>>        * gcc.target/i386/fma4-check.h: Likewise.
>>>        * gcc.target/i386/mmx-3dnow-check.h: Likewise.
>>>        * gcc.target/i386/mmx-check.h: Likewise.
>>>        * gcc.target/i386/pclmul-avx-check.h: Likewise.
>>>        * gcc.target/i386/pclmul-check.h: Likewise.
>>>        * gcc.target/i386/sse-check.h: Likewise.
>>>        * gcc.target/i386/sse2-check.h: Likewise.
>>>        * gcc.target/i386/sse3-check.h: Likewise.
>>>        * gcc.target/i386/sse4_1-check.h: Likewise.
>>>        * gcc.target/i386/sse4_2-check.h: Likewise.
>>>        * gcc.target/i386/sse4a-check.h: Likewise.
>>>        * gcc.target/i386/ssse3-check.h: Likewise.
>>>        * gcc.target/i386/xop-check.h: Likewise.
>>>
>>> gcc/testsuite
>>> 2010-06-01  Kai Tietz
>>>
>>>        * gcc.dg/compound-literal-1.c: Fix for llp64.
>>>        * gcc.dg/pr32370.c: Likewise.
>>>        * gcc.dg/pr37561.c: Likewise.
>>>        * gcc.dg/pr41340.c: Likewise.
>>>        * gcc.dg/pr41551.c: Likewise.
>>>        * gcc.target/i386/pr27971.c: Fix for LLP64.
>>>        * gcc.target/i386/pr39139.c: Likewise.
>>>        * gcc.target/i386/pr39315-check.c: Likewise.
>>>        * gcc.target/i386/vararg-1.c: Likewise.
>>>        * gcc.target/i386/vararg-2.c: Likewise.
>>>        Additional add dg-compile to avoid failure due
>>>        missing foo symbol.


> Index: gcc/gcc/testsuite/gcc.dg/pr41340.c
> ===================================================================
> --- gcc.orig/gcc/testsuite/gcc.dg/pr41340.c	2010-06-01 10:07:47.979396000 +0200
> +++ gcc/gcc/testsuite/gcc.dg/pr41340.c	2010-06-01 10:18:26.512525300 +0200
> @@ -10,6 +10,10 @@ struct S2 { struct S1 s2; };
>  struct S3 { unsigned s3; struct S2 **s4; };
>  struct S5 { struct S2 *s5; };
> 
> +#define unsigned
> +__extension__ typedef __SIZE_TYPE__ ssize_t;
> +#undef unsigned

Use __INTPTR_TYPE__ rather than __SIZE_TYPE__.  Don't play games with
#defining unsigned.


This is OK with those changes.

Thanks.

Ian



More information about the Gcc-patches mailing list