stack growth with floating point - (nf)
rand at orstcs.UUCP
rand at orstcs.UUCP
Wed Aug 3 17:24:38 AEST 1983
#N:orstcs:3300002:000:1135
orstcs!rand Aug 1 17:35:00 1983
Subject: 2.8bsd, bug in stack growth with floating point
Applies to 2.8 on 11/23, 2.9 should be checked. Sorry if this
has been reported years ago.
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
.
.
Manifestation of bug: We are running a VERY large group of programs
which do a lot of floating point and allocate large arrays on the stack.
After running the program group we get a few very bizzare system errors.
Dale Mosby, Rand Dow: rand.orstcs at RAND-RELAY
P.S. Rand's new address after Aug 8 will be: rand.sequel at RAND-RELAY
or ogcvax!sequel!rand.
More information about the Comp.bugs.2bsd
mailing list