Il 11/10/2013 14:02, Tom Musta ha scritto: > > + case OP_CPSGN: { \ > + TCGv_i64 xa = tcg_temp_new(); \ > + tcg_gen_mov_i64(xa, cpu_vsrh(xA(ctx->opcode))); \ > + tcg_gen_andi_i64(xa, xa, (sgn_mask)); \ > + tcg_gen_andi_i64(xb, xb, ~(sgn_mask)); \ > + tcg_gen_or_i64(xb, xb, xa); \ > + tcg_temp_free(xa); \ > + break; \
You might get slightly better generated code if you move the sgn_mask immediate to a temporary and then use and+andc. Paolo