tcg: Return TCGOp from tcg_gen_op[1-6]
TCGOp to be propagated further in the next patch. Reviewed-by: Alex Bennée <alex.bennee@linaro.org> Reviewed-by: Pierrick Bouvier <pierrick.bouvier@linaro.org> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
This commit is contained in:
parent
01dc65a3bc
commit
409b9e39be
@ -92,12 +92,12 @@ TCGTemp *tcg_temp_new_internal(TCGType type, TCGTempKind kind);
|
||||
*/
|
||||
TCGTemp *tcg_constant_internal(TCGType type, int64_t val);
|
||||
|
||||
void tcg_gen_op1(TCGOpcode, TCGArg);
|
||||
void tcg_gen_op2(TCGOpcode, TCGArg, TCGArg);
|
||||
void tcg_gen_op3(TCGOpcode, TCGArg, TCGArg, TCGArg);
|
||||
void tcg_gen_op4(TCGOpcode, TCGArg, TCGArg, TCGArg, TCGArg);
|
||||
void tcg_gen_op5(TCGOpcode, TCGArg, TCGArg, TCGArg, TCGArg, TCGArg);
|
||||
void tcg_gen_op6(TCGOpcode, TCGArg, TCGArg, TCGArg, TCGArg, TCGArg, TCGArg);
|
||||
TCGOp *tcg_gen_op1(TCGOpcode, TCGArg);
|
||||
TCGOp *tcg_gen_op2(TCGOpcode, TCGArg, TCGArg);
|
||||
TCGOp *tcg_gen_op3(TCGOpcode, TCGArg, TCGArg, TCGArg);
|
||||
TCGOp *tcg_gen_op4(TCGOpcode, TCGArg, TCGArg, TCGArg, TCGArg);
|
||||
TCGOp *tcg_gen_op5(TCGOpcode, TCGArg, TCGArg, TCGArg, TCGArg, TCGArg);
|
||||
TCGOp *tcg_gen_op6(TCGOpcode, TCGArg, TCGArg, TCGArg, TCGArg, TCGArg, TCGArg);
|
||||
|
||||
void vec_gen_2(TCGOpcode, TCGType, unsigned, TCGArg, TCGArg);
|
||||
void vec_gen_3(TCGOpcode, TCGType, unsigned, TCGArg, TCGArg, TCGArg);
|
||||
|
23
tcg/tcg-op.c
23
tcg/tcg-op.c
@ -37,38 +37,43 @@
|
||||
*/
|
||||
#define NI __attribute__((noinline))
|
||||
|
||||
void NI tcg_gen_op1(TCGOpcode opc, TCGArg a1)
|
||||
TCGOp * NI tcg_gen_op1(TCGOpcode opc, TCGArg a1)
|
||||
{
|
||||
TCGOp *op = tcg_emit_op(opc, 1);
|
||||
op->args[0] = a1;
|
||||
return op;
|
||||
}
|
||||
|
||||
void NI tcg_gen_op2(TCGOpcode opc, TCGArg a1, TCGArg a2)
|
||||
TCGOp * NI tcg_gen_op2(TCGOpcode opc, TCGArg a1, TCGArg a2)
|
||||
{
|
||||
TCGOp *op = tcg_emit_op(opc, 2);
|
||||
op->args[0] = a1;
|
||||
op->args[1] = a2;
|
||||
return op;
|
||||
}
|
||||
|
||||
void NI tcg_gen_op3(TCGOpcode opc, TCGArg a1, TCGArg a2, TCGArg a3)
|
||||
TCGOp * NI tcg_gen_op3(TCGOpcode opc, TCGArg a1, TCGArg a2, TCGArg a3)
|
||||
{
|
||||
TCGOp *op = tcg_emit_op(opc, 3);
|
||||
op->args[0] = a1;
|
||||
op->args[1] = a2;
|
||||
op->args[2] = a3;
|
||||
return op;
|
||||
}
|
||||
|
||||
void NI tcg_gen_op4(TCGOpcode opc, TCGArg a1, TCGArg a2, TCGArg a3, TCGArg a4)
|
||||
TCGOp * NI tcg_gen_op4(TCGOpcode opc, TCGArg a1, TCGArg a2,
|
||||
TCGArg a3, TCGArg a4)
|
||||
{
|
||||
TCGOp *op = tcg_emit_op(opc, 4);
|
||||
op->args[0] = a1;
|
||||
op->args[1] = a2;
|
||||
op->args[2] = a3;
|
||||
op->args[3] = a4;
|
||||
return op;
|
||||
}
|
||||
|
||||
void NI tcg_gen_op5(TCGOpcode opc, TCGArg a1, TCGArg a2, TCGArg a3,
|
||||
TCGArg a4, TCGArg a5)
|
||||
TCGOp * NI tcg_gen_op5(TCGOpcode opc, TCGArg a1, TCGArg a2,
|
||||
TCGArg a3, TCGArg a4, TCGArg a5)
|
||||
{
|
||||
TCGOp *op = tcg_emit_op(opc, 5);
|
||||
op->args[0] = a1;
|
||||
@ -76,10 +81,11 @@ void NI tcg_gen_op5(TCGOpcode opc, TCGArg a1, TCGArg a2, TCGArg a3,
|
||||
op->args[2] = a3;
|
||||
op->args[3] = a4;
|
||||
op->args[4] = a5;
|
||||
return op;
|
||||
}
|
||||
|
||||
void NI tcg_gen_op6(TCGOpcode opc, TCGArg a1, TCGArg a2, TCGArg a3,
|
||||
TCGArg a4, TCGArg a5, TCGArg a6)
|
||||
TCGOp * NI tcg_gen_op6(TCGOpcode opc, TCGArg a1, TCGArg a2, TCGArg a3,
|
||||
TCGArg a4, TCGArg a5, TCGArg a6)
|
||||
{
|
||||
TCGOp *op = tcg_emit_op(opc, 6);
|
||||
op->args[0] = a1;
|
||||
@ -88,6 +94,7 @@ void NI tcg_gen_op6(TCGOpcode opc, TCGArg a1, TCGArg a2, TCGArg a3,
|
||||
op->args[3] = a4;
|
||||
op->args[4] = a5;
|
||||
op->args[5] = a6;
|
||||
return op;
|
||||
}
|
||||
|
||||
/*
|
||||
|
Loading…
Reference in New Issue
Block a user