Commit d96f6b59 by Ben Elliston Committed by Ben Elliston

tree-alias-ander.h: Add standard top-of-file comment.

	* tree-alias-ander.h: Add standard top-of-file comment.
	* tree-alias-common.h: Likewise.
	* tree-alias-type.h: Likewise.

From-SVN: r83285
parent f44272ee
2004-06-17 Ben Elliston <bje@au.ibm.com>
* tree-alias-ander.h: Add standard top-of-file comment.
* tree-alias-common.h: Likewise.
* tree-alias-type.h: Likewise.
2004-06-16 Daniel Berlin <dberlin@dberlin.org> 2004-06-16 Daniel Berlin <dberlin@dberlin.org>
* tree-ssa-pre.c (compute_avail): Value number uses as well. * tree-ssa-pre.c (compute_avail): Value number uses as well.
......
/* Tree based Andersen points-to analysis
Copyright (C) 2002, 2003 Free Software Foundation, Inc.
Contributed by Daniel Berlin <dberlin@dberlin.org>
This file is part of GCC.
GCC is free software; you can redistribute it and/or modify
under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
GCC is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GCC; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
#ifndef TREE_ALIAS_ANDER #ifndef TREE_ALIAS_ANDER
#define TREE_ALIAS_ANDER #define TREE_ALIAS_ANDER
#include "tree-alias-common.h"
#include "tree-alias-common.h"
extern struct tree_alias_ops *andersen_alias_ops; extern struct tree_alias_ops *andersen_alias_ops;
#endif
#endif /* TREE_ALIAS_ANDER */
/* Tree based points-to analysis
Copyright (C) 2002, 2003 Free Software Foundation, Inc.
Contributed by Daniel Berlin <dberlin@dberlin.org>
This file is part of GCC.
GCC is free software; you can redistribute it and/or modify
under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
GCC is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GCC; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
#ifndef TREE_ALIAS_COMMON #ifndef TREE_ALIAS_COMMON
#define TREE_ALIAS_COMMON #define TREE_ALIAS_COMMON
#include "tree-alias-type.h" #include "tree-alias-type.h"
/* Alias analysis function pointers. /* Alias analysis function pointers.
Functions implemented by the actual alias analysis algorithms in Functions implemented by the actual alias analysis algorithms in
order for them to work with the common points-to structure. */ order for them to work with the common points-to structure. */
...@@ -96,4 +119,5 @@ extern bool ptr_may_alias_var (tree, tree); ...@@ -96,4 +119,5 @@ extern bool ptr_may_alias_var (tree, tree);
extern bool same_points_to_set (tree, tree); extern bool same_points_to_set (tree, tree);
extern bool empty_points_to_set (tree); extern bool empty_points_to_set (tree);
extern const char *alias_get_name (tree); extern const char *alias_get_name (tree);
#endif
#endif /* TREE_ALIAS_COMMON */
/* Tree based linear points-to analysis
Copyright (C) 2002, 2003 Free Software Foundation, Inc.
Contributed by Daniel Berlin <dberlin@dberlin.org>
This file is part of GCC.
GCC is free software; you can redistribute it and/or modify
under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
GCC is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GCC; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
#ifndef TREE_ALIAS_TYPE_H #ifndef TREE_ALIAS_TYPE_H
#define TREE_ALIAS_TYPE_H #define TREE_ALIAS_TYPE_H
...@@ -6,27 +27,32 @@ ...@@ -6,27 +27,32 @@
union alias_var_def; union alias_var_def;
struct aterm_; struct aterm_;
struct aterm_list_a; struct aterm_list_a;
enum alias_var_kind enum alias_var_kind
{ {
ATERM_AVAR ATERM_AVAR
}; };
struct alias_var_common GTY (()) struct alias_var_common GTY (())
{ {
enum alias_var_kind kind; enum alias_var_kind kind;
unsigned int varnum; unsigned int varnum;
tree decl; tree decl;
}; };
struct alias_var_aterm GTY (()) struct alias_var_aterm GTY (())
{ {
struct alias_var_common common; struct alias_var_common common;
struct aterm_ * GTY((skip (""))) term; struct aterm_ * GTY((skip (""))) term;
struct aterm_list_a *GTY ((skip (""))) ptset; struct aterm_list_a *GTY ((skip (""))) ptset;
}; };
union alias_var_def GTY ((desc ("%0.common.kind"))) union alias_var_def GTY ((desc ("%0.common.kind")))
{ {
struct alias_var_common GTY ((tag ("-1"))) common; struct alias_var_common GTY ((tag ("-1"))) common;
struct alias_var_aterm GTY ((tag ("ATERM_AVAR"))) aterm; struct alias_var_aterm GTY ((tag ("ATERM_AVAR"))) aterm;
}; };
typedef union alias_var_def *alias_var; typedef union alias_var_def *alias_var;
#define ALIAS_VAR_KIND(x) ((x)->common.kind) #define ALIAS_VAR_KIND(x) ((x)->common.kind)
...@@ -38,4 +64,5 @@ union alias_type_def; ...@@ -38,4 +64,5 @@ union alias_type_def;
typedef union alias_type_def *alias_type; typedef union alias_type_def *alias_type;
alias_var alias_var_new_with_aterm (tree, struct aterm_ *); alias_var alias_var_new_with_aterm (tree, struct aterm_ *);
#endif
#endif /* TREE_ALIAS_TYPE_H */
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment