Andreas Krebbel wrote: > > Hmm. In theory reload should always respect both constraints and > > predicates. > > But I guess it can't hurt to disable the alternative just to be safe; it is > > indeed an uncommon case to have the constraint accept more than the > > predicate. > > (Also a PLUS with two CONST_INT operands is not canonical RTL anyway.) > > Does this mean you would prefer to convert the insn condition into a > predicate and change it with > subst_attr or should I leave it in the insn condition?
If we can transform the operand predicate, that would certainly be the best. I.e. where the original pattern has: (match_operand:SI 2 "nonmemory_operand" "a,n") have the replaced pattern use instead: (plus:SI (match_operand:SI 2 "register_operand" "a") (match_operand 3 "const_int_operand" "n")) if that is possible via the subst mechanism ... Bye, Ulrich -- Dr. Ulrich Weigand GNU/Linux compilers and toolchain ulrich.weig...@de.ibm.com