Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.2 9/18/84; site brl-tgr.ARPA Path: utzoo!linus!philabs!cmcl2!seismo!brl-tgr!gwyn From: gwyn@brl-tgr.ARPA (Doug Gwyn ) Newsgroups: net.lang.c Subject: Re: setjmp/longjmp Message-ID: <5669@brl-tgr.ARPA> Date: Fri, 9-Nov-84 07:47:11 EST Article-I.D.: brl-tgr.5669 Posted: Fri Nov 9 07:47:11 1984 Date-Received: Sat, 10-Nov-84 06:16:08 EST References: <1@imd.UUCP> <469@ncoast.UUCP> Organization: Ballistic Research Lab Lines: 17 > Ummm... it's easy to push the register mask when you moveml the registers > to be saved on entry to a subroutine in the 68000, but moveml mask,(a7)- > and moveml mask,(a7)+ expect the mask reversed from each other! How > do you propose to invert a 16-bit mask end-for-end (i.e. 11100...001 > <=> 100...00111 ) and still have a fast calling sequence? Just great -- more computer architecture brain damage! The only way I can see that makes sense to try is to record the NUMBER of registers saved (equivalently, the last register number) and use a quick scheme to generate the appropriate mask upon cret. (I am not very familiar with the 68000 and so I do not know if it has any fast way to set up such a mask; one way that would work is to index a mask table.) In any case, I have given up on setjmp/longjmp. I never had any use for them anyway. What a lossage.