[comp.sys.mac.programmer] Lowly FORTRAN & SANE Question

nljg0470@uxa.cso.uiuc.edu (11/11/89)

	I hate to bother all of you apparent C gods out there with a question
about something as trivial as FORTRAN, but the faculty here insist on using
it.
	Question:  In Think C, you can choose, via which library you link, 
whether your code will utilize SANE, the FPU, or a little bit of both.  What
I am wondering, since my prof asked me, is in Absoft FORTRAN/20 when you choose
to use the 68881/68882 optiion, is SANE totally bypassed and the built in 
coprocessor functions are used exclussively or does it still use SANE in order
to get the 96bit (I think it's 96 but I've been wrong before (yes, it's true))
precision.  Also the same question applies to Language Systems FORTRAN.  Do
any FORTRAN compilers give you this control.
	Also, as long as you're here, does anyone know if SPAM can totally
bypass SANE, and itself, it send all calcs to the FPU.  I only recall it being
for use in systems w/o the math chip.
	Finally, what about the Radius SANE patch, is there somewhere I can get
a copy to play with w/o buying the whole damn board. (Perhaps someone could 
e-mail me a copy?)

				Thanks much
				Nick Jasper nljg0470@uxa.cso.uiuc.edu
				University of Illinois
				Aero/Astro Engineering

gilbertd@silver.bacs.indiana.edu (Don Gilbert) (11/13/89)

I think Language Systems fortran is excellent, and is well integrated
with MPW.  It uses the same command line switches as MPW pascal to generate
68881/2 math chip calls.  It also has an -extended switch to
force all fortran REAL types to Mac Extended type.  This is what I use
to compile for MacII class machines:
     Fortran loopcalc.f	-3 -extended -u 0 -mc68020 -mc68881 
Just leave out the -extended -mc... switches to compile for standard
SANE.  BTW, LS Fortran (esp. with the 68881 direct calls) generates very
fast code.
-- Don

Don Gilbert  biocomputing office  / archive for
gilbertd@iubio.bio.indiana.edu   / molecular & general biology
gilbertd@iubacs.bitnet          /
biology dept., indiana univ.,  / ftp iubio.bio.indiana.edu  
bloomington, in 47405, usa    / (129.79.1.101) user anonymous 

siegel@endor.harvard.edu (Rich Siegel) (11/13/89)

In article <227700051@uxa.cso.uiuc.edu> nljg0470@uxa.cso.uiuc.edu writes:
>
>	Question:  In Think C, you can choose, via which library you link, 
>whether your code will utilize SANE, the FPU, or a little bit of both.  What

	Actually, the choice is made by selecting the appropriate options
from the Options... dialog; the choice of library is made simply to complement
the choice of code generation, so that everything works correctly. The same
holds true for other compilers: choose the code generation, and then link
the libraries to match.


>to use the 68881/68882 optiion, is SANE totally bypassed and the built in 
>coprocessor functions are used exclussively or does it still use SANE in order
>to get the 96bit (I think it's 96 but I've been wrong before (yes, it's true))

As it turns out the 96-bit data type has the same precision as the 80-bit
data type, but has an extra word of zeros after the exponent "to force
longword alignment and for future expansion", according to the Motorola
manuals.

Generally, the compiler will do everything possible using the FPU, but some
functions (such as string-to-binary conversions) are still done by SANE.

R.


~~~~~~~~~~~~~~~
 Rich Siegel
 Staff Software Developer
 Symantec Corporation, Language Products Group
 Internet: siegel@endor.harvard.edu
 UUCP: ..harvard!endor!siegel

"There is no personal problem which cannot be solved by sufficient
application of high explosives."

~~~~~~~~~~~~~~~