mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-20 18:09:27 +02:00
- removed overseen overleft from iso goto implementation experiments
git-svn-id: trunk@15716 -
This commit is contained in:
parent
38fb33f09a
commit
7acdfa8932
@ -1434,45 +1434,3 @@ begin
|
||||
CtrlBreakHandler := Handler;
|
||||
end;
|
||||
{$ENDIF FPC_HAS_SETCTRLBREAKHANDLER}
|
||||
|
||||
Function fpc_marklabel (Var S : Jmp_buf) : longint;assembler;nostackframe;
|
||||
asm
|
||||
{$ifndef REGCALL}
|
||||
movl 4(%esp),%eax
|
||||
{$endif}
|
||||
movl %ebx,Jmp_buf.ebx(%eax)
|
||||
movl %esi,Jmp_buf.esi(%eax)
|
||||
movl %edi,Jmp_buf.edi(%eax)
|
||||
movl %ebp,Jmp_buf.bp(%eax)
|
||||
{$ifdef REGCALL}
|
||||
leal 4(%esp),%edi
|
||||
{$else}
|
||||
leal 8(%esp),%edi
|
||||
{$endif}
|
||||
movl %edi,Jmp_buf.sp(%eax)
|
||||
movl (%esp),%edi
|
||||
movl %edi,Jmp_buf.pc(%eax)
|
||||
movl Jmp_buf.edi(%eax),%edi
|
||||
xorl %eax,%eax
|
||||
end;
|
||||
|
||||
|
||||
procedure fpc_dogoto(Var S : Jmp_buf); assembler;nostackframe;
|
||||
asm
|
||||
{$ifdef REGCALL}
|
||||
xchgl %edx,%eax
|
||||
{$else}
|
||||
movl 4(%esp),%edx
|
||||
movl 8(%esp),%eax
|
||||
{$endif}
|
||||
movl $1,%eax
|
||||
movl Jmp_buf.ebx(%edx),%ebx
|
||||
movl Jmp_buf.esi(%edx),%esi
|
||||
movl Jmp_buf.edi(%edx),%edi
|
||||
movl Jmp_buf.bp(%edx),%ebp
|
||||
movl Jmp_buf.sp(%edx),%esp
|
||||
// we should also clear the fpu
|
||||
// fninit no must be done elsewhere PM
|
||||
// or we should reset the control word also
|
||||
jmp Jmp_buf.pc(%edx)
|
||||
end;
|
||||
|
Loading…
Reference in New Issue
Block a user