Re: [PATCH] SVE intrinsics: Fold svmul with constant power-of-2 operand to svlsl

2024-10-14 Thread Richard Sandiford
Jennifer Schmitz writes: > [...] > @@ -54,25 +56,121 @@ TEST_UNIFORM_ZX (mul_w0_s16_m_untied, svint16_t, int16_t, >z0 = svmul_m (p0, z1, x0)) > > /* > -** mul_2_s16_m_tied1: > -** mov (z[0-9]+\.h), #2 > +** mul_4dupop1_s16_m_tied1: > +** mov (z[0-9]+)\.h, #4 > +**

Re: [PATCH] SVE intrinsics: Fold svmul with constant power-of-2 operand to svlsl

2024-10-11 Thread Richard Sandiford
Jennifer Schmitz writes: > Previously submitted in > https://gcc.gnu.org/pipermail/gcc-patches/2024-September/663435.html > > For svmul, if one of the operands is a constant vector with a uniform > power of 2, this patch folds the multiplication to a left-shift by > immediate (svlsl). > Because t

[PATCH] SVE intrinsics: Fold svmul with constant power-of-2 operand to svlsl

2024-10-11 Thread Jennifer Schmitz
Previously submitted in https://gcc.gnu.org/pipermail/gcc-patches/2024-September/663435.html For svmul, if one of the operands is a constant vector with a uniform power of 2, this patch folds the multiplication to a left-shift by immediate (svlsl). Because the shift amount in svlsl is the second

Re: SVE intrinsics: Fold svmul with constant power-of-2 operand to svlsl

2024-10-03 Thread Jennifer Schmitz
Ping. > On 20 Sep 2024, at 11:28, Jennifer Schmitz wrote: > > For svmul, if one of the operands is a constant vector with a uniform > power of 2, this patch folds the multiplication to a left-shift by > immediate (svlsl). > Because the shift amount in svlsl is the second operand, the order of th

SVE intrinsics: Fold svmul with constant power-of-2 operand to svlsl

2024-09-20 Thread Jennifer Schmitz
For svmul, if one of the operands is a constant vector with a uniform power of 2, this patch folds the multiplication to a left-shift by immediate (svlsl). Because the shift amount in svlsl is the second operand, the order of the operands is switched, if the first operand contained the powers of 2.