RISC-V: testsuite: Remove redundant vector_hw and zvfh_hw.
[official-gcc.git] / gcc / testsuite / gcc.target / riscv / rvv / autovec / binop / vmul-zvfh-run.c
blob63bcf707756a98b6597a47928bea1c614435c344
1 /* { dg-do run { target { riscv_v && riscv_zvfh } } } */
2 /* { dg-additional-options "-std=c99 -fno-vect-cost-model --param=riscv-autovec-preference=fixed-vlmax -ffast-math" } */
4 #include "vmul-template.h"
6 #include <assert.h>
8 #define SZ 512
10 #define RUN(TYPE, VAL) \
11 TYPE a##TYPE[SZ]; \
12 TYPE b##TYPE[SZ]; \
13 for (int i = 0; i < SZ; i++) \
14 { \
15 a##TYPE[i] = 2; \
16 b##TYPE[i] = VAL; \
17 } \
18 vmul_##TYPE (a##TYPE, a##TYPE, b##TYPE, SZ); \
19 for (int i = 0; i < SZ; i++) \
20 assert (a##TYPE[i] == 2 * VAL);
22 #define RUN2(TYPE, VAL) \
23 TYPE as##TYPE[SZ]; \
24 for (int i = 0; i < SZ; i++) \
25 as##TYPE[i] = 3; \
26 vmuls_##TYPE (as##TYPE, as##TYPE, VAL, SZ); \
27 for (int i = 0; i < SZ; i++) \
28 assert (as##TYPE[i] == 3 * VAL);
30 #define RUN_ALL() \
31 RUN(_Float16, 4) \
32 RUN2(_Float16, 10) \
34 int main ()
36 RUN_ALL()