Go to the documentation of this file.
33 #ifndef TTA_INSTRUCTION_BIT_VECTOR_HH
34 #define TTA_INSTRUCTION_BIT_VECTOR_HH
59 unsigned int firstIndex,
unsigned int lastIndex)
const;
78 typedef std::map<const TTAProgram::Instruction*, IndexBoundSet*>
83 typedef std::map<const TTAProgram::Instruction*, unsigned int>
void addIndexBoundsForReference(IndexBound bounds)
void startSettingInstructionReference(const TTAProgram::Instruction &instruction)
InstructionAddressTable instructionAddresses_
Addresses of the instructions.
std::vector< IndexBound > IndexBoundTable
A vector type that stores index bounds.
unsigned int instructionStartingPoint(unsigned int index) const
ReferenceMap references_
Contains information of the parts of the bit vector that refer to an instruction address.
std::map< const TTAProgram::Instruction *, IndexBoundSet * > ReferenceMap
A map type that maps Instructions to IndexBoundSets.
unsigned int instructionCount() const
IndexBoundSet & indexBounds(const TTAProgram::Instruction &instruction)
std::map< const TTAProgram::Instruction *, unsigned int > InstructionAddressTable
A map type for instruction addresses.
void fixInstructionAddress(const TTAProgram::Instruction &instruction, unsigned int address)
static unsigned int availableSize(const IndexBoundTable &indexes)
void addIndexBoundTables(const IndexBoundSet &from, IndexBoundSet &to)
InstructionBitVector * subVector(unsigned int firstIndex, unsigned int lastIndex) const
IndexBoundTable * currentTable_
IndexBoundTable being under construction.
virtual ~InstructionBitVector()
void markInstructionStartingPoint(unsigned int position)
std::set< IndexBoundTable * > IndexBoundSet
A set type that stores IndexBoundTables.
BoundaryTable instructionBoundaries_
Stores the instruction boundaries.
void pushBack(const InstructionBitVector &bits)
std::vector< unsigned int > BoundaryTable
A vector type that stores instruction boundaries.
void fixBits(const IndexBoundTable &indexes, unsigned int value)