vax compilers

utzoo!decvax!ucbvax!dove at mit-dspg utzoo!decvax!ucbvax!dove at mit-dspg
Mon Apr 19 15:57:15 AEST 1982


From: dove at mit-dspg at mit-mc
I just checked out the floating point speed of a local vax (mit-vx).
To do so I compiled the following program:
main()
{
	register double z=0;
	register long i=100000;

	while(i-->0)
	{
		z += 1;
		z += 1;
		z += 1;
		z += 1;
		z += 1;
		z += 1;
		z += 1;
		z += 1;
		z += 1;
		z += 1;
	}
}

The vax pcc compiler failed to use register arithmetic to do the floating
point adds, used seperate storage for each constant and didn't use the 
add one branch less than or equal instruction to implement the loop.

A similar VMS fortran program also used seperate storage for the constants
but did use register arithmetic and AOBLEQ.

Unix f77 didn't use register arithmetic, but did use an efficient loop
instruction.

Will unix pcc and f77 ever properly use the vax registers and language
support instructions?

Does the "new" f77 at berkeley improve upon the old one a lot in terms
of code and compile time?
	
	




More information about the Comp.bugs.2bsd mailing list