OSDN Git Service

gcc/
authorrsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 6 Sep 2007 08:45:16 +0000 (08:45 +0000)
committerrsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 6 Sep 2007 08:45:16 +0000 (08:45 +0000)
PR middle-end/33306
* optabs.c (avoid_expensive_constant): Do nothing if MODE is VOIDmode.

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

gcc/ChangeLog
gcc/optabs.c

index c908108..55694f0 100644 (file)
@@ -1,3 +1,8 @@
+2007-09-06  Richard Sandiford  <richard@codesourcery.com>
+
+       PR middle-end/33306
+       * optabs.c (avoid_expensive_constant): Do nothing if MODE is VOIDmode.
+
 2007-09-06  Basile Starynkevitch  <basile@starynkevitch.net>
 
        * cfg.c (dump_bb_info, dump_edge_info): Added cfun test for 
index 5ed8101..6a78fbc 100644 (file)
@@ -1359,7 +1359,8 @@ static rtx
 avoid_expensive_constant (enum machine_mode mode, optab binoptab,
                          rtx x, bool unsignedp)
 {
-  if (optimize
+  if (mode != VOIDmode
+      && optimize
       && CONSTANT_P (x)
       && rtx_cost (x, binoptab->code) > COSTS_N_INSNS (1))
     {