#include <fb_whirl.h>

Public Member Functions | |
| FEEDBACK (WN *wn, MEM_POOL *m, INT32 invoke_size=1, INT32 branch_size=1, INT32 loop_size=1, INT32 circuit_size=1, INT32 call_size=1, INT32 switch_size=1, WN_MAP_TAB *maptab=Current_Map_Tab) | |
| void | Reset_Root_WN (WN *root_wn) |
| bool | Same_in_out (const WN *wn) |
| void | FB_set_in_out_same_node (WN *wn) |
| void | FB_set_in_out_same (WN *wn) |
| void | Print (FILE *fp, const WN *wn) const |
| void | Print_with_wn (FILE *fp, WN *wn) const |
| const FB_Info_Invoke & | Query_invoke (const WN *wn) const |
| const FB_Info_Branch & | Query_branch (const WN *wn) const |
| const FB_Info_Loop & | Query_loop (const WN *wn) const |
| const FB_Info_Circuit & | Query_circuit (const WN *wn) const |
| const FB_Info_Call & | Query_call (const WN *wn) const |
| const FB_Info_Switch & | Query_switch (const WN *wn) const |
| FB_FREQ | Query (const WN *wn, const FB_EDGE_TYPE type) const |
| FB_FREQ | Query_prob (const WN *wn, const FB_EDGE_TYPE type) const |
| FB_FREQ | Query_total_out (const WN *wn) const |
| void | Annot_invoke (WN *wn, const FB_Info_Invoke &fb_info) |
| void | Annot_branch (WN *wn, const FB_Info_Branch &fb_info) |
| void | Annot_loop (WN *wn, const FB_Info_Loop &fb_info) |
| void | Annot_circuit (WN *wn, const FB_Info_Circuit &fb_info) |
| void | Annot_call (WN *wn, const FB_Info_Call &fb_info) |
| void | Annot_switch (WN *wn, const FB_Info_Switch &fb_info) |
| void | Annot (WN *wn, const FB_EDGE_TYPE type, FB_FREQ freq) |
| void | Delete (WN *wn) |
| FB_VERIFY_STATUS | Verify (const char *caller=NULL, bool abort_if_error=TRUE) const |
| FB_VERIFY_STATUS | Verify_and_guess (const char *caller=NULL, bool abort_if_error=TRUE) const |
| void | FB_lower_branch (WN *wn_br, WN *wn_branch) |
| void | FB_lower_circuit (WN *wn_cand, WN *wn_left_br, WN *wn_right_br) |
| void | FB_factor_circuit (WN *wn_left, WN *wn_right, WN *wn_outer, WN *wn_inner) |
| void | FB_lower_loop (WN *wn_loop, WN *wn_top_br, WN *wn_back_br) |
| void | FB_lower_loop_alt (WN *wn_loop, WN *wn_top_br) |
| void | FB_lower_while_do_to_do_while (WN *wn_loop, WN *wn_top_br) |
| void | FB_lower_compgoto (WN *wn_compgoto, WN *wn_xgoto, WN *wn_branch) |
| void | FB_lower_call (WN *wn_call, WN *wn_new_call) |
| void | FB_lower_return_val (WN *wn_return_val, WN *wn_return) |
| void | FB_lower_mstore_to_loop (WN *wn_mstore, WN *wn_loop, INT64 nMoves) |
| void | FB_move_goto_out (WN *wn_branch, WN *wn_inner_br, WN *wn_outer_br) |
| void | FB_convert_goto_to_if (WN *wn_branch, WN *wn_if) |
| void | FB_convert_goto_to_loop (WN *wn_branch, WN *wn_loop) |
| void | FB_simplify_branch_to_goto (WN *wn_branch) |
| void | FB_set_zero_node (WN *wn) |
| void | FB_set_zero (WN *wn) |
| void | FB_set_unknown_node (WN *wn) |
| void | FB_set_unknown (WN *wn) |
| void | FB_scale_node (WN *wn, FB_FREQ freq_scale) |
| void | FB_scale (WN *wn, FB_FREQ freq_scale) |
| void | FB_duplicate_node (WN *wn_origl, WN *wn_clone) |
| void | FB_duplicate (WN *wn_origl, WN *wn_clone) |
| void | FB_recombine_node (WN *wn_origl, WN *wn_clone) |
| void | FB_recombine (WN *wn_origl, WN *wn_clone) |
| void | FB_clone_node (WN *wn_origl, WN *wn_clone, FB_FREQ freq_scale) |
| void | FB_clone (WN *wn_origl, WN *wn_clone, FB_FREQ freq_scale) |
| void | FB_clone_loop_test (WN *wn_origl, WN *wn_clone, WN *wn_loop) |
| void | Display_FB_CFG_From_Whirl (const char *caller=NULL) |
Private Member Functions | |
| INT32 | Get_index_invoke (const WN *wn) const |
| INT32 | Get_index_branch (const WN *wn) const |
| INT32 | Get_index_loop (const WN *wn) const |
| INT32 | Get_index_circuit (const WN *wn) const |
| INT32 | Get_index_call (const WN *wn) const |
| INT32 | Get_index_switch (const WN *wn) const |
| INT32 | Add_index_invoke (WN *wn) |
| INT32 | Add_index_branch (WN *wn) |
| INT32 | Add_index_loop (WN *wn) |
| INT32 | Add_index_circuit (WN *wn) |
| INT32 | Add_index_call (WN *wn) |
| INT32 | Add_index_switch (WN *wn) |
| void | FB_clone_test (WN *wn_origl, WN *wn_clone, FB_FREQ freq_origl_taken, FB_FREQ freq_origl_not, FB_FREQ freq_clone_taken, FB_FREQ freq_clone_not) |
Private Attributes | |
| MEM_POOL * | _m |
| WN_MAP_TAB * | _maptab |
| WN * | _root_wn |
| bool | _trace |
| bool | _trace_draw |
| vector< FB_Info_Invoke, mempool_allocator < FB_Info_Invoke > > | _invokes |
| vector< FB_Info_Branch, mempool_allocator < FB_Info_Branch > > | _branches |
| vector< FB_Info_Loop, mempool_allocator < FB_Info_Loop > > | _loops |
| vector< FB_Info_Circuit, mempool_allocator < FB_Info_Circuit > > | _circuits |
| vector< FB_Info_Call, mempool_allocator < FB_Info_Call > > | _calls |
| vector< FB_Info_Switch, mempool_allocator < FB_Info_Switch > > | _switches |
Friends | |
| void | FB_IPA_Clone_node (FEEDBACK *feedback_origl, FEEDBACK *feedback_clone, WN *wn_origl, WN *wn_clone, FB_FREQ freq_scale) |
| void | FB_IPA_Clone (FEEDBACK *feedback_origl, FEEDBACK *feedback_clone, WN *wn_origl, WN *wn_clone, FB_FREQ freq_scale) |
| void | FB_IPA_Clone (FEEDBACK *feedback_origl, FEEDBACK *feedback_clone, WN *wn_origl, WN *wn_clone, float scale) |
| void | FB_IPA_Inline (FEEDBACK *feedback_origl, FEEDBACK *feedback_clone, WN *wn_origl, WN *wn_clone, FB_FREQ freq_scale) |
| void | FB_Transfer_node (FEEDBACK *feedback_origl, FEEDBACK *feedback_new, WN *wn) |
| void | FB_Transfer (FEEDBACK *feedback_origl, FEEDBACK *feedback_new, WN *wn) |
Definition at line 113 of file fb_whirl.h.
| FEEDBACK::FEEDBACK | ( | WN * | wn, | |
| MEM_POOL * | m, | |||
| INT32 | invoke_size = 1, |
|||
| INT32 | branch_size = 1, |
|||
| INT32 | loop_size = 1, |
|||
| INT32 | circuit_size = 1, |
|||
| INT32 | call_size = 1, |
|||
| INT32 | switch_size = 1, |
|||
| WN_MAP_TAB * | maptab = Current_Map_Tab | |||
| ) |
| void FEEDBACK::Annot | ( | WN * | wn, | |
| const FB_EDGE_TYPE | type, | |||
| FB_FREQ | freq | |||
| ) |
| void FEEDBACK::Annot_branch | ( | WN * | wn, | |
| const FB_Info_Branch & | fb_info | |||
| ) |
| void FEEDBACK::Annot_call | ( | WN * | wn, | |
| const FB_Info_Call & | fb_info | |||
| ) |
| void FEEDBACK::Annot_circuit | ( | WN * | wn, | |
| const FB_Info_Circuit & | fb_info | |||
| ) |
| void FEEDBACK::Annot_invoke | ( | WN * | wn, | |
| const FB_Info_Invoke & | fb_info | |||
| ) |
| void FEEDBACK::Annot_loop | ( | WN * | wn, | |
| const FB_Info_Loop & | fb_info | |||
| ) |
| void FEEDBACK::Annot_switch | ( | WN * | wn, | |
| const FB_Info_Switch & | fb_info | |||
| ) |
| void FEEDBACK::Delete | ( | WN * | wn | ) | [inline] |
Definition at line 187 of file fb_whirl.h.
References _maptab, IPA_WN_MAP32_Set(), and WN_MAP_FEEDBACK.

| void FEEDBACK::Display_FB_CFG_From_Whirl | ( | const char * | caller = NULL |
) |
| void FEEDBACK::FB_clone_test | ( | WN * | wn_origl, | |
| WN * | wn_clone, | |||
| FB_FREQ | freq_origl_taken, | |||
| FB_FREQ | freq_origl_not, | |||
| FB_FREQ | freq_clone_taken, | |||
| FB_FREQ | freq_clone_not | |||
| ) | [private] |
| void FEEDBACK::FB_set_in_out_same | ( | WN * | wn | ) |
| void FEEDBACK::FB_set_in_out_same_node | ( | WN * | wn | ) |
| void FEEDBACK::FB_set_unknown | ( | WN * | wn | ) |
| void FEEDBACK::FB_set_unknown_node | ( | WN * | wn | ) |
| void FEEDBACK::FB_set_zero | ( | WN * | wn | ) |
| void FEEDBACK::FB_set_zero_node | ( | WN * | wn | ) |
| void FEEDBACK::FB_simplify_branch_to_goto | ( | WN * | wn_branch | ) |
| void FEEDBACK::Print | ( | FILE * | fp, | |
| const WN * | wn | |||
| ) | const |
| void FEEDBACK::Print_with_wn | ( | FILE * | fp, | |
| WN * | wn | |||
| ) | const |
| FB_FREQ FEEDBACK::Query | ( | const WN * | wn, | |
| const FB_EDGE_TYPE | type | |||
| ) | const |
| const FB_Info_Branch& FEEDBACK::Query_branch | ( | const WN * | wn | ) | const |
| const FB_Info_Call& FEEDBACK::Query_call | ( | const WN * | wn | ) | const |
| const FB_Info_Circuit& FEEDBACK::Query_circuit | ( | const WN * | wn | ) | const |
| const FB_Info_Invoke& FEEDBACK::Query_invoke | ( | const WN * | wn | ) | const |
| const FB_Info_Loop& FEEDBACK::Query_loop | ( | const WN * | wn | ) | const |
| FB_FREQ FEEDBACK::Query_prob | ( | const WN * | wn, | |
| const FB_EDGE_TYPE | type | |||
| ) | const |
| const FB_Info_Switch& FEEDBACK::Query_switch | ( | const WN * | wn | ) | const |
| void FEEDBACK::Reset_Root_WN | ( | WN * | root_wn | ) | [inline] |
| bool FEEDBACK::Same_in_out | ( | const WN * | wn | ) |
| FB_VERIFY_STATUS FEEDBACK::Verify | ( | const char * | caller = NULL, |
|
| bool | abort_if_error = TRUE | |||
| ) | const |
Referenced by Do_WOPT_and_CG_with_Regions(), and Preprocess_PU().
| FB_VERIFY_STATUS FEEDBACK::Verify_and_guess | ( | const char * | caller = NULL, |
|
| bool | abort_if_error = TRUE | |||
| ) | const |
| void FB_IPA_Clone | ( | FEEDBACK * | feedback_origl, | |
| FEEDBACK * | feedback_clone, | |||
| WN * | wn_origl, | |||
| WN * | wn_clone, | |||
| float | scale | |||
| ) | [friend] |
Definition at line 260 of file fb_whirl.h.
| void FB_IPA_Clone | ( | FEEDBACK * | feedback_origl, | |
| FEEDBACK * | feedback_clone, | |||
| WN * | wn_origl, | |||
| WN * | wn_clone, | |||
| FB_FREQ | freq_scale | |||
| ) | [friend] |
| void FB_IPA_Clone_node | ( | FEEDBACK * | feedback_origl, | |
| FEEDBACK * | feedback_clone, | |||
| WN * | wn_origl, | |||
| WN * | wn_clone, | |||
| FB_FREQ | freq_scale | |||
| ) | [friend] |
| void FB_IPA_Inline | ( | FEEDBACK * | feedback_origl, | |
| FEEDBACK * | feedback_clone, | |||
| WN * | wn_origl, | |||
| WN * | wn_clone, | |||
| FB_FREQ | freq_scale | |||
| ) | [friend] |
vector< FB_Info_Branch, mempool_allocator<FB_Info_Branch> > FEEDBACK::_branches [private] |
Definition at line 126 of file fb_whirl.h.
vector< FB_Info_Call, mempool_allocator<FB_Info_Call> > FEEDBACK::_calls [private] |
Definition at line 129 of file fb_whirl.h.
vector< FB_Info_Circuit, mempool_allocator<FB_Info_Circuit> > FEEDBACK::_circuits [private] |
Definition at line 128 of file fb_whirl.h.
vector< FB_Info_Invoke, mempool_allocator<FB_Info_Invoke> > FEEDBACK::_invokes [private] |
Definition at line 125 of file fb_whirl.h.
vector< FB_Info_Loop, mempool_allocator<FB_Info_Loop> > FEEDBACK::_loops [private] |
Definition at line 127 of file fb_whirl.h.
MEM_POOL* FEEDBACK::_m [private] |
Definition at line 116 of file fb_whirl.h.
WN_MAP_TAB* FEEDBACK::_maptab [private] |
WN* FEEDBACK::_root_wn [private] |
vector< FB_Info_Switch, mempool_allocator<FB_Info_Switch> > FEEDBACK::_switches [private] |
Definition at line 130 of file fb_whirl.h.
bool FEEDBACK::_trace [private] |
Definition at line 119 of file fb_whirl.h.
bool FEEDBACK::_trace_draw [private] |
Definition at line 120 of file fb_whirl.h.
1.5.7.1