https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111584

            Bug ID: 111584
           Summary: [aarch64] Redundant movprfx with ptrue
           Product: gcc
           Version: 13.1.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c
          Assignee: unassigned at gcc dot gnu.org
          Reporter: zhongyunde at huawei dot com
  Target Milestone: ---

* test: https://gcc.godbolt.org/z/E6Eez81jh
```
#include<arm_sve.h>

typedef svfloat32_t fvec32 __attribute__((arm_sve_vector_bits(256)));

typedef svfloat32_t __m256_;

 __m256_ _mm256_mul_ps2_z(__m256_ a, __m256_ b)
{
     __m256_ res;
     res = svmul_f32_z(svptrue_b32(), a, b);
     return res;
}
```

* llvm have same output for _mm256_mul_ps2_x and  _mm256_mul_ps2_z, while gcc
doesn't has high efficient output for _mm256_mul_ps2_z
  • [Bug c/111584] New: [aarch64] Re... zhongyunde at huawei dot com via Gcc-bugs

Reply via email to