+ getparaloc supports now sets and variants

This commit is contained in:
florian 2002-09-28 21:27:16 +00:00
parent 6a0da8d89d
commit 71f7afa9a6

View File

@ -105,6 +105,13 @@ unit cpupara;
getparaloc:=LOC_REGISTER;
arraydef:
getparaloc:=LOC_REFERENCE;
setdef:
if is_smallset(p) then
getparaloc:=LOC_REGISTER
else
getparaloc:=LOC_REFERENCE;
variantdef:
getparaloc:=LOC_REFERENCE;
{ avoid problems with errornous definitions }
errordef:
getparaloc:=LOC_REGISTER;
@ -250,7 +257,7 @@ unit cpupara;
getfuncretparaloc.register:=R_3;
getfuncretparaloc.size:=def_cgsize(p.rettype.def);
if getfuncretparaloc.size in [OS_S64,OS_64] then
getfuncretparaloc.registerhigh:=R_4;
getfuncretparaloc.registerhigh:=R_4;
end;
floatdef:
begin
@ -284,7 +291,10 @@ begin
end.
{
$Log$
Revision 1.13 2002-09-10 21:28:05 jonas
Revision 1.14 2002-09-28 21:27:16 florian
+ getparaloc supports now sets and variants
Revision 1.13 2002/09/10 21:28:05 jonas
* int64 paras are now handled correctly (until the registers are used up
anyway :)
* the return location is now initialized correctly