[ARM][GCC][2/3x]: MVE intrinsics with ternary operands.
[official-gcc.git] / gcc / testsuite / gcc.target / arm / mve / intrinsics / vshlq_m_r_s32.c
blob2d48bceb061ad83799c7d2d27b3a3addaca3fed7
1 /* { dg-do compile } */
2 /* { dg-require-effective-target arm_v8_1m_mve_ok } */
3 /* { dg-add-options arm_v8_1m_mve } */
4 /* { dg-additional-options "-O2" } */
6 #include "arm_mve.h"
8 int32x4_t
9 foo (int32x4_t a, int32_t b, mve_pred16_t p)
11 return vshlq_m_r_s32 (a, b, p);
14 /* { dg-final { scan-assembler "vpst" } } */
15 /* { dg-final { scan-assembler "vshlt.s32" } } */
17 int32x4_t
18 foo1 (int32x4_t a, int32_t b, mve_pred16_t p)
20 return vshlq_m_r (a, b, p);
23 /* { dg-final { scan-assembler "vpst" } } */