On Thu, Jan 30, 2020 at 10:23:35AM -0700, Jeff Law wrote:
> diff --git a/gcc/config/m68k/m68k.md b/gcc/config/m68k/m68k.md
> index 8e35357ea23..78c4cbe4753 100644
> --- a/gcc/config/m68k/m68k.md
> +++ b/gcc/config/m68k/m68k.md
> @@ -644,12 +644,12 @@
>    return m68k_output_branch_integer (code);
>  })
>  
> -(define_insn "cbranchsi4_btst_reg_insn_1"
> +(define_insn "cbranch<mode>4_btst_reg_insn_1"
>    [(set (pc)
>       (if_then_else (match_operator 0 "equality_comparison_operator"
> -                    [(zero_extract:SI (match_operand:SI 1 
> "nonimmediate_operand" "do,dQ")
> -                                      (const_int 1)
> -                                      (match_operand:SI 2 
> "const_int_operand" "n,n"))
> +                    [(zero_extract:I (match_operand:I 1 
> "nonimmediate_operand" "do,dQ")
> +                                     (const_int 1)
> +                                     (match_operand:I 2 "const_int_operand" 
> "n,n"))
>                       (const_int 0)])
>                     (label_ref (match_operand 3 ""))
>                     (pc)))]
> @@ -665,8 +665,9 @@
>      }
>    else
>      {
> -      operands[2] = GEN_INT (31 - INTVAL (operands[2]));
> -      code = m68k_output_btst (operands[2], operands[1], code, 31);
> +      operands[2] = GEN_INT (GET_MODE_BITSIZE (GET_MODE (operands[1]))
> +                          - INTVAL (operands[2]) - 1);
> +      code = m68k_output_btst (operands[2], operands[1], code, 
> GET_MODE_BITSIZE (GET_MODE (operands[1])) - 1);

s/GET_MODE (operands[1])/<MODE>mode/g ?
Also, the last line is too long.

        Jakub

Reply via email to