mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-13 10:39:39 +02:00
* fixed open array constructors for llvm
git-svn-id: trunk@31057 -
This commit is contained in:
parent
b9d4d9b141
commit
bcd04953c2
@ -26,19 +26,43 @@ unit nllvmld;
|
|||||||
interface
|
interface
|
||||||
|
|
||||||
uses
|
uses
|
||||||
ncgnstld;
|
globtype,
|
||||||
|
cgutils,
|
||||||
|
symtype,
|
||||||
|
ncgld, ncgnstld;
|
||||||
|
|
||||||
type
|
type
|
||||||
tllvmloadnode = class(tcgnestloadnode)
|
tllvmloadnode = class(tcgnestloadnode)
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
{ tllvmarrayconstructornode }
|
||||||
|
|
||||||
|
tllvmarrayconstructornode = class(tcgarrayconstructornode)
|
||||||
|
protected
|
||||||
|
procedure makearrayref(var ref: treference; eledef: tdef); override;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
implementation
|
implementation
|
||||||
|
|
||||||
uses
|
uses
|
||||||
nld;
|
aasmdata,
|
||||||
|
nld,
|
||||||
|
symdef,
|
||||||
|
hlcgobj;
|
||||||
|
|
||||||
|
{ tllvmarrayconstructornode }
|
||||||
|
|
||||||
|
procedure tllvmarrayconstructornode.makearrayref(var ref: treference; eledef: tdef);
|
||||||
|
begin
|
||||||
|
{ the array elements are addressed as pointer to the individual elements ->
|
||||||
|
convert }
|
||||||
|
hlcg.g_ptrtypecast_ref(current_asmdata.CurrAsmList,getpointerdef(resultdef),getpointerdef(eledef),ref);
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
begin
|
begin
|
||||||
cloadnode:=tllvmloadnode;
|
cloadnode:=tllvmloadnode;
|
||||||
|
carrayconstructornode:=tllvmarrayconstructornode;
|
||||||
end.
|
end.
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user