OpenASIP  2.0
Public Types | Public Member Functions | Private Attributes | List of all members
TPEF::MoveElement Class Reference

#include <MoveElement.hh>

Inheritance diagram for TPEF::MoveElement:
Inheritance graph
Collaboration diagram for TPEF::MoveElement:
Collaboration graph

Public Types

enum  FieldType { MF_NULL, MF_RF, MF_IMM, MF_UNIT }
 

Public Member Functions

 MoveElement ()
 
virtual ~MoveElement ()
 
bool isEmpty () const
 
void setEmpty (bool flag)
 
HalfWord bus () const
 
void setBus (HalfWord aBus)
 
FieldType sourceType () const
 
void setSourceType (FieldType aType)
 
HalfWord sourceUnit () const
 
void setSourceUnit (HalfWord aSourceUnit)
 
HalfWord sourceIndex () const
 
void setSourceIndex (HalfWord aSourceIndex)
 
FieldType destinationType () const
 
void setDestinationType (FieldType aType)
 
HalfWord destinationUnit () const
 
void setDestinationUnit (HalfWord aDestinationUnit)
 
HalfWord destinationIndex () const
 
void setDestinationIndex (HalfWord aDestinationIndex)
 
FieldType guardType () const
 
void setGuardType (FieldType gType)
 
HalfWord guardUnit () const
 
void setGuardUnit (HalfWord aGuardUnit)
 
HalfWord guardIndex () const
 
void setGuardIndex (HalfWord aGuardIndex)
 
bool isGuarded () const
 
void setGuarded (bool flag)
 
bool isGuardInverted () const
 
void setGuardInverted (bool flag)
 
- Public Member Functions inherited from TPEF::InstructionElement
virtual ~InstructionElement ()
 
bool isMove () const
 
bool isImmediate () const
 
bool begin () const
 
void setBegin (bool isBegin)
 
InstructionAnnotationannotation (Word index) const
 
void addAnnotation (InstructionAnnotation *anAnnotation)
 
Word annotationCount () const
 
- Public Member Functions inherited from TPEF::SectionElement
virtual ~SectionElement ()
 
- Public Member Functions inherited from TPEF::SafePointable
virtual ~SafePointable ()
 

Private Attributes

bool isEmpty_
 Empty move bit. More...
 
HalfWord bus_
 Move bus identifier. More...
 
FieldType sourceType_
 The type of Move source. More...
 
FieldType destinationType_
 The type of move destination. More...
 
HalfWord sourceUnit_
 Move source unit or register file. More...
 
HalfWord destinationUnit_
 Move destination unit or register file identifier. More...
 
HalfWord sourceIndex_
 Move source register index. More...
 
HalfWord destinationIndex_
 Move destination register index. More...
 
bool isGuarded_
 Move guard enable bit. More...
 
bool isGuardInverted_
 Move guard inverted bit. More...
 
FieldType guardType_
 Guard type. More...
 
HalfWord guardUnit_
 Guard register file / unit identifier. More...
 
HalfWord guardIndex_
 Guard register index. More...
 

Additional Inherited Members

- Protected Member Functions inherited from TPEF::InstructionElement
 InstructionElement (bool isMove)
 
- Protected Member Functions inherited from TPEF::SectionElement
 SectionElement ()
 
- Protected Member Functions inherited from TPEF::SafePointable
 SafePointable ()
 

Detailed Description

Move instruction.

Definition at line 47 of file MoveElement.hh.

Member Enumeration Documentation

◆ FieldType

Type of resource that is referred by unit / index pair.

Enumerator
MF_NULL 

Illegal field.

MF_RF 

Register file.

MF_IMM 

Immediate.

MF_UNIT 

Function unit.

Definition at line 52 of file MoveElement.hh.

52  {
53  MF_NULL, ///< Illegal field.
54  MF_RF, ///< Register file.
55  MF_IMM, ///< Immediate.
56  MF_UNIT ///< Function unit.
57  };

Constructor & Destructor Documentation

◆ MoveElement()

TPEF::MoveElement::MoveElement ( )

Constructor.

Move attributes are initialized to default values.

Definition at line 45 of file MoveElement.cc.

◆ ~MoveElement()

TPEF::MoveElement::~MoveElement ( )
virtual

Destructor

Definition at line 57 of file MoveElement.cc.

57  {
58 }

Member Function Documentation

◆ bus()

HalfWord TPEF::MoveElement::bus ( ) const

◆ destinationIndex()

HalfWord TPEF::MoveElement::destinationIndex ( ) const

◆ destinationType()

FieldType TPEF::MoveElement::destinationType ( ) const

◆ destinationUnit()

HalfWord TPEF::MoveElement::destinationUnit ( ) const

◆ guardIndex()

HalfWord TPEF::MoveElement::guardIndex ( ) const

◆ guardType()

FieldType TPEF::MoveElement::guardType ( ) const

◆ guardUnit()

HalfWord TPEF::MoveElement::guardUnit ( ) const

◆ isEmpty()

bool TPEF::MoveElement::isEmpty ( ) const

◆ isGuarded()

bool TPEF::MoveElement::isGuarded ( ) const

◆ isGuardInverted()

bool TPEF::MoveElement::isGuardInverted ( ) const

◆ setBus()

void TPEF::MoveElement::setBus ( HalfWord  aBus)

◆ setDestinationIndex()

void TPEF::MoveElement::setDestinationIndex ( HalfWord  aDestinationIndex)

◆ setDestinationType()

void TPEF::MoveElement::setDestinationType ( FieldType  aType)

◆ setDestinationUnit()

void TPEF::MoveElement::setDestinationUnit ( HalfWord  aDestinationUnit)

◆ setEmpty()

void TPEF::MoveElement::setEmpty ( bool  flag)

◆ setGuarded()

void TPEF::MoveElement::setGuarded ( bool  flag)

◆ setGuardIndex()

void TPEF::MoveElement::setGuardIndex ( HalfWord  aGuardIndex)

◆ setGuardInverted()

void TPEF::MoveElement::setGuardInverted ( bool  flag)

◆ setGuardType()

void TPEF::MoveElement::setGuardType ( FieldType  gType)

◆ setGuardUnit()

void TPEF::MoveElement::setGuardUnit ( HalfWord  aGuardUnit)

◆ setSourceIndex()

void TPEF::MoveElement::setSourceIndex ( HalfWord  aSourceIndex)

◆ setSourceType()

void TPEF::MoveElement::setSourceType ( FieldType  aType)

◆ setSourceUnit()

void TPEF::MoveElement::setSourceUnit ( HalfWord  aSourceUnit)

◆ sourceIndex()

HalfWord TPEF::MoveElement::sourceIndex ( ) const

◆ sourceType()

FieldType TPEF::MoveElement::sourceType ( ) const

◆ sourceUnit()

HalfWord TPEF::MoveElement::sourceUnit ( ) const

Member Data Documentation

◆ bus_

HalfWord TPEF::MoveElement::bus_
private

Move bus identifier.

Definition at line 105 of file MoveElement.hh.

◆ destinationIndex_

HalfWord TPEF::MoveElement::destinationIndex_
private

Move destination register index.

Definition at line 117 of file MoveElement.hh.

◆ destinationType_

FieldType TPEF::MoveElement::destinationType_
private

The type of move destination.

Definition at line 109 of file MoveElement.hh.

◆ destinationUnit_

HalfWord TPEF::MoveElement::destinationUnit_
private

Move destination unit or register file identifier.

Definition at line 113 of file MoveElement.hh.

◆ guardIndex_

HalfWord TPEF::MoveElement::guardIndex_
private

Guard register index.

Definition at line 127 of file MoveElement.hh.

◆ guardType_

FieldType TPEF::MoveElement::guardType_
private

Guard type.

Definition at line 123 of file MoveElement.hh.

◆ guardUnit_

HalfWord TPEF::MoveElement::guardUnit_
private

Guard register file / unit identifier.

Definition at line 125 of file MoveElement.hh.

◆ isEmpty_

bool TPEF::MoveElement::isEmpty_
private

Empty move bit.

Definition at line 103 of file MoveElement.hh.

◆ isGuarded_

bool TPEF::MoveElement::isGuarded_
private

Move guard enable bit.

Definition at line 119 of file MoveElement.hh.

◆ isGuardInverted_

bool TPEF::MoveElement::isGuardInverted_
private

Move guard inverted bit.

Definition at line 121 of file MoveElement.hh.

◆ sourceIndex_

HalfWord TPEF::MoveElement::sourceIndex_
private

Move source register index.

Definition at line 115 of file MoveElement.hh.

◆ sourceType_

FieldType TPEF::MoveElement::sourceType_
private

The type of Move source.

Definition at line 107 of file MoveElement.hh.

◆ sourceUnit_

HalfWord TPEF::MoveElement::sourceUnit_
private

Move source unit or register file.

Definition at line 111 of file MoveElement.hh.


The documentation for this class was generated from the following files:
TPEF::MoveElement::guardType_
FieldType guardType_
Guard type.
Definition: MoveElement.hh:123
TPEF::MoveElement::bus_
HalfWord bus_
Move bus identifier.
Definition: MoveElement.hh:105
TPEF::MoveElement::MF_UNIT
@ MF_UNIT
Function unit.
Definition: MoveElement.hh:56
TPEF::MoveElement::sourceUnit_
HalfWord sourceUnit_
Move source unit or register file.
Definition: MoveElement.hh:111
TPEF::MoveElement::isGuardInverted_
bool isGuardInverted_
Move guard inverted bit.
Definition: MoveElement.hh:121
TPEF::MoveElement::MF_IMM
@ MF_IMM
Immediate.
Definition: MoveElement.hh:55
TPEF::MoveElement::MF_NULL
@ MF_NULL
Illegal field.
Definition: MoveElement.hh:53
TPEF::MoveElement::MF_RF
@ MF_RF
Register file.
Definition: MoveElement.hh:54
TPEF::MoveElement::sourceIndex_
HalfWord sourceIndex_
Move source register index.
Definition: MoveElement.hh:115
TPEF::MoveElement::guardUnit_
HalfWord guardUnit_
Guard register file / unit identifier.
Definition: MoveElement.hh:125
TPEF::MoveElement::destinationUnit_
HalfWord destinationUnit_
Move destination unit or register file identifier.
Definition: MoveElement.hh:113
TPEF::MoveElement::guardIndex_
HalfWord guardIndex_
Guard register index.
Definition: MoveElement.hh:127
TPEF::MoveElement::isEmpty_
bool isEmpty_
Empty move bit.
Definition: MoveElement.hh:103
TPEF::MoveElement::destinationIndex_
HalfWord destinationIndex_
Move destination register index.
Definition: MoveElement.hh:117
TPEF::MoveElement::sourceType_
FieldType sourceType_
The type of Move source.
Definition: MoveElement.hh:107
TPEF::MoveElement::isGuarded_
bool isGuarded_
Move guard enable bit.
Definition: MoveElement.hh:119
TPEF::MoveElement::destinationType_
FieldType destinationType_
The type of move destination.
Definition: MoveElement.hh:109
TPEF::InstructionElement::InstructionElement
InstructionElement(bool isMove)
Definition: InstructionElement.cc:76