OpenASIP  2.0
Classes
MoveSlotDictionary.cc File Reference
#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"
Include dependency graph for MoveSlotDictionary.cc:

Go to the source code of this file.

Classes

class  MoveSlotDictionary
 

Detailed Description

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.

Author
Otto Esko 2009 (otto.esko-no.spam-tut.fi)
Note
rating: red

Definition in file MoveSlotDictionary.cc.