Help: PDP-11 instruction classification (again!)

Pat Barron pat at
Thu May 11 01:37:51 AEST 2000

On Wed, 10 May 2000 johnh at wrote:
> Floating point is a bit more problematic. The kernel (see crevat latter) didn't
> require it, but had to save FP status and registers on context switches.
> Quite a few processors had the FPP as an option, and so there was FPP emulation
> build into the kernel (conditionally). There were versions of the C compiler
> that had code tables for the FIS, to suit the 11/35/40.

This discussion brings back memories ... I once found a bug in the kernel
floating-point stuff on V7m on an 11/40 (without FIS).  Turned out that,
if you took a zero-length file, chmod'ed it to be executable, and then
tried to run it, the kernel would take a path through the code that it
didn't normally take, in which it tried to save the *real* FP registers -
which were not there, and attempting to touch the missing registers would
panic the machine.

I found this while I was a lab assistant for a computer architecture
course, taking care of this 11/40 that the department had just aquired
(another department was about to discard it, so we picked it up ...), and
which was being used by students learning assembly language programming.
As you might imagine, these folks generated zero-length a.out files *all
the time* (since that's what 'as' would sometimes output if your source
code had errors in it), and sometimes they'd try to execute them.
Therefore, the machine was crashing a couple of times a day until I found
and fixed the bug ...


Received: (from major at localhost)
	by (8.9.3/8.9.3) id CAA79425
	for pups-liszt; Thu, 11 May 2000 02:30:10 +1000 (EST)

More information about the TUHS mailing list