]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
Simple test of call return percentages along with branch percentages and
authorJanis Johnson <janis@gcc.gnu.org>
Thu, 6 Sep 2001 23:29:35 +0000 (23:29 +0000)
committerJanis Johnson <janis@gcc.gnu.org>
Thu, 6 Sep 2001 23:29:35 +0000 (23:29 +0000)
line counts.

From-SVN: r45454

gcc/testsuite/gcc.misc-tests/gcov-6.c [new file with mode: 0644]

diff --git a/gcc/testsuite/gcc.misc-tests/gcov-6.c b/gcc/testsuite/gcc.misc-tests/gcov-6.c
new file mode 100644 (file)
index 0000000..34680d3
--- /dev/null
@@ -0,0 +1,37 @@
+/* Check that call return percentages are reported correctly by gcov,
+   along with line counts and branch percentages.  This test case is
+   meant to be simple, as it was added at the same time that checking
+   for call return percentages was added.  */
+
+/* { dg-options "-fprofile-arcs -ftest-coverage" } */
+/* { dg-do run { target native } } */
+
+int val;
+
+void
+foo (int i)
+{
+                                       /* branch(80) */
+  if (i < 0)                           /* count(5) */
+                                       /* branch(end) */
+                                       /* returns(0) */
+    exit (0);                          /* count(1) */
+                                       /* returns(end) */
+  val += i;                            /* count(4) */
+}
+
+int
+main()
+{
+  int i;
+
+                                       /* returns(100) */
+  foo (100);                           /* count(1) */
+                                       /* returns(end) */
+  for (i = 2; i > -10; i--)
+                                       /* returns(75) */
+    foo (i);                           /* count(4) */
+                                       /* returns(end) */
+}
+
+/* { dg-final { run-gcov -b gcov-6.c } } */