Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Path: utzoo!watmath!clyde!burl!ulysses!allegra!mit-eddie!godot!ima!johnl
From: johnl@ima.UUCP
Newsgroups: net.lang.c
Subject: Re: C cross compiler
Message-ID: <475@ima.UUCP>
Date: Sun, 10-Feb-85 23:39:54 EST
Article-I.D.: ima.475
Posted: Sun Feb 10 23:39:54 1985
Date-Received: Tue, 12-Feb-85 05:52:00 EST
Lines: 25
Nf-ID: #R:brl-tgr:-813700:ima:10100008:000:1086
Nf-From: ima!johnl    Feb 10 22:24:00 1985

> IS there a good C cross compiler which will 
> produce 360-20 source assembly nmemonics?

Oh, like, wow.  Are there still 360/20s around?  Now let's see, hmmn, the
360/20 can multiply in decimal but not in binary, so if you write this:

   struct foo {
	int a,b,c,d,e;
   } foo[100];

   parp(foo[i]);

it has to pick up the value of i, convert it to decimal, multiply it by 10
(which takes about a millisecond), convert it back to binary, add in the
address of foo and you're ready to dereference.  No, that's silly, we could do
the multiplication by 10 by a decimal shift.  No, even better, we can do it
with an addition chain, so we load it into a register and add it to itself,
then we move it to another register -- wait, can't do that because there's no
load register instruction unless you've hacked the microcode that's loaded from
the box of cards inside the back of the machine -- so you store that ...

Well, anyway, I expect the answer is no C compiler for the 360/20.  Sorry,
you're still stuck with RPG, or maybe subset PL/I.

John Levine, ima!johnl or Levine@YALE.ARPA