[Bug target/58853] [4.9 regression] ICE in expand_set_or_movmem_prologue_epilogue_by_misaligned_moves
ubizjak at gmail dot com
gcc-bugzilla@gcc.gnu.org
Mon Nov 11 17:04:00 GMT 2013
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58853
--- Comment #10 from Uroš Bizjak <ubizjak at gmail dot com> ---
(In reply to Jan Hubicka from comment #9)
> > > 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
I'll prepare a patch (including HJ's fix) and change option to
X86_TUNE_MISALIGNED_MOVE_STRING_PRO_EPILOGUES with corresponding
TARGET_MISALIGNED_MOVE_STRING_PRO_EPILOGUES (and will fix some grammatical
issues on the way).
More information about the Gcc-bugs
mailing list