OSDN Git Service

* loop.c (invariant_p): Don't test flag_rerun_loop_opt.
[pf3gnuchains/gcc-fork.git] / gcc / toplev.c
index 43b7d8a..4e50173 100644 (file)
@@ -3313,28 +3313,17 @@ rest_of_compilation (decl)
     {
       TIMEVAR (loop_time,
               {
-                int save_flag_unroll_loops;
-                int save_flag_unroll_all_loops;
-
                 if (flag_rerun_loop_opt)
                   {
                      /* We only want to perform unrolling once.  */
-                     save_flag_unroll_loops = flag_unroll_loops;
-                     save_flag_unroll_all_loops = flag_unroll_all_loops;
-                     flag_unroll_loops = 0;
-                     flag_unroll_all_loops = 0;
 
-                     loop_optimize (insns, loop_dump_file);
+                     loop_optimize (insns, loop_dump_file, 0);
 
                      /* The regscan pass may not be necessary, but let's
                         be safe until we can prove otherwise.  */
                      reg_scan (insns, max_reg_num (), 1);
-
-                     /* Restore loop unrolling flags.  */
-                     flag_unroll_loops = save_flag_unroll_loops;
-                     flag_unroll_all_loops = save_flag_unroll_all_loops;
                   }
-                loop_optimize (insns, loop_dump_file);
+                loop_optimize (insns, loop_dump_file, flag_unroll_loops);
               });
     }
 
@@ -4271,7 +4260,16 @@ main (argc, argv, envp)
                      while (*q && (*q >= '0' && *q <= '9'))
                        q++;
                      if (*p)
-                       level = atoi (p);
+                       {
+                         level = atoi (p);
+                         if (len > 1 && !strncmp (str, "gdwarf", len))
+                           {
+                             error ("use -gdwarf -g%d for DWARF v1, level %d",
+                                      level, level);
+                             if (level == 2)
+                               error ("use -gdwarf-2   for DWARF v2");
+                           }
+                       }
                      else
                        level = 2;      /* default debugging info level */
                      if (*q || level > 3)