mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-21 22:09:33 +02:00
+ complex results for assembler functions, fixes bug0155
This commit is contained in:
parent
2d2cfabb3f
commit
b73b83a01b
@ -559,7 +559,8 @@ implementation
|
||||
else
|
||||
begin
|
||||
exprasmlist^.concat(new(pai386,op_csymbol_reg(A_MOV,S_L,
|
||||
newcsymbol(pobjectdef(p^.methodpointer^.resulttype)^.vmt_mangledname,0),R_ESI)));
|
||||
newcsymbol(pobjectdef(
|
||||
p^.methodpointer^.resulttype)^.vmt_mangledname,0),R_ESI)));
|
||||
maybe_concat_external(pobjectdef(p^.methodpointer^.resulttype)^.owner,
|
||||
pobjectdef(p^.methodpointer^.resulttype)^.vmt_mangledname);
|
||||
end;
|
||||
@ -1299,7 +1300,10 @@ implementation
|
||||
end.
|
||||
{
|
||||
$Log$
|
||||
Revision 1.65 1999-02-08 11:29:04 pierre
|
||||
Revision 1.66 1999-02-09 15:45:46 florian
|
||||
+ complex results for assembler functions, fixes bug0155
|
||||
|
||||
Revision 1.65 1999/02/08 11:29:04 pierre
|
||||
* fix for bug0214
|
||||
several problems where combined
|
||||
search_class_member did not set srsymtable
|
||||
|
@ -1221,16 +1221,20 @@ unit pstatmnt;
|
||||
usedinproc:=usedinproc or ($800 shr word(R_D0))
|
||||
{$endif}
|
||||
end
|
||||
{
|
||||
else if not is_fpu(procinfo.retdef) then
|
||||
{ should we allow assembler functions of big elements ? }
|
||||
should we allow assembler functions of big elements ?
|
||||
YES (FK)!!
|
||||
Message(parser_e_asm_incomp_with_function_return);
|
||||
end;
|
||||
}
|
||||
end;
|
||||
{ set the framepointer to esp for assembler functions }
|
||||
{ but only if the are no local variables }
|
||||
{ added no parameter also (PM) }
|
||||
if ((aktprocsym^.definition^.options and poassembler)<>0) and
|
||||
(aktprocsym^.definition^.localst^.datasize=0) and
|
||||
(aktprocsym^.definition^.parast^.datasize=0) then
|
||||
(aktprocsym^.definition^.parast^.datasize=0) and
|
||||
not(ret_in_param(aktprocsym^.definition^.retdef)) then
|
||||
begin
|
||||
{$ifdef i386}
|
||||
procinfo.framepointer:=R_ESP;
|
||||
@ -1255,7 +1259,10 @@ unit pstatmnt;
|
||||
end.
|
||||
{
|
||||
$Log$
|
||||
Revision 1.62 1999-01-27 13:06:57 pierre
|
||||
Revision 1.63 1999-02-09 15:45:47 florian
|
||||
+ complex results for assembler functions, fixes bug0155
|
||||
|
||||
Revision 1.62 1999/01/27 13:06:57 pierre
|
||||
* memory leak in case optimization fixed
|
||||
|
||||
Revision 1.61 1999/01/25 22:49:09 peter
|
||||
|
Loading…
Reference in New Issue
Block a user