> Christian Bruel <christian.br...@st.com> wrote: >> (define_insn "*mov<mode>_reg_reg" >> - [(set (match_operand:QIHI 0 "arith_reg_dest" "=r,m,*z") >> - (match_operand:QIHI 1 "register_operand" "r,*z,m"))] >> - "TARGET_SH1 && !t_reg_operand (operands[1], VOIDmode)" >> + [(set (match_operand:QIHI 0 "general_movdst_operand" "=r,m,*z") >> + (match_operand:QIHI 1 "general_movsrc_operand" "r,*z,m"))] >> + "TARGET_SH1 && !t_reg_operand (operands[1], VOIDmode) >> + && arith_reg_dest (operands[0], <MODE>mode) >> + && register_operand (operands[1], <MODE>mode)" > > I thought that predicates explicitly allowing mem only when reload > in progress are defensive because I guess there is no guarantee > that the condition part of the insn will be never used in spilling. > Re-factoring suggested by Oleg and Rechard would be the right thing > to do, though it might be a bit invasive for 4.8.
Ugh, this should be for Re: [PATCH, committed] SH: Fix PR58314 (unsatisfied constraints) http://gcc.gnu.org/ml/gcc-patches/2013-09/msg01447.html Sorry for wrong reply. Regards, kaz