On Fri, Jul 8, 2011 at 7:05 AM, Jonas Maebe <jonas.ma...@elis.ugent.be> wrote: (...) > The main problem here is that FPC's exception handling is based on > setjump/longjump. This technique has a relatively high overhead for "try", > but low overhead when an exception actually occurs (of course, since > exceptions are supposed to happen only exceptionally, that's not a really > good selling point). The main reason we use it is because it's easy to > implement. > > A better approach would be to use SEH-based exception handling (which has no > overhead at all for "try", and a high overhead in case an exception occurs), > but that woud require > a) support for generating EH frames for all platforms (it's currently only > supported for a number of i386 and x86-64 platforms) > b) support for parsing EH frames on all platforms and performing exception > handling based on that > > This is definitely something we want, but nobody has found the time yet to > implement it. (...)
Isn't this unfortunately encumbered by patents? http://wiki.winehq.org/CompilerExceptionSupport http://yro.slashdot.org/story/05/05/12/1947213/Winelib-Hobbled-by-Exception-Handling-Patent -Flávio _______________________________________________ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-devel