* Revert r17695 because it breaks cycling.

git-svn-id: trunk@17698 -
This commit is contained in:
sergei 2011-06-08 19:19:24 +00:00
parent 95b63aa583
commit c40b8d92c7
2 changed files with 6 additions and 11 deletions

View File

@ -1234,7 +1234,10 @@ unit cpupara;
begin
intparareg:=0;
mmparareg:=0;
parasize:=0;
if target_info.system=system_x86_64_win64 then
parasize:=4*8
else
parasize:=0;
create_paraloc_info_intern(p,side,p.paras,intparareg,mmparareg,parasize,false);
{ Create Function result paraloc }
create_funcretloc_info(p,side);

View File

@ -42,7 +42,6 @@ implementation
uses
systems,
globtype,
globals,
cutils,
symconst,
@ -55,8 +54,7 @@ implementation
begin
if not(po_assembler in procdef.procoptions) and
(tg.direction > 0) then
{ the spilling area is needed only for non-leaf procedures }
tg.setfirsttemp(tg.direction*maxpushedparasize+(4*8*ord(pi_do_call in flags)));
tg.setfirsttemp(tg.direction*maxpushedparasize+4*8);
end
else
tg.setfirsttemp(tg.direction*maxpushedparasize);
@ -77,13 +75,7 @@ implementation
{ RSP should be aligned on 16 bytes }
result:=Align(tg.direction*tg.lasttemp+maxpushedparasize,16);
if target_info.system=system_x86_64_win64 then
begin
{ case tg.direction>0 is handled above in set_first_temp_offset
(tg.setfirsttemp also sets tg.lasttemp, therefore the 32 byte
spilling area is already included in result) }
if (tg.direction<0) and (pi_do_call in flags) then
inc(result,4*8);
end;
inc(result,4*8);
end;