tree.c (new_alias_set): New function.
authorRichard Henderson <rth@cygnus.com>
Sun, 20 Sep 1998 19:02:58 +0000 (12:02 -0700)
committerRichard Henderson <rth@gcc.gnu.org>
Sun, 20 Sep 1998 19:02:58 +0000 (12:02 -0700)
        * tree.c (new_alias_set): New function.
        * tree.h (new_alias_set): Declare it.
        * c-common.c (c_get_alias_set): Use it.

From-SVN: r22504

gcc/ChangeLog
gcc/c-common.c
gcc/tree.c
gcc/tree.h

index 1f58e78ed6009ffd5ca7660e59fc7e82cd140fab..0d4cf53b29463d602753265b05184d236fde604d 100644 (file)
@@ -1,3 +1,9 @@
+Sun Sep 20 19:01:51 1998  Richard Henderson  <rth@cygnus.com>
+
+        * tree.c (new_alias_set): New function.
+        * tree.h (new_alias_set): Declare it.
+        * c-common.c (c_get_alias_set): Use it.
+
 Sun Sep 20 12:35:55 1998  Richard Henderson  <rth@cygnus.com>
 
        * fold-const.c (fold): Yet another COND_EXPR bug: when folding 
index a5f738bdf5c0a96274f9888a616ff364837c98ee..5879a851286e1f6ec54a5dc89bce6147410e02ec 100644 (file)
@@ -2984,7 +2984,6 @@ int
 c_get_alias_set (t)
      tree t;
 {
-  static int next_set = 0;
   tree type;
 
   if (t == error_mark_node)
@@ -3060,6 +3059,6 @@ c_get_alias_set (t)
 
   /* TYPE is something we haven't seen before.  Put it in a new alias
      set.  */
-  TYPE_ALIAS_SET (type) = ++next_set;
+  TYPE_ALIAS_SET (type) = new_alias_set ();
   return TYPE_ALIAS_SET (type);
 }
index 2ae6d0b5cc20ec10aaf07af029810e068f85b0a9..e0e2484632c688fe7db6e1d8c844da9a0b696695 100644 (file)
@@ -5061,7 +5061,8 @@ expr_check (node, ignored, file, line, nofatal)
 /* Return the alias set for T, which may be either a type or an
    expression.  */
 
-int get_alias_set (t)
+int
+get_alias_set (t)
      tree t;
 {
   if (!flag_strict_aliasing || !lang_get_alias_set)
@@ -5071,3 +5072,12 @@ int get_alias_set (t)
   else
     return (*lang_get_alias_set) (t);
 }
+
+/* Return a brand-new alias set.  */
+
+int
+new_alias_set ()
+{
+  static int last_alias_set;
+  return ++last_alias_set;
+}
index 58293e49d5e71c5da5e8541c4c013ca36457404c..9f3dbd910b757ebe15b988e3624d2de4c5934d2f 100644 (file)
@@ -1865,6 +1865,7 @@ extern tree get_set_constructor_bits              PROTO((tree, char *, int));
 extern tree get_set_constructor_bytes          PROTO((tree,
                                                       unsigned char *, int));
 extern int get_alias_set                        PROTO((tree));
+extern int new_alias_set                       PROTO((void));
 extern int (*lang_get_alias_set)                PROTO((tree));
 \f
 /* In stmt.c */