summaryrefslogtreecommitdiff
path: root/compiler/ncgcal.pas
diff options
context:
space:
mode:
authorkaroly <karoly@3ad0048d-3df7-0310-abae-a5850022a9f2>2015-03-02 22:21:53 +0000
committerkaroly <karoly@3ad0048d-3df7-0310-abae-a5850022a9f2>2015-03-02 22:21:53 +0000
commit46c738b1ab5c4765d38fe5c8677c45ee020d17c1 (patch)
tree61f0da17bc6bdfca8acc04cde5ea050388756651 /compiler/ncgcal.pas
parent902b64b79557131637d54b41d10b3a6cac9e482d (diff)
downloadfpc-46c738b1ab5c4765d38fe5c8677c45ee020d17c1.tar.gz
* allocate a temp addressreg instead of a temp intreg in callnode. improves code generation on m68k for these cases
git-svn-id: http://svn.freepascal.org/svn/fpc/trunk@30080 3ad0048d-3df7-0310-abae-a5850022a9f2
Diffstat (limited to 'compiler/ncgcal.pas')
-rw-r--r--compiler/ncgcal.pas4
1 files changed, 2 insertions, 2 deletions
diff --git a/compiler/ncgcal.pas b/compiler/ncgcal.pas
index e9045f33ca..9471e1e107 100644
--- a/compiler/ncgcal.pas
+++ b/compiler/ncgcal.pas
@@ -947,7 +947,7 @@ implementation
callref:=can_call_ref(href);
if not callref then
begin
- pvreg:=cg.getintregister(current_asmdata.CurrAsmList,proc_addr_size);
+ pvreg:=hlcg.getaddressregister(current_asmdata.CurrAsmList,proc_addr_voidptrdef);
cg.a_load_ref_reg(current_asmdata.CurrAsmList,proc_addr_size,proc_addr_size,href,pvreg);
end;
@@ -1026,7 +1026,7 @@ implementation
secondpass(right);
callref:=false;
- pvreg:=cg.getintregister(current_asmdata.CurrAsmList,proc_addr_size);
+ pvreg:=hlcg.getaddressregister(current_asmdata.CurrAsmList,proc_addr_voidptrdef);
{ Only load OS_ADDR from the reference (when converting to hlcg:
watch out with procedure of object) }
if po_is_block in procdefinition.procoptions then