* don't remove MOV reg1,reg1 it is needed for the RA

This commit is contained in:
peter 2004-09-21 20:33:00 +00:00
parent d99a5f58f3
commit d5140a5792

View File

@ -570,8 +570,6 @@ implementation
a_op_const_reg_reg(list,OP_AND,tosize,$ffff,reg1,reg2);
OS_32,
OS_S32 :
begin
if reg1<>reg2 then
begin
instr:=taicpu.op_reg_reg(A_MOV,reg1,reg2);
list.Concat(instr);
@ -579,7 +577,6 @@ implementation
it can try to eliminate it. }
add_move_instruction(instr);
end;
end;
OS_S8 :
begin
list.concat(taicpu.op_reg_const_reg(A_SLL,reg1,24,reg2));
@ -597,8 +594,6 @@ implementation
else
begin
{ same size, only a register mov required }
if reg1<>reg2 then
begin
instr:=taicpu.op_reg_reg(A_MOV,reg1,reg2);
list.Concat(instr);
{ Notify the register allocator that we have written a move instruction so
@ -606,7 +601,6 @@ implementation
add_move_instruction(instr);
end;
end;
end;
procedure TCgSparc.a_loadaddr_ref_reg(list : TAasmOutput;const ref : TReference;r : tregister);
@ -1233,7 +1227,10 @@ begin
end.
{
$Log$
Revision 1.87 2004-09-21 17:25:13 peter
Revision 1.88 2004-09-21 20:33:00 peter
* don't remove MOV reg1,reg1 it is needed for the RA
Revision 1.87 2004/09/21 17:25:13 peter
* paraloc branch merged
Revision 1.86.4.5 2004/09/20 20:43:15 peter