* llvm: only set custom parameter alignments for byval parameters, the rest

is handled automatically by llvm (and since llvm 11.0 you get an error if
    you specify an alignment for them anyway)

git-svn-id: trunk@48100 -
This commit is contained in:
Jonas Maebe 2021-01-06 22:35:40 +00:00
parent 090d9abafe
commit 80282d6eff

View File

@ -477,10 +477,6 @@ implementation
begin
new(callpara);
callpara^.def:=paraloc^.def;
if firstparaloc then
callpara^.alignment:=paras[i]^.Alignment
else
callpara^.alignment:=std_param_align;
{ if the paraloc doesn't contain the value itself, it's a byval
parameter }
if paraloc^.retvalloc then
@ -493,6 +489,11 @@ implementation
callpara^.sret:=false;
callpara^.byval:=not paraloc^.llvmvalueloc;
end;
if firstparaloc and
callpara^.byval then
callpara^.alignment:=paras[i]^.Alignment
else
callpara^.alignment:=std_param_align;
llvmextractvalueextinfo(paras[i]^.def, callpara^.def, callpara^.valueext);
case paraloc^.llvmloc.loc of
LOC_CONSTANT: