Fix irix6 execute/921117-1.c c-torture failure.
authorJim Wilson <wilson@cygnus.com>
Mon, 1 Sep 1997 23:43:03 +0000 (23:43 +0000)
committerJim Wilson <wilson@gcc.gnu.org>
Mon, 1 Sep 1997 23:43:03 +0000 (16:43 -0700)
* cse.c (cse_insn): Don't record BLKmode values.

From-SVN: r15024

gcc/ChangeLog
gcc/cse.c

index 5be4fa09d184de277cd2c689fa9488f672052466..e999c3871b8efc214068b54c14a5cafc14192b86 100644 (file)
@@ -1,3 +1,7 @@
+Mon Sep  1 16:25:34 1997  Jim Wilson  <wilson@cygnus.com>
+
+       * cse.c (cse_insn): Don't record BLKmode values.
+
 Mon Sep  1 11:25:47 1997  Stephen Williams  (steve@icarus.icarus.com)
 
        * i960.h (LINK_SPEC): Handle "-mjX" and "-mrp" switches.
index 096a630aeb4a85343ac9946e3d53028627641db7..71bc3584432d1861fa892a6611bce0bd42fcc9d0 100644 (file)
--- a/gcc/cse.c
+++ b/gcc/cse.c
@@ -7297,6 +7297,10 @@ cse_insn (insn, in_libcall_block)
        if ((flag_float_store
             && GET_CODE (dest) == MEM
             && FLOAT_MODE_P (GET_MODE (dest)))
+           /* Don't record BLKmode values, because we don't know the
+              size of it, and can't be sure that other BLKmode values
+              have the same or smaller size.  */
+           || GET_MODE (dest) == BLKmode
            /* Don't record values of destinations set inside a libcall block
               since we might delete the libcall.  Things should have been set
               up so we won't want to reuse such a value, but we play it safe