mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-09-13 21:11:23 +02:00
* allocate dedicated register for a_call_ref() to avoid problems with R0-usage on ppc64.
git-svn-id: trunk@3439 -
This commit is contained in:
parent
5b7ee799bb
commit
540af422ca
@ -44,11 +44,12 @@ unit cgppc;
|
|||||||
rgobj,tgobj,cpupi,procinfo,paramgr;
|
rgobj,tgobj,cpupi,procinfo,paramgr;
|
||||||
|
|
||||||
procedure tcgppcgen.a_call_ref(list : TAsmList;ref: treference);
|
procedure tcgppcgen.a_call_ref(list : TAsmList;ref: treference);
|
||||||
|
var
|
||||||
|
tempreg : TRegister;
|
||||||
begin
|
begin
|
||||||
a_reg_alloc(list,NR_R0);
|
tempreg := getintregister(list, OS_ADDR);
|
||||||
a_load_ref_reg(list,OS_ADDR,OS_ADDR,ref,NR_R0);
|
a_load_ref_reg(list,OS_ADDR,OS_ADDR,ref,tempreg);
|
||||||
a_call_reg(list,NR_R0);
|
a_call_reg(list,tempreg);
|
||||||
a_reg_dealloc(list,NR_R0);
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
end.
|
end.
|
||||||
|
Loading…
Reference in New Issue
Block a user