|
OpenASIP 2.2
|
#include <BitVector.hh>


Public Member Functions | |
| BitVector () | |
| BitVector (const BitVector &vector, unsigned int firstIndex, unsigned int lastIndex) | |
| virtual | ~BitVector () |
| void | pushBack (long long unsigned int integer, int size) |
| void | pushBack (const BitVector &bits) |
| void | pushBack (bool bit) |
| std::string | toString () const |
BitVector is a specialization of STL's bit vector. It provides some handy helper methods.
Definition at line 44 of file BitVector.hh.
| BitVector::BitVector | ( | ) |
| BitVector::BitVector | ( | const BitVector & | vector, |
| unsigned int | firstIndex, | ||
| unsigned int | lastIndex | ||
| ) |
The constructor.
Creates a bit vector that is a sub vector of the given vector.
| vector | The bit vector. |
| firstIndex | The index of the given vector that is to be the first element in the created vector. |
| lastIndex | The index of the given vector that is to be that last element in the created vector. |
| OutOfRange | If the given indexes are too big or too small. |
Definition at line 60 of file BitVector.cc.
References assert.
|
virtual |
| void BitVector::pushBack | ( | bool | bit | ) |
Pushes back the given bit.
| bit | The bit to be added. |
Definition at line 120 of file BitVector.cc.
| void BitVector::pushBack | ( | const BitVector & | bits | ) |
Pushes back the given bit vector.
| bits | The bit vector. |
Definition at line 107 of file BitVector.cc.
| void BitVector::pushBack | ( | long long unsigned int | integer, |
| int | size | ||
| ) |
Pushes back the given number and increases the size of the vector by the given amount.
For example, if number 6 (110) is added with size 5, bits 00110 are concatenated to the vector. If size 2 is given, then bits 10 are concatenated to the vector.
| integer | The number to be added. |
| size | The number of bits to be added. |
Definition at line 94 of file BitVector.cc.
References MathTools::bit().
Referenced by CodeCompressorPlugin::addBitsForDstRegisterField(), CodeCompressorPlugin::addBitsForGuardField(), CodeCompressorPlugin::addBitsForICField(), CodeCompressorPlugin::addBitsForImmediateSlot(), MoveSlotDictionary::addInstructions(), CodeCompressorPlugin::encodeFUTerminal(), CodeCompressorPlugin::encodeIUTerminal(), CodeCompressorPlugin::encodeNOP(), CodeCompressorPlugin::encodeRFTerminal(), CodeCompressorPlugin::encodeSlotField(), ProGe::RV32MicroCodeGenerator::initializeOperations(), InstructionBitVector::pushBack(), CodeCompressorPlugin::socketCodeBits(), and ProgramImageGenerator::writeDataSection().

| std::string BitVector::toString | ( | ) | const |
Converts BitVector to std::string format
Definition at line 130 of file BitVector.cc.
Referenced by ProGe::RV32MicroCodeGenerator::generateNOP(), and ProGe::RV32MicroCodeGenerator::initializeOperations().