libcpp: Use constexpr for _cpp_trigraph_map initialization for C++14
[official-gcc.git] / gcc / testsuite / gcc.target / arm / mve / dlstp-int8x16.c
blobd5f22b5026259419df11789e0eaab1692179a8ad
1 /* { dg-do compile { target { arm*-*-* } } } */
2 /* { dg-require-effective-target arm_v8_1m_mve_ok } */
3 /* { dg-options "-O2 -save-temps" } */
4 /* { dg-add-options arm_v8_1m_mve } */
6 #include <arm_mve.h>
7 #include <stdio.h>
8 #include <stdlib.h>
9 #include "../lob.h"
11 void __attribute__ ((noinline)) test (int8_t *a, int8_t *b, int8_t *c, int n)
13 while (n > 0)
15 mve_pred16_t p = vctp8q (n);
16 int8x16_t va = vldrbq_z_s8 (a, p);
17 int8x16_t vb = vldrbq_z_s8 (b, p);
18 int8x16_t vc = vaddq_x_s8 (va, vb, p);
19 vstrbq_p_s8 (c, vc, p);
20 c+=16;
21 a+=16;
22 b+=16;
23 n-=16;
28 /* { dg-final { scan-assembler-times {\tdlstp.8} 1 } } */
29 /* { dg-final { scan-assembler-times {\tletp} 1 } } */
30 /* { dg-final { scan-assembler-not "\tvctp" } } */
31 /* { dg-final { scan-assembler-not "\tvpst" } } */
32 /* { dg-final { scan-assembler-not "p0" } } */