aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.9/gcc/testsuite/gcc.dg/tree-ssa/ifc-20040816-2.c
diff options
context:
space:
mode:
authorBen Cheng <bccheng@google.com>2014-03-25 22:37:19 -0700
committerBen Cheng <bccheng@google.com>2014-03-25 22:37:19 -0700
commit1bc5aee63eb72b341f506ad058502cd0361f0d10 (patch)
treec607e8252f3405424ff15bc2d00aa38dadbb2518 /gcc-4.9/gcc/testsuite/gcc.dg/tree-ssa/ifc-20040816-2.c
parent283a0bf58fcf333c58a2a92c3ebbc41fb9eb1fdb (diff)
downloadtoolchain_gcc-1bc5aee63eb72b341f506ad058502cd0361f0d10.tar.gz
toolchain_gcc-1bc5aee63eb72b341f506ad058502cd0361f0d10.tar.bz2
toolchain_gcc-1bc5aee63eb72b341f506ad058502cd0361f0d10.zip
Initial checkin of GCC 4.9.0 from trunk (r208799).
Change-Id: I48a3c08bb98542aa215912a75f03c0890e497dba
Diffstat (limited to 'gcc-4.9/gcc/testsuite/gcc.dg/tree-ssa/ifc-20040816-2.c')
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.dg/tree-ssa/ifc-20040816-2.c40
1 files changed, 40 insertions, 0 deletions
diff --git a/gcc-4.9/gcc/testsuite/gcc.dg/tree-ssa/ifc-20040816-2.c b/gcc-4.9/gcc/testsuite/gcc.dg/tree-ssa/ifc-20040816-2.c
new file mode 100644
index 000000000..f37a4d336
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.dg/tree-ssa/ifc-20040816-2.c
@@ -0,0 +1,40 @@
+/* { dg-do compile } */
+/* { dg-options "-c -O2 -ftree-vectorize -fdump-tree-ifcvt-stats" { target *-*-* } } */
+
+void foo(const int * __restrict__ zr_in,
+ const int * __restrict__ zi_in,
+ const int * __restrict__ zk_in,
+ int * __restrict__ zr_out,
+ int * __restrict__ zi_out,
+ int * __restrict__ zk_out,
+ int cr, int ci)
+{
+ unsigned int pi;
+ int tmp_r, tmp_i, tmp_k;
+#if __SIZEOF_INT__ >= 4
+ for (pi = 0; pi < (512)*(512); pi++) {
+#else
+ for (pi = 0; pi < (32)*(32); pi++) {
+#endif
+ int zr = zr_in[pi];
+ int zi = zi_in[pi];
+ int zk = zk_in[pi];
+
+ if (zr*zr + zi*zi >= 4) {
+ tmp_r = zr;
+ tmp_i = zi;
+ tmp_k = zk;
+ } else {
+ tmp_r = (zr*zr - zi*zi + cr);
+ tmp_i = (2 * zr * zi + ci);
+ tmp_k = zk + 1;
+ }
+ zr_out[pi] = tmp_r;
+ zi_out[pi] = tmp_i;
+ zk_out[pi] = tmp_k;
+ }
+}
+
+
+/* { dg-final { scan-tree-dump-times "Applying if-conversion" 1 "ifcvt" } } */
+/* { dg-final { cleanup-tree-dump "ifcvt" } } */