All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Namespaces | Typedefs | Functions
cthread_analyzer.h File Reference
#include "rose.h"
#include <vector>
#include <set>
#include <utility>
Include dependency graph for cthread_analyzer.h:
This graph shows which files directly or indirectly include this file:

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)