Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!seismo!lll-lcc!styx!ames!ucbcad!ucbvax!PUFF.WISC.EDU!pb From: pb@PUFF.WISC.EDU (PB Schechter) Newsgroups: comp.os.vms Subject: Submission for mod-computers-vax Message-ID: <8704271736.AA21017@puff.wisc.edu> Date: Mon, 27-Apr-87 13:36:12 EDT Article-I.D.: puff.8704271736.AA21017 Posted: Mon Apr 27 13:36:12 1987 Date-Received: Thu, 30-Apr-87 04:17:11 EDT Sender: daemon@ucbvax.BERKELEY.EDU Distribution: world Organization: The ARPA Internet Lines: 37 Path: puff!pb From: pb@puff.WISC.EDU (PB Schechter) Newsgroups: mod.computers.vax,comp.sys.dec Subject: Floating point faults vs. traps Keywords: fault trap floating-point exception Message-ID: <716@puff.WISC.EDU> Date: 27 Apr 87 17:36:12 GMT Organization: U of Wisconsin CS Dept Lines: 27 According to the VAX Architecture Reference Manual, floating point exceptions can either be traps (which occur AFTER the instruction's completion) or faults (which occur BEFORE its completion, and leave the instruction restartable, if the faulting condition is removed). I'm trying to figure out what determines whether a particular exception will be a fault or a trap, with no success (i.e., I can find no explanation in the ARM). My speculation is that, in the general case, you get a fault, and that only if the trace trap bit (#4) in the PSL is set to you get a trap. My reasoning is that it's nicer to be able to restart an incorrect operation and get things right, then to just know that things went wrong--except when you're debugging, and you want to see EXACTLY what went wrong. However, this is pure speculation on my part: I have been unable to confirm it. In addition, of all the 10 arithmetic exceptions, only the floating point exceptions have both traps and faults--the rest have only traps. This seems to contradict my theory, unless it's more difficult to avoid writing results for integer and decimal string instructions--I don't see why it should be. So, if anyone can enlighten me, I will be greatly appreciative. pb@pipe.wisc.edu PB Schechter U. Wisconsin Dept. Computer Sciences 1210 W. Dayton St. Madison, Wisc. 53706