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

hubicka at ucw dot cz gcc-bugzilla@gcc.gnu.org
Mon Nov 11 16:59:00 GMT 2013


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

--- Comment #9 from Jan Hubicka <hubicka at ucw dot cz> ---
> > What confuses me is why TARGET_MISALIGNED_MOVE_STRING_PROLOGUES seems to be
> > true
> > given that
> > 
> > DEF_TUNE (TARGET_MISALIGNED_MOVE_STRING_PROLOGUES,
> >           "misaligned_move_string_prologues",
> >           m_386 | m_486 | m_CORE_ALL | m_AMD_MULTIPLE | m_GENERIC)
> > 
> > and we tune for pentiumpro (that was intentionally left out for this purpose)
I think the problem is here:
Index: config/i386/i386.h
===================================================================
--- config/i386/i386.h  (revision 204166)
+++ config/i386/i386.h  (working copy)
@@ -353,7 +353,7 @@ extern unsigned char ix86_tune_features[
 #define TARGET_FAST_PREFIX     ix86_tune_features[X86_TUNE_FAST_PREFIX]
 #define TARGET_SINGLE_STRINGOP ix86_tune_features[X86_TUNE_SINGLE_STRINGOP]
 #define TARGET_MISALIGNED_MOVE_STRING_PROLOGUES_EPILOGUES \
-       ix86_tune_features[TARGET_MISALIGNED_MOVE_STRING_PROLOGUES]
+       ix86_tune_features[X86_TUNE_MISALIGNED_MOVE_STRING_PROLOGUES]
 #define TARGET_QIMODE_MATH     ix86_tune_features[X86_TUNE_QIMODE_MATH]
 #define TARGET_HIMODE_MATH     ix86_tune_features[X86_TUNE_HIMODE_MATH]
 #define TARGET_PROMOTE_QI_REGS ix86_tune_features[X86_TUNE_PROMOTE_QI_REGS]

My fault for using too long names.  I wonder if we don't want to generate those
TARGET_*
from .def file, too.

Honza



More information about the Gcc-bugs mailing list