On 12/22/2009 03:27 AM, Laurent Desnogues wrote:
+#if TCG_TARGET_REG_BITS == 64
+ tcg_gen_op4i_i64(INDEX_op_setcond_i64, ret, arg1, arg2, cond);
+#else
+ tcg_gen_op6i_i32(INDEX_op_setcond2_i32, TCGV_LOW(ret),
+ TCGV_LOW(arg1), TCGV_HIGH(arg1),
+ TCGV_LOW(arg2), TCGV_HIGH(arg2), cond);
+ tcg_gen_movi_i32(TCGV_HIGH(ret), 0);
+#endif
+}
I wonder if it wouldn't be better to let the back-ends emit the
clearing of TCGV_HIGH(ret). This would reduce the number
of emitted TCG ops. Any thoughts?
(1) That would require 6 registers on i386 simultaneously.
(2) You lose the constant propagation that TCG would perform.
r~