mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-06-09 22:38:42 +02:00
* check if an invisible parameter for the result occupies parameter space
git-svn-id: trunk@47632 -
This commit is contained in:
parent
91229dcee9
commit
c47d6d7af0
@ -1127,7 +1127,15 @@ implementation
|
|||||||
generate_parameter_info;
|
generate_parameter_info;
|
||||||
|
|
||||||
if not(procdef.stack_tainting_parameter(calleeside)) and
|
if not(procdef.stack_tainting_parameter(calleeside)) and
|
||||||
not(has_assembler_child) {and (para_stack_size=0)} then
|
not(has_assembler_child)
|
||||||
|
{$ifdef m68k}
|
||||||
|
{ parasize must be really zero, this means also that no result may be returned
|
||||||
|
in a parameter }
|
||||||
|
and not((current_procinfo.procdef.proccalloption in clearstack_pocalls) and
|
||||||
|
not(current_procinfo.procdef.generate_safecall_wrapper) and
|
||||||
|
paramanager.ret_in_param(current_procinfo.procdef.returndef,current_procinfo.procdef))
|
||||||
|
{$endif m68k}
|
||||||
|
{and (para_stack_size=0)} then
|
||||||
begin
|
begin
|
||||||
{ Only need to set the framepointer }
|
{ Only need to set the framepointer }
|
||||||
framepointer:=NR_STACK_POINTER_REG;
|
framepointer:=NR_STACK_POINTER_REG;
|
||||||
|
Loading…
Reference in New Issue
Block a user