OSDN Git Service

* toplev.c (rest_of_compilation): Run purge_builtin_constant_p
authorrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>
Sun, 30 Mar 2003 23:21:15 +0000 (23:21 +0000)
committerrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>
Sun, 30 Mar 2003 23:21:15 +0000 (23:21 +0000)
        before post-gcse cse pass.

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

gcc/ChangeLog
gcc/toplev.c

index a51e143..9df9a0d 100644 (file)
@@ -1,3 +1,9 @@
+2003-03-30  Richard Henderson  <rth@redhat.com>
+
+       PR opt/10011, opt/10252:
+        * toplev.c (rest_of_compilation): Run purge_builtin_constant_p
+        before post-gcse cse pass.
+
 2003-03-30  Roger Sayle  <roger@eyesopen.com>
 
        * dojump.c (do_jump): Copy SUBREGs into a pseudo for comparison.
index abcd0ad..67cd533 100644 (file)
@@ -2929,6 +2929,10 @@ rest_of_compilation (decl)
       save_cfj = flag_cse_follow_jumps;
       flag_cse_skip_blocks = flag_cse_follow_jumps = 0;
 
+      /* Instantiate any remaining CONSTANT_P_RTX nodes.  */
+      if (current_function_calls_constant_p)
+       purge_builtin_constant_p ();
+
       /* If -fexpensive-optimizations, re-run CSE to clean up things done
         by gcse.  */
       if (flag_expensive_optimizations)
@@ -2974,10 +2978,6 @@ rest_of_compilation (decl)
 #endif
     }
 
-  /* Instantiate any remaining CONSTANT_P_RTX nodes.  */
-  if (optimize > 0 && flag_gcse && current_function_calls_constant_p)
-    purge_builtin_constant_p ();
-
   /* Move constant computations out of loops.  */
 
   if (optimize > 0 && flag_loop_optimize)