On 16/10/17 14:26, Dominik Inführ wrote: > Hi, > > it seems the type attributes for neon_stp and neon_store1_1reg<q> should be > the other way around. >
Yes, I agree, but there's more.... Firstly, we have two patterns that are named *aarch64_simd_mov<mode>, with different iterators. That's slightly confusing. I think they need to be renamed as: *aarch64_simd_mov<VD:mode> and *aarch64_simd_mov<VQ:mode> to break the ambiguity. Secondly it looks to me as though the attributes on the other one are also incorrect. Could you check that one out as well, please. Thanks, R. > Thanks > Dominik > > ChangeLog: > 2017-10-16 Dominik Infuehr <dominik.infu...@theobroma-systems.com> > > * config/aarch64/aarch64-simd.md > (*aarch64_simd_mov<mode>): Fix type-attribute. > -- > diff --git a/gcc/config/aarch64/aarch64-simd.md > b/gcc/config/aarch64/aarch64-simd.md > index 49f615cfdbf..409ad3502ff 100644 > --- a/gcc/config/aarch64/aarch64-simd.md > +++ b/gcc/config/aarch64/aarch64-simd.md > @@ -160,8 +160,8 @@ > gcc_unreachable (); > } > } > - [(set_attr "type" "neon_load1_1reg<q>, neon_store1_1reg<q>,\ > - neon_stp, neon_logic<q>, multiple, multiple,\ > + [(set_attr "type" "neon_load1_1reg<q>, neon_stp, neon_store1_1reg<q>,\ > + neon_logic<q>, multiple, multiple,\ > multiple, neon_move<q>") > (set_attr "length" "4,4,4,4,8,8,8,4")] > ) >