Help: PDP-11 instruction classification
    lars brinkhoff 
    lars at nocrew.org
       
    Tue May  9 17:25:55 AEST 2000
    
    
  
I'm adding PDP-11 support to GNU binutils, and I need help on
classifying the instruction set.
I'm somewhat confused, because:
  PDP-11 FAQ says:
  11/45 introduced MUL, DIV, ASH, ASHC, SPL.
  Later, 11/40 introduced SOB, XOR, MARK, SXT, RTT.  MUL, DIV, etc in
  EIS option.
  GCC pdp11.md and pdp11.c says:
  11/40 and 11/45 has SOB, SXT, XOR.
  11/45 has ASHC, MUL, DIV.
  All models has ASH.
  John Holden writes:
  11/40 and 11/45 has EIS and FPU instructions.
  11/40 had several options to add EIS, FIS and a MMU.
Does this mean that an unexpanded 11/40 has no EIS instructions,
but with the EIS option, it has more instructions than an 11/45?
GCC seems to think that all PDP-11 models has ASH, but this seems
wrong.  It's only in EIS, right?
So far, this is the classification I've come up with:
  BASIC: the basic instruction set.
  CIS: commercial instruction set (opcodes 0x7d00..0x7eff).
  EIS45: 11/45 extended instruction set: MUL, DIV, ASH, ASHC, SPL.
  EIS40: 11/40 extended instruction set: EIS45 + SOB, XOR, MARK, SXT, RTT.
  FIS: FADD, FSUB, FMUL, and FDIV (opcodes 0x7a00..0x7bff).
  FPU: LDF, STF, LDCFF', STCFF', CMPF, LDEXP, STEXP, LDCIF, STCFI, MULF,
       MODF, ADDF, SUBF, and DIVF (opcodes 0xf000..0xffff).
Would this be correct?
FIS and CIS isn't imlemented in Supnik's simulator, and I haven't
found any documentation.  Does anyone know more about those?  Why
is there both an FADD and an ADDF instruction?
Received: (from major at localhost)
	by minnie.cs.adfa.edu.au (8.9.3/8.9.3) id JAA75480
	for pups-liszt; Wed, 10 May 2000 09:47:20 +1000 (EST)
    
    
More information about the TUHS
mailing list