OpenASIP
2.0
|
#include <vector>
#include <string>
#include <iostream>
#include <cmath>
#include <boost/format.hpp>
#include "CodeCompressor.hh"
#include "CodeCompressorPlugin.hh"
#include "Program.hh"
#include "BinaryEncoding.hh"
#include "MoveSlot.hh"
#include "ImmediateSlotField.hh"
#include "ImmediateControlField.hh"
#include "InstructionBitVector.hh"
#include "NullInstruction.hh"
#include "AsciiImageWriter.hh"
#include "MapTools.hh"
#include "MathTools.hh"
Go to the source code of this file.
Classes | |
class | MoveSlotDictionary |
Implementation of move slot dictionary compressor. Warning! This compressor works correctly only when there is one instruction per MAU in the final program image. That is, the MAU of the address space should be the same as the width of the compressed instructions or wider. Otherwise jump and call addresses are invalid in the code.
This compressor creates the dictionary on move slot level. Furthermore it uses so called vertical compression which creates a separate dictionary for each move slot.
Definition in file MoveSlotDictionary.cc.