mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-11 19:05:54 +02:00
Revert some additions of add_move_instruction as this heavily breaks code when the frame pointer is involved
git-svn-id: trunk@25632 -
This commit is contained in:
parent
dd204f395d
commit
29ff548c0b
@ -489,7 +489,7 @@ unit cgcpu;
|
|||||||
begin
|
begin
|
||||||
hreg:=getaddressregister(list);
|
hreg:=getaddressregister(list);
|
||||||
instr:=taicpu.op_reg_reg(A_MOVE,S_L,ref.base,hreg);
|
instr:=taicpu.op_reg_reg(A_MOVE,S_L,ref.base,hreg);
|
||||||
add_move_instruction(instr);
|
//add_move_instruction(instr);
|
||||||
list.concat(instr);
|
list.concat(instr);
|
||||||
fixref:=true;
|
fixref:=true;
|
||||||
ref.base:=hreg;
|
ref.base:=hreg;
|
||||||
@ -526,7 +526,7 @@ unit cgcpu;
|
|||||||
begin
|
begin
|
||||||
idxreg:=getaddressregister(list);
|
idxreg:=getaddressregister(list);
|
||||||
instr:=taicpu.op_reg_reg(A_MOVE,S_L,ref.base,idxreg);
|
instr:=taicpu.op_reg_reg(A_MOVE,S_L,ref.base,idxreg);
|
||||||
add_move_instruction(instr);
|
//add_move_instruction(instr);
|
||||||
list.concat(instr);
|
list.concat(instr);
|
||||||
list.concat(taicpu.op_reg_reg(A_ADD,S_L,ref.index,idxreg));
|
list.concat(taicpu.op_reg_reg(A_ADD,S_L,ref.index,idxreg));
|
||||||
ref.index:=idxreg;
|
ref.index:=idxreg;
|
||||||
@ -566,7 +566,7 @@ unit cgcpu;
|
|||||||
begin
|
begin
|
||||||
hreg:=getaddressregister(list);
|
hreg:=getaddressregister(list);
|
||||||
instr:=taicpu.op_reg_reg(A_MOVE,S_L,ref.base,hreg);
|
instr:=taicpu.op_reg_reg(A_MOVE,S_L,ref.base,hreg);
|
||||||
add_move_instruction(instr);
|
//add_move_instruction(instr);
|
||||||
list.concat(instr);
|
list.concat(instr);
|
||||||
list.concat(taicpu.op_const_reg(A_ADD,S_L,ref.offset,hreg));
|
list.concat(taicpu.op_const_reg(A_ADD,S_L,ref.offset,hreg));
|
||||||
fixref:=true;
|
fixref:=true;
|
||||||
@ -581,7 +581,7 @@ unit cgcpu;
|
|||||||
begin
|
begin
|
||||||
hreg:=getaddressregister(list);
|
hreg:=getaddressregister(list);
|
||||||
instr:=taicpu.op_reg_reg(A_MOVE,S_L,ref.base,hreg);
|
instr:=taicpu.op_reg_reg(A_MOVE,S_L,ref.base,hreg);
|
||||||
add_move_instruction(instr);
|
//add_move_instruction(instr);
|
||||||
list.concat(instr);
|
list.concat(instr);
|
||||||
list.concat(taicpu.op_const_reg(A_ADD,S_L,ref.offset,hreg));
|
list.concat(taicpu.op_const_reg(A_ADD,S_L,ref.offset,hreg));
|
||||||
fixref:=true;
|
fixref:=true;
|
||||||
|
Loading…
Reference in New Issue
Block a user