From 64f3bd690c9bfe6b1a2e713686a91b75be8b41be Mon Sep 17 00:00:00 2001 From: janis Date: Thu, 6 Sep 2001 23:29:35 +0000 Subject: [PATCH] Simple test of call return percentages along with branch percentages and line counts. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@45454 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/testsuite/gcc.misc-tests/gcov-6.c | 37 +++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 gcc/testsuite/gcc.misc-tests/gcov-6.c diff --git a/gcc/testsuite/gcc.misc-tests/gcov-6.c b/gcc/testsuite/gcc.misc-tests/gcov-6.c new file mode 100644 index 0000000..34680d3 --- /dev/null +++ b/gcc/testsuite/gcc.misc-tests/gcov-6.c @@ -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 } } */ -- 2.7.4