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]

PATCH: fix some warnings missed due to PR 18501


PR 18501 reports on "variable may be uninitalised" warnings which are not produced
due to a regression between 4.0 and 4.1.  Compiling stage 1 with 4.0 and -O2 allowed
me to catch a number of warning cases, so let's address them before the regression is
fixed and bootstraps start failing.

I can report that I tested these patches with a bootstrap.  ;-)
Okay for mainline?


2005-07-18  Ben Elliston  <bje@au.ibm.com>

        * bt-load.c (link_btr_uses): Fix uninitialised warnings.
        * cfganal.c (find_edge_index): Ditto.
        * combine.c (combine_instructions): Ditto.
        * ddg.c (create_scc): Ditto.
        * flow.c (update_life_info): Ditto.
        (count_or_remove_death_notes): Ditto.
        (clear_log_links): Ditto.
        * modulo-sched.c (generate_reg_moves): Ditto.
        * predict.c (apply_return_prediction): Ditto.
        * sbitmap.c (sbitmap_first_set_bit): Ditto.
        * sched-rgn.c (extract_edgelst): Ditto.
        * tree-into-ssa.c (prepare_names_to_update): Ditto.
        (dump_update_ssa): Ditto.
        (ssa_names_to_replace) Ditto.
        (switch_virtuals_to_full_rewrite): Ditto.
        (update_ssa): Ditto.
        (debug_names_replaced_by): Ditto.
        * tree-vect-transform.c (vect_create_epilog_for_reduction): Ditto.

Index: bt-load.c
===================================================================
RCS file: /home/bje/gcc-cvs/gcc/gcc/bt-load.c,v
retrieving revision 2.38
diff -u -p -r2.38 bt-load.c
--- bt-load.c	5 Jul 2005 16:19:39 -0000	2.38
+++ bt-load.c	18 Jul 2005 05:09:54 -0000
@@ -701,7 +701,7 @@ link_btr_uses (btr_def *def_array, btr_u
 		{
 		  /* Find all the reaching defs for this use.  */
 		  sbitmap reaching_defs_of_reg = sbitmap_alloc(max_uid);
-		  unsigned int uid;
+		  unsigned int uid = 0;
 		  sbitmap_iterator sbi;

 		  if (user->use)
Index: cfganal.c
===================================================================
RCS file: /home/bje/gcc-cvs/gcc/gcc/cfganal.c,v
retrieving revision 1.64
diff -u -p -r1.64 cfganal.c
--- cfganal.c	25 Jun 2005 01:59:28 -0000	1.64
+++ cfganal.c	18 Jul 2005 05:09:54 -0000
@@ -521,7 +521,7 @@ find_edge_index (struct edge_list *edge_
 void
 flow_nodes_print (const char *str, const sbitmap nodes, FILE *file)
 {
-  unsigned int node;
+  unsigned int node = 0;
   sbitmap_iterator sbi;

   if (! nodes)
Index: combine.c
===================================================================
RCS file: /home/bje/gcc-cvs/gcc/gcc/combine.c,v
retrieving revision 1.497
diff -u -p -r1.497 combine.c
--- combine.c	5 Jul 2005 16:19:45 -0000	1.497
+++ combine.c	18 Jul 2005 05:09:54 -0000
@@ -641,7 +641,7 @@ combine_instructions (rtx f, unsigned in
   rtx prev;
 #endif
   int i;
-  unsigned int j;
+  unsigned int j = 0;
   rtx links, nextlinks;
   sbitmap_iterator sbi;

Index: ddg.c
===================================================================
RCS file: /home/bje/gcc-cvs/gcc/gcc/ddg.c,v
retrieving revision 1.16
diff -u -p -r1.16 ddg.c
--- ddg.c	25 Jun 2005 01:59:40 -0000	1.16
+++ ddg.c	18 Jul 2005 05:09:54 -0000
@@ -692,7 +692,7 @@ static ddg_scc_ptr
 create_scc (ddg_ptr g, sbitmap nodes)
 {
   ddg_scc_ptr scc;
-  unsigned int u;
+  unsigned int u = 0;
   sbitmap_iterator sbi;

   scc = (ddg_scc_ptr) xmalloc (sizeof (struct ddg_scc));
@@ -783,7 +783,7 @@ get_node_of_insn (ddg_ptr g, rtx insn)
 void
 find_successors (sbitmap succ, ddg_ptr g, sbitmap ops)
 {
-  unsigned int i;
+  unsigned int i = 0;
   sbitmap_iterator sbi;

   EXECUTE_IF_SET_IN_SBITMAP (ops, 0, i, sbi)
@@ -802,7 +802,7 @@ find_successors (sbitmap succ, ddg_ptr g
 void
 find_predecessors (sbitmap preds, ddg_ptr g, sbitmap ops)
 {
-  unsigned int i;
+  unsigned int i = 0;
   sbitmap_iterator sbi;

   EXECUTE_IF_SET_IN_SBITMAP (ops, 0, i, sbi)
@@ -905,7 +905,7 @@ find_nodes_on_paths (sbitmap result, ddg
 {
   int answer;
   int change;
-  unsigned int u;
+  unsigned int u = 0;
   int num_nodes = g->num_nodes;
   sbitmap_iterator sbi;

@@ -1015,7 +1015,7 @@ int
 longest_simple_path (struct ddg * g, int src, int dest, sbitmap nodes)
 {
   int i;
-  unsigned int u;
+  unsigned int u = 0;
   int change = 1;
   int result;
   int num_nodes = g->num_nodes;
Index: flow.c
===================================================================
RCS file: /home/bje/gcc-cvs/gcc/gcc/flow.c,v
retrieving revision 1.632
diff -u -p -r1.632 flow.c
--- flow.c	5 Jul 2005 16:19:55 -0000	1.632
+++ flow.c	18 Jul 2005 05:09:54 -0000
@@ -572,7 +572,7 @@ update_life_info (sbitmap blocks, enum u
 		  int prop_flags)
 {
   regset tmp;
-  unsigned i;
+  unsigned i = 0;
   int stabilized_prop_flags = prop_flags;
   basic_block bb;

@@ -4383,7 +4383,7 @@ int
 count_or_remove_death_notes (sbitmap blocks, int kill)
 {
   int count = 0;
-  unsigned int i;
+  unsigned int i = 0;
   basic_block bb;

   /* This used to be a loop over all the blocks with a membership test
@@ -4489,7 +4489,7 @@ clear_log_links (sbitmap blocks)
     }
   else
     {
-      unsigned int i;
+      unsigned int i = 0;
       sbitmap_iterator sbi;

       EXECUTE_IF_SET_IN_SBITMAP (blocks, 0, i, sbi)
Index: modulo-sched.c
===================================================================
RCS file: /home/bje/gcc-cvs/gcc/gcc/modulo-sched.c,v
retrieving revision 1.36
diff -u -p -r1.36 modulo-sched.c
--- modulo-sched.c	5 Jul 2005 16:20:07 -0000	1.36
+++ modulo-sched.c	18 Jul 2005 05:09:54 -0000
@@ -501,7 +501,7 @@ generate_reg_moves (partial_schedule_ptr

       for (i_reg_move = 0; i_reg_move < nreg_moves; i_reg_move++)
 	{
-	  unsigned int i_use;
+	  unsigned int i_use = 0;
 	  rtx new_reg = gen_reg_rtx (GET_MODE (prev_reg));
 	  rtx reg_move = gen_move_insn (new_reg, prev_reg);
 	  sbitmap_iterator sbi;
@@ -1845,7 +1845,7 @@ calculate_order_params (ddg_ptr g, int m
 static int
 find_max_asap (ddg_ptr g, sbitmap nodes)
 {
-  unsigned int u;
+  unsigned int u = 0;
   int max_asap = -1;
   int result = -1;
   sbitmap_iterator sbi;
@@ -1866,7 +1866,7 @@ find_max_asap (ddg_ptr g, sbitmap nodes)
 static int
 find_max_hv_min_mob (ddg_ptr g, sbitmap nodes)
 {
-  unsigned int u;
+  unsigned int u = 0;
   int max_hv = -1;
   int min_mob = INT_MAX;
   int result = -1;
@@ -1895,7 +1895,7 @@ find_max_hv_min_mob (ddg_ptr g, sbitmap
 static int
 find_max_dv_min_mob (ddg_ptr g, sbitmap nodes)
 {
-  unsigned int u;
+  unsigned int u = 0;
   int max_dv = -1;
   int min_mob = INT_MAX;
   int result = -1;
Index: sbitmap.c
===================================================================
RCS file: /home/bje/gcc-cvs/gcc/gcc/sbitmap.c,v
retrieving revision 1.41
diff -u -p -r1.41 sbitmap.c
--- sbitmap.c	25 Jun 2005 02:01:02 -0000	1.41
+++ sbitmap.c	18 Jul 2005 05:09:54 -0000
@@ -690,7 +690,7 @@ sbitmap_union_of_preds (sbitmap dst, sbi
 int
 sbitmap_first_set_bit (sbitmap bmap)
 {
-  unsigned int n;
+  unsigned int n = 0;
   sbitmap_iterator sbi;

   EXECUTE_IF_SET_IN_SBITMAP (bmap, 0, n, sbi)
Index: sched-rgn.c
===================================================================
RCS file: /home/bje/gcc-cvs/gcc/gcc/sched-rgn.c,v
retrieving revision 1.97
diff -u -p -r1.97 sched-rgn.c
--- sched-rgn.c	5 Jul 2005 16:20:17 -0000	1.97
+++ sched-rgn.c	18 Jul 2005 05:09:54 -0000
@@ -353,7 +353,7 @@ is_cfg_nonregular (void)
 static void
 extract_edgelst (sbitmap set, edgelst *el)
 {
-  unsigned int i;
+  unsigned int i = 0;
   sbitmap_iterator sbi;

   /* edgelst table space is reused in each call to extract_edgelst.  */
Index: tree-into-ssa.c
===================================================================
RCS file: /home/bje/gcc-cvs/gcc/gcc/tree-into-ssa.c,v
retrieving revision 2.62
diff -u -p -r2.62 tree-into-ssa.c
--- tree-into-ssa.c	30 Jun 2005 22:18:31 -0000	2.62
+++ tree-into-ssa.c	18 Jul 2005 05:09:54 -0000
@@ -2031,7 +2031,7 @@ prepare_def_site_for (tree name, bitmap
 static void
 prepare_names_to_update (bitmap blocks, bool insert_phi_p)
 {
-  unsigned i;
+  unsigned i = 0;
   bitmap_iterator bi;
   sbitmap_iterator sbi;

@@ -2098,7 +2098,7 @@ debug_names_replaced_by (tree name)
 void
 dump_update_ssa (FILE *file)
 {
-  unsigned i;
+  unsigned i = 0;
   bitmap_iterator bi;

   if (!need_ssa_update_p ())
@@ -2347,7 +2347,7 @@ name_registered_for_update_p (tree n)
 bitmap
 ssa_names_to_replace (void)
 {
-  unsigned i;
+  unsigned i = 0;
   bitmap ret;
   sbitmap_iterator sbi;

@@ -2519,7 +2519,7 @@ switch_virtuals_to_full_rewrite_p (void)
 static void
 switch_virtuals_to_full_rewrite (void)
 {
-  unsigned i;
+  unsigned i = 0;
   sbitmap_iterator sbi;

   if (dump_file)
@@ -2618,7 +2618,7 @@ update_ssa (unsigned update_flags)
   bitmap blocks;
   basic_block bb, start_bb;
   bitmap_iterator bi;
-  unsigned i;
+  unsigned i = 0;
   sbitmap tmp;
   bool insert_phi_p;
   sbitmap_iterator sbi;
Index: tree-vect-transform.c
===================================================================
RCS file: /home/bje/gcc-cvs/gcc/gcc/tree-vect-transform.c,v
retrieving revision 2.36
diff -u -p -r2.36 tree-vect-transform.c
--- tree-vect-transform.c	6 Jul 2005 02:25:05 -0000	2.36
+++ tree-vect-transform.c	18 Jul 2005 05:09:54 -0000
@@ -924,7 +924,7 @@ vect_create_epilog_for_reduction (tree v
     }
   else
     {
-      enum tree_code shift_code;
+      enum tree_code shift_code = 0;
       bool have_whole_vector_shift = true;
       enum tree_code code = TREE_CODE (TREE_OPERAND (stmt, 1)); /* CHECKME */
       int bit_offset;

Attachment: signature.asc
Description: OpenPGP digital signature


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