Logo Search packages:      
Sourcecode: fauhdlc version File versions

ast::GenCode::AssignVisitor Class Reference

Inheritance diagram for ast::GenCode::AssignVisitor:

ast::NullVisitor ast::Visitor

List of all members.


Detailed Description

generate code to assign src to dst

Definition at line 658 of file GenCode.hpp.


Public Member Functions

 AssignVisitor (RegisterSet *source, RegisterSet *dest, intermediate::CodeContainer &c, intermediate::Operand *dataOperand, enum assignOperationE mode)
virtual void visit (AttributeSpecification &node)
virtual void visit (AttributeDeclaration &node)
virtual void visit (TypeConversion &node)
virtual void visit (Subscript &node)
virtual void visit (ConstArray &node)
virtual void visit (ConstInteger &node)
virtual void visit (Slice &node)
virtual void visit (LibraryList &node)
virtual void visit (Library &node)
virtual void visit (EnumerationElement &node)
virtual void visit (Aggregate &node)
virtual void visit (PhysicalTypeUnit &node)
virtual void visit (CondalSigAssign &node)
virtual void visit (SubprogBody &node)
virtual void visit (Process &node)
virtual void visit (PackageBody &node)
virtual void visit (Package &node)
virtual void visit (CompInstStat &node)
virtual void visit (ProcedureDeclaration &node)
virtual void visit (FunctionDeclaration &node)
virtual void visit (AssociationElement &node)
virtual void visit (Architecture &node)
virtual void visit (Others &node)
virtual void visit (CaseAlternative &node)
virtual void visit (CaseStat &node)
virtual void visit (DiscreteRange &node)
virtual void visit (VarDeclaration &node)
virtual void visit (AssertStat &node)
virtual void visit (ProcCallStat &node)
virtual void visit (ReturnStat &node)
virtual void visit (WaveFormElem &node)
virtual void visit (SigAssignStat &node)
virtual void visit (ExitStat &node)
virtual void visit (WaitStat &node)
virtual void visit (VarAssignStat &node)
virtual void visit (NextStat &node)
virtual void visit (WhileLoopStat &node)
virtual void visit (ForLoopStat &node)
virtual void visit (NullStat &node)
virtual void visit (IfStat &node)
virtual void visit (FunctionCall &node)
virtual void visit (ConstantDeclaration &node)
virtual void visit (SignalDeclaration &node)
virtual void visit (Entity &node)
virtual void visit (AttributeName &node)
virtual void visit (SelectedName &node)
virtual void visit (TemporaryName &node)
virtual void visit (SimpleName &node)
virtual void visit (ConstReal &node)
virtual void visit (ElementAssociation &node)

Protected Member Functions

template<typename T>
void listTraverse (T &l, bool &deleteFlag)
 traverse a list of AST nodes, eventually deleting a node.
template<typename T>
void listTraverse (T l)
 traverse a list of AST nodes.
virtual void process (AstNode &node)
 Process a generic AstNode.
virtual void process (AttributableDeclaration &node)
 Process a AttributableDeclaration.
virtual void process (Name &node)
 Process a generic Name.
virtual void process (PrefixedName &node)
 Process a generic PrefixedName.
virtual void process (TypeDeclaration &node)
 Process a generic TypeDeclaration.
virtual void process (LibUnit &node)
 Process a generic LibUnit.
virtual void process (Callable &node)
 Process a generic Callable.
virtual void process (ConditionedStat &node)
 Process a generic ConditionedStat.
virtual void process (LoopStat &node)
 Process a generic LoopStat.
virtual void process (SeqStat &node)
 Process a generic SeqStat.
virtual void process (Expression &node)
 Process a generic Expression.
virtual void process (SymbolDeclaration &node)
 Process a generic SymbolDeclaration.
virtual void process (ValDeclaration &node)
 Process a generic ValDeclaration.

Private Member Functions

void connect (void)
 connect the driver in src to the signal in dst
void logValue (void)
 log a value present in src
void makeAssignment (enum BaseType t)
 generate code for an assign statement.
void performOperation (enum BaseType t)
 generate code to perform the selected operation.
void processArraySubtype (SubtypeIndication &node)
 process a SubtypeIndication with an array base type.
virtual void visit (EnumerationType &node)
virtual void visit (PhysicalType &node)
virtual void visit (RangeConstraintType &node)
virtual void visit (RecordTypeElement &node)
virtual void visit (RecordType &node)
virtual void visit (UnconstrainedArrayType &node)
virtual void visit (SubtypeIndication &node)

Private Attributes

intermediate::CodeContainercontainer
intermediate::OperanddataOp
 delay operand
RegisterSetdst
enum assignOperationE operation
 desired operation
RegisterSetsrc

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

Generated by  Doxygen 1.6.0   Back to index