PandA-2024.02
Macros | Enumerations | Functions | Variables
exceptions.hpp File Reference

exceptions managed by PandA More...

#include "config_HAVE_ASSERTS.hpp"
#include "config_HAVE_PRINT_STACK.hpp"
#include <iostream>
#include <string>
Include dependency graph for exceptions.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define PRINT_STACK
 
#define THROW_ERROR(str_expr)   throw_error(0, (str_expr), __PRETTY_FUNCTION__, __FILE__, __LINE__)
 helper function used to throw an error in a standard way More...
 
#define THROW_ERROR_CODE(code, str_expr)
 helper function used to throw an error with a code error More...
 
#define THROW_ASSERT(cond, str_expr)
 helper function used to check an assert and if needed to throw an error in a standard way More...
 
#define THROW_UNREACHABLE(str_expr)
 helper function used to specify that some points should never be reached More...
 
#define THROW_WARNING(str_expr)
 helper function used to throw a warning in a standard way: though it uses PRINT_DBG_MEX, the debug level used is such that the message is always printed More...
 
#define NOT_YET_IMPLEMENTED()
 helper function to mark points not yet implemented More...
 
#define THROW_WARNING_ASSERT(cond, str_expr)   (void)0
 helper function used to check an assert and if needed to throw an error in a standard way More...
 

Enumerations

enum  throw_error_code {
  NODE_NOT_YET_SUPPORTED_EC = 2, IRREDUCIBLE_LOOPS_EC, NESTED_FUNCTIONS_EC, PRAGMA_FAILURE_EC,
  TASK_GRAPH_TRANSFORMATION_EC, BOH_EC, FORK_STRUCT, TASK_CREATION,
  PROFILING_EC, COMPILING_EC, VLA_EC, POINTER_PLUS_EC,
  VARARGS_EC, BITFIELD_EC, C_EC, GRMON_EC,
  BOARD_EC
}
 Error code returned by THROW_ERROR_CODE. More...
 

Functions

template<class T >
T & throw_error (const T &t, const std::string &expression, const char *pp, const char *file, int line, int code=EXIT_FAILURE)
 Template function used to throw an exception. More...
 
void throw_warning (const std::string &expression, const char *pp, const char *file, int line)
 Prints a warning, along with information about the source code. More...
 
template<class T >
T & throw_error (const T &t, const char *expression, const char *pp, const char *file, int line, int code=EXIT_FAILURE)
 Template function used to throw an exception. More...
 
bool IsError (const int error_value)
 Return true if the return_value corresponds to an error. More...
 
bool is_failure (const int error_value)
 Return true if the return value corresponds to a failure (not to an error) More...
 

Variables

int exit_code
 Autoheader include. More...
 
bool error_on_warning
 Transform warning into errors. More...
 

Detailed Description

exceptions managed by PandA

This structure is used to manage the exception raised by the Panda toolset.

Author
Fabrizio Ferrandi fabri.nosp@m.zio..nosp@m.ferra.nosp@m.ndi@.nosp@m.polim.nosp@m.i.it
Marco Lattuada lattu.nosp@m.ada@.nosp@m.elet..nosp@m.poli.nosp@m.mi.it $Revision$ $Date$ Last modified by $Author$

Definition in file exceptions.hpp.

Macro Definition Documentation

◆ NOT_YET_IMPLEMENTED

#define NOT_YET_IMPLEMENTED ( )
Value:
((void)(THROW_ERROR(std::string("Not yet implemented")))) : \
(throw_warning((std::string("Not yet implemented")), __PRETTY_FUNCTION__, __FILE__, __LINE__)))
bool error_on_warning
Transform warning into errors.
void throw_warning(const std::string &expression, const char *pp, const char *file, int line)
Prints a warning, along with information about the source code.
Definition: exceptions.hpp:110
#define THROW_ERROR(str_expr)
helper function used to throw an error in a standard way
Definition: exceptions.hpp:263

helper function to mark points not yet implemented

Definition at line 305 of file exceptions.hpp.

Referenced by xml_foreach_t::create_xml_node(), and XilinxWrapper::toString().

◆ PRINT_STACK

#define PRINT_STACK

Definition at line 259 of file exceptions.hpp.

◆ THROW_ASSERT

#define THROW_ASSERT (   cond,
  str_expr 
)

helper function used to check an assert and if needed to throw an error in a standard way

Definition at line 289 of file exceptions.hpp.

Referenced by Range::add(), BasicBlocksGraphConstructor::add_bb_edge_info(), ControllerCreatorBaseStep::add_command_ports(), conn_binding::add_command_ports(), top_entity::add_command_signals(), structural_manager::add_connection(), port_o::add_connection(), constant_o::add_connection(), bus_connection_o::add_connection(), structural_manager::add_constant(), mux_connection_binding::add_conversion(), conn_binding::add_datapath_connection(), add_directed_edge(), add_directed_edge_single(), coloring_based_clique_covering< vertex_type >::add_edge(), bipartite_matching_clique_covering< vertex_type >::add_edge(), operations_graph_constructor::add_edge_info(), add_EPP_edges(), module::add_event(), action_o::add_event_to_sensitivity(), BambuParameter::add_experimental_setup_compiler_options(), flopoco_wrapper::add_FU(), fu_binding::add_gate(), module::add_gen_port(), dead_code_elimination::add_gimple_nop(), module::add_in_out_port(), module::add_in_port(), module::add_internal_object(), memory::add_internal_symbol(), module::add_local_data(), memory::add_memory_parameter(), structural_manager::add_module_from_technology_library(), port_o::add_n_ports(), signal_o::add_n_signals(), structural_manager::add_NP_functionality(), technology_manager::add_operation(), module::add_out_port(), action_o::add_parameter(), structural_manager::add_port(), signal_o::add_port(), channel_o::add_port(), structural_manager::add_port_vector(), datapath_cs::add_ports(), top_entity::add_ports(), module::add_process(), glpk_solver::add_row(), module::add_service(), structural_manager::add_sign(), module_interface::add_sign_vector(), structural_manager::add_sign_vector(), bipartite_matching_clique_covering< vertex_type >::add_subpartitions(), ParallelMemoryConnBinding::add_to_SM(), ParallelMemoryFuBinding::add_to_SM(), reg_binding::add_to_SM(), fu_binding::add_to_SM(), conn_binding::add_to_SM(), operations_graph_constructor::add_type(), vcd_parser::add_variation(), BasicBlocksGraphConstructor::add_vertex(), coloring_based_clique_covering< vertex_type >::add_vertex(), bipartite_matching_clique_covering< vertex_type >::add_vertex(), CallGraphManager::AddCallPoint(), module_interface::AddConnection(), module_interface::AddConstant(), Nuutila::addControlDependenceEdges(), RawGraph::AddEdge(), CdfcGraphsCollection::AddEdge(), StateTransitionGraphsCollection::AddEdge(), CallGraphManager::AddFunction(), Vectorize::AddGuards(), operations_graph_constructor::AddOperation(), OmpAllocation::AddPandaPthreadMutex(), structural_object::AddParameter(), graphs_collection::AddSelector(), module_interface::AddSignal(), tree_manager::AddTreeNode(), NodeContainer::addVarNode(), gimple_node::AddVover(), gimple_node::AddVuse(), vcd_trace_head::advance(), determine_memory_accesses::analyze_node(), RTLCharacterization::AnalyzeCell(), FunctionalUnitStep::AnalyzeFu(), Range::And(), PhiOpt::ApplyDiffNothing(), PhiOpt::ApplyIfMerge(), PhiOpt::ApplyIfRemove(), PhiOpt::ApplyMultiMerge(), PhiOpt::ApplyMultiNothing(), PhiOpt::ApplyMultiRemove(), liveness::are_in_conflict(), IR_lowering::array_ref_lowering(), Bit_Value::backward(), Bit_Value::backward_chain(), Bit_Value::backward_transfer(), tree_manipulation::bb_remove_predecessor(), tree_manipulation::bb_remove_successor(), BinaryOpNode::BinaryOpNode(), treeVocabularyTokenTypes::bison2token(), branchOpRecurse(), operations_cfg_computation::build_operation_recursive(), WB4_interface::build_WB4_complete_logic(), minimal_interface::build_wrapper(), HWCallInjection::buildBuiltinCall(), allocation::BuildProxyWrapper(), top_entity_parallel_cs::BW_loop_iter(), dom_info< GraphObj >::calc_dfs_tree(), weak_dominance::calculate_weak_dominance_info(), CallGraphManager::call_graph_computation_recursive(), AllocationInformation::can_implement_set(), Schedule::CanBeMoved(), BehavioralHelper::CanBeMoved(), BehavioralHelper::CanBeSpeculated(), cannot_have_struct_parameters(), Cget_edge_info(), Cget_node_info(), Cget_raw_edge_info(), BasicBlocksGraphConstructor::Cget_vertex(), tree_helper::CGetArrayBaseType(), AadlInformation::CGetAsnType(), ssa_name::CGetDefStmt(), DesignFlowManager::CGetDesignFlowStepFactory(), graph::CGetEdge(), graph::CGetEdgeInfo(), application_manager::CGetFunctionBehavior(), operations_graph_constructor::CgetIndex(), graph::CGetNodeInfo(), technology_manager::CGetSetupHoldTime(), tree_manager::CGetTreeNode(), tree_manager::CGetTreeReindex(), tree_helper::CGetType(), PhiOpt::ChainOptimization(), structural_manager::change_connection(), module::change_port_direction(), InterfaceInfer::ChasePointerInterfaceRecurse(), module_binding_check< vertex_type >::check_edge_compatibility(), tree_manager::check_for_decl(), tree_manager::check_for_type(), FunctionExpander::check_lib_type(), short_circuit_taf::check_merging_candidate(), structural_manager::check_object(), fu_binding::check_parametrization(), allocation::check_proxies(), structural_manager::check_structure(), ComputeReservedMemory::CheckEnd(), lut_transformation::CheckIfPO(), BambuParameter::CheckParameters(), FunctionBehavior::CheckReachability(), AlteraBackendFlow::CheckSynthesisResults(), LatticeBackendFlow::CheckSynthesisResults(), BashBackendFlow::CheckSynthesisResults(), NanoXploreBackendFlow::CheckSynthesisResults(), choose_multiplier(), Vectorize::ClassifyLoop(), Vectorize::ClassifyTreeNode(), CleanVirtuals(), tree_manipulation::CloneFunction(), tree_manager::collapse_into(), commandport_obj::commandport_obj(), CompilerWrapper::CompileFile(), ASLAP::compute_ALAP(), BB_based_stg::compute_EPP_edge_increments(), CWriter::compute_phi_nodes(), compute_state_id(), CreateAddressTranslation::ComputeAddress(), NonDeterministicFlows::ComputeArgString(), FindMaxTransformations::ComputeArgString(), RTLCharacterization::ComputeCells(), RTLCharacterization::ComputeComponent(), Schedule::ComputeCriticalPath(), StateTransitionGraphManager::ComputeCyclesCount(), DataDependenceComputation::Computedependencies(), HostProfiling::ComputeFrontendRelationships(), standard_hls::ComputeHLSRelationships(), add_library::ComputeHLSRelationships(), module_interface::ComputeHLSRelationships(), dead_code_eliminationIPA::ComputeRelationships(), BitValueIPA::ComputeRelationships(), TasteInterfaceGeneration::ComputeRelationships(), BuildVirtualPhi::ComputeRelationships(), CBackend::ComputeRelationships(), computeResources(), tree_helper::ComputeSsaUses(), top_entity_parallel_cs::connect_loop_iter(), StateTransitionGraph_constructor::connect_state(), mux_connection_binding::connect_to_registers(), WB4_interface::connect_with_signal_name(), Bit_Value_opt::constrainSSA(), BitLatticeManipulator::constructor_bitstring(), constructor_range(), convert_bitvalue_to_integer_cst(), ConvertInBinary(), convertUsesToDFSOrdered(), constant_o::copy(), module::copy(), structural_manager::create(), tree_manipulation::create_binary_operation(), XilinxBackendFlow::create_cf(), ToolManager::create_command_line(), compatibility_based_register::create_compatibility_graph(), conflict_based_register::create_conflict_graph(), mux_connection_binding::create_connections(), create_control_flow_checker(), tree_manipulation::create_extract_bit_expr(), ModuleGeneratorManager::create_generic_module(), tree_manipulation::create_gimple_call(), short_circuit_taf::create_gimple_cond(), tree_manipulation::create_gimple_cond(), tree_manipulation::create_gimple_modify_stmt(), tree_manipulation::create_gimple_return(), tree_manipulation::create_goto(), HLS_manager::create_HLS(), tree_manipulation::create_identifier_node(), tree_manipulation::create_label(), tree_manipulation::create_lut_expr(), PragmaAnalysis::create_map_pragma(), tree_manipulation::create_parm_decl(), tree_manipulation::create_phi_node(), tree_manipulation::create_quaternary_operation(), InterfaceInfer::create_resource(), InterfaceInfer::create_resource_array(), InterfaceInfer::create_resource_m_axi(), tree_manipulation::create_result_decl(), mux_connection_binding::create_single_conn(), tree_manipulation::create_ssa_name(), fsm_controller::create_state_machine(), FunctionalUnitStep::create_template_instance(), tree_manipulation::create_ternary_operation(), tree_node_factory::create_tree_node(), tree_node_index_factory::create_tree_node(), tree_manipulation::create_unary_operation(), tree_manipulation::create_var_decl(), language_writer::create_writer(), BackendFlow::create_xml_scripts(), tree_manipulation::CreateAndExpr(), create_tree_manager::createCostTable(), tree_manipulation::CreateEqExpr(), DesignFlowFactory::CreateFlowStep(), ParserFlowStepFactory::CreateFlowStep(), DesignFlowManager::CreateFlowStep(), tree_manipulation::CreateIntegerCst(), tree_manipulation::CreateNopExpr(), tree_manipulation::CreateNotExpr(), tree_manipulation::CreateOrExpr(), BackendFlow::CreateScripts(), ToDataFileStepFactory::CreateStep(), tree_manager::CreateUniqueIntegerCst(), tree_manipulation::CreateUnsigned(), VcdSignalSelection::CrossPropagateAddrSsa(), cs_interface::cs_interface(), soft_float_cg_ext::cstCast(), discrepancy_instruction_writer::declareFunction(), HLSInstructionWriter::declareFunction(), DiscrepancyAnalysisCWriter::DeclareLocalVariables(), CWriter::DeclareLocalVariables(), simple_indent::deindent(), IndentedOutputStream::Deindent(), vcd_utility::detect_address_mismatch(), vcd_utility::detect_binary_double_mismatch(), vcd_utility::detect_binary_float_mismatch(), vcd_utility::detect_fixed_address_mismatch(), FunctionCallOpt::detect_loops(), vcd_utility::detect_mismatch(), vcd_utility::detect_mismatch_element(), vcd_utility::detect_mismatch_simple(), vcd_utility::detect_regular_mismatch(), Loops::DetectIrreducibleLoop(), Loops::DetectLoops(), mux_connection_binding::determine_connection(), SimulationTool::DetermineCycles(), HWCallPathCalculator::discover_vertex(), djgraph_dfs_tree_visitor::discover_vertex(), DiscrepancyAnalysisCWriter::DiscrepancyAnalysisCWriter(), IR_lowering::division_by_a_constant(), TTT_based_clique_covering_fast< vertex_type >::do_clique_covering(), TTT_based_clique_covering< vertex_type >::do_clique_covering(), TS_based_clique_covering< vertex_type >::do_clique_covering(), dominance< BBGraph >::dominance(), OrderedBasicBlock::dominates(), OrderedInstructions::dominates(), Vectorize::DuplicateIncrement(), Range::Eq(), tree_manager::erase_usage_info(), estimate_muxes(), AllocationInformation::estimate_muxNto1_area(), AllocationInformation::estimate_muxNto1_delay(), AllocationInformation::EstimateControllerDelay(), PhiOpNode::eval(), UnaryOpNode::eval(), BinaryOpNode::eval(), TernaryOpNode::eval(), LoadOpNode::eval(), evaluateBranch(), Schedule::EvaluateMultiWayIfsMerging(), CallSitesCollectorVisitor::examine_edge(), HWCallPathCalculator::examine_edge(), HWDiscrepancyAnalysis::Exec(), TestVectorParser::Exec(), BasicBlocksProfiling::Exec(), GenerateSynthesisScripts::Exec(), GenerateSimulationScripts::Exec(), fun_dominator_allocation::Exec(), SimulationEvaluation::Exec(), call_graph_computation::Exec(), BitValueIPA::Exec(), dead_code_eliminationIPA::Exec(), FixCharacterization::Exec(), SpiderParameter::Exec(), Evaluation::Exec(), vcd_utility::Exec(), create_tree_manager::Exec(), AadlParser::Exec(), TestbenchGeneration::Exec(), CreateAddressTranslation::Exec(), InterfaceInfer::Exec(), HLSFunctionStep::Exec(), DesignFlowManager::Exec(), VcdSignalSelection::Exec(), parametric_list_based::exec(), bipartite_matching_clique_covering< vertex_type >::exec(), ToolManager::execute(), ToolManager::execute_command(), IR_lowering::expand_MC(), IR_lowering::expand_mult_const(), IR_lowering::expand_mult_highpart(), APInt::extOrTrunc(), tree_helper::extract_array_indexes(), allocation::extract_bambu_provided(), rebuild_initialization2::extract_var_decl(), tree_manipulation::ExtractCondition(), extractOp1(), fu_binding::fill_array_ref_memory(), CompilerWrapper::FillTreeManager(), memory_allocation::finalize_memory_allocation(), port_o::find_bounded_object(), find_eq_module::find_eq_module(), tree_manager::find_identifier_nodeID(), port_o::find_isomorphic(), constant_o::find_isomorphic(), signal_o::find_isomorphic(), port_o::find_member(), module::find_member(), tree_helper::find_obj_type_ref_function(), multi_way_if::FixCfg(), FixedPointReinterpret(), Vectorize::FixPhis(), Bit_Value::forward(), Bit_Value::forward_transfer(), InterfaceInfer::forwardInterface(), Range::fromBitValues(), RealRange::fromBitValues(), FunctionBehavior::FunctionBehavior(), TestbenchGeneration::generate_init_file(), soft_float_cg_ext::generate_interface(), ModuleGeneratorManager::GenerateHDL(), modelsimWrapper::GenerateScript(), technology_manager::get_area(), AllocationInformation::get_area(), tree_helper::get_array_dim_and_bitsize(), BehavioralHelper::get_array_ref_array(), BehavioralHelper::get_array_ref_index(), tree_helper::get_array_var(), tree_helper::get_asm_string(), fu_binding::get_assign(), AllocationInformation::get_attribute_of_fu_per_op(), BehavioralHelper::get_attributes(), memory::get_base_address(), reg_binding::get_bitsize(), PragmaAnalysis::get_call_parameter(), memory::get_callSite_base_address(), coloring_based_clique_covering< vertex_type >::get_clique(), bipartite_matching_clique_covering< vertex_type >::get_clique(), StorageValueInformation::get_compatibility_weight(), allocation::get_compliant_pipelined_unit(), BehavioralHelper::get_component_ref_field(), BehavioralHelper::get_component_ref_record(), port_o::get_connected_signal(), port_o::get_connection(), constant_o::get_connection(), bus_connection_o::get_connection(), conn_binding::get_constant_obj(), HLS_manager::get_constant_string(), AllocationInformation::get_correction_time(), Schedule::get_cstep(), Schedule::get_cstep_end(), Bit_Value::get_current(), Bit_Value::get_current_or_best(), AllocationInformation::get_cycles(), get_decl_name(), BehavioralHelper::get_definition(), AllocationInformation::get_DSPs(), get_edge_info(), commandport_obj::get_elem(), module::get_event(), technology_manager::get_execution_time(), AllocationInformation::get_execution_time(), AllocationInformation::get_execution_time_dsp_modified(), memory::get_external_base_address(), operations_cfg_computation::get_first_node(), flopoco_wrapper::get_FU(), library_manager::get_fu(), technology_manager::get_fu(), AllocationInformation::get_fu(), AllocationInformation::get_fu_name(), module::get_gen_port(), fsm_controller::get_guard_value(), tree_manager::get_implementation_node(), module::get_in_out_port(), module::get_in_port(), BehavioralHelper::get_indirect_ref_var(), technology_manager::get_initiation_time(), AllocationInformation::get_initiation_time(), FunctionBehavior::get_initiation_time(), tree_helper::get_integer_cst_value(), memory::get_internal_base_address(), module::get_internal_object(), tree_node::get_kind(), BehavioralHelper::get_label_name(), technology_manager::get_library(), technology_manager::get_library_manager(), module::get_local_data(), tree_node_dup::get_loop_id(), TTT_maximal_weighted_clique< Graph >::get_max_weight_vertex(), TTT_maximal_weighted_clique_fast< Graph >::get_max_weight_vertex(), TTT_maximal_weighted_clique< Graph >::get_max_weighted_adiacent_intersection(), TTT_maximal_weighted_clique_fast< Graph >::get_max_weighted_adiacent_intersection(), BehavioralHelper::get_mem_ref_base(), BehavioralHelper::get_mem_ref_offset(), AllocationInformation::get_memory_var(), liveness::get_name(), get_node_info(), AllocationInformation::get_number_fu(), liveness::get_op_where_defined(), BehavioralHelper::get_operand_from_unary_expr(), TransitionInfo::get_operation(), module::get_out_port(), action_o::get_parameter(), memory::get_parameter_base_address(), structural_manager::get_PI(), tree_helper::get_pointed_type(), conn_binding::get_port(), port_o::get_port(), signal_o::get_port(), channel_o::get_port(), NP_functionality::get_port_list(), flopoco_wrapper::get_ports(), port_o::get_ports_size(), module::get_positional_port(), signal_o::get_positional_signal(), HDL_manager::get_post_order_structural_components(), AllocationInformation::get_prec(), module::get_process(), memory::get_proxied_internal_variables(), functions::get_proxied_shared_functions(), functions::get_proxy_mapping(), AllocationInformation::get_proxy_memory_var(), memory::get_rangesize(), get_raw_edge_info(), TransitionInfo::get_ref_state(), tree_helper::get_required_values(), action_o::get_sensitivity(), module::get_service(), functions::get_shared_functions(), signal_o::get_signal(), signal_o::get_signals_size(), AllocationInformation::get_stage_period(), liveness::get_start_op(), liveness::get_state_in(), liveness::get_state_out(), liveness::get_state_where_end(), liveness::get_state_where_run(), StateTransitionGraphManager::get_states(), StorageValueInformationPipeline::get_storage_value_index(), StorageValueInformationFsm::get_storage_value_index(), mux_conn::get_string(), AllocationInformation::get_string_name(), memory::get_symbol(), tree_manager::get_tree_node_const(), tree_helper::get_type_index(), tree_helper::get_type_name(), structural_object::get_typeRef(), tree_helper::get_used_variables(), StorageValueInformation::get_variable_index(), reg_binding::get_vars(), commandport_obj::get_vertex(), tree_helper::GetArrayDimensions(), tree_helper::GetArrayElementSize(), getAssign(), tree_helper::GetBaseVariable(), Schedule::GetBBEndingTime(), RealRange::getBitValues(), getBlockEdge(), ValueDFS_Compare::getBlockEdge_local(), getBranchBlock(), getBuiltinFieldTypes(), vcd_utility::GetClockPeriod(), CompilerWrapper::GetCompiler(), Nuutila::getComponent(), AllocationInformation::GetCondExprTimeLatency(), AllocationInformation::GetConnectionTime(), tree_helper::GetConstValue(), AllocationInformation::GetCycleLatency(), structural_object::GetDefaultParameter(), graph::GetEdgeInfo(), Schedule::GetEndingTime(), tree_helper::GetFieldIdx(), Parameter::GetFileFormat(), tree_helper::GetFormalIth(), application_manager::GetFunctionBehavior(), getFunctionPointerType(), tree_helper::GetFunctionReturnType(), tree_helper::GetFunctionSize(), getFunctionType(), pragma_manager::getGenericPragma(), Range::getLower(), tree_helper::GetMangledFunctionName(), graph::GetNodeInfo(), AllocationInformation::GetNodeTypePrec(), OpNodeInfo::GetOperation(), Parameter::getOption(), getOrCreateValueInfo(), structural_object::GetParameter(), Parameter::GetParameter(), tree_helper::GetParameterTypes(), AllocationInformation::GetPhiConnectionLatency(), Schedule::GetReadyTime(), Loop::GetRecursivelyOps(), CallGraphManager::GetRootFunction(), CallGraphManager::GetRootFunctions(), Range::getSignedMax(), Range::getSignedMin(), Range::getSpan(), application_manager::getSSAFromParm(), Schedule::GetStartingTime(), AllocationInformation::GetStatementArea(), tree_node::GetString(), AllocationInformation::GetTimeLatency(), tree_manager::GetTreeNode(), tree_manager::GetTreeReindex(), tree_helper::GetTypeName(), Range::getUnsignedMax(), Range::getUnsignedMin(), Range::getUpper(), getValueInfo(), CallGraphManager::GetVertex(), StateTransitionGraph::GetVertex(), GimpleWriter::GimpleWriter(), MemoryInitializationWriterBase::GoDown(), MemoryInitializationWriterBase::GoNext(), ComputeReservedMemory::GoUp(), MemoryInitializationWriterBase::GoUp(), tree_helper::has_omp_simd(), AllocationInformation::has_to_be_synthetized(), FunctionCallOpt::HasConstantArgs(), CSE::hash_check(), tree_helper::HasToBeDeclared(), HLSFunctionStep::HasToBeExecuted(), HDL_manager::hdl_gen(), hls::hls(), HWCallPathCalculator::HWCallPathCalculator(), PhiOpt::IdentifyPattern(), BitLatticeManipulator::inf(), VarNode::init(), NI_SSA_liveness::Initialize(), ControllerCreatorBaseStep::Initialize(), HLSFunctionStep::Initialize(), TestbenchGeneration::Initialize(), FunctionalUnitStep::Initialize(), FunctionCallOpt::Initialize(), lut_transformation::Initialize(), Bit_Value::initialize(), Bit_Value::Initialize(), cdfc_module_binding::initialize_connection_relation(), AllocationInformation::InitializeDSPDB(), AllocationInformation::InitializeMuxDB(), VcdSignalSelection::InitialPhiResIsAddress(), VcdSignalSelection::InitialSsaIsAddress(), tree_manipulation::InlineFunctionCall(), mux_connection_binding::input_logic(), tree_manager::insert_usage_info(), TopEntityMemoryMapped::insertStartDoneLogic(), conn_binding_cs::instantiate_suspension_component(), OrderedBasicBlock::instComesBefore(), soft_float_cg_ext::int_type_for(), IntegerToBitArray(), allocation::IntegrateTechnologyLibraries(), graphs_collection::InternalAddEdge(), FixStructsPassedByValue::InternalExec(), parm_decl_taken_address_fix::InternalExec(), TestbenchDUTModuleGenerator::InternalExec(), Read_handshakeModuleGenerator::InternalExec(), BuiltinWaitCallModuleGenerator::InternalExec(), BuiltinWaitCallNModuleGenerator::InternalExec(), Read_acknowledgeModuleGenerator::InternalExec(), Read_fifoModuleGenerator::InternalExec(), Read_noneModuleGenerator::InternalExec(), ReadWrite_arrayModuleGenerator::InternalExec(), ReadWriteDP_arrayModuleGenerator::InternalExec(), Write_acknowledgeModuleGenerator::InternalExec(), Write_fifoModuleGenerator::InternalExec(), Write_handshakeModuleGenerator::InternalExec(), Write_none_registeredModuleGenerator::InternalExec(), Write_validModuleGenerator::InternalExec(), Read_validModuleGenerator::InternalExec(), Write_noneModuleGenerator::InternalExec(), ReadWrite_m_axiModuleGenerator::InternalExec(), Read_axisModuleGenerator::InternalExec(), Write_axisModuleGenerator::InternalExec(), dataflow_cg_ext::InternalExec(), HWCallInjection::InternalExec(), pipeline_controller::InternalExec(), BB_based_stg::InternalExec(), FSM_NI_SSA_liveness::InternalExec(), fsm_controller::InternalExec(), SerializeMutualExclusions::InternalExec(), PredicateStatements::InternalExec(), UnComparisonLowering::InternalExec(), ExtractOmpFor::InternalExec(), TasteInterfaceGeneration::InternalExec(), SDCCodeMotion::InternalExec(), OpOrderComputation::InternalExec(), BasicBlocksCfgComputation::InternalExec(), SwitchFix::InternalExec(), FixVdef::InternalExec(), values_scheme::InternalExec(), remove_clobber_ga::InternalExec(), top_entity_parallel_cs::InternalExec(), HDLVarDeclFix::InternalExec(), classic_datapath::InternalExec(), extract_patterns::InternalExec(), BuildVirtualPhi::InternalExec(), AddOpPhiFlowEdges::InternalExec(), mem_dominator_allocation::InternalExec(), op_feedback_edges_computation::InternalExec(), AddOpLoopFlowEdges::InternalExec(), eSSA::InternalExec(), dom_post_dom_computation::InternalExec(), rebuild_initialization::InternalExec(), loops_computation::InternalExec(), NI_SSA_liveness::InternalExec(), BlockFix::InternalExec(), compute_implicit_calls::InternalExec(), Bit_Value_opt::InternalExec(), FunctionCallTypeCleanup::InternalExec(), determine_memory_accesses::InternalExec(), hls_div_cg_ext::InternalExec(), top_entity::InternalExec(), add_library::InternalExec(), CondExprRestructuring::InternalExec(), commutative_expr_restructuring::InternalExec(), simple_code_motion::InternalExec(), datapath_parallel_cs::InternalExec(), dead_code_elimination::InternalExec(), CSE::InternalExec(), FunctionCallOpt::InternalExec(), multi_way_if::InternalExec(), MultipleEntryIfReduction::InternalExec(), lut_transformation::InternalExec(), operations_cfg_computation::InternalExec(), IR_lowering::InternalExec(), port_swapping::InternalExec(), SDCScheduling::InternalExec(), PhiOpt::InternalExec(), soft_float_cg_ext::InternalExec(), allocation::InternalExec(), cdfc_module_binding::InternalExec(), Range::intersectWith(), RealRange::intersectWith(), HDL_manager::io_signal_fix_ith(), HDL_manager::io_signal_fix_ith_vector(), tree_helper::is_a_misaligned_vector(), tree_helper::is_a_nop_function_decl(), AllocationInformation::is_artificial_fu(), AllocationInformation::is_assign(), tree_helper::is_builtin_channel(), tree_helper::is_channel(), tree_helper::is_clock(), port_o::is_connected(), signal_o::is_connected(), fanout_opt::is_dest_relevant(), BehavioralHelper::is_empty_return(), tree_helper::is_event(), is_exec(), HDL_manager::is_fsm(), tree_helper::is_in_port(), tree_helper::is_inout_port(), is_large_integer(), AllocationInformation::is_memory_unit(), tree_helper::is_module(), BehavioralHelper::is_named_pointer(), AllocationInformation::is_operation_bounded(), AllocationInformation::is_operation_PI_registered(), tree_helper::is_out_port(), tree_helper::is_parameter(), tree_helper::is_port(), AllocationInformation::is_proxy_function_unit(), AllocationInformation::is_proxy_memory_unit(), AllocationInformation::is_proxy_unit(), AllocationInformation::is_proxy_wrapped_unit(), AllocationInformation::is_read_cond(), HLS_manager::is_reading_writing_function(), AllocationInformation::is_readonly_memory_unit(), AllocationInformation::is_return(), tree_helper::is_SC_BIND_PROXY_NIL(), memory::is_sds_var(), tree_helper::is_signal(), FunctionBehavior::is_simple_pipeline(), AllocationInformation::is_simple_pointer_plus_expr(), AllocationInformation::is_single_bool_test_cond_expr_units(), tree_helper::is_ssa_name(), is_start(), BehavioralHelper::is_var_args(), AllocationInformation::is_vertex_bounded(), tree_helper::is_virtual(), tree_helper::IsAligned(), tree_helper::IsArrayEquivType(), tree_helper::IsArrayType(), tree_helper::IsBooleanType(), CallGraphManager::IsCallPoint(), tree_helper::IsComplexType(), tree_helper::IsConstType(), tree_helper::IsEnumType(), Range::isFullSet(), tree_helper::IsFunctionDeclaration(), tree_helper::IsFunctionPointerType(), tree_helper::IsFunctionType(), tree_helper::IsPackedType(), tree_helper::IsPointerResolved(), tree_helper::IsPointerType(), tree_helper::IsPositiveIntegerValue(), tree_helper::IsRealType(), tree_helper::IsSignedIntegerType(), tree_helper::IsStructType(), tree_helper::IsUnionType(), tree_helper::IsUnsignedIntegerType(), tree_helper::IsVectorType(), tree_helper::IsVoidType(), fu_binding::join_merge_split(), dead_code_elimination::kill_uses(), Translator::LatexColumnFormat::LatexColumnFormat(), APInt::leadingZeros(), rebuild_initialization2::look_for_ROMs(), CallGraphBuiltinCall::lookForBuiltinCall(), fu_binding::manage_extern_global_port(), datapath_parallel_cs::manage_extern_global_port_parallel(), cs_interface::manage_extern_global_port_top(), fu_binding::manage_killing_function_proxies(), fu_binding::manage_killing_memory_proxies(), fu_binding_cs::manage_memory_port_hierarchical(), fu_binding_cs::manage_memory_port_kernel(), fu_binding::manage_memory_ports_chained(), fu_binding::manage_memory_ports_parallel_chained(), bloc::manageCallGraph(), Parameter::ManageDefaultOptions(), functions::map_shared_function(), materializeStack(), AllocationInformation::max_number_of_operations(), AllocationInformation::max_number_of_resources(), tree_manager::merge_tree_managers(), multi_way_if::MergeCondCond(), PhiOpt::MergePhi(), AllocationInformation::min_number_of_resources(), minimal_interface::minimal_interface(), module_interface::module_interface(), ModuleArchitecture::ModuleArchitecture(), BB_based_stg::move_with_duplication(), Range::mul(), conn_binding::mux_allocation(), AllocationInformation::mux_area_unit_raw(), conn_binding::mux_connection(), AllocationInformation::mux_time_unit_raw(), Range::Ne(), Range::negate(), HostProfiling::normalize(), Range::normalizeRange(), tree_helper::NormalizeTypename(), Range::Not(), Nuutila::Nuutila(), glpk_solver::objective_add(), OctetStringAsnType::OctetStringAsnType(), tree_helper::op_symbol(), LoadOpNode::opCtorGenerator(), Operand::Operand(), variable2obj< generic_objRef >::operator()(), vertex2obj< dataType >::operator()(), SDCSorter::operator()(), GenericObjSorter::operator()(), GenericObjUnsignedIntSorter::operator()(), FunctionWriter::operator()(), edge_integer_order_by_map::operator()(), last_intermediate_state::operator()(), next_unique_state::operator()(), op_vertex_order_by_map::operator()(), FunctionExpander::operator()(), AugmentedVector< T >::operator*(), AugmentedVector< T >::operator-(), conn_binding::ConnectionTarget::operator<(), reg_binding::operator[](), fu_binding::operator[](), Bit_Value_opt::optimize(), Range::Or(), PandaSystem(), FunctionCallTypeCleanup::ParametersTypeCleanup(), XilinxBackendFlow::parse_DSPs(), TestVectorParser::ParseXMLFile(), CWriter::pop_stack(), PragmaParser::PragmaParser(), PredicateWithEdge::PredicateWithEdge(), xml_element::print(), structural_type_descriptor::print(), vcd_utility::print_discrepancy(), BehavioralHelper::print_phinode_res(), BehavioralHelper::print_type_declaration(), BehavioralHelper::PrintConstant(), BehavioralHelper::PrintInit(), BehavioralHelper::PrintNode(), hls::PrintResources(), tree_helper::PrintType(), BehavioralHelper::PrintVarDeclaration(), BehavioralHelper::PrintVariable(), MemoryInitializationCWriter::Process(), MemoryInitializationWriter::Process(), lut_transformation::ProcessBasicBlock(), processBranch(), processMultiWayIf(), VcdSignalSelection::PropagateAddrParamToSsa(), VcdSignalSelection::PropagateAddrSsa(), propagateInterface(), Bit_Value_opt::propagateValue(), CWriter::push_stack(), bloc::PushAfter(), bloc::PushBack(), bloc::PushBefore(), bloc::PushFront(), Range::Range(), Translator::read_column_formats(), CompilerWrapper::ReadParameters(), RealRange::RealRange(), PragmaParser::recognize_call_point_hw_pragma(), structural_manager::reconnect_signal_member(), parm2ssa::recursive_analysis(), string_cst_fix::recursive_analysis(), hls_div_cg_ext::recursive_examinate(), VarDeclFix::recursive_examinate(), CheckSystemType::recursive_examinate(), soft_float_cg_ext::RecursiveExaminate(), DesignFlowManager::RecursivelyAddSteps(), tree_manager::RecursiveReplaceTreeNode(), unique_binding_register::RegisterBinding(), chordal_coloring_register::RegisterBinding(), application_manager::RegisterTransformation(), port_o::remove_connection(), structural_manager::remove_empty_signal(), module::remove_internal_object(), signal_o::remove_port(), module::remove_port(), CallGraphManager::RemoveCallPoint(), PhiOpt::RemoveCondExpr(), gimple_phi::RemoveDefEdge(), RawGraph::RemoveEdge(), bloc::RemovePhi(), graphs_collection::RemoveSelector(), bloc::RemoveStmt(), eSSA::renameUses(), bloc::Replace(), compute_implicit_calls::replace_with_memcpy(), compute_implicit_calls::replace_with_memset(), CallGraphManager::ReplaceCallPoint(), tree_manager::ReplaceTreeNode(), PhiOpt::ReplaceVirtualUses(), soft_float_cg_ext::replaceWithCall(), FunctionCallOpt::RequestCallOpt(), meilp_solver::resize(), port_o::resize_std_port(), ResolvePointerAlias(), Range::sat_add(), Range::sat_sub(), Range::sdiv(), slack_based_filtering::select_candidate_to_remove(), VcdSignalSelection::SelectInitialAddrParam(), VcdSignalSelection::SelectInitialSsa(), VcdSignalSelection::SelectInternalSignals(), SequenceOfAsnType::SequenceOfAsnType(), Operand::set(), glpk_solver::set_all_bounds(), functional_unit::set_clock_period(), vcd_trace_head::set_consecutive_state_executions(), memory::set_internal_base_address_alignment(), structural_object::set_owner(), structural_manager::SetParameter(), structural_object::SetParameter(), InterfaceInfer::setReadInterface(), application_manager::setSSAFromParm(), bloc::SetSSAUsesComputed(), gimple_phi::SetSSAUsesComputed(), gimple_node::SetVdef(), InterfaceInfer::setWriteInterface(), Range::sextOrTrunc(), Range::Sge(), Range::Sgt(), Range::shl(), Range::shr(), BitLatticeManipulator::sign_extend_bitstring(), sign_reduce_bitstring(), BitLatticeManipulator::sign_reduce_bitstring(), dead_code_eliminationIPA::signature_opt(), PhiOpt::SinglePhiOptimization(), VcdSignalSelection::SingleStepPropagateAddrSsa(), VcdSignalSelection::SingleStepPropagateParamToSsa(), BitLatticeManipulator::Size(), Range::Sle(), Range::Slt(), Range::SMax(), Range::SMin(), soft_float_cg_ext::soft_float_cg_ext(), SymbRange::solveFuture(), fu_binding::specialise_fu(), StateTransitionGraphManager::specialise_mu(), ModuleGeneratorManager::specialize_fu(), fu_binding::specialize_memory_unit(), Range::srem(), soft_float_cg_ext::ssa_lowering(), CallSitesCollectorVisitor::start_vertex(), VarNode::storeAbstractState(), BitLatticeManipulator::string_cst_bitstring(), Range::sub(), signal_o::substitute_port(), PragmaParser::substitutePragmas(), BitLatticeManipulator::sup(), TernaryOpNode::TernaryOpNode(), FunctionArchitecture::to_func_attr(), FunctionArchitecture::to_iface_attr(), NP_functionality::to_NP_functionaly_type(), FunctionArchitecture::to_parm_attr(), Vectorize::Transform(), Range::truncate(), structural_object::type_resize(), Range::udiv(), Range::Uge(), Range::Ugt(), Range::Ule(), Range::Ult(), Range::UMax(), Range::UMin(), vcd_trace_head::unbounded_find_end_time(), Unfold(), Range::unionWith(), RealRange::unionWith(), NI_SSA_liveness::Up_and_Mark(), vcd_trace_head::update(), library_manager::update(), BitLatticeManipulator::update_current(), bloc::update_new_stmt(), multi_way_if::UpdateCfg(), Schedule::UpdateTime(), Range::urem(), Range::usat_add(), Range::usat_sub(), varFound(), VarNode::VarNode(), vcd_parser::vcd_add_signal(), vcd_utility::vcd_utility(), VcdSignalSelection::VcdSignalSelection(), tree_manipulation::VersionFunctionCall(), port_swapping::vertex_distance(), virtual_phi_nodes_split::virtual_split_phi(), Nuutila::visit(), XilinxBackendFlow::vivado_xparse_utilization(), HDL_manager::write_behavioral(), VHDL_writer::write_component_declaration(), HDL_manager::write_components(), HDL_manager::write_fsm(), fu_binding::write_init(), VHDL_writer::write_io_signal_post_fix(), verilog_writer::write_io_signal_post_fix(), VHDL_writer::write_io_signal_post_fix_vector(), verilog_writer::write_io_signal_post_fix_vector(), verilog_writer::write_library_declaration(), VHDL_writer::write_library_declaration(), HDL_manager::write_module(), VHDL_writer::write_module_declaration(), verilog_writer::write_module_declaration(), VHDL_writer::write_module_definition_end(), VHDL_writer::write_module_instance_begin(), verilog_writer::write_module_instance_begin(), VHDL_writer::write_module_internal_declaration(), VHDL_writer::write_module_parametrization(), verilog_writer::write_module_parametrization(), VHDL_writer::write_module_parametrization_decl(), verilog_writer::write_module_parametrization_decl(), system_verilog_writer::write_NP_functionalities(), VHDL_writer::write_NP_functionalities(), verilog_writer::write_NP_functionalities(), VHDL_writer::write_port_binding(), verilog_writer::write_port_binding(), VHDL_writer::write_port_declaration(), verilog_writer::write_port_declaration(), verilog_writer::write_signal_declaration(), verilog_writer::write_state_declaration(), Translator::write_to_csv(), Translator::write_to_pa(), VHDL_writer::write_transition_output_functions(), verilog_writer::write_transition_output_functions(), VHDL_writer::write_vector_port_binding(), verilog_writer::write_vector_port_binding(), FunctionFrontendFlowStep::WriteBBGraphDot(), VHDL_writer::WriteBuiltin(), verilog_writer::WriteBuiltin(), DiscrepancyAnalysisCWriter::WriteExtraInitCode(), HLSCWriter::WriteFile(), CWriter::WriteFunctionBody(), DiscrepancyAnalysisCWriter::WriteFunctionDeclaration(), DiscrepancyAnalysisCWriter::WriteFunctionImplementation(), CWriter::WriteGlobalDeclarations(), HLSCWriter::WriteMainTestbench(), DiscrepancyAnalysisCWriter::WriteMainTestbench(), CompilerWrapper::WriteOptimizationsString(), HLSCWriter::WriteParamInitialization(), DiscrepancyAnalysisCWriter::writePostInstructionInfo(), DiscrepancyAnalysisCWriter::writePreInstructionInfo(), EdgeCWriter::writeRoutineInstructions_rec(), CWriter::writeRoutineInstructions_rec(), BackendFlow::xload(), hls::xload(), library_manager::xload(), HLS_constraints::xload(), structural_type_descriptor::xload(), operation::xload(), structural_object::xload(), port_o::xload(), signal_o::xload(), module::xload(), xml_foreach_t::xml_foreach_t(), Range::Xor(), XilinxBackendFlow::xparse_timing(), LatticeBackendFlow::xparse_utilization(), AlteraBackendFlow::xparse_utilization(), BashBackendFlow::xparse_utilization(), NanoXploreBackendFlow::xparse_utilization(), XilinxBackendFlow::xparse_xst_utilization(), generic_device::xwrite(), and Range::zextOrTrunc().

◆ THROW_ERROR

#define THROW_ERROR (   str_expr)    throw_error(0, (str_expr), __PRETTY_FUNCTION__, __FILE__, __LINE__)

helper function used to throw an error in a standard way

Definition at line 263 of file exceptions.hpp.

Referenced by tree_helper::AccessedMaximumBitsize(), tree_helper::AccessedMinimunBitsize(), HLS_constraints::add_builtin_constraints(), conn_binding::add_command_ports(), structural_manager::add_connection(), mux_connection_binding::add_conversion(), add_directed_edge(), add_directed_edge_single(), module::add_internal_object(), memory::add_memory_parameter(), structural_manager::add_port(), structural_manager::add_port_vector(), top_entity::add_ports(), structural_manager::add_sign(), structural_manager::add_sign_vector(), conn_binding::add_sparse_logic_dp(), fu_binding::add_to_SM(), pragma_manager::AddFunctionDefinitionPragmas(), tree_helper::AllocatedMemorySize(), AlteraBackendFlow::AlteraBackendFlow(), determine_memory_accesses::analyze_node(), FunctionalUnitStep::AnalyzeFu(), liveness::are_in_conflict(), DesignParameters::assign(), attribute::attribute(), CallSitesCollectorVisitor::back_edge(), CalledFunctionsVisitor::back_edge(), Bit_Value::backward_transfer(), BashBackendFlow::BashBackendFlow(), conn_binding::bind_command_port(), conn_binding::bind_port(), bitstring_to_string(), structural_manager::build_graph(), operations_cfg_computation::build_operation_recursive(), WB4_interface::build_WB4_complete_logic(), minimal_interface::build_wrapper(), top_entity_parallel_cs::BW_loop_iter(), CallGraphManager::call_graph_computation_recursive(), AllocationInformation::can_be_asynchronous_ram(), CompilerWrapper::CGetPointerSize(), structural_manager::change_connection(), structural_manager::change_port_direction(), InterfaceInfer::ChasePointerInterfaceRecurse(), HLS_manager::check_bitwidth(), allocation::check_for_memory_compliancy(), ToolManager::check_output_files(), tree_manager::check_ssa_uses(), structural_manager::check_structure(), MemoryInitializationWriterBase::CheckEnd(), lut_transformation::CheckIfPI(), SpiderParameter::CheckParameters(), EucalyptusParameter::CheckParameters(), BambuParameter::CheckParameters(), Parameter::CheckParameters(), NanoXploreBackendFlow::CheckSynthesisResults(), XilinxBackendFlow::CheckSynthesisResults(), CompilerWrapper::clang_recipes(), Vectorize::ClassifyTreeNode(), tree_manager::collapse_into(), CompilerWrapper::CompileFile(), ASLAP::compute_ALAP(), parametric_list_based::compute_exec_stage_time(), CreateAddressTranslation::ComputeAddress(), Evaluation::ComputeHLSRelationships(), computeResources(), ToolManager::configure(), top_entity_parallel_cs::connect_loop_iter(), mux_connection_binding::connect_to_registers(), ConvertInBinary(), port_o::copy(), module::copy(), xml_script_node_t::create(), structural_manager::create(), tree_manipulation::create_binary_operation(), XilinxBackendFlow::create_cf(), mux_connection_binding::create_connections(), tree_manipulation::create_function_decl(), ModuleGeneratorManager::create_generic_module(), PragmaAnalysis::create_map_pragma(), PragmaAnalysis::create_omp_pragma(), create_project_file(), tree_manipulation::create_quaternary_operation(), InterfaceInfer::create_resource(), meilp_solver::create_solver(), fsm_controller::create_state_machine(), SynthesisTool::create_synthesis_tool(), tree_manipulation::create_ternary_operation(), tree_node_factory::create_tree_node(), tree_node_index_factory::create_tree_node(), tree_manipulation::create_unary_operation(), language_writer::create_writer(), BackendFlow::CreateScripts(), SimulationTool::CreateSimulationTool(), tree_manipulation::CreateUnsigned(), soft_float_cg_ext::cstCast(), flopoco_wrapper::DECODE_BITS(), mux_connection_binding::determine_connection(), ToolManager::determine_paths(), BackendFlow::DetermineBackendFlowType(), SimulationTool::DetermineCycles(), IR_lowering::division_by_a_constant(), tree_manager::erase_usage_info(), estimate_muxes(), xml_script_node_t::evaluate_condition(), HWDiscrepancyAnalysis::Exec(), CTestbenchExecution::Exec(), fun_dominator_allocation::Exec(), PragmaSubstitution::Exec(), LoadDefaultTechnology::Exec(), LoadDeviceTechnology::Exec(), call_graph_computation::Exec(), tree_panda_gcc_parameter::Exec(), BitValueIPA::Exec(), SpiderParameter::Exec(), EucalyptusParameter::Exec(), AsnParser::Exec(), BambuParameter::Exec(), vcd_utility::Exec(), create_tree_manager::Exec(), AadlParser::Exec(), TestbenchGeneration::Exec(), InterfaceInfer::Exec(), parametric_list_based::exec(), ToolManager::execute_command(), IR_lowering::expand_mult_const(), IR_lowering::expand_smod_pow2(), CallGraphManager::expandCallGraphFromFunction(), AllocationInformation::extract_bambu_provided_name(), HLS_device::factory(), fileIO_istream_open(), fu_binding::fill_array_ref_memory(), CompilerWrapper::FillTreeManager(), memory_allocation::finalize_memory_allocation(), tree_manager::find(), port_o::find_isomorphic(), event_o::find_isomorphic(), data_o::find_isomorphic(), action_o::find_isomorphic(), constant_o::find_isomorphic(), signal_o::find_isomorphic(), module::find_isomorphic(), channel_o::find_isomorphic(), bus_connection_o::find_isomorphic(), port_o::find_member(), event_o::find_member(), data_o::find_member(), action_o::find_member(), constant_o::find_member(), signal_o::find_member(), module::find_member(), bus_connection_o::find_member(), tree_helper::find_obj_type_ref_function(), soft_float_cg_ext::floatAbs(), soft_float_cg_ext::floatNegate(), flopoco_wrapper::flopoco_wrapper(), Bit_Value::forward_transfer(), xst_wrapper::GenerateProjectFile(), XilinxTasteBackendFlow::GenerateSynthesisScripts(), tree_helper::get_array_var(), AllocationInformation::get_attribute_of_fu_per_op(), BehavioralHelper::get_attributes(), PragmaAnalysis::get_call_parameter(), StorageValueInformation::get_compatibility_weight(), AllocationInformation::get_correction_time(), AllocationInformation::get_latency_string(), tree_node_dup::get_loop_id(), commandport_obj::get_mode_string(), tree_helper::get_multi_way_if_pos(), Translator::get_normalization(), generic_device::get_parameter(), conn_binding::get_port(), HDL_manager::get_post_order_structural_components(), tree_helper::get_required_values(), SynthesisTool::get_reserved_parameter(), get_signal_variations(), tree_helper::get_used_variables(), DesignParameters::get_value(), attribute::get_value_type_str(), CompilerWrapper::GetAnalyzeCompiler(), tree_helper::GetBaseVariable(), tree_manipulation::GetBooleanType(), vcd_utility::GetClockPeriod(), CompilerWrapper::GetCompiler(), CompilerWrapper::getCompilerSuffix(), CompilerWrapper::getCompilerVersion(), AllocationInformation::GetConnectionTime(), CompilerWrapper::getDefaultCompiler(), tree_helper::GetFieldIdx(), GetFile(), tree_helper::GetFormalIth(), tree_helper::GetFunctionName(), tree_helper::GetMangledFunctionName(), application_manager::GetProducedValue(), tree_manipulation::GetSignedIntegerType(), bash_flow_wrapper::getStringValue(), NanoXploreWrapper::getStringValue(), AlteraWrapper::getStringValue(), LatticeWrapper::getStringValue(), XilinxWrapper::getStringValue(), CompilerWrapper::GetSystemIncludes(), AllocationInformation::GetTimeLatency(), tree_helper::GetTypeName(), tree_manipulation::GetUnsignedIntegerType(), GimpleWriter::GimpleWriter(), MemoryInitializationWriterBase::GoDown(), MemoryInitializationWriterBase::GoUp(), HLS_constraints::HLS_constraints(), LatticeBackendFlow::InitDesignParameters(), XilinxBackendFlow::InitDesignParameters(), mem_dominator_allocation::Initialize(), mux_connection_binding::input_logic(), tree_manager::insert_usage_info(), conn_binding_cs::instantiate_suspension_component(), allocation::IntegrateTechnologyLibraries(), FixStructsPassedByValue::InternalExec(), TestbenchDUTModuleGenerator::InternalExec(), Read_handshakeModuleGenerator::InternalExec(), Read_acknowledgeModuleGenerator::InternalExec(), Write_validModuleGenerator::InternalExec(), ReadWrite_m_axiModuleGenerator::InternalExec(), Read_axisModuleGenerator::InternalExec(), Read_fifoModuleGenerator::InternalExec(), Read_validModuleGenerator::InternalExec(), Read_noneModuleGenerator::InternalExec(), Write_axisModuleGenerator::InternalExec(), Write_fifoModuleGenerator::InternalExec(), Write_handshakeModuleGenerator::InternalExec(), dataflow_cg_ext::InternalExec(), cs_interface::InternalExec(), FSM_NI_SSA_liveness::InternalExec(), SerializeMutualExclusions::InternalExec(), ExtractOmpAtomic::InternalExec(), minimal_interface::InternalExec(), ExtractOmpFor::InternalExec(), classic_datapath::InternalExec(), mem_dominator_allocation::InternalExec(), simple_code_motion::InternalExec(), dead_code_elimination::InternalExec(), IR_lowering::InternalExec(), SDCScheduling::InternalExec(), allocation::InternalExec(), cdfc_module_binding::InternalExec(), HDL_manager::io_signal_fix_ith_vector(), is_binary_string_repr(), AllocationInformation::is_operation_bounded(), tree_helper::is_packed_access(), CompilerWrapper::isCurrentOrNewer(), LatticeBackendFlow::LatticeBackendFlow(), APInt::leadingZeros(), TreeFlexLexer::LexerError(), XmlFlexLexer::LexerError(), generic_device::load_devices(), main(), glpk_solver::make(), fu_binding_cs::manage_extern_global_port(), Parameter::ManageDefaultOptions(), VHDL_writer::may_slice_string(), verilog_writer::may_slice_string(), ModuleArchitecture::ModuleArchitecture(), conn_binding::mux_connection(), NanoXploreBackendFlow::NanoXploreBackendFlow(), glpk_solver::objective_add(), tree_helper::op_symbol(), cg_edge_writer::operator()(), FunctionEdgeWriter::operator()(), Bit_Value_opt::optimize(), DataXmlParser::Parse(), parse_discrepancy(), vcd_parser::parse_vcd(), TestVectorParser::ParseUserString(), TestVectorParser::ParseXMLFile(), ToolManager::prepare_input_files(), TransitionInfo::print(), structural_type_descriptor::print(), BehavioralHelper::print_attributes(), BehavioralHelper::print_forward_declaration(), tree_helper::print_function_name(), BehavioralHelper::PrintConstant(), BehavioralHelper::PrintInit(), BehavioralHelper::PrintNode(), tree_helper::PrintType(), MemoryInitializationCWriter::Process(), MemoryInitializationWriter::Process(), lut_transformation::ProcessBasicBlock(), memory::propagate_memory_parameters(), CompilerWrapper::QueryCompilerConfig(), Translator::read_column_formats(), read_technology_File(), CompilerWrapper::readExternalSymbols(), CompilerWrapper::ReadParameters(), CompilerWrapper::ReadXml(), PragmaParser::recognize_omp_pragma(), structural_manager::reconnect_signal_member(), soft_float_cg_ext::RecursiveExaminate(), tree_manager::RecursiveReplaceTreeNode(), structural_manager::remove_connection(), structural_manager::remove_empty_signal(), module::remove_internal_object(), glpk_solver::set_all_bounds(), fu_binding_cs::set_atomic_memory_parameter(), HLS_constraints::set_max_registers(), SimulationTool::Simulate(), BitLatticeManipulator::Size(), soft_float_cg_ext::soft_float_cg_ext(), fu_binding::specialise_fu(), ModuleGeneratorManager::specialize_fu(), string_to_bitstring(), structural_type_descriptor::structural_type_descriptor(), port_o::substitute_connection(), synth_mult(), SimulationTool::to_sim_type(), bash_flow_wrapper::toString(), NanoXploreWrapper::toString(), AlteraWrapper::toString(), LatticeWrapper::toString(), XilinxWrapper::toString(), verilog_writer::type_converter(), VHDL_writer::type_converter(), verilog_writer::type_converter_size(), VHDL_writer::type_converter_size(), structural_object::type_resize(), InterfaceInfer::interface_info::update(), Bit_Value::update_IR(), vcd_parser::vcd_add_signal(), vcd_parser::vcd_parse_def(), vcd_parser::vcd_parse_def_var(), vcd_parser::vcd_parse_sim(), vcd_parser::vcd_parse_sim_real(), vcd_parser::vcd_parse_sim_vector(), vcd_parser::vcd_parse_skip_to_end(), vcd_parser::vcd_pop_def_scope(), vcd_parser::vcd_push_def_scope(), XilinxBackendFlow::vivado_xparse_utilization(), VHDL_writer::write_assign(), HDL_manager::write_components(), HDL_manager::write_flopoco_module(), fu_binding::write_init(), HDL_manager::write_module(), verilog_writer::write_module_parametrization(), VHDL_writer::write_port_declaration(), verilog_writer::write_port_declaration(), Translator::write_to_latex(), VHDL_writer::write_transition_output_functions(), verilog_writer::write_transition_output_functions(), verilog_writer::write_vector_port_binding(), raw_writer::write_when_not_null_point_to(), structural_manager::WriteDot(), HLSCWriter::WriteMainTestbench(), DiscrepancyAnalysisCWriter::WriteMainTestbench(), HLSCWriter::WriteParamDecl(), HLSCWriter::WriteParamInitialization(), DiscrepancyAnalysisCWriter::writePostInstructionInfo(), EdgeCWriter::writeRoutineInstructions_rec(), CWriter::writeRoutineInstructions_rec(), XilinxBackendFlow::XilinxBackendFlow(), BackendFlow::xload(), hls::xload(), SynthesisTool::xload(), operation::xload(), structural_object::xload(), functional_unit::xload(), functional_unit_template::xload(), module::xload(), SynthesisTool::xload_scripts(), xml_ite_block_t::xml_ite_block_t(), xml_parameter_t::xml_parameter_t(), xml_set_entry_t::xml_set_entry_t(), xml_set_variable_t::xml_set_variable_t(), XilinxBackendFlow::xparse_timing(), LatticeBackendFlow::xparse_utilization(), AlteraBackendFlow::xparse_utilization(), BashBackendFlow::xparse_utilization(), NanoXploreBackendFlow::xparse_utilization(), XilinxBackendFlow::xparse_xst_utilization(), RTLCharacterization::xwrite_characterization(), and RTLCharacterization::xwrite_device_file().

◆ THROW_ERROR_CODE

#define THROW_ERROR_CODE (   code,
  str_expr 
)

◆ THROW_UNREACHABLE

#define THROW_UNREACHABLE (   str_expr)
Value:
do \
{ \
THROW_ERROR(std::string("This point should never be reached - " + std::string(str_expr))); \
} while(0)

helper function used to specify that some points should never be reached

Definition at line 292 of file exceptions.hpp.

Referenced by conn_binding::add_datapath_connection(), flopoco_wrapper::add_FU(), glpk_solver::add_row(), ParallelMemoryFuBinding::add_to_SM(), CallGraphManager::AddCallPoint(), SDCScheduling::AddDelayConstraints(), graphs_collection::AddEdge(), Vectorize::AddGuards(), ssa_name::AddUseStmt(), vcd_trace_head::advance(), tree_helper::AllocatedMemorySize(), determine_memory_accesses::analyze_node(), IndentedOutputStream::Append(), PhiOpt::ApplyIfNothing(), PhiOpt::ApplyIfRemove(), PhiOpt::ApplyMultiRemove(), Bit_Value::backward(), Bit_Value::backward_chain(), Bit_Value::backward_transfer(), branchOpRecurse(), operations_cfg_computation::build_operation_recursive(), WB4_interface::build_WB4_complete_logic(), HWCallInjection::buildBuiltinCall(), allocation::BuildProxyFunction(), CallGraphManager::call_graph_computation_recursive(), BehavioralHelper::CanBeSpeculated(), FunctionBehavior::CGetBBGraph(), ssa_name::CGetDefStmt(), AuxDesignFlowStep::CGetDesignFlowStepFactory(), RTLCharacterization::CGetDesignFlowStepFactory(), tree_helper::CGetElements(), tree_helper::CGetFieldTypes(), Loops::CGetLoop(), FunctionBehavior::CGetOpGraph(), tree_helper::CGetPointedType(), InterfaceInfer::ChasePointerInterfaceRecurse(), allocation::check_for_memory_compliancy(), check_for_simple_pointer_arithmetic(), simple_code_motion::CheckMovable(), Vectorize::ClassifyTreeNode(), CliqueCovering_AlgorithmToString(), Translator::LatexColumnFormat::Compare(), compute_edge_increments(), tree_helper::compute_ssa_uses_rec_ptr(), CreateAddressTranslation::ComputeAddress(), Schedule::ComputeCriticalPath(), DataDependenceComputation::Computedependencies(), HWCallInjection::ComputeFrontendRelationships(), dataflow_cg_ext::ComputeFrontendRelationships(), PredicateStatements::ComputeFrontendRelationships(), SerializeMutualExclusions::ComputeFrontendRelationships(), VirtualAggregateDataFlowAnalysis::ComputeFrontendRelationships(), BambuFrontendFlow::ComputeFrontendRelationships(), HDLFunctionDeclFix::ComputeFrontendRelationships(), BBCdgComputation::ComputeFrontendRelationships(), OpCdgComputation::ComputeFrontendRelationships(), UnComparisonLowering::ComputeFrontendRelationships(), ExtractOmpAtomic::ComputeFrontendRelationships(), BBOrderComputation::ComputeFrontendRelationships(), OpOrderComputation::ComputeFrontendRelationships(), CompleteBBGraph::ComputeFrontendRelationships(), CompleteCallGraph::ComputeFrontendRelationships(), FixStructsPassedByValue::ComputeFrontendRelationships(), parm_decl_taken_address_fix::ComputeFrontendRelationships(), SDCCodeMotion::ComputeFrontendRelationships(), ExtractOmpFor::ComputeFrontendRelationships(), AddArtificialCallFlowEdges::ComputeFrontendRelationships(), BBReachabilityComputation::ComputeFrontendRelationships(), OpReachabilityComputation::ComputeFrontendRelationships(), BasicBlocksCfgComputation::ComputeFrontendRelationships(), use_counting::ComputeFrontendRelationships(), SwitchFix::ComputeFrontendRelationships(), PragmaSubstitution::ComputeFrontendRelationships(), AddOpPhiFlowEdges::ComputeFrontendRelationships(), FixVdef::ComputeFrontendRelationships(), BitValueRange::ComputeFrontendRelationships(), remove_clobber_ga::ComputeFrontendRelationships(), ExtractGimpleCondOp::ComputeFrontendRelationships(), UpdateSchedule::ComputeFrontendRelationships(), call_graph_computation::ComputeFrontendRelationships(), LoopsAnalysisBambu::ComputeFrontendRelationships(), SymbolicApplicationFrontendFlowStep::ComputeFrontendRelationships(), extract_patterns::ComputeFrontendRelationships(), eSSA::ComputeFrontendRelationships(), FunctionCallTypeCleanup::ComputeFrontendRelationships(), BuildVirtualPhi::ComputeFrontendRelationships(), ScalarSsaDataDependenceComputation::ComputeFrontendRelationships(), call_expr_fix::ComputeFrontendRelationships(), bb_feedback_edges_computation::ComputeFrontendRelationships(), loops_computation::ComputeFrontendRelationships(), op_feedback_edges_computation::ComputeFrontendRelationships(), AddBbEcfgEdges::ComputeFrontendRelationships(), AddOpExitFlowEdges::ComputeFrontendRelationships(), AddOpLoopFlowEdges::ComputeFrontendRelationships(), fanout_opt::ComputeFrontendRelationships(), dom_post_dom_computation::ComputeFrontendRelationships(), Bit_Value_opt::ComputeFrontendRelationships(), dead_code_eliminationIPA::ComputeFrontendRelationships(), create_tree_manager::ComputeFrontendRelationships(), InterfaceInfer::ComputeFrontendRelationships(), rebuild_initialization::ComputeFrontendRelationships(), BitValueIPA::ComputeFrontendRelationships(), CallGraphBuiltinCall::ComputeFrontendRelationships(), compute_implicit_calls::ComputeFrontendRelationships(), NI_SSA_liveness::ComputeFrontendRelationships(), BlockFix::ComputeFrontendRelationships(), parm2ssa::ComputeFrontendRelationships(), SplitReturn::ComputeFrontendRelationships(), FunctionCallOpt::ComputeFrontendRelationships(), HostProfiling::ComputeFrontendRelationships(), hls_div_cg_ext::ComputeFrontendRelationships(), determine_memory_accesses::ComputeFrontendRelationships(), simple_code_motion::ComputeFrontendRelationships(), string_cst_fix::ComputeFrontendRelationships(), VarDeclFix::ComputeFrontendRelationships(), CondExprRestructuring::ComputeFrontendRelationships(), dead_code_elimination::ComputeFrontendRelationships(), commutative_expr_restructuring::ComputeFrontendRelationships(), PragmaAnalysis::ComputeFrontendRelationships(), RemoveEndingIf::ComputeFrontendRelationships(), virtual_phi_nodes_split::ComputeFrontendRelationships(), CreateAddressTranslation::ComputeFrontendRelationships(), VarComputation::ComputeFrontendRelationships(), CSE::ComputeFrontendRelationships(), short_circuit_taf::ComputeFrontendRelationships(), rebuild_initialization2::ComputeFrontendRelationships(), multi_way_if::ComputeFrontendRelationships(), MultipleEntryIfReduction::ComputeFrontendRelationships(), lut_transformation::ComputeFrontendRelationships(), IR_lowering::ComputeFrontendRelationships(), CheckSystemType::ComputeFrontendRelationships(), operations_cfg_computation::ComputeFrontendRelationships(), Vectorize::ComputeFrontendRelationships(), PhiOpt::ComputeFrontendRelationships(), soft_float_cg_ext::ComputeFrontendRelationships(), Bit_Value::ComputeFrontendRelationships(), HWPathComputation::ComputeHLSRelationships(), CallGraphUnfolding::ComputeHLSRelationships(), GenerateTasteHDLArchitecture::ComputeHLSRelationships(), dominator_allocation::ComputeHLSRelationships(), HLSSynthesisFlow::ComputeHLSRelationships(), OmpBodyLoopSynthesisFlow::ComputeHLSRelationships(), OmpForWrapperCSSynthesisFlow::ComputeHLSRelationships(), WriteHLSSummary::ComputeHLSRelationships(), BB_based_stg::ComputeHLSRelationships(), GenerateSimulationScripts::ComputeHLSRelationships(), GenerateSynthesisScripts::ComputeHLSRelationships(), GenerateTasteSynthesisScript::ComputeHLSRelationships(), standard_hls::ComputeHLSRelationships(), virtual_hls::ComputeHLSRelationships(), function_allocation::ComputeHLSRelationships(), generate_hdl::ComputeHLSRelationships(), VcdSignalSelection::ComputeHLSRelationships(), liveness_computer::ComputeHLSRelationships(), top_entity_parallel_cs::ComputeHLSRelationships(), easy_module_binding::ComputeHLSRelationships(), SimulationEvaluation::ComputeHLSRelationships(), ControlFlowChecker::ComputeHLSRelationships(), TasteInterfaceGeneration::ComputeHLSRelationships(), ClassicalHLSSynthesisFlow::ComputeHLSRelationships(), fu_binding_creator::ComputeHLSRelationships(), storage_value_insertion::ComputeHLSRelationships(), chaining::ComputeHLSRelationships(), SynthesisEvaluation::ComputeHLSRelationships(), reg_binding_creator::ComputeHLSRelationships(), HLSFunctionBitValue::ComputeHLSRelationships(), TestVectorParser::ComputeHLSRelationships(), datapath_creator::ComputeHLSRelationships(), HWDiscrepancyAnalysis::ComputeHLSRelationships(), top_entity::ComputeHLSRelationships(), Evaluation::ComputeHLSRelationships(), port_swapping::ComputeHLSRelationships(), ControllerCreatorBaseStep::ComputeHLSRelationships(), add_library::ComputeHLSRelationships(), conn_binding_creator::ComputeHLSRelationships(), Scheduling::ComputeHLSRelationships(), datapath_parallel_cs::ComputeHLSRelationships(), TestbenchGeneration::ComputeHLSRelationships(), module_interface::ComputeHLSRelationships(), vcd_utility::ComputeHLSRelationships(), memory_allocation::ComputeHLSRelationships(), SDCScheduling::ComputeHLSRelationships(), allocation::ComputeHLSRelationships(), parametric_list_based::ComputeHLSRelationships(), InitializeHLS::ComputeRelationships(), CTestbenchExecution::ComputeRelationships(), HLSFunctionStep::ComputeRelationships(), InterfaceInfer::ComputeRelationships(), create_tree_manager::ComputeRelationships(), fun_dominator_allocation::ComputeRelationships(), GenerateFuList::ComputeRelationships(), FixVdef::ComputeRelationships(), BuildVirtualPhi::ComputeRelationships(), TestbenchGeneration::ComputeRelationships(), FunctionFrontendFlowStep::ComputeRelationships(), CBackend::ComputeRelationships(), lut_transformation::ComputeRelationships(), IR_lowering::ComputeRelationships(), RTLCharacterization::ComputeRelationships(), HLS_step::ComputeRelationships(), ApplicationFrontendFlowStep::ComputeSignature(), tree_helper::ComputeSsaUses(), LoadDeviceTechnology::ComputeTechnologyRelationships(), LoadFileTechnology::ComputeTechnologyRelationships(), LoadTechnology::ComputeTechnologyRelationships(), WriteTechnology::ComputeTechnologyRelationships(), FixCharacterization::ComputeTechnologyRelationships(), mux_connection_binding::connect_to_registers(), structural_object::convert_so_short(), HDL_manager::convert_to_identifier(), tree_helper::CountPointers(), PragmaAnalysis::create_omp_pragma(), clique_covering< vertex_type >::create_solver(), tree_node_factory::create_tree_node(), tree_node_dup::create_tree_node(), FrontendFlowStepFactory::CreateApplicationFrontendFlowStep(), CWriter::CreateCWriter(), DesignFlowFactory::CreateDesignFlow(), BackendFlow::CreateFlow(), ParserFlowStepFactory::CreateFlowStep(), DesignFlowStepFactory::CreateFlowStep(), FrontendFlowStepFactory::CreateFunctionFrontendFlowStep(), HLSFlowStepFactory::CreateHLSFlowStep(), HLSFlowStepFactory::CreateHLSFlowSteps(), InstructionWriter::CreateInstructionWriter(), tree_manipulation::CreateNopExpr(), ToDataFileStepFactory::CreateStep(), FrontendFlowStep::CreateSteps(), TechnologyFlowStepFactory::CreateTechnologyFlowStep(), DesignFlowManager::DeExecute(), vcd_utility::detect_regular_mismatch(), Vectorize::DuplicateIncrement(), AadlInformation::AadlParameter::Endianess(), ParserFlowStep::EnumToKindText(), DesignFlow::EnumToKindText(), FrontendFlowStep::EnumToKindText(), ToDataFileStep::EnumToName(), TechnologyFlowStep::EnumToName(), HLS_step::EnumToName(), Range::Eq(), UnaryOpNode::eval(), BinaryOpNode::evaluate(), Schedule::EvaluateMultiWayIfsMerging(), TestVectorParser::Exec(), SynthesisEvaluation::Exec(), BitValueIPA::Exec(), Evaluation::Exec(), vcd_utility::Exec(), TestbenchGeneration::Exec(), InterfaceInfer::Exec(), DesignFlowManager::Exec(), parametric_list_based::exec(), IR_lowering::expand_mult_const(), port_o::find_bounded_object(), Vectorize::FixPhis(), flopoco_wrapper::flopoco_wrapper(), Bit_Value::forward(), Bit_Value::forward_transfer(), FrontendFlowStepFactory::GenerateFrontendStep(), modelsimWrapper::GenerateScript(), Bit_Value::get_current(), flopoco_wrapper::get_port(), tree_helper::get_required_values(), StateTransitionGraphManager::get_states(), Range::getAnti(), FunctionBehavior::GetBBGraph(), GetCallArgs(), AllocationInformation::GetCycleLatency(), AadlInformation::AadlParameter::GetDirection(), tree_helper::GetFunctionReturnType(), AllocationInformation::GetFuType(), BehavioralHelper::GetInit(), CBackendInformation::GetKindText(), MemoryAllocationSpecialization::GetKindText(), ParametricListBasedSpecialization::GetKindText(), Loops::GetLoop(), OpNodeInfo::GetNodeId(), AllocationInformation::GetNodeTypePrec(), FunctionBehavior::GetOpGraph(), structural_object::GetParameters(), application_manager::GetProducedValue(), RealRange::getRange(), Schedule::GetReadyTime(), AllocationInformation::GetStatementArea(), LatticeWrapper::getStringValue(), AllocationInformation::GetTimeLatency(), tree_helper::GetTypeName(), DataDependenceComputation::GetVariables(), GimpleWriter::GimpleWriter(), FunctionCallOpt::HasConstantArgs(), BitLatticeManipulator::inf(), StorageValueInformation::Initialize(), Bit_Value::initialize(), cdfc_module_binding::initialize_connection_relation(), CompilerWrapper::InitializeCompilerParameters(), tree_manipulation::InlineFunctionCall(), TestbenchAcknowledgeModuleGenerator::InternalExec(), TestbenchDUTModuleGenerator::InternalExec(), TestbenchAxisModuleGenerator::InternalExec(), TestbenchFifoModuleGenerator::InternalExec(), TestbenchValidModuleGenerator::InternalExec(), TestbenchArrayModuleGenerator::InternalExec(), TestbenchHandshakeModuleGenerator::InternalExec(), TestbenchAXIMModuleGenerator::InternalExec(), TestbenchNoneModuleGenerator::InternalExec(), TestbenchOvalidModuleGenerator::InternalExec(), Read_noneModuleGenerator::InternalExec(), ReadWrite_m_axiModuleGenerator::InternalExec(), PrintfModuleGenerator::InternalExec(), Write_acknowledgeModuleGenerator::InternalExec(), SerializeMutualExclusions::InternalExec(), UnComparisonLowering::InternalExec(), TasteInterfaceGeneration::InternalExec(), AddOpPhiFlowEdges::InternalExec(), AddBbEcfgEdges::InternalExec(), AddOpLoopFlowEdges::InternalExec(), DataDependenceComputation::InternalExec(), FunctionCallTypeCleanup::InternalExec(), datapath_parallel_cs::InternalExec(), FunctionCallOpt::InternalExec(), MultipleEntryIfReduction::InternalExec(), operations_cfg_computation::InternalExec(), IR_lowering::InternalExec(), port_swapping::InternalExec(), SDCScheduling::InternalExec(), PhiOpt::InternalExec(), allocation::InternalExec(), mem_dominator_allocation::is_internal_obj(), CallGraphManager::IsCallPoint(), tree_helper::IsPackedType(), DesignFlow::KindTextToEnum(), tree_helper::LastStatement(), CallGraphBuiltinCall::lookForBuiltinCall(), Vectorize::LookForScalar(), Range::makeSatisfyingCmpRegion(), materializeStack(), ToDataFileStep::NameToEnum(), Range::Ne(), Range::normalizeRange(), BBEdgeWriter::operator()(), DesignFlowStepWriter::operator()(), TransitionWriter::operator()(), flopoco_wrapper::outputWrapVHDL(), PandaSystem(), TestVectorParser::ParseXMLFile(), vcd_utility::print_failed_vcd_head(), BehavioralHelper::print_type_declaration(), UnaryOpNode::printDot(), BehavioralHelper::PrintNode(), tree_helper::PrintType(), MemoryInitializationCWriter::Process(), MemoryInitializationWriter::Process(), RealRange::RealRange(), PragmaParser::recognize_omp_pragma(), parm2ssa::recursive_analysis(), string_cst_fix::recursive_analysis(), hls_div_cg_ext::recursive_examinate(), VarDeclFix::recursive_examinate(), CheckSystemType::recursive_examinate(), soft_float_cg_ext::RecursiveExaminate(), tree_helper::RecursiveGetTypesToBeDeclared(), DesignFlowManager::RecursivelyAddSteps(), VarComputation::RecursivelyAnalyze(), ssa_name::RemoveUse(), eSSA::renameUses(), tree_helper::return_C_qualifiers(), tree_helper::return_qualifier_prefix(), CompilerWrapper::SetCompilerDefault(), Range::shr(), dead_code_eliminationIPA::signature_opt(), tree_helper::Size(), BitLatticeManipulator::Size(), soft_float_cg_ext::soft_float_cg_ext(), SymbRange::solveFuture(), BitLatticeManipulator::sup(), ToString(), LatticeWrapper::toString(), Vectorize::Transform(), VHDL_writer::type_converter(), VHDL_writer::type_converter_size(), verilog_writer::type_converter_size(), Range::unionWith(), Schedule::UpdateTime(), tree_manipulation::VersionFunctionCall(), HDL_manager::write_components(), VHDL_writer::write_module_parametrization(), VHDL_writer::write_module_parametrization_decl(), VHDL_writer::write_port_binding(), VHDL_writer::write_signal_declaration(), xml_document::write_to_file(), Translator::write_to_latex(), VHDL_writer::write_vector_port_binding(), VHDL_writer::WriteBuiltin(), verilog_writer::WriteBuiltin(), CompilerWrapper::WriteOptimizationLevel(), flopoco_wrapper::writeVHDLcommon(), and XilinxBackendFlow::xparse_timing().

◆ THROW_WARNING

#define THROW_WARNING (   str_expr)
Value:
((error_on_warning) ? ((void)(THROW_ERROR(str_expr))) : \
((void)(std::cerr << std::string("Warning: ") + (str_expr) << std::endl)))
bool error_on_warning
Transform warning into errors.
#define THROW_ERROR(str_expr)
helper function used to throw an error in a standard way
Definition: exceptions.hpp:263

helper function used to throw a warning in a standard way: though it uses PRINT_DBG_MEX, the debug level used is such that the message is always printed

Definition at line 300 of file exceptions.hpp.

Referenced by add_directed_edge(), memory::add_external_symbol(), memory::add_internal_symbol(), memory::add_parameter_symbol(), structural_manager::build_graph(), InterfaceInfer::ChasePointerInterfaceRecurse(), structural_manager::check_structure(), allocation::check_templated_units(), structural_type_descriptor::check_type(), BambuParameter::CheckParameters(), VcdSignalSelection::CrossPropagateAddrSsa(), BambuParameter::Exec(), vcd_utility::Exec(), create_tree_manager::Exec(), InterfaceInfer::Exec(), parametric_list_based::exec(), ToolManager::execute_command(), CompilerWrapper::FillTreeManager(), memory_allocation::finalize_memory_allocation(), VerilatorWrapper::GenerateScript(), allocation::get_compliant_pipelined_unit(), AllocationInformation::GetNodeTypePrec(), FunctionCallOpt::Initialize(), ReadWrite_m_axiModuleGenerator::InternalExec(), mem_dominator_allocation::InternalExec(), IR_lowering::InternalExec(), modelsimWrapper::modelsimWrapper(), ModuleArchitecture::ModuleArchitecture(), NanoXploreBackendFlow::NanoXploreBackendFlow(), XilinxBackendFlow::parse_timing(), TestVectorParser::ParseXMLFile(), soft_float_cg_ext::soft_float_cg_ext(), HDL_manager::write_components(), library_manager::xload(), and module::xload().

◆ THROW_WARNING_ASSERT

#define THROW_WARNING_ASSERT (   cond,
  str_expr 
)    (void)0

helper function used to check an assert and if needed to throw an error in a standard way

Definition at line 315 of file exceptions.hpp.

Enumeration Type Documentation

◆ throw_error_code

Error code returned by THROW_ERROR_CODE.

Enumerator
NODE_NOT_YET_SUPPORTED_EC 

Node not yet supported.

IRREDUCIBLE_LOOPS_EC 

irreducible loops are not currently supported

NESTED_FUNCTIONS_EC 

nested functions are not currently supported

PRAGMA_FAILURE_EC 

pragma pattern not yet supported

TASK_GRAPH_TRANSFORMATION_EC 

task graph structure not yet supported

BOH_EC 

boh not yet supported

FORK_STRUCT 

malformed struct

TASK_CREATION 

error with task creation

PROFILING_EC 

error during profiling

COMPILING_EC 

error during compilation

VLA_EC 

Not supported variable length array.

POINTER_PLUS_EC 

pointer_plus_expr not removed

VARARGS_EC 

varargs with cross-compiler

BITFIELD_EC 

bitfield not supported

C_EC 

C pattern not supported.

GRMON_EC 

Not trapped by panda torture script.

GRMON serious error (e.g.: locked usb device)

BOARD_EC 

Corrupted bitstream.

Definition at line 321 of file exceptions.hpp.

Function Documentation

◆ is_failure()

bool is_failure ( const int  error_value)

Return true if the return value corresponds to a failure (not to an error)

Parameters
return_valueis a return value of a system
Returns
true if return value corresponds to a failure

Definition at line 64 of file exceptions.cpp.

◆ IsError()

bool IsError ( const int  error_value)

Return true if the return_value corresponds to an error.

Parameters
return_valueis a return value of a system
Returns
true if return value corresponds to an error

Return true if the return_value corresponds to an error.

Definition at line 58 of file exceptions.cpp.

Referenced by CompilerWrapper::CompileFile(), CompilerWrapper::CreateExecutable(), CTestbenchExecution::Exec(), BasicBlocksProfiling::Exec(), create_tree_manager::Exec(), ToolManager::execute_command(), FindMaxTransformations::ExecuteBambu(), NonDeterministicFlows::ExecuteTool(), XilinxTasteBackendFlow::GenerateSynthesisScripts(), CompilerWrapper::GetSystemIncludes(), main(), and CompilerWrapper::QueryCompilerConfig().

Here is the caller graph for this function:

◆ throw_error() [1/2]

template<class T >
T& throw_error ( const T &  t,
const std::string &  expression,
const char *  pp,
const char *  file,
int  line,
int  code = EXIT_FAILURE 
)
inline

Template function used to throw an exception.

Parameters
tis the expression under check
expressionis the string representing the source of the object t.
ppis the name of the calling function
fileis the file where throw_error is called
lineis the line where throw_error is called

Definition at line 78 of file exceptions.hpp.

References exit_code, lenet_tvm::file, and line().

Referenced by throw_error().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ throw_error() [2/2]

template<class T >
T& throw_error ( const T &  t,
const char *  expression,
const char *  pp,
const char *  file,
int  line,
int  code = EXIT_FAILURE 
)
inline

Template function used to throw an exception.

Parameters
tis the expression under check
expressionis the string representing the source of the object t.
ppis the name of the calling function
fileis the file where throw_error is called
lineis the line where throw_error is called

Definition at line 144 of file exceptions.hpp.

References throw_error().

Here is the call graph for this function:

◆ throw_warning()

void throw_warning ( const std::string &  expression,
const char *  pp,
const char *  file,
int  line 
)
inline

Prints a warning, along with information about the source code.

Definition at line 110 of file exceptions.hpp.

References lenet_tvm::file, and line().

Here is the call graph for this function:

Variable Documentation

◆ error_on_warning

bool error_on_warning

Transform warning into errors.

Definition at line 63 of file global_variables.cpp.

Referenced by Parameter::ManageDefaultOptions().

◆ exit_code

int exit_code

Autoheader include.

STD include

Autoheader include.

utility include

STD include Exit code

Definition at line 51 of file global_variables.cpp.

Referenced by tree_panda_gcc_parameter::Exec(), SpiderParameter::Exec(), EucalyptusParameter::Exec(), BambuParameter::Exec(), main(), and throw_error().


Generated on Mon Feb 12 2024 13:03:35 for PandA-2024.02 by doxygen 1.8.13