URL
https://opencores.org/ocsvn/openrisc/openrisc/trunk
Subversion Repositories openrisc
[/] [openrisc/] [trunk/] [gnu-dev/] [or1k-gcc/] [gcc/] [testsuite/] [gcc.target/] [ia64/] [mno-fused-madd-vect.c] - Rev 801
Go to most recent revision | Compare with Previous | Blame | View Log
/* { dg-do compile */ /* { dg-options "-O2 -ffp-contract=off -ftree-vectorize" } */ /* { dg-final { scan-assembler "fpmpy" } } */ /* fpma and fpms will show in either way because there are no specific vector add/sub instructions. So we just check for fpmpy. */ #define N 16 extern bar(float *, float *, float *, float *); void foo() { int i; float a[N], b[N], c[N], d[N]; bar(a,b,c,d); for (i = 0; i < N; i++) { a[i] = b[i] + c[i] * d[i]; } bar(a,b,c,d); for (i = 0; i < N; i++) { a[i] = b[i] - c[i] * d[i]; } bar(a,b,c,d); for (i = 0; i < N; i++) { a[i] = b[i] * c[i] + d[i]; } bar(a,b,c,d); for (i = 0; i < N; i++) { a[i] = b[i] * c[i] - d[i]; } bar(a,b,c,d); }
Go to most recent revision | Compare with Previous | Blame | View Log