mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-14 20:29:14 +02:00
* always extend parameters < sizeof(aint) to sizeof(aint) for darwin/x86
git-svn-id: trunk@3628 -
This commit is contained in:
parent
da85b3db8c
commit
cc7cea1a5d
@ -407,7 +407,17 @@ unit cpupara;
|
|||||||
else
|
else
|
||||||
begin
|
begin
|
||||||
paralen:=push_size(hp.varspez,hp.vartype.def,p.proccalloption);
|
paralen:=push_size(hp.varspez,hp.vartype.def,p.proccalloption);
|
||||||
paracgsize:=def_cgsize(hp.vartype.def);
|
{ darwin/x86 requires that parameters < sizeof(aint) are sign/ }
|
||||||
|
{ zero extended to sizeof(aint) }
|
||||||
|
if (target_info.system = system_i386_darwin) and
|
||||||
|
(side = callerside) and
|
||||||
|
(paralen < sizeof(aint)) then
|
||||||
|
begin
|
||||||
|
paralen := sizeof(aint);
|
||||||
|
paracgsize:=OS_INT;
|
||||||
|
end
|
||||||
|
else
|
||||||
|
paracgsize:=def_cgsize(hp.vartype.def);
|
||||||
end;
|
end;
|
||||||
hp.paraloc[side].reset;
|
hp.paraloc[side].reset;
|
||||||
hp.paraloc[side].size:=paracgsize;
|
hp.paraloc[side].size:=paracgsize;
|
||||||
|
Loading…
Reference in New Issue
Block a user