mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-10 02:28:22 +02:00
Fix parameter loading of FPC_CHECKPOINTER to handle correctly references with offsets
git-svn-id: trunk@34743 -
This commit is contained in:
parent
f9e7600fe3
commit
abaea9959f
@ -177,7 +177,7 @@ implementation
|
||||
pd:=tprocdef(tprocsym(sym).ProcdefList[0]);
|
||||
paraloc1.init;
|
||||
paramanager.getintparaloc(current_asmdata.CurrAsmList,pd,1,paraloc1);
|
||||
hlcg.a_load_reg_cgpara(current_asmdata.CurrAsmList,resultdef,location.reference.base,paraloc1);
|
||||
hlcg.a_loadaddr_ref_cgpara(current_asmdata.CurrAsmList,resultdef,location.reference,paraloc1);
|
||||
paramanager.freecgpara(current_asmdata.CurrAsmList,paraloc1);
|
||||
paraloc1.done;
|
||||
hlcg.allocallcpuregisters(current_asmdata.CurrAsmList);
|
||||
|
@ -313,7 +313,7 @@ implementation
|
||||
pd:=tprocdef(tprocsym(sym).ProcdefList[0]);
|
||||
paraloc1.init;
|
||||
paramanager.getintparaloc(current_asmdata.CurrAsmList,pd,1,paraloc1);
|
||||
hlcg.a_load_reg_cgpara(current_asmdata.CurrAsmList,left.resultdef,location.reference.base,paraloc1);
|
||||
hlcg.a_loadaddr_ref_cgpara(current_asmdata.CurrAsmList,left.resultdef,location.reference,paraloc1);
|
||||
paramanager.freecgpara(current_asmdata.CurrAsmList,paraloc1);
|
||||
paraloc1.done;
|
||||
hlcg.allocallcpuregisters(current_asmdata.CurrAsmList);
|
||||
@ -403,7 +403,7 @@ implementation
|
||||
internalerror(2012010602);
|
||||
pd:=tprocdef(tprocsym(sym).ProcdefList[0]);
|
||||
paramanager.getintparaloc(current_asmdata.CurrAsmList,pd,1,paraloc1);
|
||||
hlcg.a_load_reg_cgpara(current_asmdata.CurrAsmList,left.resultdef,location.reference.base,paraloc1);
|
||||
hlcg.a_loadaddr_ref_cgpara(current_asmdata.CurrAsmList,left.resultdef,location.reference,paraloc1);
|
||||
paramanager.freecgpara(current_asmdata.CurrAsmList,paraloc1);
|
||||
hlcg.allocallcpuregisters(current_asmdata.CurrAsmList);
|
||||
hlcg.a_call_name(current_asmdata.CurrAsmList,pd,'FPC_CHECKPOINTER',[@paraloc1],nil,false);
|
||||
|
Loading…
Reference in New Issue
Block a user