This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [AArch64] Fix move_lo_quad_<mode> move


OK
/Marcus

On 11 June 2013 14:43, Sofiane Naci <sofiane.naci@arm.com> wrote:
> Hi,
>
> This patch fixes a bug in the move_lo_quad_<mode> pattern.
>
> The pattern, shown below, issues a scalar MOV instruction for vector modes:
>
> (define_insn "move_lo_quad_<mode>"
>   [(set (match_operand:VQ 0 "register_operand" "=w,w,w")
>         (vec_concat:VQ
>           (match_operand:<VHALF> 1 "register_operand" "w,r,r")
>           (vec_duplicate:<VHALF> (const_int 0))))]
>   "TARGET_SIMD"
>   "@
>    mov\\t%d0, %d1
>    fmov\t%d0, %1
>    ...
>
> This is fixed by using DUP for the first alternative instead.
>
> This passes the full regression test suite in aarch64-elf.
>
> OK for trunk?
>
> -----
> Thanks
> Sofiane


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]