Commit 9251175f by Daniel Jacobowitz Committed by Nathan Froyd

ppc-spe.c: Compile for all EABI targets.

	* gcc.target/powerpc/ppc-spe.c: Compile for all EABI targets.
	Explicitly enable SPE.
	* gcc.target/powerpc/20030505.c: Likewise.  Add dg-message
	directive.

	* gcc.target/powerpc/20030218-1.c: Pass -mfloat-gprs=single.
	Expect -flax-vector-conversions message.  Adjust incompatible
	types errors.
	* gcc.target/powerpc/spe1.c: Pass -mspe and -mfloat-gprs=single.
	Make Foo extern.

	* gcc.dg/cpp/assert4.c: Recognize __PPC__.

	* g++.dg/other/opaque-1.C: Run on targets with SPE.

	* g++.dg/ext/spe-1.C: Pass -mspe and -mfloat-gprs=single.
	* g++.dg/other/opaque-2.C: Likewise.
	* g++.dg/other/opaque-3.C: Likewise.

From-SVN: r143307
parent 33faafca
2009-01-12 Daniel Jacobowitz <dan@codesourcery.com>
* gcc.target/powerpc/ppc-spe.c: Compile for all EABI targets.
Explicitly enable SPE.
* gcc.target/powerpc/20030505.c: Likewise. Add dg-message
directive.
* gcc.target/powerpc/20030218-1.c: Pass -mfloat-gprs=single.
Expect -flax-vector-conversions message. Adjust incompatible
types errors.
* gcc.target/powerpc/spe1.c: Pass -mspe and -mfloat-gprs=single.
Make Foo extern.
* gcc.dg/cpp/assert4.c: Recognize __PPC__.
* g++.dg/other/opaque-1.C: Run on targets with SPE.
* g++.dg/ext/spe-1.C: Pass -mspe and -mfloat-gprs=single.
* g++.dg/other/opaque-2.C: Likewise.
* g++.dg/other/opaque-3.C: Likewise.
2009-01-12 Jakub Jelinek <jakub@redhat.com> 2009-01-12 Jakub Jelinek <jakub@redhat.com>
PR c/32041 PR c/32041
......
/* { dg-do compile { target powerpc-*-eabi* } } */ /* { dg-do compile { target powerpc-*-eabi* } } */
/* { dg-options "-mcpu=8540 -mabi=spe -O0" } */ /* { dg-options "-mcpu=8540 -mspe -mabi=spe -mfloat-gprs=single -O0" } */
typedef int v2si __attribute__ ((vector_size (8))); typedef int v2si __attribute__ ((vector_size (8)));
......
/* { dg-do run { target powerpc-*-eabispe* powerpc*-*-linux*spe* } } */ /* { dg-do run { target { powerpc*-*-* && powerpc_spe } } } */
#define __vector __attribute__((vector_size(8))) #define __vector __attribute__((vector_size(8)))
typedef float __vector __ev64_fs__; typedef float __vector __ev64_fs__;
......
/* { dg-do compile { target powerpc-*-eabi* powerpc*-*-linux*spe* } } */ /* { dg-do compile { target powerpc-*-eabi* powerpc*-*-linux*spe* } } */
/* { dg-options "-mcpu=8540 -mabi=spe" } */ /* { dg-options "-mcpu=8540 -mspe -mabi=spe -mfloat-gprs=single" } */
#define __vector __attribute__((vector_size(8))) #define __vector __attribute__((vector_size(8)))
typedef float __vector __ev64_fs__; typedef float __vector __ev64_fs__;
......
/* { dg-do compile { target powerpc-*-eabi* powerpc*-*-linux*spe* } } */ /* { dg-do compile { target powerpc-*-eabi* powerpc*-*-linux*spe* } } */
/* { dg-options "-mcpu=8540 -mabi=spe" } */ /* { dg-options "-mcpu=8540 -mspe -mabi=spe -mfloat-gprs=single" } */
__ev64_opaque__ o; __ev64_opaque__ o;
#define v __attribute__((vector_size(8))) #define v __attribute__((vector_size(8)))
......
...@@ -313,7 +313,7 @@ ...@@ -313,7 +313,7 @@
# error # error
#endif #endif
#if defined __powerpc__ #if defined __powerpc__ || defined __PPC__
# if defined __powerpc64__ # if defined __powerpc64__
# if (#cpu(powerpc) || #machine(powerpc) \ # if (#cpu(powerpc) || #machine(powerpc) \
|| !#cpu(powerpc64) || !#machine(powerpc64)) || !#cpu(powerpc64) || !#machine(powerpc64))
......
/* { dg-do compile { target powerpc-*-eabi* } } */ /* { dg-do compile { target powerpc-*-eabi* } } */
/* { dg-options "-mspe=yes" } */ /* { dg-options "-mspe=yes -mfloat-gprs=single" } */
/* Test vectors that can interconvert without a cast. */ /* Test vectors that can interconvert without a cast. */
...@@ -15,10 +15,11 @@ main (void) ...@@ -15,10 +15,11 @@ main (void)
opp = vfloat; opp = vfloat;
vshort = opp; vshort = opp;
vfloat = vshort; /* { dg-error "incompatible types in assignment" } */ vfloat = vshort; /* { dg-error "incompatible types when assigning" } */
/* Just because this is a V2SI, it doesn't make it an opaque. */ /* Just because this is a V2SI, it doesn't make it an opaque. */
vint = vshort; /* { dg-error "incompatible types in assignment" } */ vint = vshort; /* { dg-message "note: use -flax-vector-conversions to permit conversions between vectors with differing element types or numbers of subparts" } */
/* { dg-error "incompatible types when assigning" "" { target *-*-* } 21 } */
return 0; return 0;
} }
/* { dg-do compile { target powerpc-*-eabispe* } } */ /* { dg-do compile { target powerpc-*-eabi* } } */
/* { dg-options "-W" } */ /* { dg-options "-W -mcpu=8540 -mspe -mabi=spe -mfloat-gprs=single" } */
#define __vector __attribute__((vector_size(8))) #define __vector __attribute__((vector_size(8)))
...@@ -9,7 +9,7 @@ __ev64_opaque__ *p1; ...@@ -9,7 +9,7 @@ __ev64_opaque__ *p1;
__ev64_fs__ *p2; __ev64_fs__ *p2;
int *x; int *x;
extern void f (__ev64_opaque__ *); extern void f (__ev64_opaque__ *); /* { dg-message "expected.*but argument is of type" } */
int main () int main ()
{ {
......
/* { dg-do compile { target powerpc-*-eabispe } } */ /* { dg-do compile { target powerpc-*-eabi* } } */
/* { dg-options "-mcpu=8540 -mabi=spe -O0" } */ /* { dg-options "-mcpu=8540 -mspe -mabi=spe -mfloat-gprs=single -O0" } */
/* (Test with -O0 so we don't optimize any of them away). */ /* (Test with -O0 so we don't optimize any of them away). */
......
/* { dg-do compile { target powerpc-*-eabi* } } */ /* { dg-do compile { target powerpc-*-eabi* } } */
/* { dg-options "-mcpu=8540 -mabi=spe -O0" } */ /* { dg-options "-mcpu=8540 -mspe -mabi=spe -mfloat-gprs=single -O0" } */
/* (Test with -O0 so we don't optimize any of them away). */ /* (Test with -O0 so we don't optimize any of them away). */
typedef float __attribute__((vector_size(8))) __ev64_fs__; typedef float __attribute__((vector_size(8))) __ev64_fs__;
static __ev64_opaque__ Foo (void); __ev64_opaque__ Foo (void);
void Bar () void Bar ()
{ {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment