3 This file is part of the Free Pascal run time library.
4 Copyright (c) 1999-2000 by the Free Pascal development team
6 SetJmp and LongJmp implementation for exception handling
8 See the file COPYING.FPC, included in this distribution,
9 for details about the copyright.
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
15 **********************************************************************}
17 Function SetJmp (Var S : Jmp_buf) : longint;assembler;[Public, alias : 'FPC_SETJMP'];
34 Procedure longJmp (Var S : Jmp_buf; value : longint); assembler;[Public, alias : 'FPC_LONGJMP'];
43 // we should also clear the fpu
44 // fninit no must be done elsewhere PM
45 // or we should reset the control word also
51 Revision 1.1 2002/02/19 08:25:19 sasu
54 Revision 1.1 2000/07/13 06:30:42 michael
57 Revision 1.13 2000/05/04 09:47:40 pierre
58 * Preserve all registers in SetJmp
59 * set EAX to value filed in LongJmp instead of only 0 or 1
61 Revision 1.12 2000/03/31 23:12:09 pierre
62 * remove fninit in longjump
64 Revision 1.11 2000/02/18 16:16:13 florian
65 * we don't need to to finit twice ...
67 Revision 1.10 2000/02/18 15:23:01 florian
68 * fixed constants in rtti
69 * longjmp does now a finit
71 Revision 1.9 2000/02/09 22:12:54 florian
72 * longjump does now a finit
74 Revision 1.8 2000/02/09 16:59:29 peter
77 Revision 1.7 2000/01/07 16:41:33 daniel
80 Revision 1.6 1999/08/18 10:42:13 pierre
81 * loading of esp value corrected