harpoon.Tools.PatMat
Class Spec.DetailExtra

java.lang.Object
  extended by harpoon.Tools.PatMat.Spec.Detail
      extended by harpoon.Tools.PatMat.Spec.DetailExtra
Enclosing class:
Spec

public static class Spec.DetailExtra
extends Spec.Detail

Extension of Spec.Detail that requests an extra temporary register for the use of the action clause. For example, if multiplying two 32-bit registers generates a 64-bit result on the target architecture, you might need to request an extra Temp to have a place to put the high word of the result (before you throw it away). The DetailExtra element contains a list of identifiers naming the working temps that you are requesting.

syntax: %extra { ID-LIST }


Field Summary
 Spec.IdList extras
           
 int type
           
 
Constructor Summary
Spec.DetailExtra(int type, Spec.IdList extras)
           
 
Method Summary
 void accept(Spec.DetailVisitor v)
          Applies v's visit method to this.
 String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

type

public final int type

extras

public final Spec.IdList extras
Constructor Detail

Spec.DetailExtra

public Spec.DetailExtra(int type,
                        Spec.IdList extras)
Method Detail

accept

public void accept(Spec.DetailVisitor v)
Applies v's visit method to this.

Specified by:
accept in class Spec.Detail
See Also:
"Design Patterns pgs. 331-344"

toString

public String toString()
Overrides:
toString in class Object