gcc for Pyramid

Jonathan jonathan at comp.vuw.ac.nz
Fri Apr 14 15:06:26 AEST 1989


In article <BOB.89Apr12152036 at allosaur.cis.ohio-state.edu> bob at allosaur.cis.ohio-state.edu (Bob Sutterfield) writes:
>In article <1032 at nixctc.DE> pete at relay.NixCtc.de (Pete Delaney) writes:
>   Has anyone looked at a gcc implementation for the Pyramid?
>
>I understand that it was done inside Pyramid, mostly as an exercise in
>curiosity, and it worked fine.  Last I heard, Pyramid was uninterested
>in releasing it because it would reveal too much proprietary
>information about their system.
>
>Sounds like someone else outside Pyramid will have to go ahead and do
>the work again.

It's been done already.  I had gcc-1.31 bootstrapped (ie, stage2==stage3)
on a Pyramid 90x in mid-January.  The machine description itself seems
to work, although it's unpolished; it doesn't seem to compile GNU
Emacs correctly.  And since Pyramid's dbx debugging info is unlike
anyone else's, debugging it has been quite hard.  (I haven't
finished porting gdb yet.)

I'd like to follow the terms of my GNU CC license and make the Pyramid
machine description I have freely redistributable. I also understand
that Pyramid regards their machine architecture as proprietary, and I'm
unwilling to cause myself hassles.

Is there any reason not to distribute what I have? Perhaps someone
from Pyramid would like to comment??

Should the gods be willing, I'm sure we can arrange some means for
distribution to the world at large.  (I'd like some people to help fix
the bugs, too; I've been hoping to give this to the guys at osu-cis
for months.)

  Just as as an aside, I don't understand what Pyramid regards as
  proprietary about their architecture.  Given:
	- a C compiler that can generate Pyramid assembler code 
	- a list of valid opcodes  (hint: strings -2 /bin/as :-))
	- a means of determining what combinations of opcode and operand
          are valid (/bin/as)
        - a method to determine how the insns and operands are encoded
          (eg, a debugger that will display data as either hex numbers,
	   run on "opcode Rx,rx" and variants),
        - Useful documents like the OSx Porting Guide

  it's easy enough to decrypt enough information about the architecture to
  build a compiler -- and even a table-driven disassembler.  Which doesn't
  leave much of the "architecture" to discover.  As my professor said,
  "If you can do it, then Pyramid's competitors can..."

-- 
-----------------------------------------------------------------------------
sane mailers: jonathan at comp.vuw.ac.nz |    Industrial democracy:
UUCP path: ...!uunet!vuwcomp!jonathan |           One factory, one vote!



More information about the Comp.sys.pyramid mailing list