mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-20 19:29:26 +02:00
- don't specify lef_inaggregate when getting the llvm type representation
for function results and parameters (they're not in an aggregate, and this caused 80 bits extended floating point types to be translated into arrays of 10 bytes, which have different ABI meanings) git-svn-id: trunk@30714 -
This commit is contained in:
parent
bb4f8e62bf
commit
b3e786eb77
@ -597,7 +597,7 @@ implementation
|
||||
encodedstr:=encodedstr+', '
|
||||
else
|
||||
first:=false;
|
||||
llvmaddencodedtype_intern(usedef,[lef_inaggregate],encodedstr);
|
||||
llvmaddencodedtype_intern(usedef,[],encodedstr);
|
||||
{ in case signextstr<>'', there should be only one paraloc -> no need
|
||||
to clear (reason: it means that the paraloc is larger than the
|
||||
original parameter) }
|
||||
@ -655,7 +655,7 @@ implementation
|
||||
if pddecltype in [lpd_decl] then
|
||||
encodedstr:=encodedstr+llvmvalueextension2str[signext];
|
||||
encodedstr:=encodedstr+' ';
|
||||
llvmaddencodedtype_intern(usedef,[lef_inaggregate],encodedstr);
|
||||
llvmaddencodedtype_intern(usedef,[],encodedstr);
|
||||
end
|
||||
else
|
||||
begin
|
||||
|
Loading…
Reference in New Issue
Block a user