🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.arch
Article #11461

Re: Re: skip instructions (on 68040)

#11461
From: Edward McClanahan
Date: Tue, 07 May 1991 01:03
41 lines
2397 bytes
James Thomas writes:

> Is there a reference (or more) describing why SKIP instructions have mostly
> disappeared from instruction sets?  The 704x and 709x had them, so the
> PDP-6 had them (and maybe therefore the PDP-8 inherited them).  Now the
> HP-PA has them hiding in the guise of the nullify bit.  Are conditional
> branches generically more useful?

HP-PA only has 32 bit instructions, the first 6 bits of which are the "major
op-code" (thus ranging from 0 to 63).  The so-called "nullify bit" can be
applied to many instructions (as well as "condition checks").  I suppose an
alternative would be to define the major op-codes to be 7 (or 8 or 9...) bits
to include the "nullify bit".  The comparison:

  present HP-PA   modified HP-PA   meaning
  =============   ==============   =======

  BL   target,r2  BL   target,r2   Branch-and-link, execute following instr.
  BL,N target,r2  BLN  target,r2   Branch-and-link, don't execute following

  OR    r1,r2,r3  OR    r1,r2,r3   OR R1 with R2 sticking result in R3
                                   Always execute following instruction
  OR,TR r1,r2,r3  ORN   r1,r2,r3   OR R1 with R2 sticking result in R3
                                   Never execute following instruction
  OR,<  r1,r2,r3  ORLT  r1,r2,r3   OR R1 with R2 sticking result in R3
                                   Only execute next instr. if R1<R2 (signed)

  etc...

The point is, for HP-PA the lack of a specific SKIP instruction is purely
an Assembler syntax issue (in fact, there is no NO-OP in HP-PA, but since
R0 has value 0 and is a black hole, "OR r0,r0,r0" fills the same role; there
are many other pseudo-ops defined in the HP-PA Assembler).

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

  Edward McClanahan
  Hewlett Packard Company     -or-     edwardm@cup.hp.com
  Mail Stop 42UN
  11000 Wolfe Road                     Phone: (480)447-5651
  Cupertino, CA  95014                 Fax:   (408)447-5039
Technical Details
Message-ID: <32580028@hpcuhe.cup.hp.com>
Path: arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!rpi!usc!sdd.hp.com!hplabs!hpcc05!hpcuhb!hpcuhe!edwardm
References: <1182@opus.NMSU.Edu>

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!rpi!usc!sdd.hp.com!hplabs!hpcc05!hpcuhb!hpcuhe!edwardm
From: edwardm@hpcuhe.cup.hp.com (Edward McClanahan)
Newsgroups: comp.arch
Subject: Re: Re: skip instructions (on 68040)
Message-ID: <32580028@hpcuhe.cup.hp.com>
Date: 7 May 91 01:03:34 GMT
References: <1182@opus.NMSU.Edu>
Organization: Hewlett Packard, Cupertino
Lines: 41