mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-22 11:49:23 +02:00
* fixed funcret_paraloc writing in units
This commit is contained in:
parent
683a81bac8
commit
aba734edc9
@ -202,7 +202,6 @@ unit cpupara;
|
||||
end;
|
||||
|
||||
|
||||
|
||||
procedure tppcparamanager.create_funcret_paraloc_info(p : tabstractprocdef; side: tcallercallee);
|
||||
var
|
||||
paraloc : tparalocation;
|
||||
@ -556,7 +555,10 @@ begin
|
||||
end.
|
||||
{
|
||||
$Log$
|
||||
Revision 1.66 2004-07-17 13:51:57 florian
|
||||
Revision 1.67 2004-07-19 19:15:50 florian
|
||||
* fixed funcret_paraloc writing in units
|
||||
|
||||
Revision 1.66 2004/07/17 13:51:57 florian
|
||||
* function result location for syscalls on MOS hopefully correctly set now
|
||||
|
||||
Revision 1.65 2004/07/09 21:45:24 jonas
|
||||
|
@ -454,7 +454,7 @@ interface
|
||||
{$ifdef i386}
|
||||
fpu_used : byte; { how many stack fpu must be empty }
|
||||
{$endif i386}
|
||||
funcret_paraloc : array[tcallercallee] of tparalocation;
|
||||
funcret_paraloc : packed array[tcallercallee] of tparalocation;
|
||||
has_paraloc_info : boolean; { paraloc info is available }
|
||||
constructor create(level:byte);
|
||||
constructor ppuload(ppufile:tcompilerppufile);
|
||||
@ -3446,6 +3446,10 @@ implementation
|
||||
proctypeoption:=tproctypeoption(ppufile.getbyte);
|
||||
proccalloption:=tproccalloption(ppufile.getbyte);
|
||||
ppufile.getsmallset(procoptions);
|
||||
|
||||
if po_explicitparaloc in procoptions then
|
||||
ppufile.getdata(funcret_paraloc,sizeof(funcret_paraloc));
|
||||
|
||||
{ get the number of parameters }
|
||||
count:=ppufile.getbyte;
|
||||
savesize:=sizeof(aint);
|
||||
@ -3462,8 +3466,7 @@ implementation
|
||||
hp.is_hidden:=boolean(ppufile.getbyte);
|
||||
if po_explicitparaloc in procoptions then
|
||||
begin
|
||||
if po_explicitparaloc in procoptions then
|
||||
ppufile.getdata(hp.paraloc,sizeof(hp.paraloc));
|
||||
ppufile.getdata(hp.paraloc,sizeof(hp.paraloc));
|
||||
has_paraloc_info:=true;
|
||||
end;
|
||||
{ Parameters are stored left to right in both ppu and memory }
|
||||
@ -3495,6 +3498,10 @@ implementation
|
||||
ppufile.putbyte(ord(proccalloption));
|
||||
ppufile.putsmallset(procoptions);
|
||||
ppufile.do_interface_crc:=oldintfcrc;
|
||||
|
||||
if po_explicitparaloc in procoptions then
|
||||
ppufile.putdata(funcret_paraloc,sizeof(funcret_paraloc));
|
||||
|
||||
{ we need to store the count including vs_hidden }
|
||||
ppufile.putbyte(para.count);
|
||||
hp:=TParaItem(Para.first);
|
||||
@ -6130,7 +6137,10 @@ implementation
|
||||
end.
|
||||
{
|
||||
$Log$
|
||||
Revision 1.247 2004-07-14 21:37:41 olle
|
||||
Revision 1.248 2004-07-19 19:15:50 florian
|
||||
* fixed funcret_paraloc writing in units
|
||||
|
||||
Revision 1.247 2004/07/14 21:37:41 olle
|
||||
- removed unused types
|
||||
|
||||
Revision 1.246 2004/07/12 09:14:04 jonas
|
||||
|
Loading…
Reference in New Issue
Block a user