[PATCH][AArch64 array_mode 3/8] Stop using EImode in aarch64-simd.md and iterators.md

James Greenhalgh james.greenhalgh@arm.com
Tue Sep 15 09:32:00 GMT 2015


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.



More information about the Gcc-patches mailing list