* use tcgpara.def instead of extra size parameters

git-svn-id: trunk@21694 -
This commit is contained in:
Jonas Maebe 2012-06-24 15:01:59 +00:00
parent c3ea451aea
commit 325c60866f
3 changed files with 11 additions and 11 deletions

View File

@ -150,7 +150,7 @@ unit hlcg2ll;
@param(tosize type of the pointer that we get as a result) @param(tosize type of the pointer that we get as a result)
@param(r reference to get address from) @param(r reference to get address from)
} }
procedure a_loadaddr_ref_cgpara(list : TAsmList;fromsize, tosize : tdef;const r : treference;const cgpara : TCGPara);override; procedure a_loadaddr_ref_cgpara(list : TAsmList;fromsize : tdef;const r : treference;const cgpara : TCGPara);override;
procedure a_call_name(list : TAsmList;pd : tprocdef;const s : TSymStr; weak: boolean);override; procedure a_call_name(list : TAsmList;pd : tprocdef;const s : TSymStr; weak: boolean);override;
procedure a_call_reg(list : TAsmList;pd : tabstractprocdef;reg : tregister);override; procedure a_call_reg(list : TAsmList;pd : tabstractprocdef;reg : tregister);override;
@ -470,7 +470,7 @@ implementation
cg.a_load_loc_cgpara(list,l,cgpara); cg.a_load_loc_cgpara(list,l,cgpara);
end; end;
procedure thlcg2ll.a_loadaddr_ref_cgpara(list: TAsmList; fromsize, tosize: tdef; const r: treference; const cgpara: TCGPara); procedure thlcg2ll.a_loadaddr_ref_cgpara(list: TAsmList; fromsize: tdef; const r: treference; const cgpara: TCGPara);
begin begin
cg.a_loadaddr_ref_cgpara(list,r,cgpara); cg.a_loadaddr_ref_cgpara(list,r,cgpara);
end; end;

View File

@ -161,7 +161,7 @@ unit hlcgobj;
@param(tosize type of the pointer that we get as a result) @param(tosize type of the pointer that we get as a result)
@param(r reference to get address from) @param(r reference to get address from)
} }
procedure a_loadaddr_ref_cgpara(list : TAsmList;fromsize, tosize : tdef;const r : treference;const cgpara : TCGPara);virtual; procedure a_loadaddr_ref_cgpara(list : TAsmList;fromsize : tdef;const r : treference;const cgpara : TCGPara);virtual;
{ Remarks: { Remarks:
* If a method specifies a size you have only to take care * If a method specifies a size you have only to take care
@ -731,8 +731,8 @@ implementation
LOC_FPUREGISTER,LOC_CFPUREGISTER: LOC_FPUREGISTER,LOC_CFPUREGISTER:
begin begin
tg.gethltemp(list,size,size.size,tt_normal,ref); tg.gethltemp(list,size,size.size,tt_normal,ref);
a_load_reg_ref(list,size,size,r,ref); a_load_reg_ref(list,size,cgpara.def,r,ref);
a_loadfpu_ref_cgpara(list,size,ref,cgpara); a_loadfpu_ref_cgpara(list,cgpara.def,ref,cgpara);
tg.ungettemp(list,ref); tg.ungettemp(list,ref);
end end
else else
@ -810,7 +810,7 @@ implementation
end; end;
end; end;
procedure thlcgobj.a_loadaddr_ref_cgpara(list: TAsmList; fromsize, tosize: tdef; const r: treference; const cgpara: TCGPara); procedure thlcgobj.a_loadaddr_ref_cgpara(list: TAsmList; fromsize: tdef; const r: treference; const cgpara: TCGPara);
var var
hr : tregister; hr : tregister;
begin begin
@ -818,13 +818,13 @@ implementation
if cgpara.location^.loc in [LOC_CREGISTER,LOC_REGISTER] then if cgpara.location^.loc in [LOC_CREGISTER,LOC_REGISTER] then
begin begin
paramanager.allocparaloc(list,cgpara.location); paramanager.allocparaloc(list,cgpara.location);
a_loadaddr_ref_reg(list,fromsize,tosize,r,cgpara.location^.register) a_loadaddr_ref_reg(list,fromsize,cgpara.def,r,cgpara.location^.register)
end end
else else
begin begin
hr:=getaddressregister(list,tosize); hr:=getaddressregister(list,cgpara.def);
a_loadaddr_ref_reg(list,fromsize,tosize,r,hr); a_loadaddr_ref_reg(list,fromsize,cgpara.def,r,hr);
a_load_reg_cgpara(list,tosize,hr,cgpara); a_load_reg_cgpara(list,cgpara.def,hr,cgpara);
end; end;
end; end;

View File

@ -133,7 +133,7 @@ implementation
begin begin
if not(left.location.loc in [LOC_CREFERENCE,LOC_REFERENCE]) then if not(left.location.loc in [LOC_CREFERENCE,LOC_REFERENCE]) then
internalerror(200304235); internalerror(200304235);
hlcg.a_loadaddr_ref_cgpara(current_asmdata.CurrAsmList,left.resultdef,tempcgpara.def,left.location.reference,tempcgpara); hlcg.a_loadaddr_ref_cgpara(current_asmdata.CurrAsmList,left.resultdef,left.location.reference,tempcgpara);
end; end;