From 1bc5aee63eb72b341f506ad058502cd0361f0d10 Mon Sep 17 00:00:00 2001 From: Ben Cheng Date: Tue, 25 Mar 2014 22:37:19 -0700 Subject: Initial checkin of GCC 4.9.0 from trunk (r208799). Change-Id: I48a3c08bb98542aa215912a75f03c0890e497dba --- .../gcc/testsuite/gcc.target/i386/warn-vect-op-1.c | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 gcc-4.9/gcc/testsuite/gcc.target/i386/warn-vect-op-1.c (limited to 'gcc-4.9/gcc/testsuite/gcc.target/i386/warn-vect-op-1.c') diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/warn-vect-op-1.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/warn-vect-op-1.c new file mode 100644 index 000000000..6fecf9262 --- /dev/null +++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/warn-vect-op-1.c @@ -0,0 +1,21 @@ +/* { dg-do compile { target { ! { ia32 } } } } */ +/* { dg-options "-mno-sse -Wvector-operation-performance" } */ +#define vector(elcount, type) \ +__attribute__((vector_size((elcount)*sizeof(type)))) type + +int main (int argc, char *argv[]) +{ + vector (4, int) v0 = {argc, 1, 15, 38}; + vector (4, int) v1 = {-4, argc, 2, 11}; + vector (4, int) res[] = + { + v0 + v1, /* { dg-warning "expanded piecewise" } */ + v0 - v1, /* { dg-warning "expanded piecewise" } */ + v0 > v1, /* { dg-warning "expanded piecewise" } */ + v0 & v1, /* { dg-warning "expanded in parallel" } */ + __builtin_shuffle (v0, v1), /* { dg-warning "expanded piecewise" } */ + __builtin_shuffle (v0, v1, v1) /* { dg-warning "expanded piecewise" } */ + }; + + return res[argc][argc]; +} -- cgit v1.2.3