diff options
author | nathan <nathan@138bc75d-0d04-0410-961f-82ee72b054a4> | 2011-12-02 20:32:40 +0000 |
---|---|---|
committer | nathan <nathan@138bc75d-0d04-0410-961f-82ee72b054a4> | 2011-12-02 20:32:40 +0000 |
commit | 87ddc00c5ea657a444085cbc2424224dea27f66d (patch) | |
tree | 8ef74f6b3ac710dbaffba4b31b1cf46d2bbf5382 /gcc/gcov-dump.c | |
parent | 2178b2284c0b59b1800b3beea9948cabd0143b42 (diff) | |
download | gcc-87ddc00c5ea657a444085cbc2424224dea27f66d.tar.gz |
* gcov.c (struct arc_info): Add is_throw field.
(struct (block_info): Add exceptional field, reduce flags size to
account for it.
(struct function_info): Add has_catch field.
(struct line_info): Add unexceptional field.
(process_file): Call find_exception_blocks if necessary.
(read_graph_file): Adjust. Note if an exceptional edge is seen.
(find_exception_blocks): New.
(add_line_counts): Set line's unexceptional flag if not
exceptional.
(output_branch_count): Note exceptional arcs, lines and blocks.
* gcov-dump.c (tag_arcs): Decode arc flags.
* doc/gcov.texi: Document '=====' lines.
testsuite/
* lib/gcov.exp (verify-lines): Allow = as a count char.
* g++.dg/gcov/gcov-13.C: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181949 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/gcov-dump.c')
-rw-r--r-- | gcc/gcov-dump.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/gcc/gcov-dump.c b/gcc/gcov-dump.c index a6c5b33c622..4c2913b4d96 100644 --- a/gcc/gcov-dump.c +++ b/gcc/gcov-dump.c @@ -351,6 +351,18 @@ tag_arcs (const char *filename ATTRIBUTE_UNUSED, dst = gcov_read_unsigned (); flags = gcov_read_unsigned (); printf (" %u:%04x", dst, flags); + if (flags) + { + char c = '('; + + if (flags & GCOV_ARC_ON_TREE) + printf ("%ctree", c), c = ','; + if (flags & GCOV_ARC_FAKE) + printf ("%cfake", c), c = ','; + if (flags & GCOV_ARC_FALLTHROUGH) + printf ("%cfall", c), c = ','; + printf (")"); + } } } } |