aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/lib-xref-spark_specific.adb
diff options
context:
space:
mode:
authorMartin Liska <mliska@suse.cz>2017-11-09 10:11:17 +0100
committerMartin Liska <marxin@gcc.gnu.org>2017-11-09 09:11:17 +0000
commit136ca74eb91c225ff18a7b08e0e7fd027b88517c (patch)
tree3d35f88384d1fc66a1a463a1b060b85bc366a37d /gcc/ada/lib-xref-spark_specific.adb
parent6bc322a11bec51aceb463fb2336198645dca993f (diff)
downloadgcc-136ca74eb91c225ff18a7b08e0e7fd027b88517c.zip
gcc-136ca74eb91c225ff18a7b08e0e7fd027b88517c.tar.gz
gcc-136ca74eb91c225ff18a7b08e0e7fd027b88517c.tar.bz2
GCOV: support multiple functions per a line (PR gcov-profile/48463)
2017-11-09 Martin Liska <mliska@suse.cz> PR gcov-profile/48463 * coverage.c (coverage_begin_function): Output also end locus of a function and information whether the function is artificial. * gcov-dump.c (tag_function): Parse and print the information. * gcov.c (INCLUDE_MAP): Add include. (INCLUDE_SET): Likewise. (struct line_info): Move earlier in the source file because of vector<line_info> in function_info structure. (line_info::line_info): Likewise. (line_info::has_block): Likewise. (struct source_info): Add new member index. (source_info::get_functions_at_location): New function. (function_info::group_line_p): New function. (output_intermediate_line): New function. (output_intermediate_file): Use the mentioned function. (struct function_start): New. (struct function_start_pair_hash): Likewise. (process_file): Add code that identifies group functions. Assign lines either to global or function scope. (generate_results): Skip artificial functions. (find_source): Assign index for each source file. (read_graph_file): Read new flag artificial and end_line. (add_line_counts): Assign it either to global of function scope. (accumulate_line_counts): Isolate core of the function to accumulate_line_info and call it for both function and global scope lines. (accumulate_line_info): New function. (output_line_beginning): Fix GNU coding style. (print_source_line): New function. (output_line_details): Likewise. (output_function_details): Likewise. (output_lines): Iterate both source (global) scope and function scope. (struct function_line_start_cmp): New class. * doc/gcov.texi: Reflect changes in documentation. From-SVN: r254562
Diffstat (limited to 'gcc/ada/lib-xref-spark_specific.adb')
0 files changed, 0 insertions, 0 deletions