[PATCH] [MIPS] Support microMIPS HI/QI moves

Maciej W. Rozycki macro@codesourcery.com
Tue Apr 23 05:40:00 GMT 2013


On Mon, 1 Apr 2013, Moore, Catherine wrote:

>  (define_insn "*movhi_internal"
> -  [(set (match_operand:HI 0 "nonimmediate_operand" "=d,d,d,m,*a,*d")
> -       (match_operand:HI 1 "move_operand"         "d,I,m,dJ,*d*J,*a"))]
> +  [(set (match_operand:HI 0 "nonimmediate_operand" "=d,!u,d,!u,d,ZU,m,*a,*d")
> +       (match_operand:HI 1 "move_operand"         "d,J,I,ZU,m,!u,dJ,*d*J,*a"))]
>    "!TARGET_MIPS16
>     && (register_operand (operands[0], HImode)
>         || reg_or_0_operand (operands[1], HImode))"
>    { return mips_output_move (operands[0], operands[1]); }
> -  [(set_attr "move_type" "move,const,load,store,mtlo,mflo")
> +  [(set_attr "move_type" "move,const,const,load,load,store,store,mtlo,mflo")
> +   (set_attr "compression" "all,micromips,*,micromips,*,micromips,*,*,*")
>     (set_attr "mode" "HI")])

 Dumb question: what's the difference between "all" and "*" in the 
compression attribute?

  Maciej



More information about the Gcc-patches mailing list