1 /* { dg-do run } */ 2 /* { dg-require-effective-target arm_v8_2a_fp16_scalar_hw } */ 3 /* { dg-add-options arm_v8_2a_fp16_scalar } */ 4 /* { dg-skip-if "" { arm*-*-* } } */ 5 6 #include <arm_fp16.h> 7 8 /* Input values. */ 9 #define A 123.4 10 #define B -567.8 11 #define C -34.8 12 #define D 1024 13 #define E 663.1 14 #define F 169.1 15 #define G -4.8 16 #define H 77 17 18 float16_t input_1[] = { A, B, C, D }; 19 float16_t input_2[] = { E, F, G, H }; 20 float16_t expected[] = { E, F, G, D }; 21 22 #define TEST_MSG "VMAXH_F16" 23 #define INSN_NAME vmaxh_f16 24 25 #define INPUT_1 input_1 26 #define INPUT_2 input_2 27 #define EXPECTED expected 28 29 #define INPUT_TYPE float16_t 30 #define OUTPUT_TYPE float16_t 31 #define OUTPUT_TYPE_SIZE 16 32 33 /* Include the template for unary scalar operations. */ 34 #include "binary_scalar_op.inc" 35