summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.dg/tree-ssa/pr32681.c
diff options
context:
space:
mode:
authoruros <uros@138bc75d-0d04-0410-961f-82ee72b054a4>2007-07-09 13:00:19 +0000
committeruros <uros@138bc75d-0d04-0410-961f-82ee72b054a4>2007-07-09 13:00:19 +0000
commit0b6a85ecb520285f1c7e8a25b43c49bec3f98464 (patch)
tree5a8686dc82a58fef1371445e8ca7a4c1722b4d48 /gcc/testsuite/gcc.dg/tree-ssa/pr32681.c
parentce9e1d34f3851eb3aa3d69fd08c7601427798b40 (diff)
downloadgcc-0b6a85ecb520285f1c7e8a25b43c49bec3f98464.tar.gz
PR tree-optimization/32681
* tree-if-conv.c (find_phi_replacement_condition): Use the condition saved in second_edge->aux when first_bb is a loop header. testsuite/ChangeLog: PR tree-optimization/32681 * gcc.dg/tree-ssa/pr32681.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126482 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/testsuite/gcc.dg/tree-ssa/pr32681.c')
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/pr32681.c21
1 files changed, 21 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/pr32681.c b/gcc/testsuite/gcc.dg/tree-ssa/pr32681.c
new file mode 100644
index 00000000000..2352342443b
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/tree-ssa/pr32681.c
@@ -0,0 +1,21 @@
+/* { dg-do compile } */
+/* { dg-options "-O3 -ffast-math -ftree-vectorize" } */
+/* { dg-options "-O3 -ffast-math -ftree-vectorize -march=nocona" { target { i?86-*-* x86_64-*-* } } } */
+
+int aa_renderpalette (int p)
+{
+ int y = 42;
+ int i;
+
+ for (i = 0; i < 256; i++)
+ {
+ if (y > 255)
+ y = 255;
+ if (y < 0)
+ y = 0;
+
+ if (p)
+ y = (y < p ? 0 : (y > p) * 255 / (255 - 2 * p));
+ }
+ return y;
+}