[comp.sys.att] gcc for the 3B[12] ???

aglew@ccvaxa.UUCP (03/18/88)

>/* ---------- "gcc for the 3B[12] ???" ---------- */
>Has anyone ported gcc to the 3B1 or 3B2? I would prefer a 3B2 version,
>but if either one is available I would appreciate hearing about it.
>
>Thanks,
>Mike
>-- 
>
>Michael D. Walker          UUCP: walker@xanth.UUCP
>Old Dominion University      or: sun!xanth!walker

Ditto, in my case for the 3B1.


Andy "Krazy" Glew. Gould CSD-Urbana.    1101 E. University, Urbana, IL 61801   
    aglew@gould.com     	- preferred, if you have MX records
    aglew@xenurus.gould.com     - if you don't
    ...!ihnp4!uiucuxc!ccvaxa!aglew  - paths may still be the only way
   
My opinions are my own, and are not the opinions of my employer, or any
other organisation. I indicate my company only so that the reader may
account for any possible bias I may have towards our products.

dwex@wuccrc (David Wexelblat) (03/20/88)

In article <31200017@ccvaxa> aglew@ccvaxa.UUCP writes:
>
>>/* ---------- "gcc for the 3B[12] ???" ---------- */
>>Has anyone ported gcc to the 3B1 or 3B2? I would prefer a 3B2 version,
>>but if either one is available I would appreciate hearing about it.
>>
>>Thanks,
>>Mike
>>-- 
>>
>>Michael D. Walker          UUCP: walker@xanth.UUCP
>
>Ditto, in my case for the 3B1.
>
>
>Andy "Krazy" Glew. Gould CSD-Urbana.    1101 E. University, Urbana, IL 61801
>    aglew@gould.com     	- preferred, if you have MX records



I am currently working on this beast.  It is coming along nicely, and I should
have it done this week (there is some serious strangeness in the assembler
on the 3B1).  Not including the debugging stuff, I should have the patches to
gcc 1.18 available soon.  I will post them to unix-pc.sources when they are
ready, and I will post an anouncement.


-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
David Wexelblat	   Washington University in St. Louis  (314) 889-4794
UUCP:		   dwex@wuccrc.UUCP  or  ..!{ihnp4,uunet}!wucs1!wuccrc!dwex
ARPANET:	   wucs1!wuccrc!dwex@uunet.uu.net
CSNET:		   wucs1!wuccrc!dwex%uunet.uu.net@csnet-relay or
		   wucs1!wuccrc!dwex.uucp%bbncv.ARPA@csnet-relay

-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
David Wexelblat	   Washington University in St. Louis  (314) 889-4794
UUCP:		   dwex@wuccrc.UUCP  or  ..!{ihnp4,uunet}!wucs1!wuccrc!dwex
ARPANET:	   wucs1!wuccrc!dwex@uunet.uu.net
CSNET:		   wucs1!wuccrc!dwex%uunet.uu.net@csnet-relay or
		   wucs1!wuccrc!dwex.uucp%bbncv.ARPA@csnet-relay

alex@umbc3.UMD.EDU (Alex S. Crain) (03/21/88)

In article <809@wucs2.UUCP> dwex@wuccrc.UUCP (David Wexelblat) writes:
>In article <31200017@ccvaxa> aglew@ccvaxa.UUCP writes:
>>
>>>/* ---------- "gcc for the 3B[12] ???" ---------- */
>>>Has anyone ported gcc to the 3B1 or 3B2? I would prefer a 3B2 version,
>
>I am currently working on this beast.  It is coming along nicely, and I should
>have it done this week (there is some serious strangeness in the assembler
>on the 3B1).

	Nice too see all of this work in favor of 3b1's. I use gcc-1.17 as
my default compiler, and i've been distributing diffs (for 1.17) for awhile.
I will also be finished with 1.18 in about a week. Hopefully, I will get 
1.18 diffs in time for 1.19, in which case the code will become part of the 
general distribution. I have a mailing list set up for gcc users for bug
reports, et al, and would love to coordinate with people who are interested
in working on this project. (GNU for 3b1). Maybe someday we can all run GNU 
Unix on our boxes!

					:alex.

nerwin!alex@umbc3.umd.edu
alex@umbc3.umd.edu
-- 
					:alex.

nerwin!alex@umbc3.umd.edu
alex@umbc3.umd.edu

elh@vu-vlsi.Villanova.EDU (Edward L. Hepler) (03/21/88)

In article <809@wucs2.UUCP>, dwex@wuccrc (David Wexelblat) writes:
> In article <31200017@ccvaxa> aglew@ccvaxa.UUCP writes:
> >
> >>/* ---------- "gcc for the 3B[12] ???" ---------- */
> >>Has anyone ported gcc to the 3B1 or 3B2? I would prefer a 3B2 version,
> >>Michael D. Walker          UUCP: walker@xanth.UUCP
> >Andy "Krazy" Glew. Gould CSD-Urbana.    1101 E. University, Urbana, IL 61801
> 
> I am currently working on this beast.  It is coming along nicely, and I should
> have it done this week (there is some serious strangeness in the assembler
> David Wexelblat	   Washington University in St. Louis  (314) 889-4794
> UUCP:		   dwex@wuccrc.UUCP  or  ..!{ihnp4,uunet}!wucs1!wuccrc!dwex
> ARPANET:	   wucs1!wuccrc!dwex@uunet.uu.net
> CSNET:		   wucs1!wuccrc!dwex%uunet.uu.net@csnet-relay or
> 		   wucs1!wuccrc!dwex.uucp%bbncv.ARPA@csnet-relay

I got gcc to compile (make it work on a 3b1 (SYS V)) a few months back for some
computer architecture work that I am doing.  alex@umbc3 has added unixpc tm and
md files to allow gcc to generate code that the 3b1 assembler likes.  He has
generated diffs and should be contacted for a copy.  I ran some of the common 
"benchmarks" using both the distributed C compiler and GCC and thought that you
all might like to see some of the results.  Note that since both compilers use
a common I/O subsystem, the only real differences show up in "CPU intensive"
benchmarks..  I haven't figured out yet why Dhrystone is slower with GCC??!

Ed Hepler
elh@vu-vlsi


UNIX elhunx SYSTEM5 3.5 mc68k

MANUF:	ATT
MODEL:	3b1
CPU:	68010
CLOCK:	10Mhz
RAM:	2MB
DISK:	67MB
FPA:	None
                           gcc                     cc

BENCHMARK           REAL   USER   SYS         REAL   USER   SYS
---------           ----   ----   ---         ----   ----   ---
tst.sh               3.7    0.2    0.8         3.5    0.2    0.9
multi.sh 1           3.8    0.2    1.0         3.6    0.2    1.0
multi.sh 1 2         5.3    0.5    2.2         5.6    0.5    2.1
multi.sh 1 2 3       7.9    0.9    3.0         8.8    0.9    3.2
multi.sh 1 2 3 4     10.5   1.4    4.1         10.4   1.3    4.0
multi.sh 1 2 3 4 5   13.3   1.2    5.7         11.9   1.7    5.0
dwrite:              2.2    0.0    0.7         2.8    0.0    0.8
dread:               1.1    0.0    0.6         1.4    0.0    0.7
fcalla:              0.3    0.1    0.0         0.4    0.1    0.0
fcalle:              0.9    0.7    0.0         1.1    0.9    0.0
fibo:                20.4   19.9   0.1         18.7   18.0   0.1
float:               49.3   46.7   0.2         46.1   45.3   0.1
iofile:              2.7    0.2    2.0         2.8    0.1    2.0
loop:                3.4    3.2    0.0         6.4    6.2    0.0
pipes:               3.6    0.0    1.5         3.7    0.0    1.5
scall:               7.1    0.3    6.6         7.3    0.2    6.7
sieve:               1.9    1.7    0.1         2.3    2.1    0.0
bytesort:            19.4   18.5   0.3         26.0   25.1   0.1
iocall:              7.2    0.2    6.8         7.2    0.2    6.6
dryr: 831 dhry/sec   1:01.1 1:00.5 0.1 1049 d/s48.6   47.9   0.1
drynr: 831 dhry/sec  1:01.1 1:00.5 0.1  987 d/s51.7   50.9   0.1

Thu Feb 11 23:57:14 EST 1988

alex@umbc3.UMD.EDU (Alex S. Crain) (03/22/88)

In article <1442@vu-vlsi.Villanova.EDU> elh@vu-vlsi.Villanova.EDU (Edward L. Hepler) writes:
>In article <809@wucs2.UUCP>, dwex@wuccrc (David Wexelblat) writes:
>> In article <31200017@ccvaxa> aglew@ccvaxa.UUCP writes:

[stuff deleted about who's porting what and wher to get it]

>computer architecture work that I am doing.  alex@umbc3 has added unixpc tm and
>md files to allow gcc to generate code that the 3b1 assembler likes.  He has
>generated diffs and should be contacted for a copy.  I ran some of the common 
>"benchmarks" using both the distributed C compiler and GCC and thought that you
>all might like to see some of the results.  Note that since both compilers use
>a common I/O subsystem, the only real differences show up in "CPU intensive"
>benchmarks..  I haven't figured out yet why Dhrystone is slower with GCC??!
>
>Ed Hepler
>elh@vu-vlsi

[lots of benchmarks deleted. Most are fairly close between gcc and cc]

>dryr: 831 dhry/sec   1:01.1 1:00.5 0.1 1049 d/s48.6   47.9   0.1
>drynr: 831 dhry/sec  1:01.1 1:00.5 0.1  987 d/s51.7   50.9   0.1

	Alot of folks are talking about how wonderful gcc is, and it is, 
BUT...

	Gcc has a couple big advantages. It has fewer bugs than cc, and If
you find a bug, you can report/fix it. Try talking to AT&T about internal 
compiler errors. This is why it it my default compiler.

	Playing with gcc has also taught me ALOT about compilers and large
systems in general. It is very well designed, very portable, and well
documented.

	Gcc has a sizeable drawback. While the code generation algorithm is
superior to cc, It isnot/cannot be very machine specific. And on a 3b1 this 
is a big lose. All 'complex' math operations, ie: long * long, are machine
dependant. they are handled through calls into a library gcc-lib, which is
a batch of functions that look like:

mull2(i1,i2)
	long i1,i2;
{
	return i1 * i2;
}

which are compiled by /lib/cc and then linked into the gcc objects.

	All is not lost, however, This can be turned into an advantage. It
is possible to reconfigure gcc to generate inline code instead of function 
calls, or optionally call alternate libraries. So one could call a library
that did fixed point math instead of floating point, for a big WIN in graphics
programs. This works because the floating point format is entirely determined
by the library calls.

	The bottom line is, gcc is a wonderful toy. It is fun to play with and
has its advantages. But it won't add any MIPS to a 3b1, at least until someone
tunes it pretty heavily. 

BTW: I will be starting that tuning in a month or so, If someone could point me
at a source for some fast fixed-point routines in 68K assembly, I would 
certainly appreciate it.



-- 
					:alex.

nerwin!alex@umbc3.umd.edu
alex@umbc3.umd.edu

aglew@ccvaxa.UUCP (03/23/88)

>I got gcc to compile (make it work on a 3b1 (SYS V)) a few months back for some
>computer architecture work that I am doing.  alex@umbc3 has added unixpc tm and
>md files to allow gcc to generate code that the 3b1 assembler likes.  He has
>generated diffs and should be contacted for a copy.  I ran some of the common 
>"benchmarks" using both the distributed C compiler and GCC and thought that you
>all might like to see some of the results.  Note that since both compilers use
>a common I/O subsystem, the only real differences show up in "CPU intensive"
>benchmarks..  I haven't figured out yet why Dhrystone is slower with GCC??!
>
>Ed Hepler
>elh@vu-vlsi

I'm also trying to use GNU CC for architectural studies.

Can you give me slightly more explicit mail addresses for yourself and
Alex? elh@vu-vlsi and alex@umbc3 are missing a few components (I assume
.edu. but what then?)

Also, would it be possible to obtain some of your benchmarks? 
Many of them are unfamiliar to me:

	tst.sh 
	multi.sh 1    
	multi.sh 1 2   
	multi.sh 1 2 3  
	multi.sh 1 2 3 4 
	multi.sh 1 2 3 4 5
	dwrite
	dread
	fcalla
	fcalle
	fibo
	float
	iofile
	loop
	pipes
	scall
	sieve		-- Probably have a version of this
	bytesort
	iocall		-- This is Jan Stubbs'
	dryr		-- Have this
	drynr		-- Have this