public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
* More info: EGCS-971016 on Solaris2.5/UltraSparc
@ 1997-10-20 15:30 Fred Richardson
  1997-10-20 18:57 ` John Carr
  1997-10-21  0:30 ` Jakub Jelinek
  0 siblings, 2 replies; 3+ messages in thread
From: Fred Richardson @ 1997-10-20 15:30 UTC (permalink / raw)
  To: egcs

Hi-

I ran a bunch of tests with the sun CC compiler and I found out that
the only significant feature (for my platform) that their compiler
uses that's not in EGCS (yet) is is the -fns option:

     -fns         Turn on the SPARC nonstandard floating-point mode (SPARC)

Does anyone know what this is?  I don't know if this is a trivial
thing or a tricky one.

                    -Fred

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: More info: EGCS-971016 on Solaris2.5/UltraSparc
  1997-10-20 15:30 More info: EGCS-971016 on Solaris2.5/UltraSparc Fred Richardson
@ 1997-10-20 18:57 ` John Carr
  1997-10-21  0:30 ` Jakub Jelinek
  1 sibling, 0 replies; 3+ messages in thread
From: John Carr @ 1997-10-20 18:57 UTC (permalink / raw)
  To: frichard; +Cc: egcs

>      -fns         Turn on the SPARC nonstandard floating-point mode (SPARC)
> 
> Does anyone know what this is?  I don't know if this is a trivial
> thing or a tricky one.

The crt1.o that comes with the Sun compiler checks a global symbol
__fsr_init_value and uses it to set %fsr.  The compiler sets the
symbol (in the .o file defining main?) when -fns is used.  It would be
easy to change gcc and its crt*.o to do the same.


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: More info: EGCS-971016 on Solaris2.5/UltraSparc
  1997-10-20 15:30 More info: EGCS-971016 on Solaris2.5/UltraSparc Fred Richardson
  1997-10-20 18:57 ` John Carr
@ 1997-10-21  0:30 ` Jakub Jelinek
  1 sibling, 0 replies; 3+ messages in thread
From: Jakub Jelinek @ 1997-10-21  0:30 UTC (permalink / raw)
  To: frichard; +Cc: egcs

> Hi-
> 
> I ran a bunch of tests with the sun CC compiler and I found out that
> the only significant feature (for my platform) that their compiler
> uses that's not in EGCS (yet) is is the -fns option:
> 
>      -fns         Turn on the SPARC nonstandard floating-point mode (SPARC)
> 
> Does anyone know what this is?  I don't know if this is a trivial
> thing or a tricky one.

The FPU on the UltraSPARC is not working with subnormal operands and/or
results. Instead of that, it traps to the operating system, so that the
results can be correct according to IEEE754. That may be slow, so NS says
that all subnormal operands and all subnormal results will be replaced by
zeros with the same sign (and if requested IEEE754 inexact/underflow traps
will be signalled).

I'm not 100% sure what does the -fns option in SunPRO exactly, probably it
just chooses different startup files and maybe makes some differences in the
code. Could you by change sent me privately assembly output of some short
FPU intensive program compiled with and without -fns?

Cheers,
    Jakub
___________________________________________________________________
Jakub Jelinek | jj@sunsite.mff.cuni.cz | http://sunsite.mff.cuni.cz
Administrator of SunSITE Czech Republic, MFF, Charles University
___________________________________________________________________
Ultralinux - first 64bit OS to take full power of the UltraSparc
Linux version 2.0.30 on a sparc machine (291.64 BogoMips).
___________________________________________________________________

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~1997-10-21  0:30 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
1997-10-20 15:30 More info: EGCS-971016 on Solaris2.5/UltraSparc Fred Richardson
1997-10-20 18:57 ` John Carr
1997-10-21  0:30 ` Jakub Jelinek

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).