mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-16 05:59:28 +02:00
+ taicpu.op_reg_reg_const_const() and taicpu.op_reg_reg_reg_cond() methods
git-svn-id: trunk@29915 -
This commit is contained in:
parent
5bdd14e252
commit
71bd4e23d9
@ -172,11 +172,14 @@ uses
|
||||
constructor op_reg_reg_reg(op : tasmop;_op1,_op2,_op3 : tregister);
|
||||
constructor op_reg_reg_reg_reg(op : tasmop;_op1,_op2,_op3,_op4 : tregister);
|
||||
constructor op_reg_reg_const(op : tasmop;_op1,_op2 : tregister; _op3: aint);
|
||||
constructor op_reg_reg_const_const(op : tasmop;_op1,_op2 : tregister; _op3, _op4: aint);
|
||||
constructor op_reg_reg_const_shifterop(op : tasmop;_op1,_op2 : tregister; _op3: aint; const _op4 : tshifterop);
|
||||
constructor op_reg_reg_sym_ofs(op : tasmop;_op1,_op2 : tregister; _op3: tasmsymbol;_op3ofs: longint);
|
||||
constructor op_reg_reg_ref(op : tasmop;_op1,_op2 : tregister; const _op3: treference);
|
||||
constructor op_reg_reg_shifterop(op : tasmop;_op1,_op2 : tregister;_op3 : tshifterop);
|
||||
constructor op_reg_reg_reg_shifterop(op : tasmop;_op1,_op2,_op3 : tregister; const _op4 : tshifterop);
|
||||
constructor op_reg_reg_reg_cond(op : tasmop;_op1,_op2,_op3 : tregister; const _op4: tasmcond);
|
||||
|
||||
|
||||
{ this is for Jmp instructions }
|
||||
constructor op_cond_sym(op : tasmop;cond:TAsmCond;_op1 : tasmsymbol);
|
||||
@ -286,7 +289,7 @@ implementation
|
||||
begin
|
||||
clearop(opidx);
|
||||
end;
|
||||
condition:=c;
|
||||
cc:=c;
|
||||
typ:=top_conditioncode;
|
||||
end;
|
||||
end;
|
||||
@ -404,6 +407,17 @@ implementation
|
||||
end;
|
||||
|
||||
|
||||
constructor taicpu.op_reg_reg_const_const(op: tasmop; _op1, _op2: tregister; _op3, _op4: aint);
|
||||
begin
|
||||
inherited create(op);
|
||||
ops:=4;
|
||||
loadreg(0,_op1);
|
||||
loadreg(1,_op2);
|
||||
loadconst(2,aint(_op3));
|
||||
loadconst(3,aint(_op4));
|
||||
end;
|
||||
|
||||
|
||||
constructor taicpu.op_reg_reg_const_shifterop(op: tasmop; _op1, _op2: tregister; _op3: aint; const _op4: tshifterop);
|
||||
begin
|
||||
inherited create(op);
|
||||
@ -455,6 +469,16 @@ implementation
|
||||
loadshifterop(3,_op4);
|
||||
end;
|
||||
|
||||
constructor taicpu.op_reg_reg_reg_cond(op: tasmop; _op1, _op2, _op3: tregister; const _op4: tasmcond);
|
||||
begin
|
||||
inherited create(op);
|
||||
ops:=4;
|
||||
loadreg(0,_op1);
|
||||
loadreg(1,_op2);
|
||||
loadreg(2,_op3);
|
||||
loadconditioncode(3,_op4);
|
||||
end;
|
||||
|
||||
|
||||
constructor taicpu.op_cond_sym(op : tasmop;cond:TAsmCond;_op1 : tasmsymbol);
|
||||
begin
|
||||
|
Loading…
Reference in New Issue
Block a user