From f210ecfb2f6213ddad41ef5ea3ac979bbedd1a3b Mon Sep 17 00:00:00 2001 From: Adam Nemet Date: Wed, 5 Sep 2007 19:56:39 +0000 Subject: [PATCH] builtin-expect-1.c: New test. * gcc.dg/tree-ssa/builtin-expect-1.c: New test. * gcc.dg/tree-ssa/builtin-expect-2.c: New test. * gcc.dg/tree-ssa/builtin-expect-3.c: New test. * gcc.dg/tree-ssa/builtin-expect-4.c: New test. * gcc.dg/tree-ssa/builtin-expect-5.c: New test. From-SVN: r128148 --- gcc/testsuite/ChangeLog | 8 ++++++++ gcc/testsuite/gcc.dg/tree-ssa/builtin-expect-1.c | 11 +++++++++++ gcc/testsuite/gcc.dg/tree-ssa/builtin-expect-2.c | 13 +++++++++++++ gcc/testsuite/gcc.dg/tree-ssa/builtin-expect-3.c | 13 +++++++++++++ gcc/testsuite/gcc.dg/tree-ssa/builtin-expect-4.c | 13 +++++++++++++ gcc/testsuite/gcc.dg/tree-ssa/builtin-expect-5.c | 15 +++++++++++++++ 6 files changed, 73 insertions(+) create mode 100644 gcc/testsuite/gcc.dg/tree-ssa/builtin-expect-1.c create mode 100644 gcc/testsuite/gcc.dg/tree-ssa/builtin-expect-2.c create mode 100644 gcc/testsuite/gcc.dg/tree-ssa/builtin-expect-3.c create mode 100644 gcc/testsuite/gcc.dg/tree-ssa/builtin-expect-4.c create mode 100644 gcc/testsuite/gcc.dg/tree-ssa/builtin-expect-5.c diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 242a36365f4..aeaad7277a5 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,11 @@ +2007-09-05 Adam Nemet + + * gcc.dg/tree-ssa/builtin-expect-1.c: New test. + * gcc.dg/tree-ssa/builtin-expect-2.c: New test. + * gcc.dg/tree-ssa/builtin-expect-3.c: New test. + * gcc.dg/tree-ssa/builtin-expect-4.c: New test. + * gcc.dg/tree-ssa/builtin-expect-5.c: New test. + 2007-09-05 Paolo Carlini PR c++/30302 diff --git a/gcc/testsuite/gcc.dg/tree-ssa/builtin-expect-1.c b/gcc/testsuite/gcc.dg/tree-ssa/builtin-expect-1.c new file mode 100644 index 00000000000..42d4b0dd874 --- /dev/null +++ b/gcc/testsuite/gcc.dg/tree-ssa/builtin-expect-1.c @@ -0,0 +1,11 @@ +/* { dg-do compile } */ +/* { dg-options "-O2 -fdump-tree-gimple" } */ + +f (int i, float j) +{ + if (__builtin_expect (i > 0 && j, 0)) + g (); +} + +/* { dg-final { scan-tree-dump-times {builtin_expect[^\n]*, 0\);\n[^\n]*if} 2 "gimple"} } */ +/* { dg-final { cleanup-tree-dump "gimple" } } */ diff --git a/gcc/testsuite/gcc.dg/tree-ssa/builtin-expect-2.c b/gcc/testsuite/gcc.dg/tree-ssa/builtin-expect-2.c new file mode 100644 index 00000000000..ff175b975a9 --- /dev/null +++ b/gcc/testsuite/gcc.dg/tree-ssa/builtin-expect-2.c @@ -0,0 +1,13 @@ +/* { dg-do compile } */ +/* { dg-options "-O2 -fdump-tree-gimple" } */ + +f (int i, float j) +{ + if (__builtin_expect (i > 0 || j, 0)) + ; + else + g (); +} + +/* { dg-final { scan-tree-dump-times {builtin_expect[^\n]*, 0\);\n[^\n]*if} 2 "gimple"} } */ +/* { dg-final { cleanup-tree-dump "gimple" } } */ diff --git a/gcc/testsuite/gcc.dg/tree-ssa/builtin-expect-3.c b/gcc/testsuite/gcc.dg/tree-ssa/builtin-expect-3.c new file mode 100644 index 00000000000..8fcc4e2bd40 --- /dev/null +++ b/gcc/testsuite/gcc.dg/tree-ssa/builtin-expect-3.c @@ -0,0 +1,13 @@ +/* { dg-do compile } */ +/* { dg-options "-O2 -fdump-tree-gimple" } */ + +f (int i, float j) +{ + if (__builtin_expect (i > 0 && j, 0)) + a (); + else + b (); +} + +/* { dg-final { scan-tree-dump-times {builtin_expect[^\n]*, 0\);\n[^\n]*if} 2 "gimple"} } */ +/* { dg-final { cleanup-tree-dump "gimple" } } */ diff --git a/gcc/testsuite/gcc.dg/tree-ssa/builtin-expect-4.c b/gcc/testsuite/gcc.dg/tree-ssa/builtin-expect-4.c new file mode 100644 index 00000000000..1fecf1b980c --- /dev/null +++ b/gcc/testsuite/gcc.dg/tree-ssa/builtin-expect-4.c @@ -0,0 +1,13 @@ +/* { dg-do compile } */ +/* { dg-options "-O2 -fdump-tree-gimple" } */ + +f (int i, float j) +{ + if (__builtin_expect (i > 0 || j, 0)) + a (); + else + b (); +} + +/* { dg-final { scan-tree-dump-times {builtin_expect[^\n]*, 0\);\n[^\n]*if} 2 "gimple"} } */ +/* { dg-final { cleanup-tree-dump "gimple" } } */ diff --git a/gcc/testsuite/gcc.dg/tree-ssa/builtin-expect-5.c b/gcc/testsuite/gcc.dg/tree-ssa/builtin-expect-5.c new file mode 100644 index 00000000000..ed53b287b2a --- /dev/null +++ b/gcc/testsuite/gcc.dg/tree-ssa/builtin-expect-5.c @@ -0,0 +1,15 @@ +/* { dg-do compile } */ +/* { dg-options "-O2 -fdump-tree-forwprop" } */ + +f (int i, float j) +{ + if (__builtin_expect (i > 0 && __builtin_expect (j != 0, 1), 0)) + a (); + else + b (); +} + +/* { dg-final { scan-tree-dump-times { if } 2 "forwprop1"} } */ +/* { dg-final { scan-tree-dump {builtin_expect[^\n]*, 0\);\n[^\n]*if} "forwprop1"} } */ +/* { dg-final { scan-tree-dump {builtin_expect[^\n]*, 1\);\n[^\n]*if} "forwprop1"} } */ +/* { dg-final { cleanup-tree-dump "forwprop?" } } */