mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-12-22 11:39:35 +00:00
d4d9c257e0
Add support for switch and indirectbr edges. This works by densely numbering all blocks which have such terminators, and then separately numbering the possible successors. The predecessors write down a number, the successor knows its own number (as a ConstantInt) and sends that and the pointer to the number the predecessor wrote down to the runtime, who looks up the counter in a per-function table. Coverage data should now be functional, but I haven't tested it on anything other than my 2-file synthetic test program for coverage. llvm-svn: 130186
13 lines
309 B
Plaintext
13 lines
309 B
Plaintext
llvm_start_edge_profiling
|
|
llvm_start_opt_edge_profiling
|
|
llvm_start_path_profiling
|
|
llvm_start_basic_block_tracing
|
|
llvm_trace_basic_block
|
|
llvm_increment_path_count
|
|
llvm_decrement_path_count
|
|
llvm_gcda_start_file
|
|
llvm_gcda_increment_indirect_counter
|
|
llvm_gcda_emit_function
|
|
llvm_gcda_emit_arcs
|
|
llvm_gcda_end_file
|