/external/arm-neon-tests/ |
D | ref_vqsub.c | 27 #define TEST_MSG "VQSUB/VQSUBQ" macro 54 TEST_MSG); in vqsub_64() 61 DUMP(TEST_MSG, int, 64, 1, PRIx64); in vqsub_64() 62 DUMP(TEST_MSG, uint, 64, 1, PRIx64); in vqsub_64() 63 DUMP(TEST_MSG, int, 64, 2, PRIx64); in vqsub_64() 64 DUMP(TEST_MSG, uint, 64, 2, PRIx64); in vqsub_64() 74 TEST_MSG); in vqsub_64() 80 DUMP(TEST_MSG, int, 64, 1, PRIx64); in vqsub_64() 81 DUMP(TEST_MSG, uint, 64, 1, PRIx64); in vqsub_64() 82 DUMP(TEST_MSG, int, 64, 2, PRIx64); in vqsub_64() [all …]
|
D | ref_vqadd.c | 27 #define TEST_MSG "VQADD/VQADDQ" macro 53 "\n%s 64 bits saturation cumulative saturation output:\n", TEST_MSG); in vqadd_64() 60 DUMP(TEST_MSG, int, 64, 1, PRIx64); in vqadd_64() 61 DUMP(TEST_MSG, uint, 64, 1, PRIx64); in vqadd_64() 62 DUMP(TEST_MSG, int, 64, 2, PRIx64); in vqadd_64() 63 DUMP(TEST_MSG, uint, 64, 2, PRIx64); in vqadd_64() 72 "\n%s 64 bits saturation cumulative saturation output:\n", TEST_MSG); in vqadd_64() 78 DUMP(TEST_MSG, int, 64, 1, PRIx64); in vqadd_64() 79 DUMP(TEST_MSG, uint, 64, 1, PRIx64); in vqadd_64() 80 DUMP(TEST_MSG, int, 64, 2, PRIx64); in vqadd_64() [all …]
|
D | ref_vrsqrte.c | 35 #define TEST_MSG "VRSQRTE/VRSQRTEQ" macro 75 fprintf (ref_file, "\n%s output:\n", TEST_MSG); in exec_vrsqrte() 76 fprintf (gcc_tests_file, "\n%s output:\n", TEST_MSG); in exec_vrsqrte() 77 DUMP(TEST_MSG, uint, 32, 2, PRIx32); in exec_vrsqrte() 78 DUMP(TEST_MSG, uint, 32, 4, PRIx32); in exec_vrsqrte() 79 DUMP_FP(TEST_MSG, float, 32, 2, PRIx32); in exec_vrsqrte() 80 DUMP_FP(TEST_MSG, float, 32, 4, PRIx32); in exec_vrsqrte() 92 fprintf (ref_file, "\n%s output:\n", TEST_MSG " (2)"); in exec_vrsqrte() 93 DUMP(TEST_MSG, uint, 32, 2, PRIx32); in exec_vrsqrte() 94 DUMP(TEST_MSG, uint, 32, 4, PRIx32); in exec_vrsqrte() [all …]
|
D | ref_vrecpe.c | 35 #define TEST_MSG "VRECPE/VRECPEQ" macro 75 fprintf (ref_file, "\n%s %s output:\n", TEST_MSG, " (positive input)"); in exec_vrecpe() 76 DUMP(TEST_MSG, uint, 32, 2, PRIx32); in exec_vrecpe() 77 DUMP(TEST_MSG, uint, 32, 4, PRIx32); in exec_vrecpe() 78 DUMP_FP(TEST_MSG, float, 32, 2, PRIx32); in exec_vrecpe() 79 DUMP_FP(TEST_MSG, float, 32, 4, PRIx32); in exec_vrecpe() 93 fprintf (ref_file, "\n%s %s output:\n", TEST_MSG, " (negative input)"); in exec_vrecpe() 94 DUMP(TEST_MSG, uint, 32, 2, PRIx32); in exec_vrecpe() 95 DUMP(TEST_MSG, uint, 32, 4, PRIx32); in exec_vrecpe() 96 DUMP_FP(TEST_MSG, float, 32, 2, PRIx32); in exec_vrecpe() [all …]
|
D | ref_vrsqrts.c | 35 #define TEST_MSG "VRSQRTS/VRSQRTSQ" macro 74 fprintf (ref_file, "\n%s output:\n", TEST_MSG); in exec_vrsqrts() 75 fprintf (gcc_tests_file, "\n%s output:\n", TEST_MSG); in exec_vrsqrts() 76 DUMP_FP(TEST_MSG, float, 32, 2, PRIx32); in exec_vrsqrts() 77 DUMP_FP(TEST_MSG, float, 32, 4, PRIx32); in exec_vrsqrts() 88 fprintf (ref_file, "\n%s output:\n", TEST_MSG " FP special (NAN) and normal values"); in exec_vrsqrts() 89 DUMP_FP(TEST_MSG, float, 32, 2, PRIx32); in exec_vrsqrts() 90 DUMP_FP(TEST_MSG, float, 32, 4, PRIx32); in exec_vrsqrts() 102 fprintf (ref_file, "\n%s output:\n", TEST_MSG " FP special (infinity, 0) and normal values"); in exec_vrsqrts() 103 DUMP_FP(TEST_MSG, float, 32, 2, PRIx32); in exec_vrsqrts() [all …]
|
D | ref_vrecps.c | 35 #define TEST_MSG "VRECPS/VRECPSQ" macro 74 fprintf (ref_file, "\n%s output:\n", TEST_MSG); in exec_vrecps() 75 fprintf (gcc_tests_file, "\n%s output:\n", TEST_MSG); in exec_vrecps() 76 DUMP_FP(TEST_MSG, float, 32, 2, PRIx32); in exec_vrecps() 77 DUMP_FP(TEST_MSG, float, 32, 4, PRIx32); in exec_vrecps() 88 fprintf (ref_file, "\n%s output:\n", TEST_MSG " FP special (NAN) and normal values"); in exec_vrecps() 89 DUMP_FP(TEST_MSG, float, 32, 2, PRIx32); in exec_vrecps() 90 DUMP_FP(TEST_MSG, float, 32, 4, PRIx32); in exec_vrecps() 102 fprintf (ref_file, "\n%s output:\n", TEST_MSG " FP special (infinity, 0) and normal values"); in exec_vrecps() 103 DUMP_FP(TEST_MSG, float, 32, 2, PRIx32); in exec_vrecps() [all …]
|
D | ref_vtbX.c | 133 #define TEST_MSG "VTBL1" in exec_vtbX() macro 135 dump_results_hex (TEST_MSG); in exec_vtbX() 139 #undef TEST_MSG in exec_vtbX() 140 #define TEST_MSG "VTBL2" in exec_vtbX() macro 142 dump_results_hex (TEST_MSG); in exec_vtbX() 146 #undef TEST_MSG in exec_vtbX() 147 #define TEST_MSG "VTBL3" in exec_vtbX() macro 149 dump_results_hex (TEST_MSG); in exec_vtbX() 153 #undef TEST_MSG in exec_vtbX() 154 #define TEST_MSG "VTBL4" in exec_vtbX() macro [all …]
|
D | ref_v_comp_op.c | 132 fprintf(ref_file, "\n%s output:\n", TEST_MSG); in FNNAME() 133 fprintf(gcc_tests_file, "\n%s output:\n", TEST_MSG); in FNNAME() 137 DUMP(TEST_MSG, uint, 8, 8, PRIx8); in FNNAME() 138 DUMP(TEST_MSG, uint, 16, 4, PRIx16); in FNNAME() 139 DUMP(TEST_MSG, uint, 32, 2, PRIx32); in FNNAME() 144 DUMP(TEST_MSG, uint, 8, 8, PRIx8); in FNNAME() 145 DUMP(TEST_MSG, uint, 16, 4, PRIx16); in FNNAME() 146 DUMP(TEST_MSG, uint, 32, 2, PRIx32); in FNNAME() 151 DUMP(TEST_MSG, uint, 8, 16, PRIx8); in FNNAME() 152 DUMP(TEST_MSG, uint, 16, 8, PRIx16); in FNNAME() [all …]
|
D | ref_vcvt.c | 35 #define TEST_MSG "VCVT/VCVTQ" macro 46 DUMP(TEST_MSG, T1, W, N, PRIx##W); in exec_vcvt() 53 DUMP_FP(TEST_MSG, T1, W, N, PRIx##W); in exec_vcvt() 61 DUMP_FP(TEST_MSG, T1, W1, N, PRIx##W1); in exec_vcvt() 68 DUMP_FP16(TEST_MSG, T1, W1, N, PRIx##W1); in exec_vcvt() 76 DUMP(TEST_MSG, T1, W, N, PRIx##W); in exec_vcvt() 83 DUMP_FP(TEST_MSG, T1, W, N, PRIx##W); in exec_vcvt() 133 fprintf(ref_file, "\n%s output:\n", TEST_MSG); in exec_vcvt() 134 fprintf(gcc_tests_file, "\n%s output:\n", TEST_MSG); in exec_vcvt() 165 #undef TEST_MSG in exec_vcvt() [all …]
|
D | ref_vqrdmulh_n.c | 35 #define TEST_MSG "VQRDMULH_N" macro 52 dump_neon_cumulative_sat(TEST_MSG, xSTR(INSN##Q##_n_##T2##W), \ in FNNAME() 84 fprintf(ref_file, "\n%s cumulative saturation output:\n", TEST_MSG); in FNNAME() 90 fprintf(ref_file, "\n%s output:\n", TEST_MSG); in FNNAME() 91 fprintf(gcc_tests_file, "\n%s output:\n", TEST_MSG); in FNNAME() 92 DUMP(TEST_MSG, int, 16, 4, PRIx16); in FNNAME() 93 DUMP(TEST_MSG, int, 32, 2, PRIx32); in FNNAME() 94 DUMP(TEST_MSG, int, 16, 8, PRIx16); in FNNAME() 95 DUMP(TEST_MSG, int, 32, 4, PRIx32); in FNNAME() 104 TEST_MSG " (check mul cumulative saturation)"); in FNNAME() [all …]
|
D | ref_vqdmull_n.c | 35 #define TEST_MSG "VQDMULL_N" macro 51 dump_neon_cumulative_sat(TEST_MSG, xSTR(INSN##_n_##T2##W), \ in FNNAME() 83 fprintf(ref_file, "\n%s cumulative saturation output:\n", TEST_MSG); in FNNAME() 87 fprintf(ref_file, "\n%s output:\n", TEST_MSG); in FNNAME() 88 fprintf(gcc_tests_file, "\n%s output:\n", TEST_MSG); in FNNAME() 89 DUMP(TEST_MSG, int, 32, 4, PRIx32); in FNNAME() 90 DUMP(TEST_MSG, int, 64, 2, PRIx64); in FNNAME() 96 TEST_MSG " (check mul cumulative saturation)"); in FNNAME() 101 TEST_MSG " (check mul cumulative saturation)"); in FNNAME() 102 DUMP(TEST_MSG, int, 32, 4, PRIx32); in FNNAME() [all …]
|
D | ref_vqdmull_lane.c | 35 #define TEST_MSG "VQDMULL_LANE" macro 52 dump_neon_cumulative_sat(TEST_MSG, xSTR(INSN##_lane_##T2##W), \ in FNNAME() 84 fprintf(ref_file, "\n%s cumulative saturation output:\n", TEST_MSG); in FNNAME() 89 fprintf(ref_file, "\n%s output:\n", TEST_MSG); in FNNAME() 90 fprintf(gcc_tests_file, "\n%s output:\n", TEST_MSG); in FNNAME() 91 DUMP(TEST_MSG, int, 32, 4, PRIx32); in FNNAME() 92 DUMP(TEST_MSG, int, 64, 2, PRIx64); in FNNAME() 101 TEST_MSG " (check mul cumulative saturation)"); in FNNAME() 106 TEST_MSG " (check mul cumulative saturation)"); in FNNAME() 107 DUMP(TEST_MSG, int, 32, 4, PRIx32); in FNNAME() [all …]
|
D | ref_vqrshrun_n.c | 35 #define TEST_MSG "VQRSHRUN_N" macro 50 dump_neon_cumulative_sat(TEST_MSG, xSTR(INSN##_##T2##W), \ in FNNAME() 82 TEST_MSG " (negative input)"); in FNNAME() 88 dump_results_hex2 (TEST_MSG, " (negative input)"); in FNNAME() 97 TEST_MSG " (check cumulative saturation: shift by 1)"); in FNNAME() 102 dump_results_hex2 (TEST_MSG, " (check cumulative saturation: shift by 1)"); in FNNAME() 106 TEST_MSG " (check cumulative saturation: shift by max, positive input)"); in FNNAME() 111 dump_results_hex2 (TEST_MSG, in FNNAME() 122 TEST_MSG " (check cumulative saturation: shift by max, negative input)"); in FNNAME() 127 dump_results_hex2 (TEST_MSG, in FNNAME() [all …]
|
D | ref_vqdmulh_n.c | 35 #define TEST_MSG "VQDMULH_N" macro 51 dump_neon_cumulative_sat(TEST_MSG, xSTR(INSN##Q##_n_##T2##W), \ in FNNAME() 84 fprintf(ref_file, "\n%s cumulative saturation output:\n", TEST_MSG); in FNNAME() 90 fprintf(ref_file, "\n%s output:\n", TEST_MSG); in FNNAME() 91 fprintf(gcc_tests_file, "\n%s output:\n", TEST_MSG); in FNNAME() 92 DUMP(TEST_MSG, int, 16, 4, PRIx16); in FNNAME() 93 DUMP(TEST_MSG, int, 32, 2, PRIx32); in FNNAME() 94 DUMP(TEST_MSG, int, 16, 8, PRIx16); in FNNAME() 95 DUMP(TEST_MSG, int, 32, 4, PRIx32); in FNNAME() 104 TEST_MSG " (check mul cumulative saturation)"); in FNNAME() [all …]
|
D | ref_vldX_dup.c | 131 #define TEST_MSG "VLD2_DUP/VLD2Q_DUP" in exec_vldX_dup() macro 136 dump_results_hex2 (TEST_MSG, " chunk 0"); in exec_vldX_dup() 141 dump_results_hex2 (TEST_MSG, " chunk 1"); in exec_vldX_dup() 145 #undef TEST_MSG in exec_vldX_dup() 146 #define TEST_MSG "VLD3_DUP/VLD3Q_DUP" in exec_vldX_dup() macro 151 dump_results_hex2 (TEST_MSG, " chunk 0"); in exec_vldX_dup() 156 dump_results_hex2 (TEST_MSG, " chunk 1"); in exec_vldX_dup() 161 dump_results_hex2 (TEST_MSG, " chunk 2"); in exec_vldX_dup() 165 #undef TEST_MSG in exec_vldX_dup() 166 #define TEST_MSG "VLD4_DUP/VLD4Q_DUP" in exec_vldX_dup() macro [all …]
|
D | ref_vqrshl.c | 35 #define TEST_MSG "VQRSHL/VQRSHLQ" macro 50 dump_neon_cumulative_sat(TEST_MSG, xSTR(INSN##Q##_##T2##W), \ in FNNAME() 101 TEST_MSG " (with input = 0)"); in FNNAME() 103 dump_results_hex2 (TEST_MSG, " (with input = 0)"); in FNNAME() 116 TEST_MSG " (input 0 and negative shift amount)"); in FNNAME() 118 dump_results_hex2 (TEST_MSG, " (input 0 and negative shift amount)"); in FNNAME() 133 fprintf(ref_file, "\n%s cumulative saturation output:\n", TEST_MSG); in FNNAME() 135 dump_results_hex (TEST_MSG); in FNNAME() 148 TEST_MSG " (negative shift amount)"); in FNNAME() 150 dump_results_hex2 (TEST_MSG, " (negative shift amount)"); in FNNAME() [all …]
|
D | ref_vqshl.c | 35 #define TEST_MSG "VQSHL/VQSHLQ" macro 50 dump_neon_cumulative_sat(TEST_MSG, xSTR(INSN##Q##_##T2##W), \ in FNNAME() 117 TEST_MSG " (with input = 0)"); in FNNAME() 119 dump_results_hex2 (TEST_MSG, " (with input = 0)"); in FNNAME() 133 TEST_MSG " (input 0 and negative shift amount)"); in FNNAME() 135 dump_results_hex2 (TEST_MSG, " (input 0 and negative shift amount)"); in FNNAME() 150 fprintf(ref_file, "\n%s cumulative saturation output:\n", TEST_MSG); in FNNAME() 152 dump_results_hex (TEST_MSG); in FNNAME() 165 TEST_MSG " (negative shift amount)"); in FNNAME() 167 dump_results_hex2 (TEST_MSG, " (negative shift amount)"); in FNNAME() [all …]
|
D | ref_vldX.c | 162 #define TEST_MSG "VLD2/VLD2Q" in exec_vldX() macro 167 dump_results_hex2 (TEST_MSG, " chunk 0"); in exec_vldX() 173 dump_results_hex2 (TEST_MSG, " chunk 1"); in exec_vldX() 177 #undef TEST_MSG in exec_vldX() 178 #define TEST_MSG "VLD3/VLD3Q" in exec_vldX() macro 183 dump_results_hex2 (TEST_MSG, " chunk 0"); in exec_vldX() 189 dump_results_hex2 (TEST_MSG, " chunk 1"); in exec_vldX() 194 dump_results_hex2 (TEST_MSG, " chunk 2"); in exec_vldX() 198 #undef TEST_MSG in exec_vldX() 199 #define TEST_MSG "VLD4/VLD4Q" in exec_vldX() macro [all …]
|
D | ref_v_comp_f_op.c | 71 fprintf(ref_file, "\n%s output:\n", TEST_MSG); in FNNAME() 72 fprintf(gcc_tests_file, "\n%s output:\n", TEST_MSG); in FNNAME() 74 DUMP(TEST_MSG, uint, 32, 2, PRIx32); in FNNAME() 77 DUMP(TEST_MSG, uint, 32, 4, PRIx32); in FNNAME() 82 fprintf(ref_file, "\n%s output:\n", TEST_MSG); in FNNAME() 83 fprintf(gcc_tests_file, "\n%s output:\n", TEST_MSG); in FNNAME() 85 DUMP(TEST_MSG, uint, 32, 2, PRIx32); in FNNAME() 88 DUMP(TEST_MSG, uint, 32, 4, PRIx32); in FNNAME()
|
D | ref_vqshrun_n.c | 35 #define TEST_MSG "VQSHRUN_N" macro 50 dump_neon_cumulative_sat(TEST_MSG, xSTR(INSN##_##T2##W), \ in FNNAME() 82 TEST_MSG " (negative input)"); in FNNAME() 88 dump_results_hex2 (TEST_MSG, " (negative input)"); in FNNAME() 97 TEST_MSG " (check cumulative saturation)"); in FNNAME() 102 dump_results_hex2 (TEST_MSG, " (check cumulative saturation)"); in FNNAME() 110 fprintf(ref_file, "\n%s cumulative saturation output:\n", TEST_MSG); in FNNAME() 115 dump_results_hex (TEST_MSG); in FNNAME()
|
D | ref_vmull_n.c | 35 #define TEST_MSG "VMULL_N" macro 76 fprintf(ref_file, "\n%s output:\n", TEST_MSG); in exec_vmull_n() 77 fprintf(gcc_tests_file, "\n%s output:\n", TEST_MSG); in exec_vmull_n() 78 DUMP(TEST_MSG, int, 32, 4, PRIx32); in exec_vmull_n() 79 DUMP(TEST_MSG, int, 64, 2, PRIx64); in exec_vmull_n() 80 DUMP(TEST_MSG, uint, 32, 4, PRIx32); in exec_vmull_n() 81 DUMP(TEST_MSG, uint, 64, 2, PRIx64); in exec_vmull_n()
|
D | ref_vrev.c | 58 #define TEST_MSG "VREV16" in exec_vrev() macro 65 dump_results_hex (TEST_MSG); in exec_vrev() 67 #undef TEST_MSG in exec_vrev() 68 #define TEST_MSG "VREV32" in exec_vrev() macro 81 dump_results_hex (TEST_MSG); in exec_vrev() 83 #undef TEST_MSG in exec_vrev() 84 #define TEST_MSG "VREV64" in exec_vrev() macro 105 dump_results_hex (TEST_MSG); in exec_vrev()
|
D | ref_vqdmlal_lane.c | 36 #define TEST_MSG "VQDMLAL_LANE" macro 55 dump_neon_cumulative_sat(TEST_MSG, xSTR(INSN##_##T2##W2), \ in FNNAME() 83 fprintf(ref_file, "\n%s cumulative saturation output:\n", TEST_MSG); in FNNAME() 86 dump_results_hex (TEST_MSG); in FNNAME() 91 TEST_MSG " (mul with input=0)"); in FNNAME() 94 dump_results_hex2 (TEST_MSG, " (mul with input=0)"); in FNNAME() 101 TEST_MSG " (check mul cumulative saturation)"); in FNNAME() 104 dump_results_hex2 (TEST_MSG, " (check mul cumulative saturation)"); in FNNAME()
|
D | ref_vldX_lane.c | 187 #define TEST_MSG "VLD2_LANE/VLD2Q_LANE" in exec_vldX_lane() macro 192 dump_results_hex2 (TEST_MSG, " chunk 0"); in exec_vldX_lane() 197 dump_results_hex2 (TEST_MSG, " chunk 1"); in exec_vldX_lane() 201 #undef TEST_MSG in exec_vldX_lane() 202 #define TEST_MSG "VLD3_LANE/VLD3Q_LANE" in exec_vldX_lane() macro 207 dump_results_hex2 (TEST_MSG, " chunk 0"); in exec_vldX_lane() 212 dump_results_hex2 (TEST_MSG, " chunk 1"); in exec_vldX_lane() 217 dump_results_hex2 (TEST_MSG, " chunk 2"); in exec_vldX_lane() 221 #undef TEST_MSG in exec_vldX_lane() 222 #define TEST_MSG "VLD4_LANE/VLD4Q_LANE" in exec_vldX_lane() macro [all …]
|
D | ref_vstX_lane.c | 184 #define TEST_MSG "VST2_LANE/VST2Q_LANE" in exec_vstX_lane() macro 189 dump_results_hex2 (TEST_MSG, " chunk 0"); in exec_vstX_lane() 195 dump_results_hex2 (TEST_MSG, " chunk 1"); in exec_vstX_lane() 199 #undef TEST_MSG in exec_vstX_lane() 200 #define TEST_MSG "VST3_LANE/VST3Q_LANE" in exec_vstX_lane() macro 205 dump_results_hex2 (TEST_MSG, " chunk 0"); in exec_vstX_lane() 211 dump_results_hex2 (TEST_MSG, " chunk 1"); in exec_vstX_lane() 216 dump_results_hex2 (TEST_MSG, " chunk 2"); in exec_vstX_lane() 220 #undef TEST_MSG in exec_vstX_lane() 221 #define TEST_MSG "VST4_LANE/VST4Q_LANE" in exec_vstX_lane() macro [all …]
|