2012-03-29 Richard Guenther <rguenther@suse.de>
authorrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 29 Mar 2012 13:54:16 +0000 (13:54 +0000)
committerrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 29 Mar 2012 13:54:16 +0000 (13:54 +0000)
* cgraph.h (cgraph_materialize_all_clones): Remove.
(reset_inline_failed): Likewise.
* cgraphunit.c (cgraph_materialize_all_clones): Make static.
* cgraphbuild.c (reset_inline_failed): Remove.
* rtl.h (cse_main): Remove.
(extended_count): Likewise.
* cse.c (dump_class): Mark as DEBUG_FUNCTION.
(cse_main): Make static.
* combine.c (extended_count): Remove.
(dump_combine_stats): Mark as DEBUG_FUNCTION.
* basic-block.h (reorder_basic_blocks): Remove.
* bb-reorder.c (reorder_basic_blocks): Make static.
* Makefile.in (dse.o): Remove dse.h dependency.
* dse.h: Remove.
* dse.c (gate_dse): Remove.
(clear_alias_mode_eq): Likewise.
(clear_alias_mode_hash): Likewise.
(dse_record_singleton_alias_set): Likewise.
(dse_invalidate_singleton_alias_set): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@185962 138bc75d-0d04-0410-961f-82ee72b054a4

12 files changed:
gcc/ChangeLog
gcc/Makefile.in
gcc/basic-block.h
gcc/bb-reorder.c
gcc/cgraph.h
gcc/cgraphbuild.c
gcc/cgraphunit.c
gcc/combine.c
gcc/cse.c
gcc/dse.c
gcc/dse.h [deleted file]
gcc/rtl.h

index 9d3d515..fc2ec36 100644 (file)
@@ -1,3 +1,25 @@
+2012-03-29  Richard Guenther  <rguenther@suse.de>
+
+       * cgraph.h (cgraph_materialize_all_clones): Remove.
+       (reset_inline_failed): Likewise.
+       * cgraphunit.c (cgraph_materialize_all_clones): Make static.
+       * cgraphbuild.c (reset_inline_failed): Remove.
+       * rtl.h (cse_main): Remove.
+       (extended_count): Likewise.
+       * cse.c (dump_class): Mark as DEBUG_FUNCTION.
+       (cse_main): Make static.
+       * combine.c (extended_count): Remove.
+       (dump_combine_stats): Mark as DEBUG_FUNCTION.
+       * basic-block.h (reorder_basic_blocks): Remove.
+       * bb-reorder.c (reorder_basic_blocks): Make static.
+       * Makefile.in (dse.o): Remove dse.h dependency.
+       * dse.h: Remove.
+       * dse.c (gate_dse): Remove.
+       (clear_alias_mode_eq): Likewise.
+       (clear_alias_mode_hash): Likewise.
+       (dse_record_singleton_alias_set): Likewise.
+       (dse_invalidate_singleton_alias_set): Likewise.
+
 2012-03-29  H.J. Lu  <hongjiu.lu@intel.com>
 
        * config/linux-android.h (ANDROID_STARTFILE_SPEC): Use
index d50facc..f5fa0c3 100644 (file)
@@ -3011,7 +3011,7 @@ dce.o : dce.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) \
 dse.o : dse.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) \
    $(TREE_H) $(TM_P_H) $(REGS_H) hard-reg-set.h $(FLAGS_H) insn-config.h \
    $(RECOG_H) $(EXPR_H) $(DF_H) cselib.h $(DBGCNT_H) $(TIMEVAR_H) \
-   $(TREE_PASS_H) alloc-pool.h $(ALIAS_H) dse.h $(OPTABS_H) $(TARGET_H) \
+   $(TREE_PASS_H) alloc-pool.h $(ALIAS_H) $(OPTABS_H) $(TARGET_H) \
    $(BITMAP_H) $(PARAMS_H)
 fwprop.o : fwprop.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) \
    $(DIAGNOSTIC_CORE_H) insn-config.h $(RECOG_H) $(FLAGS_H) $(OBSTACK_H) $(BASIC_BLOCK_H) \
index fb17bad..f8cdea0 100644 (file)
@@ -830,9 +830,6 @@ extern bool inside_basic_block_p (const_rtx);
 extern bool control_flow_insn_p (const_rtx);
 extern rtx get_last_bb_insn (basic_block);
 
-/* In bb-reorder.c */
-extern void reorder_basic_blocks (void);
-
 /* In dominance.c */
 
 enum cdi_direction
index a35b8e6..c7f9c92 100644 (file)
@@ -1903,7 +1903,7 @@ verify_hot_cold_block_grouping (void)
 /* Reorder basic blocks.  The main entry point to this file.  FLAGS is
    the set of flags to pass to cfg_layout_initialize().  */
 
-void
+static void
 reorder_basic_blocks (void)
 {
   int n_traces;
index 93efd94..7262859 100644 (file)
@@ -613,13 +613,11 @@ struct cgraph_2edge_hook_list *cgraph_add_edge_duplication_hook (cgraph_2edge_ho
 void cgraph_remove_edge_duplication_hook (struct cgraph_2edge_hook_list *);
 struct cgraph_2node_hook_list *cgraph_add_node_duplication_hook (cgraph_2node_hook, void *);
 void cgraph_remove_node_duplication_hook (struct cgraph_2node_hook_list *);
-void cgraph_materialize_all_clones (void);
 gimple cgraph_redirect_edge_call_stmt_to_callee (struct cgraph_edge *);
 bool cgraph_propagate_frequency (struct cgraph_node *node);
 /* In cgraphbuild.c  */
 unsigned int rebuild_cgraph_edges (void);
 void cgraph_rebuild_references (void);
-void reset_inline_failed (struct cgraph_node *);
 int compute_call_stmt_bb_frequency (tree, basic_block bb);
 
 /* In ipa.c  */
index 8bf8830..d7ef7f9 100644 (file)
@@ -200,20 +200,6 @@ record_eh_tables (struct cgraph_node *node, struct function *fun)
     }
 }
 
-/* Reset inlining information of all incoming call edges of NODE.  */
-
-void
-reset_inline_failed (struct cgraph_node *node)
-{
-  struct cgraph_edge *e;
-
-  for (e = node->callers; e; e = e->next_caller)
-    {
-      e->callee->global.inlined_to = NULL;
-      initialize_inline_failed (e);
-    }
-}
-
 /* Computes the frequency of the call statement so that it can be stored in
    cgraph_edge.  BB is the basic block of the call statement.  */
 int
index 516f187..9e5820f 100644 (file)
@@ -1294,59 +1294,6 @@ handle_alias_pairs (void)
 }
 
 
-/* Analyze the whole compilation unit once it is parsed completely.  */
-
-void
-cgraph_finalize_compilation_unit (void)
-{
-  timevar_push (TV_CGRAPH);
-
-  /* If LTO is enabled, initialize the streamer hooks needed by GIMPLE.  */
-  if (flag_lto)
-    lto_streamer_hooks_init ();
-
-  /* If we're here there's no current function anymore.  Some frontends
-     are lazy in clearing these.  */
-  current_function_decl = NULL;
-  set_cfun (NULL);
-
-  /* Do not skip analyzing the functions if there were errors, we
-     miss diagnostics for following functions otherwise.  */
-
-  /* Emit size functions we didn't inline.  */
-  finalize_size_functions ();
-
-  /* Mark alias targets necessary and emit diagnostics.  */
-  finish_aliases_1 ();
-  handle_alias_pairs ();
-
-  if (!quiet_flag)
-    {
-      fprintf (stderr, "\nAnalyzing compilation unit\n");
-      fflush (stderr);
-    }
-
-  if (flag_dump_passes)
-    dump_passes ();
-
-  /* Gimplify and lower all functions, compute reachability and
-     remove unreachable nodes.  */
-  cgraph_analyze_functions ();
-
-  /* Mark alias targets necessary and emit diagnostics.  */
-  finish_aliases_1 ();
-  handle_alias_pairs ();
-
-  /* Gimplify and lower thunks.  */
-  cgraph_analyze_functions ();
-
-  /* Finally drive the pass manager.  */
-  cgraph_optimize ();
-
-  timevar_pop (TV_CGRAPH);
-}
-
-
 /* Figure out what functions we want to assemble.  */
 
 static void
@@ -2134,124 +2081,6 @@ output_weakrefs (void)
 }
 
 
-/* Perform simple optimizations based on callgraph.  */
-
-void
-cgraph_optimize (void)
-{
-  if (seen_error ())
-    return;
-
-#ifdef ENABLE_CHECKING
-  verify_cgraph ();
-#endif
-
-  /* Frontend may output common variables after the unit has been finalized.
-     It is safe to deal with them here as they are always zero initialized.  */
-  varpool_analyze_pending_decls ();
-
-  timevar_push (TV_CGRAPHOPT);
-  if (pre_ipa_mem_report)
-    {
-      fprintf (stderr, "Memory consumption before IPA\n");
-      dump_memory_report (false);
-    }
-  if (!quiet_flag)
-    fprintf (stderr, "Performing interprocedural optimizations\n");
-  cgraph_state = CGRAPH_STATE_IPA;
-
-  /* Don't run the IPA passes if there was any error or sorry messages.  */
-  if (!seen_error ())
-    ipa_passes ();
-
-  /* Do nothing else if any IPA pass found errors or if we are just streaming LTO.  */
-  if (seen_error ()
-      || (!in_lto_p && flag_lto && !flag_fat_lto_objects))
-    {
-      timevar_pop (TV_CGRAPHOPT);
-      return;
-    }
-
-  /* This pass remove bodies of extern inline functions we never inlined.
-     Do this later so other IPA passes see what is really going on.  */
-  cgraph_remove_unreachable_nodes (false, dump_file);
-  cgraph_global_info_ready = true;
-  if (cgraph_dump_file)
-    {
-      fprintf (cgraph_dump_file, "Optimized ");
-      dump_cgraph (cgraph_dump_file);
-      dump_varpool (cgraph_dump_file);
-    }
-  if (post_ipa_mem_report)
-    {
-      fprintf (stderr, "Memory consumption after IPA\n");
-      dump_memory_report (false);
-    }
-  timevar_pop (TV_CGRAPHOPT);
-
-  /* Output everything.  */
-  (*debug_hooks->assembly_start) ();
-  if (!quiet_flag)
-    fprintf (stderr, "Assembling functions:\n");
-#ifdef ENABLE_CHECKING
-  verify_cgraph ();
-#endif
-
-  cgraph_materialize_all_clones ();
-  bitmap_obstack_initialize (NULL);
-  execute_ipa_pass_list (all_late_ipa_passes);
-  cgraph_remove_unreachable_nodes (true, dump_file);
-#ifdef ENABLE_CHECKING
-  verify_cgraph ();
-#endif
-  bitmap_obstack_release (NULL);
-  cgraph_mark_functions_to_output ();
-  output_weakrefs ();
-
-  cgraph_state = CGRAPH_STATE_EXPANSION;
-  if (!flag_toplevel_reorder)
-    cgraph_output_in_order ();
-  else
-    {
-      cgraph_output_pending_asms ();
-
-      cgraph_expand_all_functions ();
-      varpool_remove_unreferenced_decls ();
-
-      varpool_assemble_pending_decls ();
-    }
-
-  cgraph_process_new_functions ();
-  cgraph_state = CGRAPH_STATE_FINISHED;
-
-  if (cgraph_dump_file)
-    {
-      fprintf (cgraph_dump_file, "\nFinal ");
-      dump_cgraph (cgraph_dump_file);
-      dump_varpool (cgraph_dump_file);
-    }
-#ifdef ENABLE_CHECKING
-  verify_cgraph ();
-  /* Double check that all inline clones are gone and that all
-     function bodies have been released from memory.  */
-  if (!seen_error ())
-    {
-      struct cgraph_node *node;
-      bool error_found = false;
-
-      for (node = cgraph_nodes; node; node = node->next)
-       if (node->analyzed
-           && (node->global.inlined_to
-               || gimple_has_body_p (node->decl)))
-         {
-           error_found = true;
-           dump_cgraph_node (stderr, node);
-         }
-      if (error_found)
-       internal_error ("nodes with unreleased memory found");
-    }
-#endif
-}
 
 void
 init_cgraph (void)
@@ -2549,7 +2378,7 @@ cgraph_redirect_edge_call_stmt_to_callee (struct cgraph_edge *e)
    bring all functions to memory prior compilation, but current WHOPR
    implementation does that and it is is bit easier to keep everything right in
    this order.  */
-void
+static void
 cgraph_materialize_all_clones (void)
 {
   struct cgraph_node *node;
@@ -2628,4 +2457,178 @@ cgraph_materialize_all_clones (void)
   cgraph_remove_unreachable_nodes (false, cgraph_dump_file);
 }
 
+
+/* Perform simple optimizations based on callgraph.  */
+
+void
+cgraph_optimize (void)
+{
+  if (seen_error ())
+    return;
+
+#ifdef ENABLE_CHECKING
+  verify_cgraph ();
+#endif
+
+  /* Frontend may output common variables after the unit has been finalized.
+     It is safe to deal with them here as they are always zero initialized.  */
+  varpool_analyze_pending_decls ();
+
+  timevar_push (TV_CGRAPHOPT);
+  if (pre_ipa_mem_report)
+    {
+      fprintf (stderr, "Memory consumption before IPA\n");
+      dump_memory_report (false);
+    }
+  if (!quiet_flag)
+    fprintf (stderr, "Performing interprocedural optimizations\n");
+  cgraph_state = CGRAPH_STATE_IPA;
+
+  /* Don't run the IPA passes if there was any error or sorry messages.  */
+  if (!seen_error ())
+    ipa_passes ();
+
+  /* Do nothing else if any IPA pass found errors or if we are just streaming LTO.  */
+  if (seen_error ()
+      || (!in_lto_p && flag_lto && !flag_fat_lto_objects))
+    {
+      timevar_pop (TV_CGRAPHOPT);
+      return;
+    }
+
+  /* This pass remove bodies of extern inline functions we never inlined.
+     Do this later so other IPA passes see what is really going on.  */
+  cgraph_remove_unreachable_nodes (false, dump_file);
+  cgraph_global_info_ready = true;
+  if (cgraph_dump_file)
+    {
+      fprintf (cgraph_dump_file, "Optimized ");
+      dump_cgraph (cgraph_dump_file);
+      dump_varpool (cgraph_dump_file);
+    }
+  if (post_ipa_mem_report)
+    {
+      fprintf (stderr, "Memory consumption after IPA\n");
+      dump_memory_report (false);
+    }
+  timevar_pop (TV_CGRAPHOPT);
+
+  /* Output everything.  */
+  (*debug_hooks->assembly_start) ();
+  if (!quiet_flag)
+    fprintf (stderr, "Assembling functions:\n");
+#ifdef ENABLE_CHECKING
+  verify_cgraph ();
+#endif
+
+  cgraph_materialize_all_clones ();
+  bitmap_obstack_initialize (NULL);
+  execute_ipa_pass_list (all_late_ipa_passes);
+  cgraph_remove_unreachable_nodes (true, dump_file);
+#ifdef ENABLE_CHECKING
+  verify_cgraph ();
+#endif
+  bitmap_obstack_release (NULL);
+  cgraph_mark_functions_to_output ();
+  output_weakrefs ();
+
+  cgraph_state = CGRAPH_STATE_EXPANSION;
+  if (!flag_toplevel_reorder)
+    cgraph_output_in_order ();
+  else
+    {
+      cgraph_output_pending_asms ();
+
+      cgraph_expand_all_functions ();
+      varpool_remove_unreferenced_decls ();
+
+      varpool_assemble_pending_decls ();
+    }
+
+  cgraph_process_new_functions ();
+  cgraph_state = CGRAPH_STATE_FINISHED;
+
+  if (cgraph_dump_file)
+    {
+      fprintf (cgraph_dump_file, "\nFinal ");
+      dump_cgraph (cgraph_dump_file);
+      dump_varpool (cgraph_dump_file);
+    }
+#ifdef ENABLE_CHECKING
+  verify_cgraph ();
+  /* Double check that all inline clones are gone and that all
+     function bodies have been released from memory.  */
+  if (!seen_error ())
+    {
+      struct cgraph_node *node;
+      bool error_found = false;
+
+      for (node = cgraph_nodes; node; node = node->next)
+       if (node->analyzed
+           && (node->global.inlined_to
+               || gimple_has_body_p (node->decl)))
+         {
+           error_found = true;
+           dump_cgraph_node (stderr, node);
+         }
+      if (error_found)
+       internal_error ("nodes with unreleased memory found");
+    }
+#endif
+}
+
+
+/* Analyze the whole compilation unit once it is parsed completely.  */
+
+void
+cgraph_finalize_compilation_unit (void)
+{
+  timevar_push (TV_CGRAPH);
+
+  /* If LTO is enabled, initialize the streamer hooks needed by GIMPLE.  */
+  if (flag_lto)
+    lto_streamer_hooks_init ();
+
+  /* If we're here there's no current function anymore.  Some frontends
+     are lazy in clearing these.  */
+  current_function_decl = NULL;
+  set_cfun (NULL);
+
+  /* Do not skip analyzing the functions if there were errors, we
+     miss diagnostics for following functions otherwise.  */
+
+  /* Emit size functions we didn't inline.  */
+  finalize_size_functions ();
+
+  /* Mark alias targets necessary and emit diagnostics.  */
+  finish_aliases_1 ();
+  handle_alias_pairs ();
+
+  if (!quiet_flag)
+    {
+      fprintf (stderr, "\nAnalyzing compilation unit\n");
+      fflush (stderr);
+    }
+
+  if (flag_dump_passes)
+    dump_passes ();
+
+  /* Gimplify and lower all functions, compute reachability and
+     remove unreachable nodes.  */
+  cgraph_analyze_functions ();
+
+  /* Mark alias targets necessary and emit diagnostics.  */
+  finish_aliases_1 ();
+  handle_alias_pairs ();
+
+  /* Gimplify and lower thunks.  */
+  cgraph_analyze_functions ();
+
+  /* Finally drive the pass manager.  */
+  cgraph_optimize ();
+
+  timevar_pop (TV_CGRAPH);
+}
+
+
 #include "gt-cgraphunit.h"
index e3c8209..de3afcc 100644 (file)
@@ -9674,31 +9674,6 @@ reg_num_sign_bit_copies_for_combine (const_rtx x, enum machine_mode mode,
   return NULL;
 }
 \f
-/* Return the number of "extended" bits there are in X, when interpreted
-   as a quantity in MODE whose signedness is indicated by UNSIGNEDP.  For
-   unsigned quantities, this is the number of high-order zero bits.
-   For signed quantities, this is the number of copies of the sign bit
-   minus 1.  In both case, this function returns the number of "spare"
-   bits.  For example, if two quantities for which this function returns
-   at least 1 are added, the addition is known not to overflow.
-
-   This function will always return 0 unless called during combine, which
-   implies that it must be called from a define_split.  */
-
-unsigned int
-extended_count (const_rtx x, enum machine_mode mode, int unsignedp)
-{
-  if (nonzero_sign_valid == 0)
-    return 0;
-
-  return (unsignedp
-         ? (HWI_COMPUTABLE_MODE_P (mode)
-            ? (unsigned int) (GET_MODE_PRECISION (mode) - 1
-                              - floor_log2 (nonzero_bits (x, mode)))
-            : 0)
-         : num_sign_bit_copies (x, mode) - 1);
-}
-\f
 /* This function is called from `simplify_shift_const' to merge two
    outer operations.  Specifically, we have already found that we need
    to perform operation *POP0 with constant *PCONST0 at the outermost
@@ -13912,7 +13887,7 @@ unmentioned_reg_p (rtx equiv, rtx expr)
   return for_each_rtx (&equiv, unmentioned_reg_p_1, expr);
 }
 \f
-void
+DEBUG_FUNCTION void
 dump_combine_stats (FILE *file)
 {
   fprintf
index d8f07e9..5c32336 100644 (file)
--- a/gcc/cse.c
+++ b/gcc/cse.c
@@ -653,7 +653,7 @@ fixed_base_plus_p (rtx x)
 
 /* Dump the expressions in the equivalence class indicated by CLASSP.
    This function is used only for debugging.  */
-void
+DEBUG_FUNCTION void
 dump_class (struct table_elt *classp)
 {
   struct table_elt *elt;
@@ -6519,7 +6519,7 @@ cse_extended_basic_block (struct cse_basic_block_data *ebb_data)
    Return 1 if the CFG should be cleaned up because it has been modified.
    Return 0 otherwise.  */
 
-int
+static int
 cse_main (rtx f ATTRIBUTE_UNUSED, int nregs)
 {
   struct cse_basic_block_data ebb_data;
index a9fe924..d6c8de7 100644 (file)
--- a/gcc/dse.c
+++ b/gcc/dse.c
@@ -44,7 +44,6 @@ along with GCC; see the file COPYING3.  If not see
 #include "insn-config.h"
 #include "expr.h"
 #include "recog.h"
-#include "dse.h"
 #include "optabs.h"
 #include "dbgcnt.h"
 #include "target.h"
@@ -614,7 +613,6 @@ static bitmap kill_on_calls;
 static unsigned int current_position;
 
 
-static bool gate_dse (void);
 static bool gate_dse1 (void);
 static bool gate_dse2 (void);
 
@@ -625,28 +623,6 @@ static bool gate_dse2 (void);
    Initialization.
 ----------------------------------------------------------------------------*/
 
-/* Hashtable callbacks for maintaining the "bases" field of
-   store_group_info, given that the addresses are function invariants.  */
-
-static int
-clear_alias_mode_eq (const void *p1, const void *p2)
-{
-  const struct clear_alias_mode_holder * h1
-    = (const struct clear_alias_mode_holder *) p1;
-  const struct clear_alias_mode_holder * h2
-    = (const struct clear_alias_mode_holder *) p2;
-  return h1->alias_set == h2->alias_set;
-}
-
-
-static hashval_t
-clear_alias_mode_hash (const void *p)
-{
-  const struct clear_alias_mode_holder *holder
-    = (const struct clear_alias_mode_holder *) p;
-  return holder->alias_set;
-}
-
 
 /* Find the entry associated with ALIAS_SET.  */
 
@@ -3044,85 +3020,6 @@ dse_step2_spill (void)
 ----------------------------------------------------------------------------*/
 
 
-/* Note that this is NOT a general purpose function.  Any mem that has
-   an alias set registered here expected to be COMPLETELY unaliased:
-   i.e it's addresses are not and need not be examined.
-
-   It is known that all references to this address will have this
-   alias set and there are NO other references to this address in the
-   function.
-
-   Currently the only place that is known to be clean enough to use
-   this interface is the code that assigns the spill locations.
-
-   All of the mems that have alias_sets registered are subjected to a
-   very powerful form of dse where function calls, volatile reads and
-   writes, and reads from random location are not taken into account.
-
-   It is also assumed that these locations go dead when the function
-   returns.  This assumption could be relaxed if there were found to
-   be places that this assumption was not correct.
-
-   The MODE is passed in and saved.  The mode of each load or store to
-   a mem with ALIAS_SET is checked against MEM.  If the size of that
-   load or store is different from MODE, processing is halted on this
-   alias set.  For the vast majority of aliases sets, all of the loads
-   and stores will use the same mode.  But vectors are treated
-   differently: the alias set is established for the entire vector,
-   but reload will insert loads and stores for individual elements and
-   we do not necessarily have the information to track those separate
-   elements.  So when we see a mode mismatch, we just bail.  */
-
-
-void
-dse_record_singleton_alias_set (alias_set_type alias_set,
-                               enum machine_mode mode)
-{
-  struct clear_alias_mode_holder tmp_holder;
-  struct clear_alias_mode_holder *entry;
-  void **slot;
-
-  /* If we are not going to run dse, we need to return now or there
-     will be problems with allocating the bitmaps.  */
-  if ((!gate_dse()) || !alias_set)
-    return;
-
-  if (!clear_alias_sets)
-    {
-      clear_alias_sets = BITMAP_ALLOC (NULL);
-      disqualified_clear_alias_sets = BITMAP_ALLOC (NULL);
-      clear_alias_mode_table = htab_create (11, clear_alias_mode_hash,
-                                           clear_alias_mode_eq, NULL);
-      clear_alias_mode_pool = create_alloc_pool ("clear_alias_mode_pool",
-                                                sizeof (struct clear_alias_mode_holder), 100);
-    }
-
-  bitmap_set_bit (clear_alias_sets, alias_set);
-
-  tmp_holder.alias_set = alias_set;
-
-  slot = htab_find_slot (clear_alias_mode_table, &tmp_holder, INSERT);
-  gcc_assert (*slot == NULL);
-
-  *slot = entry =
-    (struct clear_alias_mode_holder *) pool_alloc (clear_alias_mode_pool);
-  entry->alias_set = alias_set;
-  entry->mode = mode;
-}
-
-
-/* Remove ALIAS_SET from the sets of stack slots being considered.  */
-
-void
-dse_invalidate_singleton_alias_set (alias_set_type alias_set)
-{
-  if ((!gate_dse()) || !alias_set)
-    return;
-
-  bitmap_clear_bit (clear_alias_sets, alias_set);
-}
-
-
 /* Look up the bitmap index for OFFSET in GROUP_INFO.  If it is not
    there, return 0.  */
 
@@ -4015,12 +3912,6 @@ rest_of_handle_dse (void)
 }
 
 static bool
-gate_dse (void)
-{
-  return gate_dse1 () || gate_dse2 ();
-}
-
-static bool
 gate_dse1 (void)
 {
   return optimize > 0 && flag_dse
diff --git a/gcc/dse.h b/gcc/dse.h
deleted file mode 100644 (file)
index dca6ea0..0000000
--- a/gcc/dse.h
+++ /dev/null
@@ -1,30 +0,0 @@
-/* RTL dead store elimination.
-   Copyright (C) 2007, 2010 Free Software Foundation, Inc.
-
-   Contributed by Richard Sandiford <rsandifor@codesourcery.com>
-   and Kenneth Zadeck <zadeck@naturalbridge.com>
-
-This file is part of GCC.
-
-GCC is free software; you can redistribute it and/or modify it under
-the terms of the GNU General Public License as published by the Free
-Software Foundation; either version 3, 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; see the file COPYING3.  If not see
-<http://www.gnu.org/licenses/>.  */
-
-#ifndef GCC_DSE_H
-#define GCC_DSE_H
-
-extern void dse_record_singleton_alias_set (alias_set_type, enum machine_mode);
-extern void dse_invalidate_singleton_alias_set (alias_set_type);
-
-#endif /* GCC_DSE_H */
-
index bf1e26d..bfb0cf9 100644 (file)
--- a/gcc/rtl.h
+++ b/gcc/rtl.h
@@ -2373,7 +2373,6 @@ extern int rtx_to_tree_code (enum rtx_code);
 
 /* In cse.c */
 extern int delete_trivially_dead_insns (rtx, int);
-extern int cse_main (rtx, int);
 extern int exp_equiv_p (const_rtx, const_rtx, int, bool);
 extern unsigned hash_rtx (const_rtx x, enum machine_mode, int *, int *, bool);
 
@@ -2456,7 +2455,6 @@ extern bool validate_subreg (enum machine_mode, enum machine_mode,
                             const_rtx, unsigned int);
 
 /* In combine.c  */
-extern unsigned int extended_count (const_rtx, enum machine_mode, int);
 extern rtx remove_death (unsigned int, rtx);
 extern void dump_combine_stats (FILE *);
 extern void dump_combine_total_stats (FILE *);