Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!watmath!clyde!burl!ulysses!allegra!mit-eddie!genrad!panda!talcott!harvard!seismo!utah-cs!brownc From: brownc@utah-cs.UUCP (Eric C. Brown) Newsgroups: net.lang.mod2 Subject: Re: Exceptions in Modula-2 Message-ID: <3666@utah-cs.UUCP> Date: Tue, 4-Feb-86 22:15:42 EST Article-I.D.: utah-cs.3666 Posted: Tue Feb 4 22:15:42 1986 Date-Received: Thu, 6-Feb-86 21:06:24 EST References: <8602031436.27242@ur-cayuga.rochester.arpa> Reply-To: brownc@utah-cs.UUCP (Eric C. Brown) Organization: University of Utah, Salt Lake City Lines: 19 In article <8602031436.27242@ur-cayuga.rochester.arpa> jipping@UIOWA.CSNET (Mike Jipping) writes: >Jeff -- via Eric Brown... > Maybe I'm just daft, but without an implementation, I fail to see how >these "exception" definitions will work on *general* implementations of >Modula-2. Well, the problem is that the IMPLEMENTATION of these modules are system-specific. For example, on the PC, you basically need to save and restore CS, IP, BP, and SP. Other registers may be necessary if your compiler caches constants in other registers. On the 68K, you need A7, PC, and whatever register your compiler uses for static links. Personally, I do not find it very difficult to write a Setjmp/Longjmp set of routines for a given processor, but these routines *must* be rewritten for each processor. Eric C. Brown brownc@utah-cs.ARPA ..!{ihnp4, decvax, seismo}!utah-cs!brownc