This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH][AArch64 array_mode 3/8] Stop using EImode in aarch64-simd.md and iterators.md
- From: James Greenhalgh <james dot greenhalgh at arm dot com>
- To: Alan Lawrence <Alan dot Lawrence at arm dot com>
- Cc: "gcc-patches at gcc dot gnu dot org" <gcc-patches at gcc dot gnu dot org>
- Date: Tue, 15 Sep 2015 10:30:03 +0100
- Subject: Re: [PATCH][AArch64 array_mode 3/8] Stop using EImode in aarch64-simd.md and iterators.md
- Authentication-results: sourceware.org; auth=none
- References: <1440596819-18018-1-git-send-email-alan dot lawrence at arm dot com> <1442308483-21714-1-git-send-email-alan dot lawrence at arm dot com> <1442308483-21714-4-git-send-email-alan dot lawrence at arm dot com>
On Tue, Sep 15, 2015 at 10:14:38AM +0100, Alan Lawrence wrote:
> The V_THREE_ELEM attribute used BLKmode for most sizes, but occasionally
> EImode. This patch changes to BLKmode in all cases, explicitly setting
> memory size (thus, preserving size for the cases that were EImode, and
> setting size for the first time for cases that were already BLKmode).
>
> The patterns affected are only for intrinsics: the aarch64_ld3r
> expanders and aarch64_simd_ld3r insns, and the
> aarch64_vec_{load,store}_lanesci_lane insns used by the
> aarch64_{ld,st}3_lane expanders.
>
> bootstrapped and check-gcc on aarch64-none-linux-gnu
OK (some comments on your ChangeLog below).
Thanks,
James
>
> gcc/ChangeLog:
>
> * config/aarch64/aarch64-simd.md (aarch64_simd_ld3r<mode>,
> aarch64_vec_load_lanesci_lane<mode>,
> aarch64_vec_store_lanesci_lane<mode>): Change operand mode
> from <V_THREE_ELEM> to BLK.
I see this style used by a few people in the ChangeLog, personally I prefer
the form where each named entity is in its own set of (), such that I can
search for "(aarch64_foo)" and not match partial strings like
", aarch64_foo_bar" as I would searching "aarch64_foo" with your format.
>
No newline here.
> (aarch64_ld3r<mode>, aarch64_ld3_lane<mode>,
> aarch64_st3_lane<mode>): Generate MEM rtx with BLKmode, call
> set_mem_size.
>
Likewise.
> * config/aarch64/iterators.md (V_THREE_ELEM): Remove.