diff options
author | Cary Coutant <ccoutant@google.com> | 2009-06-04 23:12:27 +0000 |
---|---|---|
committer | Cary Coutant <ccoutant@gcc.gnu.org> | 2009-06-04 16:12:27 -0700 |
commit | 6c52e687e487eb5bfc57399754d72e05845159d8 (patch) | |
tree | 62b2a3883be83cd19685457df195f788da6d5d99 /gcc/basic-block.h | |
parent | 535ff342b76110501c8673df1ae44db5e6ea55b4 (diff) | |
download | gcc-6c52e687e487eb5bfc57399754d72e05845159d8.tar.gz |
basic-block.h (struct basic_block_def): Add discriminator field.
* basic-block.h (struct basic_block_def): Add discriminator field.
* dbxout.c (dbxout_source_line): Add new parameter. Change all
callers.
* debug.c (do_nothing_debug_hooks): Add additional entry.
(debug_nothing_int_charstar_int): New function.
* debug.h (struct gcc_debug_hooks): Add parameter to source_line
hook.
(debug_nothing_int_charstar_int): New declaration.
* dwarf2out.c (dwarf2out_source_line): Add new parameter. Write
discriminator value in .loc directive.
* final.c (last_discriminator): New variable.
(discriminator): New variable.
(final_start_function): Initialize above variables, pass current
discriminator to debug hook.
(notice_source_line): Check for discriminator change.
* gimple-pretty-print.c (dump_bb_header): Print discriminator value.
* sdbout.c (sdbout_source_line): New parameter.
* tree-cfg.c (struct locus_discrim_map): New structure type.
(discriminator_per_locus): New hash table.
(build_gimple_cfg): Allocate and free discriminator hash table.
(make_edges): Call assign_discriminator.
(locus_map_hash): New function.
(locus_map_eq): New function.
(next_discriminator_for_locus): New function.
(same_line_p): New function.
(assign_discriminator): New function.
(make_cond_expr_edges): Call assign_discriminator.
(make_gimple_switch_edges): Likewise.
(first_non_label_stmt): New function.
* vmsdbgout.c (vmsdbgout_source_line): Add new parameter. Change
all callers.
* xcoffout.c (xcoffout_source_line): Add new parameter.
* configure.ac (gcc_cv_as_discriminator): New configury check for
gas support for discriminator.
* configure: Regenerate.
* config.in: Regenerate.
From-SVN: r148191
Diffstat (limited to 'gcc/basic-block.h')
-rw-r--r-- | gcc/basic-block.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/basic-block.h b/gcc/basic-block.h index 41d9f9514cb..901845a686d 100644 --- a/gcc/basic-block.h +++ b/gcc/basic-block.h @@ -249,6 +249,9 @@ struct GTY((chain_next ("%h.next_bb"), chain_prev ("%h.prev_bb"))) basic_block_d /* Expected frequency. Normalized to be in range 0 to BB_FREQ_MAX. */ int frequency; + /* The discriminator for this block. */ + int discriminator; + /* Various flags. See BB_* below. */ int flags; }; |