https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91838
Uroš Bizjak <ubizjak at gmail dot com> changed: What |Removed |Added ---------------------------------------------------------------------------- Resolution|FIXED |--- Status|RESOLVED |REOPENED --- Comment #15 from Uroš Bizjak <ubizjak at gmail dot com> --- This test returns different results, depending on whether V8QImode shift pattern is present in target *.md files. For x86, if the following expander is added: +(define_expand "<insn>v8qi3" + [(set (match_operand:V8QI 0 "register_operand") + (any_shift:V8QI (match_operand:V8QI 1 "register_operand") + (match_operand:DI 2 "nonmemory_operand")))] + "TARGET_MMX_WITH_SSE" +{ + ix86_expand_vecop_qihi_partial (<CODE>, operands[0], + operands[1], operands[2]); + DONE; +}) then the tree optimizers produce: V f (V x) { V _2; <bb 2> [local count: 1073741824]: _2 = x_1(D) >> 8; return _2; } otherwise, without the named expander: V f (V x) { <bb 2> [local count: 1073741824]: return { 0, 0, 0, 0, 0, 0, 0, 0 }; }