+++ /dev/null
-package IR.Flat;
-import IR.*;
-import java.util.*;
-
-public class TempObject {
- ParamsObject params;
- private Vector pointerparams;
- private Vector primitiveparams;
- private MethodDescriptor method;
- private TaskDescriptor task;
- private int tag;
- private Hashtable paramtotemp;
- private Hashtable temptostore;
- private int count;
-
- public TempObject(ParamsObject p, MethodDescriptor md, int tag) {
- params=p;
- pointerparams=new Vector();
- primitiveparams=new Vector();
- paramtotemp=new Hashtable();
- temptostore=new Hashtable();
- this.method=md;
- this.tag=tag;
- count=0;
- }
-
- public TempObject(ParamsObject p, TaskDescriptor task, int tag) {
- params=p;
- pointerparams=new Vector();
- primitiveparams=new Vector();
- paramtotemp=new Hashtable();
- temptostore=new Hashtable();
- this.task=task;
- this.tag=tag;
- count=0;
- }
-
- public void addPtr(TempDescriptor t) {
- if (!params.containsTemp(t)&&!pointerparams.contains(t)) {
- Position p=new Position(true, pointerparams.size());
- pointerparams.add(t);
- paramtotemp.put(new Integer(count++), t);
- temptostore.put(t,p);
- }
- }
-
- public void addPrim(TempDescriptor t) {
- if (!params.containsTemp(t)&&!primitiveparams.contains(t)) {
- Position p=new Position(false, primitiveparams.size());
- primitiveparams.add(t);
- paramtotemp.put(new Integer(count++), t);
- temptostore.put(t,p);
- }
- }
-
- public boolean isLocalPtr(TempDescriptor t) {
- if (!params.containsTemp(t)) {
- Position p=(Position)temptostore.get(t);
- return p.inStruct;
- }
- return false;
- }
-
- public boolean isLocalPrim(TempDescriptor t) {
- if (!params.containsTemp(t)) {
- Position p=(Position)temptostore.get(t);
- return !p.inStruct;
- }
- return false;
- }
-
- public boolean isParamPtr(TempDescriptor t) {
- return params.isParamPtr(t);
- }
-
- public boolean isParamPrim(TempDescriptor t) {
- return params.isParamPrim(t);
- }
-
- int numPointers() {
- return pointerparams.size();
- }
-
- TempDescriptor getPointer(int i) {
- return (TempDescriptor) pointerparams.get(i);
- }
-
- int numPrimitives() {
- return primitiveparams.size();
- }
-
- TempDescriptor getPrimitive(int i) {
- return (TempDescriptor) primitiveparams.get(i);
- }
-
- static class Position {
- boolean inStruct;
- int position;
- Position(boolean inStruct, int position) {
- this.inStruct=inStruct;
- this.position=position;
- }
- }
-}