mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-14 10:29:24 +02:00
parent
4657f45e74
commit
6a6ea6729f
@ -2773,7 +2773,7 @@ unit cgx86;
|
|||||||
|
|
||||||
type copymode=(copy_move,copy_mmx,copy_string,copy_mm,copy_avx);
|
type copymode=(copy_move,copy_mmx,copy_string,copy_mm,copy_avx);
|
||||||
|
|
||||||
var srcref,dstref:Treference;
|
var srcref,dstref,tmpref:Treference;
|
||||||
r,r0,r1,r2,r3:Tregister;
|
r,r0,r1,r2,r3:Tregister;
|
||||||
helpsize:tcgint;
|
helpsize:tcgint;
|
||||||
copysize:byte;
|
copysize:byte;
|
||||||
@ -3049,8 +3049,10 @@ unit cgx86;
|
|||||||
end
|
end
|
||||||
else
|
else
|
||||||
begin
|
begin
|
||||||
dstref.segment:=NR_NO;
|
{ load offset of dest. reference }
|
||||||
a_loadaddr_ref_reg(list,dstref,REGDI);
|
tmpref:=dstref;
|
||||||
|
tmpref.segment:=NR_NO;
|
||||||
|
a_loadaddr_ref_reg(list,tmpref,REGDI);
|
||||||
{$ifdef volatile_es}
|
{$ifdef volatile_es}
|
||||||
saved_es:=false;
|
saved_es:=false;
|
||||||
{$else volatile_es}
|
{$else volatile_es}
|
||||||
@ -3086,8 +3088,10 @@ unit cgx86;
|
|||||||
end
|
end
|
||||||
else
|
else
|
||||||
begin
|
begin
|
||||||
srcref.segment:=NR_NO;
|
{ load offset of source reference }
|
||||||
a_loadaddr_ref_reg(list,srcref,REGSI);
|
tmpref:=srcref;
|
||||||
|
tmpref.segment:=NR_NO;
|
||||||
|
a_loadaddr_ref_reg(list,tmpref,REGSI);
|
||||||
list.concat(taicpu.op_reg(A_PUSH,push_segment_size,NR_DS));
|
list.concat(taicpu.op_reg(A_PUSH,push_segment_size,NR_DS));
|
||||||
saved_ds:=true;
|
saved_ds:=true;
|
||||||
if srcref.segment<>NR_NO then
|
if srcref.segment<>NR_NO then
|
||||||
|
Loading…
Reference in New Issue
Block a user