This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

more cleanups after rtx_unchanging_p


As pointed out by Kenner.


r~

        * alias.c (readonly_fields_p): Remove.
        (objects_must_conflict_p): Don't call it.
        * tree.h (readonly_fields_p): Remove.
        * langhooks.h (struct lang_hooks): Remove honor_readonly.
        * langhooks-def.h (LANG_HOOKS_HONOR_READONLY): Remove.
ada/
        * misc.c (LANG_HOOKS_HONOR_READONLY): Remove.

Index: alias.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/alias.c,v
retrieving revision 1.237
diff -u -p -r1.237 alias.c
--- alias.c	18 Aug 2004 08:23:31 -0000	1.237
+++ alias.c	18 Aug 2004 18:28:51 -0000
@@ -304,28 +304,6 @@ alias_sets_might_conflict_p (HOST_WIDE_I
 }
 
 
-/* Return 1 if TYPE is a RECORD_TYPE, UNION_TYPE, or QUAL_UNION_TYPE and has
-   has any readonly fields.  If any of the fields have types that
-   contain readonly fields, return true as well.  */
-
-int
-readonly_fields_p (tree type)
-{
-  tree field;
-
-  if (TREE_CODE (type) != RECORD_TYPE && TREE_CODE (type) != UNION_TYPE
-      && TREE_CODE (type) != QUAL_UNION_TYPE)
-    return 0;
-
-  for (field = TYPE_FIELDS (type); field != 0; field = TREE_CHAIN (field))
-    if (TREE_CODE (field) == FIELD_DECL
-	&& (TREE_READONLY (field)
-	    || readonly_fields_p (TREE_TYPE (field))))
-      return 1;
-
-  return 0;
-}
-
 /* Return 1 if any MEM object of type T1 will always conflict (using the
    dependency routines in this file) with any MEM object of type T2.
    This is used when allocating temporary storage.  If T1 and/or T2 are
@@ -342,14 +320,6 @@ objects_must_conflict_p (tree t1, tree t
   if (t1 == 0 && t2 == 0)
     return 0;
 
-  /* If one or the other has readonly fields or is readonly,
-     then they may not conflict.  */
-  if ((t1 != 0 && readonly_fields_p (t1))
-      || (t2 != 0 && readonly_fields_p (t2))
-      || (t1 != 0 && lang_hooks.honor_readonly && TYPE_READONLY (t1))
-      || (t2 != 0 && lang_hooks.honor_readonly && TYPE_READONLY (t2)))
-    return 0;
-
   /* If they are the same type, they must conflict.  */
   if (t1 == t2
       /* Likewise if both are volatile.  */
Index: langhooks-def.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/langhooks-def.h,v
retrieving revision 1.89
diff -u -p -r1.89 langhooks-def.h
--- langhooks-def.h	28 Jul 2004 23:44:45 -0000	1.89
+++ langhooks-def.h	18 Aug 2004 18:28:51 -0000
@@ -111,7 +111,6 @@ extern int lhd_gimplify_expr (tree *, tr
 #define LANG_HOOKS_SET_DECL_ASSEMBLER_NAME lhd_set_decl_assembler_name
 #define LANG_HOOKS_CAN_USE_BIT_FIELDS_P lhd_can_use_bit_fields_p
 #define LANG_HOOKS_REDUCE_BIT_FIELD_OPERATIONS false
-#define LANG_HOOKS_HONOR_READONLY	false
 #define LANG_HOOKS_NO_BODY_BLOCKS	false
 #define LANG_HOOKS_PRINT_STATISTICS	lhd_do_nothing
 #define LANG_HOOKS_PRINT_XNODE		lhd_print_tree_nothing
@@ -276,7 +275,6 @@ extern tree lhd_make_node (enum tree_cod
   LANG_HOOKS_SET_DECL_ASSEMBLER_NAME, \
   LANG_HOOKS_CAN_USE_BIT_FIELDS_P, \
   LANG_HOOKS_REDUCE_BIT_FIELD_OPERATIONS, \
-  LANG_HOOKS_HONOR_READONLY, \
   LANG_HOOKS_NO_BODY_BLOCKS, \
   LANG_HOOKS_PRINT_STATISTICS, \
   LANG_HOOKS_PRINT_XNODE, \
Index: langhooks.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/langhooks.h,v
retrieving revision 1.96
diff -u -p -r1.96 langhooks.h
--- langhooks.h	2 Aug 2004 16:45:50 -0000	1.96
+++ langhooks.h	18 Aug 2004 18:28:51 -0000
@@ -325,9 +325,6 @@ struct lang_hooks
      have their results reduced to the precision of the type.  */
   bool reduce_bit_field_operations;
 
-  /* Nonzero if TYPE_READONLY and TREE_READONLY should always be honored.  */
-  bool honor_readonly;
-
   /* Nonzero if this front end does not generate a dummy BLOCK between
      the outermost scope of the function and the FUNCTION_DECL.  See
      is_body_block in stmt.c, and its callers.  */
Index: tree.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/tree.h,v
retrieving revision 1.593
diff -u -p -r1.593 tree.h
--- tree.h	18 Aug 2004 08:24:18 -0000	1.593
+++ tree.h	18 Aug 2004 18:28:52 -0000
@@ -3464,7 +3464,6 @@ extern void record_component_aliases (tr
 extern HOST_WIDE_INT get_alias_set (tree);
 extern int alias_sets_conflict_p (HOST_WIDE_INT, HOST_WIDE_INT);
 extern int alias_sets_might_conflict_p (HOST_WIDE_INT, HOST_WIDE_INT);
-extern int readonly_fields_p (tree);
 extern int objects_must_conflict_p (tree, tree);
 
 /* In tree.c */
Index: ada/misc.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/ada/misc.c,v
retrieving revision 1.88
diff -u -p -r1.88 misc.c
--- ada/misc.c	26 Jul 2004 10:41:56 -0000	1.88
+++ ada/misc.c	18 Aug 2004 18:28:53 -0000
@@ -122,8 +122,6 @@ static tree gnat_type_max_size		(tree);
 #define LANG_HOOKS_POST_OPTIONS		gnat_post_options
 #undef  LANG_HOOKS_PARSE_FILE
 #define LANG_HOOKS_PARSE_FILE		gnat_parse_file
-#undef  LANG_HOOKS_HONOR_READONLY
-#define LANG_HOOKS_HONOR_READONLY	true
 #undef  LANG_HOOKS_HASH_TYPES
 #define LANG_HOOKS_HASH_TYPES		false
 #undef  LANG_HOOKS_GETDECLS


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]