[Bug target/58853] [4.9 regression] ICE in expand_set_or_movmem_prologue_epilogue_by_misaligned_moves

hjl.tools at gmail dot com gcc-bugzilla@gcc.gnu.org
Thu Nov 7 14:16:00 GMT 2013


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58853

--- Comment #6 from H.J. Lu <hjl.tools at gmail dot com> ---
This

diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c
index 53e04c4..dd8d943 100644
--- a/gcc/config/i386/i386.c
+++ b/gcc/config/i386/i386.c
@@ -23766,6 +23766,7 @@ ix86_expand_set_or_movmem (rtx dst, rtx src, rtx
count_exp, rtx 
val_exp,
      also avoids redundant job when sizes are known precisely.  */
   misaligned_prologue_used = (TARGET_MISALIGNED_MOVE_STRING_PROLOGUES
                   && MAX (desired_align, epilogue_size_needed) <= 32
+                  && desired_align <= epilogue_size_needed
                   && ((desired_align > align && !align_bytes)
                   || (!count && epilogue_size_needed > 1)));

avoids crash.



More information about the Gcc-bugs mailing list