🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.sys.sgi.misc
Article #43

any update on plans for {fortran,C} support of 128-bit floats?

#43
From: Mark Bartelt
Date: Fri, 18 Dec 1992 14:23
51 lines
3102 bytes
Nearly a year ago I groused a bit about the fact that neither C nor
fortran (under IRIX 4.0.x) support 128-bit floats, and that (worse!)
the two languages' implementations of non-support are incompatible
with each other.  At the time, I wrote ...

| The C Language Reference Manual says:
| 
|         ANSI C adds "long double", which is the same as "double"
|         in this implementation.
| 
| The Fortran 77 Language Reference Manual says:
| 
|         When the compiler encounters a REAL*16 declaration, it
|         issues a warning message.  REAL*16 items are allocated
|         16 bytes of storage per element, but only the first
|         eight bytes of each element are used; those eight bytes
|         are interpreted according to the format for REAL*8
|         floating numbers.
| 
| What this means is that if one ports a mixed-language application
| from some system that does support quad-precision floating point,
| and a fortran common block with real*16 variables is accessed by
| some C function which accesses the common block via a struct which
| has "long double" variables matching the real*16 fortran variables,
| things will be misaligned.

At the time, I asked a number of questions about the future of support
(or lack of same) for 128-bit floats.  I didn't save the replies, but
I recall that there was a vague "we're looking at it, but there aren't
any firm commitments at this time" sort of response.  Since it's been
nearly a year since then, I'd like to re-ask a couple of them:

--  Will IRIX 5.0 (or, even an earlier release) support "real*16" under
fortran, and "long double" (== 16-byte) under C?

--  If not, would you at least be willing to provide a flag to cc, so
that we can force sizeof(long double) to be 16 rather than 8?  This
would be a big help in porting large mixed-language applications that
use "real*16" in fortran and "long double" in C.

--  And if 5.0 won't support it, when *will* we get it?  There *are*
applications which could make good use of this sort of precision.  And
availability of 128-bit float support (or lack of same) just might be
a factor in future purchasing decisions ... (1/2 x :-)

Mark Bartelt                                              416/978-5619
Canadian Institute for                           mark@cita.toronto.edu
Theoretical Astrophysics                         mark@cita.utoronto.ca

"Clothes not busy being worn are busy drying." - Dylan, on laundry day
         [ singing "It's all right, ma (I'm only bleaching)" ]
Technical Details
Message-ID: <BzGLB0.90v@helios.physics.utoronto.ca>
Path: arc1-ca.pugleaf.net!sparky!uunet!zaphod.mps.ohio-state.edu!rpi!utcsri!helios.physics.utoronto.ca!sysmark

Show Full Headers
Complete Article Headers
Newsgroups: comp.sys.sgi.misc,comp.sys.sgi.bugs,comp.sys.sgi
Path: arc1-ca.pugleaf.net!sparky!uunet!zaphod.mps.ohio-state.edu!rpi!utcsri!helios.physics.utoronto.ca!sysmark
From: sysmark@helios.physics.utoronto.ca (Mark Bartelt)
Subject: any update on plans for {fortran,C} support of 128-bit floats?
Message-ID: <BzGLB0.90v@helios.physics.utoronto.ca>
Sender: news@helios.physics.utoronto.ca (News Administrator)
Reply-To: mark@cita.toronto.edu
Organization: University of Toronto Physics/Astronomy/CITA
Date: Fri, 18 Dec 1992 14:23:23 GMT
Lines: 51