|
bool | risc::tools::is_data_structure (SgType *type) |
| This function checks if the passed type represents a data structure. More...
|
|
bool | risc::tools::is_builtin_type (SgType *type) |
| This function checks if the passed type represents a C++ builtin type. More...
|
|
bool | risc::tools::class_types_are_identical (SgClassDefinition *cd1, SgClassDefinition *cd2) |
| Compares two classes. More...
|
|
bool | risc::tools::is_func_name (const SgFunctionDeclaration *function, const std::string &name) |
| Compares the function name with the given string. More...
|
|
void | risc::tools::print_indented (std::string s, unsigned indent) |
| Prints a string with indention. More...
|
|
SgClassDefinition * | risc::tools::class_definition_of_variable (SgVariableDeclaration *var_decl) |
| Determines the class defintion of varialbe It is expected that the type is SgClassType. More...
|
|
bool | risc::tools::is_builtin_function (SgFunctionDeclaration *func_decl) |
| Checks if a given function is a C++ builtin function This function is taken/inspired from the Rose builtinFilter structure. More...
|
|
bool | risc::tools::all_cfg_branches_end_in_break (SgNode *node, int &break_counter) |
| This function determines if all cfg branches in the statement 'node' will end in a break statement. The statement in end will be excluded. Some examples: More...
|
|
bool | risc::tools::all_cfg_branches_end_in_continue (SgNode *node, int &continue_counter) |
| This function determines if all cfg branches in the statement 'node' will end in a continue statement. The statement in end will be excluded. Some examples: More...
|
|
SgStatement * | risc::tools::get_previous_stmt_in_basic_block (SgNode *node) |
| This function determines the previous statement of the statement 'node' in the next surrounding basic block. If 'node' is the first statement, the return value will be NULL. More...
|
|
bool | risc::tools::is_conditional_break (SgScopeStatement const *const loop_stmt, SgBreakStmt const *const break_stmt) |
| This function checks if a given break statement is unconditioned. More...
|
|
SgScopeStatement * | risc::tools::find_break_surrounding_scope (SgBreakStmt *break_stmt) |
| This function finds the surrounding scope statement of a break. The break can be surrounded by a while, do while, for loop or by a switch statement. More...
|
|
bool | risc::tools::break_belongs_to_loop (SgScopeStatement *loop_stmt, SgBreakStmt const *const break_stmt) |
| This function checks if a given break statement belongs to a given loop statements. More...
|
|
bool | risc::tools::is_located_in_rose_header (SgNode *node) |
|
SgMemberFunctionDeclaration * | risc::tools::get_constructor (SgClassDefinition *class_def) |
| This function returns the constructor of class. For a module, primitive channel, and a hierarchical channel we expect exactly one constructor. So, we return the first SgFunctionDefinition which es a constructor. More...
|
|
void | risc::tools::find_and_replace_all (std::string &input, const std::string &from, const std::string &to) |
| This function searches for the given string from and replaces all occurrences with the string to in the input string input. More...
|
|
std::string | risc::tools::get_mangled_name (SgClassDefinition *class_def) |
| This function returns the mangled name of a class definition. The mangled name is in the style of A::B::C. More...
|
|
SgVariableSymbol * | risc::tools::find_global_variable (std::string name, SgProject *project) |
| This function search in the global namespace for the variable with the name 'name' and return the associated symbol. More...
|
|
bool | risc::tools::is_known_function (SgFunctionDeclaration *statement) |
| This function checks if the statement is ::memset ::free ::rand ::putchar ::printf. More...
|
|
bool | risc::tools::is_in_std_namespace (SgDeclarationStatement *statement) |
| This function checks if the statement is declared in the std namespace. More...
|
|
bool | risc::tools::is_in_systemc_namespace (SgDeclarationStatement *statement) |
| This function checks if the statement is declared in the systemc namespace (sc_core/sc_dt) More...
|
|
bool | risc::tools::is_in_gnu_cxx_namespace (SgDeclarationStatement *statement) |
| This function checks if the statement is declared in the systemc namespace (sc_core/sc_dt) More...
|
|
SgVariableSymbol * | risc::tools::get_most_outer_var (SgExpression *expr) |
| The function returns the most outer variable in an expression. Example: a -> a array[i] -> array array[i][43*k] -> array. More...
|
|
bool | risc::tools::has_no_variable_expressions (SgExpression *expr) |
| This function returns true, if the expression contains only literals. More...
|
|