https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66814
Uroš Bizjak <ubizjak at gmail dot com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Last reconfirmed| |2015-07-08 CC| |kyukhin at gcc dot gnu.org Target Milestone|--- |5.2 Ever confirmed|0 |1 --- Comment #1 from Uroš Bizjak <ubizjak at gmail dot com> --- Following peephole2 is too broad: (define_peephole2 [(set (match_operand:SWI124 0 "nonimmediate_operand") (not:SWI124 (match_operand:SWI124 1 "nonimmediate_operand")))] "optimize_insn_for_speed_p () && ((TARGET_NOT_UNPAIRABLE && (!MEM_P (operands[0]) || !memory_displacement_operand (operands[0], <MODE>mode))) || (TARGET_NOT_VECTORMODE && long_memory_operand (operands[0], <MODE>mode))) && peep2_regno_dead_p (0, FLAGS_REG)" [(parallel [(set (match_dup 0) (xor:SWI124 (match_dup 1) (const_int -1))) (clobber (reg:CC FLAGS_REG))])]) Needs additional GENERAL_REG_P predicates. Probably several other peephole2 patterns need similar treatment. CC AVX512F maintainer.