mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-06-04 19:18:35 +02:00
* fixed handling of doubles in softemu mode if they are split between register and memory
git-svn-id: trunk@2047 -
This commit is contained in:
parent
b08eccdbf0
commit
dae84f282f
@ -212,10 +212,16 @@ unit cgcpu;
|
||||
a_load_ref_reg(list,location^.size,location^.size,tmpref,location^.register);
|
||||
LOC_REFERENCE:
|
||||
begin
|
||||
reference_reset_base(ref,location^.reference.index,location^.reference.offset);
|
||||
g_concatcopy(list,tmpref,ref,sizeleft);
|
||||
if assigned(location^.next) then
|
||||
internalerror(2005010710);
|
||||
reference_reset_base(ref,location^.reference.index,location^.reference.offset);
|
||||
{ doubles in softemu mode have a strange order of registers and references }
|
||||
if location^.size=OS_32 then
|
||||
g_concatcopy(list,tmpref,ref,4)
|
||||
else
|
||||
begin
|
||||
g_concatcopy(list,tmpref,ref,sizeleft);
|
||||
if assigned(location^.next) then
|
||||
internalerror(2005010710);
|
||||
end;
|
||||
end;
|
||||
LOC_FPUREGISTER,LOC_CFPUREGISTER:
|
||||
case location^.size of
|
||||
|
Loading…
Reference in New Issue
Block a user