mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-09-10 09:29:13 +02:00
* use only one temporary 16-bit register, instead of two in tcg8086.g_flags2ref
when the target ref is 32-bit. git-svn-id: trunk@26342 -
This commit is contained in:
parent
72e526b9b1
commit
974fea30b2
@ -1382,10 +1382,15 @@ unit cgcpu;
|
||||
procedure tcg8086.g_flags2ref(list: TAsmList; size: TCgSize; const f: tresflags; const ref: TReference);
|
||||
var
|
||||
tmpreg : tregister;
|
||||
tmpregsize: TCgSize;
|
||||
begin
|
||||
tmpreg:=getintregister(list,size);
|
||||
g_flags2reg(list,size,f,tmpreg);
|
||||
a_load_reg_ref(list,size,size,tmpreg,ref);
|
||||
if size in [OS_8,OS_S8,OS_16,OS_S16] then
|
||||
tmpregsize:=size
|
||||
else
|
||||
tmpregsize:=OS_16;
|
||||
tmpreg:=getintregister(list,tmpregsize);
|
||||
g_flags2reg(list,tmpregsize,f,tmpreg);
|
||||
a_load_reg_ref(list,tmpregsize,size,tmpreg,ref);
|
||||
end;
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user