Stack growth bug on non-separate I/D machines
Guy Harris
guy at rlgvax.UUCP
Sat Aug 6 18:06:04 AEST 1983
The following was originally posted by:
Dale Mosby, Rand Dow: rand.orstcs at RAND-RELAY
as a bug in 2.8BSD, but the bug comes from V7 (and has been fixed
in System III).
When the stack is expanded, routine `backup' (file mch.s)
is executed to take care of instruction restart. A flag
called `fflg' is incremented when the instruction is a
floating point instruction. Unfortunately this flag is NEVER
cleared so subsequent stack expands may not be executed correctly.
This remains like that until the system is rebooted. The single
instruction fix follows: file mch.s (or mch.c)
.
.
/* hard part
* simulate the ssr2 register missing on 11/40
*/
backup:
clr r2 / backup register ssr1
mov $1,bflg / clrs jflg
clrb fflg / INSERTED INSTRUCTION ****
mov ssr+4,r0
jsr pc,fetch
.
.
More information about the Net.bugs.v7
mailing list