* implemented a_load_undefined_cgpara for LLVM, fixes LLVM code generator

after the changes to optimize unused parentfp parameters

git-svn-id: trunk@45456 -
This commit is contained in:
Jonas Maebe 2020-05-21 10:56:39 +00:00
parent 571095773a
commit 4caa471a24

View File

@ -41,6 +41,7 @@ uses
procedure a_load_reg_cgpara(list: TAsmList; size: tdef; r: tregister; const cgpara: TCGPara); override;
procedure a_load_ref_cgpara(list: TAsmList; size: tdef; const r: treference; const cgpara: TCGPara); override;
procedure a_load_undefined_cgpara(list: TAsmList; size: tdef; const cgpara: TCGPara); override;
procedure a_load_const_cgpara(list: TAsmList; tosize: tdef; a: tcgint; const cgpara: TCGPara); override;
protected
procedure a_load_ref_cgpara_init_src(list: TAsmList; const para: tcgpara; const initialref: treference; var refsize: tdef; out newref: treference);
@ -308,6 +309,16 @@ implementation
end;
procedure thlcgllvm.a_load_undefined_cgpara(list: TAsmList; size: tdef; const cgpara: TCGPara);
var
hreg: tregister;
begin
hreg:=getregisterfordef(list,size);
list.concat(taillvm.op_reg_size_undef(la_bitcast,hreg,size));
a_load_reg_cgpara(list,size,hreg,cgpara);
end;
procedure thlcgllvm.a_load_const_cgpara(list: TAsmList; tosize: tdef; a: tcgint; const cgpara: TCGPara);
begin
if is_ordinal(cgpara.def) then