mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-09-10 22:49:22 +02:00
* Release register of by value parameter after making its local copy. It fixes bug when local stack location is referenced using big (>4k) PC relative offset by ARM CPU. In this case temp register is needed and wrong temp register is allocated.
git-svn-id: trunk@5488 -
This commit is contained in:
parent
c21b1478b8
commit
319d92fe9a
@ -1618,7 +1618,6 @@ implementation
|
||||
sizeleft:=currpara.paraloc[calleeside].intsize;
|
||||
while assigned(paraloc) do
|
||||
begin
|
||||
unget_para(paraloc^);
|
||||
if (paraloc^.size=OS_NO) then
|
||||
begin
|
||||
{ Can only be a reference that contains the rest
|
||||
@ -1636,6 +1635,7 @@ implementation
|
||||
inc(href.offset,TCGSize2Size[paraloc^.size]);
|
||||
dec(sizeleft,TCGSize2Size[paraloc^.size]);
|
||||
end;
|
||||
unget_para(paraloc^);
|
||||
paraloc:=paraloc^.next;
|
||||
end;
|
||||
end;
|
||||
|
Loading…
Reference in New Issue
Block a user