PandA-2024.02
|
#include <function_frontend_flow_step.hpp>
Public Member Functions | |
FunctionFrontendFlowStep (const application_managerRef AppM, const unsigned int function_id, const FrontendFlowStepType frontend_flow_step_type, const DesignFlowManagerConstRef design_flow_manager, const ParameterConstRef parameters) | |
Constructor. More... | |
~FunctionFrontendFlowStep () override | |
Destructor. More... | |
void | ComputeRelationships (DesignFlowStepSet &relationship, const DesignFlowStep::RelationshipType relationship_type) override |
Compute the relationships of a step with other steps. More... | |
std::string | GetSignature () const override |
Return the signature of this step. More... | |
std::string | GetName () const override |
Return the name of this design step. More... | |
DesignFlowStep_Status | Exec () final |
Execute the step. More... | |
bool | HasToBeExecuted () const override |
Check if this step has actually to be executed. More... | |
unsigned int | CGetBBVersion () const |
unsigned int | GetBitValueVersion () const |
void | PrintInitialIR () const override |
Dump the initial intermediate representation. More... | |
void | PrintFinalIR () const override |
Dump the final intermediate representation. More... | |
Public Member Functions inherited from FrontendFlowStep | |
FrontendFlowStep (const application_managerRef AppM, const FrontendFlowStepType frontend_flow_step_type, const DesignFlowManagerConstRef design_flow_manager, const ParameterConstRef parameters) | |
Constructor. More... | |
~FrontendFlowStep () override | |
Destructor. More... | |
virtual std::string | GetKindText () const |
Return the name of the type of this frontend flow step. More... | |
DesignFlowStepFactoryConstRef | CGetDesignFlowStepFactory () const override |
Return the factory to create this type of steps. More... | |
void | PrintTreeManager (const bool before) const |
Dump the tree manager. More... | |
Public Member Functions inherited from DesignFlowStep | |
DesignFlowStep (const DesignFlowManagerConstRef design_flow_manager, const ParameterConstRef parameters) | |
Constructor. More... | |
virtual | ~DesignFlowStep () |
Destructor. More... | |
virtual void | Initialize () |
Initialize the step (i.e., like a constructor, but executed just before exec. More... | |
DesignFlowStep_Status | GetStatus () const |
Return the status of this design step. More... | |
virtual void | WriteDot (std::ostream &out) const |
Write the label for a dot graph. More... | |
bool | IsComposed () const |
Returns if this step is composed. More... | |
int | CGetDebugLevel () const |
Return the debug level of the step. More... | |
Static Public Member Functions | |
static const std::string | ComputeSignature (const FrontendFlowStepType frontend_flow_step_type, const unsigned int function_id) |
Compute the signature of a function frontend flow step. More... | |
Static Public Member Functions inherited from FrontendFlowStep | |
static void | CreateSteps (const DesignFlowManagerConstRef design_flow_manager, const CustomUnorderedSet< std::pair< FrontendFlowStepType, FunctionRelationship >> &frontend_relationships, const application_managerConstRef application_manager, DesignFlowStepSet &relationships) |
Create the relationship steps of a step with other steps starting from already specified dependencies between frontend flow steps. More... | |
static const std::string | EnumToKindText (const FrontendFlowStepType frontend_flow_step_type) |
Given a frontend flow step type, return the name of the type. More... | |
Protected Member Functions | |
virtual DesignFlowStep_Status | InternalExec ()=0 |
Execute the step. More... | |
void | WriteBBGraphDot (const std::string &filename) const |
Write the current version of statement list in dot format. More... | |
Protected Member Functions inherited from FrontendFlowStep | |
virtual const CustomUnorderedSet< std::pair< FrontendFlowStepType, FunctionRelationship > > | ComputeFrontendRelationships (const DesignFlowStep::RelationshipType relationship_type) const =0 |
Return the set of analyses in relationship with this design step. More... | |
Protected Attributes | |
const FunctionBehaviorRef | function_behavior |
The function behavior of the function to be analyzed. More... | |
const unsigned int | function_id |
The index of the function to be analyzed. More... | |
unsigned int | bb_version |
The version of the basic block intermediate representation on which this step has been applied. More... | |
unsigned int | bitvalue_version |
The version of the bitvalue information on which this step has been applied. More... | |
Protected Attributes inherited from FrontendFlowStep | |
const application_managerRef | AppM |
The application manager. More... | |
const FrontendFlowStepType | frontend_flow_step_type |
The type of this step. More... | |
unsigned int | print_counter |
Print counter. More... | |
Protected Attributes inherited from DesignFlowStep | |
bool | composed |
True if this step represents a composition of design flow steps (e.g., a flow); must be set by specialized constructors. More... | |
const Wrefcount< const DesignFlowManager > | design_flow_manager |
The design flow manager. More... | |
const ParameterConstRef | parameters |
Set of input parameters. More... | |
int | debug_level |
The debug level. More... | |
const int | output_level |
The output level. More... | |
Private Member Functions | |
bool | HasToBeExecuted0 () const |
Check if this function is reachable from the top functions. More... | |
Additional Inherited Members | |
Public Types inherited from FrontendFlowStep | |
using | FunctionRelationship = enum { ALL_FUNCTIONS, CALLED_FUNCTIONS, CALLING_FUNCTIONS, SAME_FUNCTION, WHOLE_APPLICATION } |
The different relationship type between function analysis. More... | |
Public Types inherited from DesignFlowStep | |
enum | RelationshipType { DEPENDENCE_RELATIONSHIP, INVALIDATION_RELATIONSHIP, PRECEDENCE_RELATIONSHIP } |
The relationship type. More... | |
Definition at line 67 of file function_frontend_flow_step.hpp.
FunctionFrontendFlowStep::FunctionFrontendFlowStep | ( | const application_managerRef | AppM, |
const unsigned int | function_id, | ||
const FrontendFlowStepType | frontend_flow_step_type, | ||
const DesignFlowManagerConstRef | design_flow_manager, | ||
const ParameterConstRef | parameters | ||
) |
Constructor.
_Param | is the set of the parameters |
Definition at line 78 of file function_frontend_flow_step.cpp.
References DesignFlowStep::debug_level, GET_CLASS, DesignFlowStep::parameters, and ~FunctionFrontendFlowStep().
|
overridedefault |
unsigned int FunctionFrontendFlowStep::CGetBBVersion | ( | ) | const |
Definition at line 399 of file function_frontend_flow_step.cpp.
References bb_version.
Referenced by CondExprRestructuring::ComputeFrontendRelationships(), commutative_expr_restructuring::ComputeFrontendRelationships(), short_circuit_taf::ComputeFrontendRelationships(), multi_way_if::ComputeFrontendRelationships(), CondExprRestructuring::HasToBeExecuted(), commutative_expr_restructuring::HasToBeExecuted(), short_circuit_taf::HasToBeExecuted(), and multi_way_if::HasToBeExecuted().
|
overridevirtual |
Compute the relationships of a step with other steps.
dependencies | is where relationships will be stored |
relationship_type | is the type of relationship to be computed |
Precedence step whose symbolic application frontend flow step has to be executed can be considered as dependence step
This is managed by FrontendFlowStep::ComputeRelationships
This is managed by FrontendFlowStep::ComputeRelationships
Reimplemented from FrontendFlowStep.
Reimplemented in IR_lowering, lut_transformation, FixVdef, and BuildVirtualPhi.
Definition at line 117 of file function_frontend_flow_step.cpp.
References ALL_FUNCTIONS, FrontendFlowStep::AppM, CALLED_FUNCTIONS, FrontendFlowStep::CGetDesignFlowStepFactory(), FrontendFlowStep::ComputeFrontendRelationships(), FrontendFlowStep::ComputeRelationships(), SymbolicApplicationFrontendFlowStep::ComputeSignature(), ComputeSignature(), DesignFlowStep::DEPENDENCE_RELATIONSHIP, DesignFlowStep::design_flow_manager, function_id, Wrefcount< T >::lock(), DesignFlowStep::PRECEDENCE_RELATIONSHIP, SAME_FUNCTION, SUCCESS, lenet_tvm::target, THROW_UNREACHABLE, UNCHANGED, UNEXECUTED, and WHOLE_APPLICATION.
Referenced by FixVdef::ComputeRelationships(), BuildVirtualPhi::ComputeRelationships(), lut_transformation::ComputeRelationships(), and IR_lowering::ComputeRelationships().
|
static |
Compute the signature of a function frontend flow step.
frontend_flow_step_type | is the type of frontend flow |
function_id | is the index of the function |
Definition at line 98 of file function_frontend_flow_step.cpp.
References STR.
Referenced by CondExprRestructuring::ComputeFrontendRelationships(), commutative_expr_restructuring::ComputeFrontendRelationships(), short_circuit_taf::ComputeFrontendRelationships(), multi_way_if::ComputeFrontendRelationships(), HLSFunctionBitValue::ComputeRelationships(), dead_code_eliminationIPA::ComputeRelationships(), BitValueIPA::ComputeRelationships(), BuildVirtualPhi::ComputeRelationships(), ComputeRelationships(), SDCScheduling::ComputeRelationships(), allocation::ComputeRelationships(), FrontendFlowStep::CreateSteps(), GetSignature(), CondExprRestructuring::HasToBeExecuted(), commutative_expr_restructuring::HasToBeExecuted(), short_circuit_taf::HasToBeExecuted(), multi_way_if::HasToBeExecuted(), MultipleEntryIfReduction::HasToBeExecuted(), and HLSFunctionBitValue::InternalExec().
|
finalvirtual |
Execute the step.
Implements DesignFlowStep.
Definition at line 264 of file function_frontend_flow_step.cpp.
References bb_version, bitvalue_version, function_behavior, HasToBeExecuted0(), InternalExec(), and UNCHANGED.
unsigned int FunctionFrontendFlowStep::GetBitValueVersion | ( | ) | const |
Definition at line 404 of file function_frontend_flow_step.cpp.
References bitvalue_version.
Referenced by FunctionBehavior::get_initiation_time().
|
overridevirtual |
Return the name of this design step.
Implements DesignFlowStep.
Definition at line 104 of file function_frontend_flow_step.cpp.
References bb_version, bitvalue_version, function_behavior, FrontendFlowStep::GetKindText(), and STR.
Referenced by IR_lowering::expand_smod_pow2(), Bit_Value::initialize(), ExtractOmpAtomic::InternalExec(), ExtractOmpFor::InternalExec(), SDCCodeMotion::InternalExec(), SwitchFix::InternalExec(), extract_patterns::InternalExec(), CondExprRestructuring::InternalExec(), commutative_expr_restructuring::InternalExec(), RemoveEndingIf::InternalExec(), simple_code_motion::InternalExec(), short_circuit_taf::InternalExec(), dead_code_elimination::InternalExec(), CSE::InternalExec(), FunctionCallOpt::InternalExec(), multi_way_if::InternalExec(), MultipleEntryIfReduction::InternalExec(), IR_lowering::InternalExec(), Vectorize::InternalExec(), PhiOpt::InternalExec(), Bit_Value_opt::optimize(), PrintFinalIR(), PrintInitialIR(), lut_transformation::ProcessBasicBlock(), Bit_Value_opt::propagateValue(), and Bit_Value::update_IR().
|
overridevirtual |
Return the signature of this step.
Implements DesignFlowStep.
Definition at line 93 of file function_frontend_flow_step.cpp.
References ComputeSignature(), FrontendFlowStep::frontend_flow_step_type, and function_id.
Referenced by RemoveEndingIf::ComputeFrontendRelationships(), BuildVirtualPhi::ComputeRelationships(), and compute_implicit_calls::InternalExec().
|
overridevirtual |
Check if this step has actually to be executed.
Implements DesignFlowStep.
Reimplemented in Bit_Value, soft_float_cg_ext, Vectorize, CheckSystemType, MultipleEntryIfReduction, multi_way_if, FunctionCallOpt, short_circuit_taf, dead_code_elimination, RemoveEndingIf, commutative_expr_restructuring, CondExprRestructuring, Bit_Value_opt, SplitReturn, UpdateSchedule, ExtractOmpFor, BitValueRange, SDCCodeMotion, PredicateStatements, SerializeMutualExclusions, HWCallInjection, and dataflow_cg_ext.
Definition at line 291 of file function_frontend_flow_step.cpp.
References bb_version, and function_behavior.
Referenced by dataflow_cg_ext::HasToBeExecuted(), SDCCodeMotion::HasToBeExecuted(), BitValueRange::HasToBeExecuted(), UpdateSchedule::HasToBeExecuted(), SplitReturn::HasToBeExecuted(), Bit_Value_opt::HasToBeExecuted(), CondExprRestructuring::HasToBeExecuted(), commutative_expr_restructuring::HasToBeExecuted(), RemoveEndingIf::HasToBeExecuted(), dead_code_elimination::HasToBeExecuted(), short_circuit_taf::HasToBeExecuted(), FunctionCallOpt::HasToBeExecuted(), multi_way_if::HasToBeExecuted(), soft_float_cg_ext::HasToBeExecuted(), and Bit_Value::HasToBeExecuted().
|
private |
Check if this function is reachable from the top functions.
Definition at line 280 of file function_frontend_flow_step.cpp.
References FrontendFlowStep::AppM, and function_id.
Referenced by Exec().
|
protectedpure virtual |
Execute the step.
Implemented in Bit_Value, soft_float_cg_ext, PhiOpt, Vectorize, IR_lowering, operations_cfg_computation, rebuild_initialization2, CheckSystemType, lut_transformation, MultipleEntryIfReduction, multi_way_if, FunctionCallOpt, CSE, dead_code_elimination, short_circuit_taf, VarComputation, simple_code_motion, virtual_phi_nodes_split, RemoveEndingIf, VarDeclFix, commutative_expr_restructuring, CondExprRestructuring, determine_memory_accesses, hls_div_cg_ext, Bit_Value_opt, FunctionCallTypeCleanup, DataDependenceComputation, compute_implicit_calls, parm2ssa, SplitReturn, BlockFix, NI_SSA_liveness, loops_computation, AddOpExitFlowEdges, fanout_opt, rebuild_initialization, dom_post_dom_computation, eSSA, AddBbEcfgEdges, AddOpLoopFlowEdges, bb_feedback_edges_computation, op_feedback_edges_computation, call_expr_fix, CallGraphBuiltinCall, AddOpPhiFlowEdges, BuildVirtualPhi, BBReachabilityComputation, OpReachabilityComputation, extract_patterns, LoopsAnalysisBambu, HDLVarDeclFix, UpdateSchedule, BitValueRange, FixVdef, remove_clobber_ga, ExtractGimpleCondOp, SwitchFix, AddArtificialCallFlowEdges, BasicBlocksCfgComputation, use_counting, BBOrderComputation, OpOrderComputation, CompleteBBGraph, ExtractOmpFor, SDCCodeMotion, BBCdgComputation, OpCdgComputation, ExtractOmpAtomic, UnComparisonLowering, PredicateStatements, SerializeMutualExclusions, HWCallInjection, dataflow_cg_ext, FixStructsPassedByValue, and parm_decl_taken_address_fix.
Referenced by Exec().
|
overridevirtual |
Dump the final intermediate representation.
Reimplemented from FrontendFlowStep.
Definition at line 418 of file function_frontend_flow_step.cpp.
References GetName(), DesignFlowStep::parameters, FrontendFlowStep::PrintFinalIR(), and WriteBBGraphDot().
|
overridevirtual |
Dump the initial intermediate representation.
Reimplemented from FrontendFlowStep.
Definition at line 409 of file function_frontend_flow_step.cpp.
References GetName(), DesignFlowStep::parameters, FrontendFlowStep::PrintInitialIR(), and WriteBBGraphDot().
|
protected |
Write the current version of statement list in dot format.
filename | is the file name to be written |
add vertices
Set entry and exit
add edges
add a connection between entry and exit thus avoiding problems with non terminating code
add edges
Definition at line 296 of file function_frontend_flow_step.cpp.
References FrontendFlowStep::AppM, CFG_SELECTOR, DesignFlowStep::debug_level, DEBUG_LEVEL_VERY_PEDANTIC, default_COND, bloc::ENTRY_BLOCK_ID, bloc::EXIT_BLOCK_ID, function_id, GET_CONST_NODE, GET_NODE, INDENT_DBG_MEX, DesignFlowStep::parameters, phi, sl, STR, THROW_ASSERT, and BBGraph::WriteDot().
Referenced by ExtractOmpAtomic::InternalExec(), ExtractOmpFor::InternalExec(), SwitchFix::InternalExec(), CondExprRestructuring::InternalExec(), commutative_expr_restructuring::InternalExec(), short_circuit_taf::InternalExec(), multi_way_if::InternalExec(), Vectorize::InternalExec(), PhiOpt::InternalExec(), PrintFinalIR(), and PrintInitialIR().
|
protected |
The version of the basic block intermediate representation on which this step has been applied.
Definition at line 83 of file function_frontend_flow_step.hpp.
Referenced by CGetBBVersion(), Exec(), GetName(), dataflow_cg_ext::HasToBeExecuted(), HWCallInjection::HasToBeExecuted(), PredicateStatements::HasToBeExecuted(), SDCCodeMotion::HasToBeExecuted(), ExtractOmpFor::HasToBeExecuted(), HasToBeExecuted(), Vectorize::HasToBeExecuted(), soft_float_cg_ext::HasToBeExecuted(), VirtualAggregateDataFlowAnalysis::Initialize(), BBReachabilityComputation::Initialize(), AddOpPhiFlowEdges::Initialize(), OpCdgComputation::Initialize(), BBCdgComputation::Initialize(), OpOrderComputation::Initialize(), BBOrderComputation::Initialize(), BasicBlocksCfgComputation::Initialize(), ScalarSsaDataDependenceComputation::Initialize(), AddOpExitFlowEdges::Initialize(), loops_computation::Initialize(), AddOpLoopFlowEdges::Initialize(), NI_SSA_liveness::Initialize(), VarComputation::Initialize(), operations_cfg_computation::Initialize(), and Bit_Value::initialize().
|
protected |
The version of the bitvalue information on which this step has been applied.
Definition at line 86 of file function_frontend_flow_step.hpp.
Referenced by Exec(), GetBitValueVersion(), GetName(), BitValueRange::HasToBeExecuted(), Bit_Value_opt::HasToBeExecuted(), and Bit_Value::HasToBeExecuted().
|
protected |
The function behavior of the function to be analyzed.
Definition at line 77 of file function_frontend_flow_step.hpp.
Referenced by Vectorize::AddGuards(), determine_memory_accesses::analyze_node(), operations_cfg_computation::build_operation_recursive(), Vectorize::ClassifyLoop(), Vectorize::ClassifyTreeNode(), DataDependenceComputation::Computedependencies(), CondExprRestructuring::ComputeFrontendRelationships(), commutative_expr_restructuring::ComputeFrontendRelationships(), short_circuit_taf::ComputeFrontendRelationships(), multi_way_if::ComputeFrontendRelationships(), DataDependenceComputation::do_dependence_reduction(), Vectorize::DuplicateIncrement(), Exec(), Vectorize::FixPhis(), GetName(), DataDependenceComputation::GetVariables(), CSE::has_memory_access(), BitValueRange::HasToBeExecuted(), Bit_Value_opt::HasToBeExecuted(), CondExprRestructuring::HasToBeExecuted(), commutative_expr_restructuring::HasToBeExecuted(), short_circuit_taf::HasToBeExecuted(), HasToBeExecuted(), multi_way_if::HasToBeExecuted(), Vectorize::HasToBeExecuted(), Bit_Value::HasToBeExecuted(), PhiOpt::IdentifyPattern(), VirtualAggregateDataFlowAnalysis::Initialize(), BBReachabilityComputation::Initialize(), AddOpPhiFlowEdges::Initialize(), BBCdgComputation::Initialize(), OpCdgComputation::Initialize(), OpOrderComputation::Initialize(), BBOrderComputation::Initialize(), BasicBlocksCfgComputation::Initialize(), ScalarSsaDataDependenceComputation::Initialize(), UpdateSchedule::Initialize(), AddOpExitFlowEdges::Initialize(), loops_computation::Initialize(), AddOpLoopFlowEdges::Initialize(), dom_post_dom_computation::Initialize(), NI_SSA_liveness::Initialize(), VarComputation::Initialize(), operations_cfg_computation::Initialize(), Bit_Value::initialize(), parm_decl_taken_address_fix::InternalExec(), FixStructsPassedByValue::InternalExec(), dataflow_cg_ext::InternalExec(), PredicateStatements::InternalExec(), SerializeMutualExclusions::InternalExec(), ExtractOmpAtomic::InternalExec(), UnComparisonLowering::InternalExec(), BBCdgComputation::InternalExec(), OpCdgComputation::InternalExec(), OpOrderComputation::InternalExec(), SDCCodeMotion::InternalExec(), BBOrderComputation::InternalExec(), ExtractOmpFor::InternalExec(), BasicBlocksCfgComputation::InternalExec(), AddArtificialCallFlowEdges::InternalExec(), SwitchFix::InternalExec(), remove_clobber_ga::InternalExec(), BitValueRange::InternalExec(), ExtractGimpleCondOp::InternalExec(), HDLVarDeclFix::InternalExec(), LoopsAnalysisBambu::InternalExec(), extract_patterns::InternalExec(), BBReachabilityComputation::InternalExec(), AddOpPhiFlowEdges::InternalExec(), BuildVirtualPhi::InternalExec(), call_expr_fix::InternalExec(), CallGraphBuiltinCall::InternalExec(), AddBbEcfgEdges::InternalExec(), bb_feedback_edges_computation::InternalExec(), AddOpLoopFlowEdges::InternalExec(), op_feedback_edges_computation::InternalExec(), eSSA::InternalExec(), dom_post_dom_computation::InternalExec(), rebuild_initialization::InternalExec(), fanout_opt::InternalExec(), AddOpExitFlowEdges::InternalExec(), loops_computation::InternalExec(), BlockFix::InternalExec(), SplitReturn::InternalExec(), parm2ssa::InternalExec(), Bit_Value_opt::InternalExec(), FunctionCallTypeCleanup::InternalExec(), determine_memory_accesses::InternalExec(), hls_div_cg_ext::InternalExec(), CondExprRestructuring::InternalExec(), commutative_expr_restructuring::InternalExec(), RemoveEndingIf::InternalExec(), virtual_phi_nodes_split::InternalExec(), simple_code_motion::InternalExec(), short_circuit_taf::InternalExec(), VarComputation::InternalExec(), dead_code_elimination::InternalExec(), CSE::InternalExec(), FunctionCallOpt::InternalExec(), multi_way_if::InternalExec(), MultipleEntryIfReduction::InternalExec(), lut_transformation::InternalExec(), rebuild_initialization2::InternalExec(), operations_cfg_computation::InternalExec(), IR_lowering::InternalExec(), Vectorize::InternalExec(), PhiOpt::InternalExec(), soft_float_cg_ext::InternalExec(), Bit_Value::InternalExec(), rebuild_initialization2::look_for_ROMs(), Bit_Value::pointer_resizing(), Bit_Value::print_bitstring_map(), VarDeclFix::recursive_examinate(), soft_float_cg_ext::RecursiveExaminate(), Vectorize::SetPredication(), and Vectorize::Transform().
|
protected |
The index of the function to be analyzed.
Definition at line 80 of file function_frontend_flow_step.hpp.
Referenced by dead_code_elimination::add_gimple_nop(), Vectorize::AddGuards(), PhiOpt::ApplyIfMerge(), PhiOpt::ApplyIfRemove(), PhiOpt::ApplyMultiMerge(), PhiOpt::ApplyMultiRemove(), IR_lowering::array_ref_lowering(), Bit_Value::backward(), Bit_Value::backward_chain(), simple_code_motion::CheckMovable(), Bit_Value::clear_current(), LoopsAnalysisBambu::ComputeFrontendRelationships(), CondExprRestructuring::ComputeFrontendRelationships(), commutative_expr_restructuring::ComputeFrontendRelationships(), short_circuit_taf::ComputeFrontendRelationships(), multi_way_if::ComputeFrontendRelationships(), Vectorize::ComputeFrontendRelationships(), BuildVirtualPhi::ComputeRelationships(), ComputeRelationships(), operations_cfg_computation::connect_start_nodes(), short_circuit_taf::create_gimple_cond(), lut_transformation::CreateBitSelectionNodeOrCast(), FunctionCallOpt::detect_loops(), IR_lowering::division_by_a_constant(), IR_lowering::expand_MC(), IR_lowering::expand_mult_const(), IR_lowering::expand_mult_highpart(), IR_lowering::expand_sdiv_pow2(), IR_lowering::expand_smod_pow2(), IR_lowering::expand_target_mem_ref(), dead_code_elimination::fix_sdc_motion(), Vectorize::FixPhis(), Bit_Value::forward(), soft_float_cg_ext::generate_interface(), GetSignature(), SDCCodeMotion::HasToBeExecuted(), UpdateSchedule::HasToBeExecuted(), SplitReturn::HasToBeExecuted(), CondExprRestructuring::HasToBeExecuted(), commutative_expr_restructuring::HasToBeExecuted(), RemoveEndingIf::HasToBeExecuted(), dead_code_elimination::HasToBeExecuted(), short_circuit_taf::HasToBeExecuted(), multi_way_if::HasToBeExecuted(), MultipleEntryIfReduction::HasToBeExecuted(), HasToBeExecuted0(), PhiOpt::IdentifyPattern(), UpdateSchedule::Initialize(), fanout_opt::Initialize(), NI_SSA_liveness::Initialize(), CondExprRestructuring::Initialize(), commutative_expr_restructuring::Initialize(), RemoveEndingIf::Initialize(), simple_code_motion::Initialize(), CSE::Initialize(), multi_way_if::Initialize(), MultipleEntryIfReduction::Initialize(), Bit_Value::initialize(), PhiOpt::Initialize(), Bit_Value::Initialize(), FixStructsPassedByValue::InternalExec(), parm_decl_taken_address_fix::InternalExec(), dataflow_cg_ext::InternalExec(), HWCallInjection::InternalExec(), PredicateStatements::InternalExec(), SerializeMutualExclusions::InternalExec(), ExtractOmpAtomic::InternalExec(), UnComparisonLowering::InternalExec(), ExtractOmpFor::InternalExec(), SDCCodeMotion::InternalExec(), BasicBlocksCfgComputation::InternalExec(), use_counting::InternalExec(), SwitchFix::InternalExec(), ExtractGimpleCondOp::InternalExec(), FixVdef::InternalExec(), remove_clobber_ga::InternalExec(), BitValueRange::InternalExec(), UpdateSchedule::InternalExec(), HDLVarDeclFix::InternalExec(), extract_patterns::InternalExec(), LoopsAnalysisBambu::InternalExec(), BuildVirtualPhi::InternalExec(), call_expr_fix::InternalExec(), CallGraphBuiltinCall::InternalExec(), eSSA::InternalExec(), fanout_opt::InternalExec(), rebuild_initialization::InternalExec(), NI_SSA_liveness::InternalExec(), BlockFix::InternalExec(), parm2ssa::InternalExec(), compute_implicit_calls::InternalExec(), SplitReturn::InternalExec(), FunctionCallTypeCleanup::InternalExec(), Bit_Value_opt::InternalExec(), determine_memory_accesses::InternalExec(), hls_div_cg_ext::InternalExec(), CondExprRestructuring::InternalExec(), VarDeclFix::InternalExec(), commutative_expr_restructuring::InternalExec(), RemoveEndingIf::InternalExec(), virtual_phi_nodes_split::InternalExec(), simple_code_motion::InternalExec(), short_circuit_taf::InternalExec(), dead_code_elimination::InternalExec(), CSE::InternalExec(), FunctionCallOpt::InternalExec(), multi_way_if::InternalExec(), MultipleEntryIfReduction::InternalExec(), lut_transformation::InternalExec(), CheckSystemType::InternalExec(), operations_cfg_computation::InternalExec(), IR_lowering::InternalExec(), soft_float_cg_ext::InternalExec(), dead_code_elimination::kill_vdef(), rebuild_initialization2::look_for_ROMs(), CallGraphBuiltinCall::lookForBuiltinCall(), multi_way_if::MergeCondCond(), multi_way_if::MergeCondMulti(), multi_way_if::MergeMultiCond(), multi_way_if::MergeMultiMulti(), Bit_Value_opt::optimize(), FunctionCallTypeCleanup::ParametersTypeCleanup(), Bit_Value::pointer_resizing(), lut_transformation::ProcessBasicBlock(), parm2ssa::recursive_analysis(), hls_div_cg_ext::recursive_examinate(), VarDeclFix::recursive_examinate(), soft_float_cg_ext::RecursiveExaminate(), compute_implicit_calls::replace_with_memcpy(), compute_implicit_calls::replace_with_memset(), soft_float_cg_ext::replaceWithCall(), soft_float_cg_ext::soft_float_cg_ext(), soft_float_cg_ext::ssa_lowering(), Vectorize::Transform(), virtual_phi_nodes_split::virtual_split_phi(), and WriteBBGraphDot().