On Wed, Aug 26, 2015 at 02:46:53PM +0100, Alan Lawrence wrote:
> aarch64_st<VSTRUCT:nregs><VDC:mode> and
> aarch64_ld<VSTRUCT:nregs><VDC:mode> expanders back onto 12 insns
> aarch64_{ld,st}{2,3,4}<mode>_dreg (for VD and DX modes), using the
> VSTRUCT_DREG iterator over TI/EI/OI modes to represent the block of memory
> transferred. Instead, use BLKmode for all memory transfers, explicitly setting
> mem_size.

OK.

Thanks,
James

> Bootstrapped and check-gcc on aarch64-none-linux-gnu.
> 
> gcc/ChangeLog:
> 
>       * config/aarch64/aarch64-simd.md
>       (aarch64_ld2<mode>_dreg VD & DX, aarch64_st2<mode>_dreg VD & DX ):
>       Change all TImode operands to BLKmode.
>       (aarch64_ld3<mode>_dreg VD & DX, aarch64_st3<mode>_dreg VD & DX):
>       Change all EImode operands to BLKmode.
>       (aarch64_ld4<mode>_dreg VD & DX, aarch64_st4<mode>_dreg VD & DX):
>       Change all OImode operands to BLKmode.
> 
>       (aarch64_ld<VSTRUCT:nregs><VDC:mode>,
>       aarch64_st<VSTRUCT:nregs><VDC:mode>): Generate MEM rtx with BLKmode
>       and call set_mem_size.
> 
>       * config/aarch64/iterators.md (VSTRUCT_DREG): Remove.

Reply via email to