|
GCC Middle and Back End API Reference
|
#include <tree-ssa-sccvn.h>

Public Member Functions | |
| vn_driver (function *, bool iterate, bool eliminate, bool want_value_ids=false, vn_lookup_kind=VN_WALKREWRITE) | |
| vn_driver (function *, edge entry, bitmap exit_bbs, bool iterate, bool eliminate, bool skip_entry_phis, vn_lookup_kind) | |
| ~vn_driver () | |
| unsigned | finalize (bitmap inserted_exprs=NULL) |
| unsigned | todo () const |
Private Member Functions | |
| DISABLE_COPY_AND_ASSIGN (vn_driver) | |
Private Attributes | |
| class rpo_elim * | m_avail |
| int * | m_bb_to_rpo |
| unsigned | m_todo |
| bool | m_eliminate |
Value-numbers a function or a region.
| vn_driver::vn_driver | ( | function * | fn, |
| bool | iterate, | ||
| bool | eliminate, | ||
| bool | want_value_ids = false, | ||
| vn_lookup_kind | kind = VN_WALKREWRITE ) |
References assign_value_ids(), false, NULL, and vn_driver().
Referenced by DISABLE_COPY_AND_ASSIGN(), and vn_driver().
| vn_driver::vn_driver | ( | function * | fn, |
| edge | entry, | ||
| bitmap | exit_bbs, | ||
| bool | iterate, | ||
| bool | eliminate, | ||
| bool | skip_entry_phis, | ||
| vn_lookup_kind | kind ) |
Value-number the region ENTRY leads into, which exits to EXIT_BBS, or all of FN if ENTRY is NULL.
References do_rpo_vn_1(), ENTRY_BLOCK_PTR_FOR_FN, last_basic_block_for_fn, m_avail, m_bb_to_rpo, m_eliminate, m_todo, rpo_elim::rpo_elim(), and single_succ().
| vn_driver::~vn_driver | ( | ) |
References free_rpo_vn(), m_avail, and m_bb_to_rpo.
|
private |
References vn_driver().
Finish elimination and return the TODO flags.
References eliminate_with_rpo_vn(), m_avail, m_bb_to_rpo, m_eliminate, m_todo, NULL, rpo_avail, rpo_vn_valueize(), todo(), vn_bb_to_rpo, and vn_valueize.
Referenced by do_rpo_vn().
|
inline |
References m_todo.
Referenced by do_rpo_vn(), and finalize().
|
private |
Referenced by finalize(), vn_driver(), and ~vn_driver().
|
private |
Referenced by finalize(), vn_driver(), and ~vn_driver().
|
private |
Referenced by finalize(), and vn_driver().
|
private |
Referenced by finalize(), todo(), and vn_driver().