scale.backend.trips2
Class TripsLabel

java.lang.Object
  extended by scale.backend.Instruction
      extended by scale.backend.Marker
          extended by scale.backend.Label
              extended by scale.backend.trips2.TripsLabel
All Implemented Interfaces:
java.lang.Cloneable

public class TripsLabel
extends Label

This class marks the position of a point branched to in Trips code.

$Id: TripsLabel.java,v 1.10 2006-11-16 17:49:41 burrill Exp $

Copyright 2005 by the Scale Compiler Group,
Department of Computer Science
University of Massachusetts,
Amherst MA. 01003, USA
All Rights Reserved.


Constructor Summary
TripsLabel(boolean referenced, RoutineDecl routine)
           
TripsLabel(RoutineDecl routine)
          Create a label.
 
Method Summary
 java.lang.String getLabelString()
          Return the String representing the label.
 int getLoopNumber()
          Return the loop number of the instruction.
 RoutineDecl getRoutine()
           
protected  void setLoopNumber(int loopNumber)
          Set the loop number of the instruction.
 
Methods inherited from class scale.backend.Label
addPredecessor, assembler, created, getLabelIndex, getPredecessor, getStrength, isFirstInBasicBlock, isLabel, isReferenced, markAsFirstInBasicBlock, numPredecessors, removePredecessors, replacePredecessor, setLabelIndex, setNotReferenced, setReferenced, setStrength, toString
 
Methods inherited from class scale.backend.Marker
getExecutionCycles, getOpcode, independent, instructionSize, isMarker, nullify, remapDestRegister, remapRegisters, remapSrcRegister, specifyRegisterUsage
 
Methods inherited from class scale.backend.Instruction
canBeDeleted, clone, copy, defs, ehash, getBBID, getCopyDest, getCopySrc, getDestRegister, getFunctionalUnit, getNext, getPredicate, getPredicates, getSrcRegisters, getTag, isBranch, isCopy, isLoad, isMandatory, isPhi, isPredicated, isPredicatedOnTrue, isPrefetch, isSpillInstruction, isSpillLoadPoint, isSpillStorePoint, isStore, markSpillInstruction, mods, nullified, numPredicates, removePredicates, setBBID, setMandatory, setNext, setPredicate, setPredicate, setPredicatedOnTrue, setPredicates, setsSpecialReg, setTag, specifyNotSpillLoadPoint, specifySpillStorePoint, uses
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

TripsLabel

public TripsLabel(boolean referenced,
                  RoutineDecl routine)

TripsLabel

public TripsLabel(RoutineDecl routine)
Create a label.

Parameters:
routine - specifies the routine containing this label
Method Detail

getRoutine

public RoutineDecl getRoutine()

getLabelString

public java.lang.String getLabelString()
Return the String representing the label.


getLoopNumber

public int getLoopNumber()
Return the loop number of the instruction. This is Trips specific. For all other backends, it returns 0.

Overrides:
getLoopNumber in class Instruction

setLoopNumber

protected void setLoopNumber(int loopNumber)
Set the loop number of the instruction. This is Trips specific. For all other backends, it does nothing.

Overrides:
setLoopNumber in class Instruction