mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-11-02 22:29:24 +01:00
* use tcgpara.def instead of extra size parameters
git-svn-id: trunk@21694 -
This commit is contained in:
parent
c3ea451aea
commit
325c60866f
@ -150,7 +150,7 @@ unit hlcg2ll;
|
||||
@param(tosize type of the pointer that we get as a result)
|
||||
@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_reg(list : TAsmList;pd : tabstractprocdef;reg : tregister);override;
|
||||
@ -470,7 +470,7 @@ implementation
|
||||
cg.a_load_loc_cgpara(list,l,cgpara);
|
||||
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
|
||||
cg.a_loadaddr_ref_cgpara(list,r,cgpara);
|
||||
end;
|
||||
|
||||
@ -161,7 +161,7 @@ unit hlcgobj;
|
||||
@param(tosize type of the pointer that we get as a result)
|
||||
@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:
|
||||
* If a method specifies a size you have only to take care
|
||||
@ -731,8 +731,8 @@ implementation
|
||||
LOC_FPUREGISTER,LOC_CFPUREGISTER:
|
||||
begin
|
||||
tg.gethltemp(list,size,size.size,tt_normal,ref);
|
||||
a_load_reg_ref(list,size,size,r,ref);
|
||||
a_loadfpu_ref_cgpara(list,size,ref,cgpara);
|
||||
a_load_reg_ref(list,size,cgpara.def,r,ref);
|
||||
a_loadfpu_ref_cgpara(list,cgpara.def,ref,cgpara);
|
||||
tg.ungettemp(list,ref);
|
||||
end
|
||||
else
|
||||
@ -810,7 +810,7 @@ implementation
|
||||
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
|
||||
hr : tregister;
|
||||
begin
|
||||
@ -818,13 +818,13 @@ implementation
|
||||
if cgpara.location^.loc in [LOC_CREGISTER,LOC_REGISTER] then
|
||||
begin
|
||||
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
|
||||
else
|
||||
begin
|
||||
hr:=getaddressregister(list,tosize);
|
||||
a_loadaddr_ref_reg(list,fromsize,tosize,r,hr);
|
||||
a_load_reg_cgpara(list,tosize,hr,cgpara);
|
||||
hr:=getaddressregister(list,cgpara.def);
|
||||
a_loadaddr_ref_reg(list,fromsize,cgpara.def,r,hr);
|
||||
a_load_reg_cgpara(list,cgpara.def,hr,cgpara);
|
||||
end;
|
||||
end;
|
||||
|
||||
|
||||
@ -133,7 +133,7 @@ implementation
|
||||
begin
|
||||
if not(left.location.loc in [LOC_CREFERENCE,LOC_REFERENCE]) then
|
||||
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;
|
||||
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user