48    MachineCheck(
"Checks that machine has enough registers") {}
 
 
   62    std::set<Register> guardRegs;
 
   63    const std::set<std::string> ignoreRFs; 
 
 
  100    const std::set<std::string> empty;
 
 
  118    const std::set<std::string>& ignoreRFs)
 const {
 
  120    std::set<Register> guardRegs;
 
 
  159    const std::set<std::string>& ignoreRFs)
 const {
 
  161    std::set<Register> guardRegs;
 
 
  188    std::set<Register> guardRegs;
 
  189    const std::set<std::string> ignoreRFs; 
 
 
  218    std::set<Register>& guardRegs,
 
  219    const std::set<std::string>& ignoreRFs)
 const {
 
  223    for (
int i = 0; i < busNav.
count(); i++) {
 
  228            if (regGuard != NULL) {
 
 
  256    const std::set<Register>& guardRegs,
 
  257    const std::set<std::string>& ignoreRFs)
 const {
 
  262    unsigned int intRegs = 0;
 
  263    for (
int i = 0; i < regNav.
count(); i++) {
 
  265        if (rf->
width() == 32 && 
 
  266                ignoreRFs.find(rf->
name()) == ignoreRFs.end()) {
 
  267            for (
int j = 0; j < rf->
size(); j++) {
 
 
  289    const unsigned int& regCount,
 
  293        if (results != NULL) {
 
  294            std::string msg = 
"too few predicate registers, 2 needed, ";
 
 
  316    const unsigned int& regCount,
 
  318    bool isFullyConnected)
 const {
 
  320    unsigned int neededIntRegs = isFullyConnected ? 5 : 6;
 
  321    unsigned int missingRegisters = 0;
 
  323    if (regCount < neededIntRegs) {
 
  324        missingRegisters = neededIntRegs - regCount;
 
  325        if (results != NULL) {
 
  326            results->
addError(*
this, 
"too few integer registers");
 
  329   return missingRegisters;
 
 
  342    std::set<Register> guardRegs;
 
  343    const std::set<std::string> ignoreRFs; 
 
  349    unsigned int missingRegs = 
 
  360    for (
int i = 0; i < regNav.
count(); i++) {
 
  362        if (rf->
width() == 32) {
 
 
  385    for (
int i = 0; i < regNav.
count(); i++) {
 
  387        if (rf->
width() == 32) {
 
 
static std::string toString(const T &source)
 
virtual bool check(const TTAMachine::Machine &mach) const
 
void addError(const MachineCheck &check, const std::string &errorMsg)
 
std::pair< const TTAMachine::RegisterFile *, int > Register
 
bool checkWithIgnore(const TTAMachine::Machine &mach, const std::set< std::string > &ignoreRFs) const
 
bool checkPredRegs(const unsigned int ®Count, MachineCheckResults *results) const
 
FullyConnectedCheck fullyConCheck_
 
bool checkIntRegs(const TTAMachine::Machine &mach) const
 
virtual ~RegisterQuantityCheck()
 
bool canFixIntRegs(const TTAMachine::Machine &mach) const
 
unsigned int missingIntRegs(const unsigned int ®Count, MachineCheckResults *results, bool isFullyConnected) const
 
virtual bool check(const TTAMachine::Machine &mach) const
 
unsigned int countIntRegisters(const TTAMachine::Machine &mach, const std::set< Register > &guardRegs, const std::set< std::string > &ignoreRFs) const
 
bool fixIntRegs(TTAMachine::Machine &mach) const
 
void findGuardRegisters(const TTAMachine::Machine &mach, std::set< Register > ®isters, const std::set< std::string > &ignoreRFs) const
 
virtual int width() const
 
Guard * guard(int index) const
 
virtual TCEString name() const
 
ComponentType * item(int index) const
 
virtual RegisterFileNavigator registerFileNavigator() const
 
virtual BusNavigator busNavigator() const
 
virtual void setNumberOfRegisters(int registers)
 
int registerIndex() const
 
const RegisterFile * registerFile() const