Otawa  0.10
otawa::PipelineStage< N >::FunctionalUnit Class Reference

#include <otawa/exegraph/Microprocessor.h>

Classes

struct  fu_info_t
 
class  PipelineIterator
 

Public Types

typedef struct
otawa::PipelineStage::FunctionalUnit::fu_info_t 
fu_info_t
 

Public Member Functions

 FunctionalUnit (fu_info_t &info, PipelineStage< N > *user_stage, Microprocessor< N > *proc)
 
elm::String name (void)
 
elm::String shortName (void)
 
bool isPipelined (void)
 
order_policy_t orderPolicy ()
 
int minLatency (void)
 
int maxLatency (void)
 
int width (void)
 
PipelineStage< N > * firstStage ()
 

Private Attributes

fu_info_t _info
 
elm::genstruct::Vector
< PipelineStage< N > * > 
_pipeline
 
Microprocessor< N > * _processor
 

Member Typedef Documentation

Constructor & Destructor Documentation

Member Function Documentation

template<class N>
PipelineStage<N>* otawa::PipelineStage< N >::FunctionalUnit::firstStage ( )
inline
template<class N>
bool otawa::PipelineStage< N >::FunctionalUnit::isPipelined ( void  )
inline
template<class N>
int otawa::PipelineStage< N >::FunctionalUnit::maxLatency ( void  )
inline
template<class N>
int otawa::PipelineStage< N >::FunctionalUnit::minLatency ( void  )
inline
template<class N>
elm::String otawa::PipelineStage< N >::FunctionalUnit::name ( void  )
inline
template<class N>
order_policy_t otawa::PipelineStage< N >::FunctionalUnit::orderPolicy ( )
inline
template<class N>
elm::String otawa::PipelineStage< N >::FunctionalUnit::shortName ( void  )
inline
template<class N>
int otawa::PipelineStage< N >::FunctionalUnit::width ( void  )
inline

Member Data Documentation

template<class N>
fu_info_t otawa::PipelineStage< N >::FunctionalUnit::_info
private
template<class N>
elm::genstruct::Vector<PipelineStage<N> *> otawa::PipelineStage< N >::FunctionalUnit::_pipeline
private
template<class N>
Microprocessor<N>* otawa::PipelineStage< N >::FunctionalUnit::_processor
private

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