http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52898
--- Comment #4 from Oleg Endo <olegendo at gcc dot gnu.org> 2012-04-12 06:19:44 UTC --- (In reply to comment #3) > (In reply to comment #2) > I don't know about their history. -mcbranchdi is enabled by default, > though. See gcc/common/config/sh/sh-common.c:sh_option_optimization_table. Ah, I see. Now I'm even more confused than before :) If -mcbranchdi is enabled by default, I would not expect to see any changes in the generated code at all in some cases .... > Unfortunately, it looks -mcmpeqdi causes many new failures on trunk. I would propose to deprecate -mcbranchdi and -mcmpeqdi and hard-code the 'enabled' behavior, i.e. remove all the non-mcbranchdi and non-mcmpeqdi code paths in the back end code (and fixing the fails of course ...)