#include "rose.h"
#include <vector>
#include <set>
#include <utility>
Go to the source code of this file.
Namespaces | |
risc | |
risc::sa | |
Typedefs | |
typedef std::pair< Port *, SgBoolValExp * > | risc::sa::ResetSignal |
typedef std::pair< CThread *, std::set< SgVariableSymbol * > > | risc::sa::CThreadUninitializedVariables |
CThread -> var, var, var ... More... | |
typedef std::set < CThreadUninitializedVariables > | risc::sa::CThreadUninitializedVariablesSet |
typedef std::pair< ResetSignal *, CThreadVector > | risc::sa::ResetSignalSensitiveCThreads |
ResetSignal -> cthread, cthread, cthread ... More... | |
typedef std::set < ResetSignalSensitiveCThreads > | risc::sa::ResetSignalSensitiveCThreadsSet |
typedef std::pair< ResetSignal *, std::set< SgVariableSymbol * > > | risc::sa::ResetSignalUninitializedVariables |
ResetSignal -> var, var, var ... More... | |
typedef std::set < ResetSignalUninitializedVariables > | risc::sa::ResetSignalUninitializedVariablesSet |
typedef std::pair< CThread *, ResetSignal * > | risc::sa::CThreadResetSignalPair |
typedef std::pair < CThreadResetSignalPair, std::vector< SgExpression * > > | risc::sa::CThreadResetSignalExpressions |
typedef std::vector < CThreadResetSignalExpressions > | risc::sa::CThreadResetSignalExpressionsVector |
Functions | |
SgFunctionCallExp * | risc::sa::find_first_wait_stmt (SgFunctionDefinition *func_def) |
This function analyzes a given function and returns the first occurrence of a wait call. More... | |
std::set< SgFunctionCallExp * > | risc::sa::traverse_for_non_nested_func_calls (SgFunctionDefinition *func_def) |
This function searchs for all function calls which are done before the first wait call statement. The search doesnt respect function calls in loops, if statements, or other nested constructs. More... | |
void | risc::sa::collect_non_nested_expressions (SgFunctionDefinition *func_def, std::vector< SgExpression * > &before_wait, std::vector< SgExpression * > &after_wait) |
This function collects all non nested expressions before and after the first wait stmt call. More... | |
CThreadUninitializedVariablesSet | risc::sa::most_pessimistic_analysis (risc::Module &module) |
CThreadUninitializedVariablesSet | risc::sa::inter_thread_analysis (Module &module, CThreadVector *subset_of_cthreads=NULL) |
ResetSignalUninitializedVariablesSet | risc::sa::inter_reset_cthread_analysis (Module &module) |
ResetSignalUninitializedVariablesSet | risc::sa::inter_async_reset_cthread_analysis (Module &module) |
CThreadResetSignalExpressionsVector | risc::sa::get_cthread_reset_signal_expressions (Module &module) |
CThreadResetSignalExpressionsVector | risc::sa::get_cthread_async_reset_signal_expressions (Module &module) |
void | risc::sa::member_variable_filter (risc::Module &module, std::vector< SgNode * > variable) |
void | risc::sa::get_recursivly_nested_expressions_in_function (SgFunctionDefinition *root_function, std::vector< SgExpression * > &expressions) |
std::set< SgFunctionDefinition * > | risc::sa::get_called_functions_and_expressions (SgFunctionDefinition *root_function, std::vector< SgExpression * > &expressions) |