@@ -590,11 +590,17 @@ void tcg_gen_eqv_vec(unsigned vece, TCGv_vec r, TCGv_vec a, TCGv_vec b)
590590
591591void tcg_gen_not_vec (unsigned vece , TCGv_vec r , TCGv_vec a )
592592{
593- if (TCG_TARGET_HAS_not_vec ) {
594- vec_gen_op2 (INDEX_op_not_vec , 0 , r , a );
595- } else {
593+ /* TODO (SymQEMU):
594+ * This instruction is not instrumented yet.
595+ * For now, we make sure that alternative instructions below, which are instrumented, are always used.
596+ * Directly instrumenting this instruction would improve performance of SymQEMU.
597+ */
598+
599+ // if (TCG_TARGET_HAS_not_vec) {
600+ // vec_gen_op2(INDEX_op_not_vec, 0, r, a);
601+ // } else {
596602 tcg_gen_xor_vec (0 , r , a , tcg_constant_vec_matching (r , 0 , -1 ));
597- }
603+ // }
598604}
599605
600606void tcg_gen_neg_vec (unsigned vece , TCGv_vec r , TCGv_vec a )
@@ -611,7 +617,6 @@ void tcg_gen_neg_vec(unsigned vece, TCGv_vec r, TCGv_vec a)
611617 * Directly instrumenting this instruction would improve performance of SymQEMU.
612618 */
613619
614-
615620 /*if (!TCG_TARGET_HAS_neg_vec || !do_op2(vece, r, a, INDEX_op_neg_vec)) {*/
616621 tcg_gen_sub_vec (vece , r , tcg_constant_vec_matching (r , vece , 0 ), a );
617622 /*}*/
0 commit comments