risc::Design Class Reference

#include <design.h>

Collaboration diagram for risc::Design:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 Design (int argc, char *argv[], bool is_psg_mode=false)
 default constructor
 ~Design ()
void initialize_port_mapping ()
void initialize_interfaces ()
void initialize_definitions ()
void initialize_top_modules ()
void initialize_global_functions ()
void initialize_global_variables ()
void initialize_path_instance_mapper ()
void print_all_class_definitions ()
void print_all_global_functions ()
void print_design ()
InstanceTree get_root ()
Modulefind_module_definition (SgClassDefinition *cd)
PrimitiveChannelfind_prim_channel_definition (SgClassDefinition *cd)
HierarchicalChannelfind_channel_definition (SgClassDefinition *cd)
Interfacefind_interface (SgClassDefinition *cd)
Variablefind_global_variable (SgVariableDefinition *var_def)
 Find a port by it's ast variable definition.
void reset_instance_counter ()
 This function resets the instance counter of the module and hierarchical channel instances to zero.
bool perform_static_analysis ()
 The functions return if a static analysis will be performed.
void add_module_to_definition_list (SgClassDefinition *class_def)
void add_hierarchical_channel_to_defintion_list (SgClassDefinition *class_def)
std::string get_design_file_name ()
bool is_analyzable ()

Public Attributes

ModuleVector module_definitions_
InstanceVector top_modules_
PrimitiveChannelVector primitive_channel_
HierarchicalChannelVector hierarchical_channel_
InterfaceVector interfaces_
VariableVector global_variables_
FunctionVector global_functions_
SgProject * project_
int old_argc_
char ** old_argv_
std::vector< std::string > input_files_
PathInstanceMapperpath_instance_mapper_
PortMappingCache port_mapping_cache_
std::string dynamic_analysis_filename_
 This variable contains the filename of the input file for the dynamic analysis.
std::string instrumentor_output_filename_
 This variable contains the name which will be used for the dir file during the presimulation.
bool psg_mode
int psg_count
std::vector< int > psg_seg_count
std::vector< Thread * > loaded_threads
std::vector< Thread * > simulation_threads

Private Member Functions

 Design (const Design &d)
 Disabled copy constructor.

Detailed Description

This class represents the internal representation. The IR offers different interfaces to start search in IR.


Constructor & Destructor Documentation

risc::Design::Design ( int  argc,
char *  argv[],
bool  is_psg_mode = false 
) [explicit]

default constructor

Parameters:
argc expects argc from main function
argv expects argv from main function
risc::Design::~Design (  ) 
risc::Design::Design ( const Design d  )  [private]

Disabled copy constructor.


Member Function Documentation

void risc::Design::add_hierarchical_channel_to_defintion_list ( SgClassDefinition *  class_def  ) 
void risc::Design::add_module_to_definition_list ( SgClassDefinition *  class_def  ) 
risc::HierarchicalChannel * risc::Design::find_channel_definition ( SgClassDefinition *  cd  ) 
risc::Variable * risc::Design::find_global_variable ( SgVariableDefinition *  var_def  ) 

Find a port by it's ast variable definition.

risc::Interface * risc::Design::find_interface ( SgClassDefinition *  cd  ) 
risc::Module * risc::Design::find_module_definition ( SgClassDefinition *  cd  ) 
risc::PrimitiveChannel * risc::Design::find_prim_channel_definition ( SgClassDefinition *  cd  ) 
std::string risc::Design::get_design_file_name (  ) 
risc::InstanceTree risc::Design::get_root (  ) 
void risc::Design::initialize_definitions (  ) 
void risc::Design::initialize_global_functions (  ) 
void risc::Design::initialize_global_variables (  ) 
void risc::Design::initialize_interfaces (  ) 
void risc::Design::initialize_path_instance_mapper (  ) 
void risc::Design::initialize_port_mapping (  ) 
void risc::Design::initialize_top_modules (  ) 
bool risc::Design::is_analyzable (  ) 
function risc::Design::perform_static_analysis (  ) 

The functions return if a static analysis will be performed.

void risc::Design::print_all_class_definitions (  ) 
void risc::Design::print_all_global_functions (  ) 
void risc::Design::print_design (  ) 
risc::Design::reset_instance_counter (  ) 

This function resets the instance counter of the module and hierarchical channel instances to zero.


Member Data Documentation

This variable contains the filename of the input file for the dynamic analysis.

std::vector<std::string> risc::Design::input_files_

This variable contains the name which will be used for the dir file during the presimulation.

std::vector<int> risc::Design::psg_seg_count

The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 12 Jun 2018 by  doxygen 1.6.1