Fix tabbing.... Please fix your editors so they do tabbing correctly!!! (Spaces...
[IRC.git] / Robust / src / IR / Flat / FlatFieldNode.java
1 package IR.Flat;
2 import IR.FieldDescriptor;
3
4 public class FlatFieldNode extends FlatNode {
5   TempDescriptor src;
6   TempDescriptor dst;
7   FieldDescriptor field;
8
9   public FlatFieldNode(FieldDescriptor field, TempDescriptor src, TempDescriptor dst) {
10     this.field=field;
11     this.src=src;
12     this.dst=dst;
13   }
14
15   public FlatNode clone(TempMap t) {
16     return new FlatFieldNode(field, t.tempMap(src), t.tempMap(dst));
17   }
18   public void rewriteUse(TempMap t) {
19     src=t.tempMap(src);
20   }
21   public void rewriteDef(TempMap t) {
22     dst=t.tempMap(dst);
23   }
24
25   public FieldDescriptor getField() {
26     return field;
27   }
28
29   public TempDescriptor getSrc() {
30     return src;
31   }
32
33   public TempDescriptor getDst() {
34     return dst;
35   }
36
37   public String toString() {
38     return "FlatFieldNode_"+dst.toString()+"="+src.toString()+"."+field.getSymbol();
39   }
40
41   public int kind() {
42     return FKind.FlatFieldNode;
43   }
44
45   public TempDescriptor [] writesTemps() {
46     return new TempDescriptor[] {dst};
47   }
48
49   public TempDescriptor [] readsTemps() {
50     return new TempDescriptor[] {src};
51   }
52 }