On Thu, Jul 18, 2019 at 01:44:36PM +0800, Kewen.Lin wrote: > Hi Segher, > > on 2019/7/17 下午9:40, Segher Boessenkool wrote: > > Hi Kewen, > > > > On Wed, Jul 17, 2019 at 04:32:15PM +0800, Kewen.Lin wrote: > >> Regression testing just launched, is it OK for trunk if it's bootstrapped > >> and regresstested on powerpc64le-unknown-linux-gnu? > > > >> +;; Expanders for rotatert to make use of vrotl > >> +(define_expand "vrotr<mode>3" > >> + [(set (match_operand:VEC_I 0 "vint_operand") > >> + (rotatert:VEC_I (match_operand:VEC_I 1 "vint_operand") > >> + (match_operand:VEC_I 2 "vint_reg_or_const_vector")))] > > > > Having any rotatert in a define_expand or define_insn will regress. > > > > So, nope, sorry. > > Thanks for clarifying! Since regression testing passed on powerpc64le,I'd > like to double confirm the meaning of "regress", does it mean it's > a regression from design view? Is it specific to rotatert and its > related one like vrotr?
You will get HAVE_rotatert defined in insn-config.h if you do this patch, and then simplify-rtx.c will not work correctly, generating rotatert by an immediate, which we have no instructions for. This might be masked because many of our rl*.c tests already fail because of other changes, I should fix that :-/ Segher