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 5 #include <arm_fp16.h> 6 7 uint16_t expected[] = 8 { 9 0x8000 /* -0.000000 */, 10 0x0000 /* 0.000000 */, 11 0xc000 /* -2.000000 */, 12 0xc233 /* -3.099609 */, 13 0xcd00 /* -20.000000 */, 14 0xb666 /* -0.399902 */, 15 0x409a /* 2.300781 */, 16 0xbd52 /* -1.330078 */, 17 0x479a /* 7.601562 */, 18 0xb4f6 /* -0.310059 */, 19 0xb55d /* -0.335205 */, 20 0xb800 /* -0.500000 */, 21 0xbc00 /* -1.000000 */, 22 0xca91 /* -13.132812 */, 23 0x464d /* 6.300781 */, 24 0xcd00 /* -20.000000 */, 25 0xfc00 /* -inf */, 26 0x7c00 /* inf */ 27 }; 28 29 #define TEST_MSG "VNEGH_F16" 30 #define INSN_NAME vnegh_f16 31 32 #define EXPECTED expected 33 34 #define INPUT_TYPE float16_t 35 #define OUTPUT_TYPE float16_t 36 #define OUTPUT_TYPE_SIZE 16 37 38 /* Include the template for unary scalar operations. */ 39 #include "unary_scalar_op.inc" 40