Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!think.com!zaphod.mps.ohio-state.edu!cis.ohio-state.edu!ucbvax!VTVM1.CC.VT.EDU!VALDIS From: VALDIS@VTVM1.CC.VT.EDU (Valdis Kletnieks) Newsgroups: comp.lang.asm370 Subject: Bogon interrupts... Message-ID: <9105260803.AA18818@ucbvax.Berkeley.EDU> Date: 26 May 91 07:23:03 GMT References: Sender: usenet@ucbvax.BERKELEY.EDU Reply-To: IBM 370 Assembly Programming Discussion List Distribution: inet Organization: The Internet Lines: 34 On Sat, 25 May 91 23:18:00 PDT Leonard D Woren said: >table base register. I also was told a story about that same 360/91. >When it was first installed, apparently a STM that started in your key >and crossed a page boundary into another key FINISHED and THEN gave a >protection exception. IBM wouldn't believe it until a systems >programmer toggled a demonstration program into the machine via the >front panel switches... (First they claimed it was an O.S. bug.) Leonard: Well, I'll agree that failure to suppress/terminate is a bug... However, I remember another bugaboo that the 360/65 (and probably other models) had - the "imprecise interrupt"... "When the instruction-length code in the program old PSW is zero, the exception was not necessarily caused by the last instruction executed. Interruptions that case a zero instruction-length code to be set in the program old PSW are referred to as IMPRECISE PROGRAM INTERRUPTIONS, and the exceptions causing such interrupts are referred to as IMPRECISE EXCEPTIONS. By contrast, a program interruption associated with a non-zero instruction-length code, and the corresponding exception, are referred to as PRECISE. In the Model 65, an IMPRECISE program exception can occur only when a protection check (store only) is encountered." (from the 360/65 functional characteristics manual). I remember as a beginning assembler jock having problems with this - it was *very* unhandy to debug your program. Loads of fun to be saying "Well, it was *probably* the 'ST R3,0(,R6)' except we'll never know since we did the LM R2,R8,8(,R11) before we got shot down...." My feeble memory recalls one time where a program did a bad store, then did an SVC call, and the imprecise interrupt arrived later... with predictable results... /Valdis