2 import IR.FieldDescriptor;
4 public class FlatFieldNode extends FlatNode {
9 public FlatFieldNode(FieldDescriptor field, TempDescriptor src, TempDescriptor dst) {
15 public FlatNode clone(TempMap t) {
16 return new FlatFieldNode(field, t.tempMap(src), t.tempMap(dst));
18 public void rewriteUse(TempMap t) {
21 public void rewriteDef(TempMap t) {
25 public FieldDescriptor getField() {
29 public TempDescriptor getSrc() {
33 public TempDescriptor getDst() {
37 public String toString() {
38 return "FlatFieldNode_"+dst.toString()+"="+src.toString()+"."+field.getSymbol();
42 return FKind.FlatFieldNode;
45 public TempDescriptor [] writesTemps() {
46 return new TempDescriptor[] {dst};
49 public TempDescriptor [] readsTemps() {
50 return new TempDescriptor[] {src};