From 4514a55ec6d04ee9ec2372e37a9f215d28a5484c Mon Sep 17 00:00:00 2001 From: florian Date: Thu, 6 Sep 2012 15:12:06 +0000 Subject: [PATCH] * call method pointers located in registers correctly git-svn-id: trunk@22343 - --- compiler/ncgcal.pas | 2 ++ 1 file changed, 2 insertions(+) diff --git a/compiler/ncgcal.pas b/compiler/ncgcal.pas index e9d4f03806..3a2ec95200 100644 --- a/compiler/ncgcal.pas +++ b/compiler/ncgcal.pas @@ -889,6 +889,8 @@ implementation watch out with procedure of object) } if right.location.loc in [LOC_REFERENCE,LOC_CREFERENCE] then cg.a_load_ref_reg(current_asmdata.CurrAsmList,OS_ADDR,OS_ADDR,right.location.reference,pvreg) + else if right.location.loc in [LOC_REGISTER,LOC_CREGISTER] then + hlcg.a_load_reg_reg(current_asmdata.CurrAsmList,voidpointertype,voidpointertype,right.location.register,pvreg) else hlcg.a_load_loc_reg(current_asmdata.CurrAsmList,voidpointertype,voidpointertype,right.location,pvreg); location_freetemp(current_asmdata.CurrAsmList,right.location);