home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1993 #3 / NN_1993_3.iso / spool / comp / arch / 12428 < prev    next >
Encoding:
Text File  |  1993-01-28  |  2.3 KB  |  50 lines

  1. Newsgroups: comp.arch
  2. Path: sparky!uunet!UB.com!pacbell.com!decwrl!concert!gatech!emory!sol.ctr.columbia.edu!eff!ssd.intel.com!ichips!ichips!colwell
  3. From: colwell@pdx022.world (Robert Colwell)
  4. Subject: Re: Machines with cond. assignment instruction?
  5. In-Reply-To: Bob_Beckwith@NeXT.COM's message of 24 Jan 93 21:22:35 GMT
  6. Message-ID: <COLWELL.93Jan26224210@pdx022.world>
  7. Sender: news@ichips.intel.com (News Account)
  8. Organization: /fs2/d/colwell/.organization
  9. References: <1993Jan21.163607.31684@watson.ibm.com> <6346@rosie.NeXT.COM>
  10. Date: Wed, 27 Jan 1993 06:42:10 GMT
  11. Lines: 37
  12.  
  13. In article <6346@rosie.NeXT.COM> Bob_Beckwith@NeXT.COM (Bob Beckwith) writes:
  14.    In article <1993Jan21.163607.31684@watson.ibm.com> pradeep@watson.ibm.com  
  15.    > Are there announced machines (specially micros) with
  16.    > some conditional assignment instruction.  I mean
  17.    > instruction such as the following:
  18.    > 
  19.    > MovCond R1, R2, R3 /* if (c1) R1 <- R2 else R1 <- R3 */
  20.    > 
  21.    > where, c1 refers to some result of some previous compare.
  22.    > 
  23.    > Any pointers to such machines or any quantitative evaluation
  24.    > of usefulness of this instruction in the specific context
  25.    > of some machine would be appreciated.
  26.  
  27.    Unless I'm mistaken, the Multiflow Trace machines had conditional assignment  
  28.    instructions. While you certainly wouldn't classify them as micros, they're  
  29.    there (or at least were, at one point :-( ). Any ex-Multifloyd's out there  
  30.    (DBP? PKR?) might be able to provide more information.
  31.  
  32. Hi Bob and Pradeep: Yep, the MFCI Trace VLIWs had conditional moves. Really
  33. handy in certain tight inner loops. To quote from our ASPLOS paper: "We
  34. also included the integer SELECT operation, which provides the semantics of
  35. the C "?" operator without branching." This worked so well that we expanded
  36. this to include other operations in the /500 (which was under construction
  37. when the company croaked) such as conditional stores.
  38.  
  39. It was a tad messy trying to work SELECTs into the basic ISA, though; this
  40. operator has more sources than normal, so figuring out how to gracefully
  41. specify three sources in an instruction format designed for two is not
  42. trivial. "Graceful", of course, means the compiler code generator guy likes
  43. it.
  44.  
  45. Bob Colwell  colwell@ichips.intel.com  503-696-4550
  46. Intel Corp.  JF1-19
  47. 5200 NE Elam Young Parkway
  48. Hillsboro, Oregon 97124
  49.  
  50.