summaryrefslogtreecommitdiffstats
path: root/gcc/tree-alias-type.h
diff options
context:
space:
mode:
authordnovillo <dnovillo@138bc75d-0d04-0410-961f-82ee72b054a4>2004-05-13 06:41:07 +0000
committerdnovillo <dnovillo@138bc75d-0d04-0410-961f-82ee72b054a4>2004-05-13 06:41:07 +0000
commit4ee9c6840ad3fc92a9034343278a1e476ad6872a (patch)
treea2568888a519c077427b133de9ece5879a8484a5 /gcc/tree-alias-type.h
parentebb338380ab170c91e64d38038e6b5ce930d69a1 (diff)
downloadppe42-gcc-4ee9c6840ad3fc92a9034343278a1e476ad6872a.tar.gz
ppe42-gcc-4ee9c6840ad3fc92a9034343278a1e476ad6872a.zip
Merge tree-ssa-20020619-branch into mainline.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@81764 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/tree-alias-type.h')
-rw-r--r--gcc/tree-alias-type.h41
1 files changed, 41 insertions, 0 deletions
diff --git a/gcc/tree-alias-type.h b/gcc/tree-alias-type.h
new file mode 100644
index 00000000000..7740e9933d7
--- /dev/null
+++ b/gcc/tree-alias-type.h
@@ -0,0 +1,41 @@
+#ifndef TREE_ALIAS_TYPE_H
+#define TREE_ALIAS_TYPE_H
+
+#include "varray.h"
+
+union alias_var_def;
+struct aterm_;
+struct aterm_list_a;
+enum alias_var_kind
+{
+ ATERM_AVAR
+};
+struct alias_var_common GTY (())
+{
+ enum alias_var_kind kind;
+ unsigned int varnum;
+ tree decl;
+};
+struct alias_var_aterm GTY (())
+{
+ struct alias_var_common common;
+ struct aterm_ * GTY((skip (""))) term;
+ struct aterm_list_a *GTY ((skip (""))) ptset;
+};
+union alias_var_def GTY ((desc ("%0.common.kind")))
+{
+ struct alias_var_common GTY ((tag ("-1"))) common;
+ struct alias_var_aterm GTY ((tag ("ATERM_AVAR"))) aterm;
+};
+typedef union alias_var_def *alias_var;
+
+#define ALIAS_VAR_KIND(x) ((x)->common.kind)
+#define ALIAS_VAR_VARNUM(x) ((x)->common.varnum)
+#define ALIAS_VAR_DECL(x) ((x)->common.decl)
+#define ALIAS_VAR_ATERM(x) ((x)->aterm.term)
+#define ALIAS_VAR_PTSET(x) ((x)->aterm.ptset)
+union alias_type_def;
+typedef union alias_type_def *alias_type;
+
+alias_var alias_var_new_with_aterm (tree, struct aterm_ *);
+#endif
OpenPOWER on IntegriCloud