herd / herdtools7

The Herd toolsuite to deal with .cat memory models (version 7.xx)
Other
215 stars 54 forks source link

[herd] Neon base 64 #872

Closed maranget closed 1 month ago

maranget commented 2 months ago

Adopt a composite scalar type for the AArch64 neon and sve variants.

Scalars can either be 64 bit wide (for ordinary operations) or 128 bit wide (for neon vector operations). Default SVE vector length is also 128 bits. However, SVE vector length is configurable with -variant sve<n>, where <n> is vector length in bits.

murzinv commented 2 months ago

Hi @maranget !

Would it make sense to have separator for -variant sve<n> between sve and <n>? My worry is that if we occasionally get (sub)variant of sve which is likely follow sve<n> scheme (Arm already has sve2), we cannot encode it the same - it will likely lead to confusion between (sve) extension number and (sve) vector length. What do you reckon?

maranget commented 2 months ago

Hi @murzinv , yes it does make sense. Do you mean something like -sve:512?

murzinv commented 2 months ago

Hi @murzinv , yes it does make sense. Do you mean something like -sve:512?

Yup, any separator : or - or , or any other to your taste :wink:

maranget commented 2 months ago

Let us go for ':'.

maranget commented 1 month ago

Hi @murzinv, I'd like to merge this PR, do you think it is ready?

murzinv commented 1 month ago

Hi @murzinv, I'd like to merge this PR, do you think it is ready?

To the best of my knowledge, LGTM :+1:

maranget commented 1 month ago

Thanks, merge on its way.

maranget commented 1 month ago

Merged, tanks @murzinv.