OpenADFortTk (including Open64 and OpenAnalysis references)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
OA::SideEffect::ManagerSideEffectStandard Class Reference

#include <ManagerSideEffectStandard.hpp>

Collaboration diagram for OA::SideEffect::ManagerSideEffectStandard:
Collaboration graph

Public Member Functions

 ManagerSideEffectStandard (OA_ptr< SideEffectIRInterface > _ir)
 
 ~ManagerSideEffectStandard ()
 
OA_ptr< SideEffectStandardperformAnalysis (ProcHandle, OA_ptr< Alias::Interface > alias, OA_ptr< InterSideEffectInterface > inter)
 Used to perform analysis when not using AQM. More...
 

Private Attributes

OA_ptr< SideEffectIRInterfacemIR
 
ProcHandle mProc
 

Detailed Description

The AnnotationManager for SideEffectStandard. This class can build a SideEffectStandard.

Definition at line 36 of file ManagerSideEffectStandard.hpp.

Constructor & Destructor Documentation

OA::SideEffect::ManagerSideEffectStandard::ManagerSideEffectStandard ( OA_ptr< SideEffectIRInterface _ir)

concrete LocationVisitor that determines that determines whether the visited location involves a symbol that is referenced within the procedure or not. If the symbol is referenced then mRef will be true. If the location does not involve a symbol (ie. UnnamedLoc) then mRef will be true as well. A set of referenced symbols must be passed in to the constructor.

Definition at line 61 of file ManagerSideEffectStandard.cpp.

References OA::SideEffect::debug, and OA_DEBUG_CTRL_MACRO.

OA::SideEffect::ManagerSideEffectStandard::~ManagerSideEffectStandard ( )
inline

Definition at line 40 of file ManagerSideEffectStandard.hpp.

Member Function Documentation

OA_ptr< SideEffectStandard > OA::SideEffect::ManagerSideEffectStandard::performAnalysis ( ProcHandle  proc,
OA_ptr< Alias::Interface alias,
OA_ptr< InterSideEffectInterface inter 
)

Used to perform analysis when not using AQM.

Currently just does an intraprocedural side-effect analysis. We conservatively assume that function calls define and use the UnknownLoc, which overlaps with all possible locations.

Definition at line 76 of file ManagerSideEffectStandard.cpp.

References OA::StmtHandleIterator::current(), OA::SideEffect::debug, OA::Location::dump(), OA::OA_ptr< T >::dump(), OA::Alias::Interface::getMayLocs(), OA::Alias::Interface::getMustLocs(), OA::StmtHandleIterator::isValid(), mIR, and mProc.

Here is the call graph for this function:

Member Data Documentation

OA_ptr<SideEffectIRInterface> OA::SideEffect::ManagerSideEffectStandard::mIR
private

Definition at line 50 of file ManagerSideEffectStandard.hpp.

Referenced by performAnalysis().

ProcHandle OA::SideEffect::ManagerSideEffectStandard::mProc
private

Definition at line 51 of file ManagerSideEffectStandard.hpp.

Referenced by performAnalysis().


The documentation for this class was generated from the following files: