3 import java.util.Hashtable;
5 import IR.Flat.TempDescriptor;
7 public class ParentChildConflictsMap {
9 public static final Integer ACCESSIBLE = new Integer(1);
10 public static final Integer INACCESSIBLE = new Integer(2);
12 private Hashtable<TempDescriptor, Integer> accessibleMap;
13 private Hashtable<TempDescriptor, StallSite> stallMap;
15 public ParentChildConflictsMap() {
17 accessibleMap = new Hashtable<TempDescriptor, Integer>();
18 stallMap = new Hashtable<TempDescriptor, StallSite>();
22 public Hashtable<TempDescriptor, Integer> getAccessibleMap() {
26 public Hashtable<TempDescriptor, StallSite> getStallMap() {
30 public void addAccessibleVar(TempDescriptor td){
31 accessibleMap.put(td, ACCESSIBLE);
34 public void addInaccessibleVar(TempDescriptor td){
35 accessibleMap.put(td, INACCESSIBLE);
38 public void addStallSite(TempDescriptor td){
39 StallSite stallSite=new StallSite();
40 stallMap.put(td, stallSite);
43 public boolean isAccessible(TempDescriptor td){
44 if(accessibleMap.contains(td) && accessibleMap.get(td).equals(ACCESSIBLE)){
50 public void contributeEffect(TempDescriptor td, String type, String field, int effect){
52 StallSite stallSite=stallMap.get(td);
54 stallSite.addEffect(type, field, effect);