This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

(forw) Re: EGCS-1.1.2


I think, this should make it to the list, too.
Sorry, if it gets there a second time.

----- Forwarded message from STAFFAN RINGBOM <ringbom@shh.fi> -----

From: "STAFFAN RINGBOM" <ringbom@shh.fi>
Organization: Swedish School of Economics
To: martin.kahlert@mchp.siemens.de
Date: Thu, 22 Apr 1999 09:34:03 +0200
Subject: Re: EGCS-1.1.2
X-mailer: Pegasus Mail for Windows (v2.53/R1)

Dear devolpers of EGCS,

I am programming probability models as part of my work.
I hope the following observation could help you to improve your
compiler further.


The "usual gcc compiler is provided with AT LEAST the following 
functions in the math.h library. (acess via the -lm linkerswitch)"
(The following paragraph does not differ (at least not much) from the
math.h in the gcc libraries for pure unixes (sparcstation, IRIX)
SOURCE: DJGPP/lib/gcc-lib/djgpp/2.81/include/math.h)


" //  own comments "

extern double erf(double);      // NOT included in EGCS math.h very
useful extern double erfc(double);     // NOT included in EGCS math.h
very useful extern double gamma(double);    // NOT included in EGCS
math.h very useful extern double hypot(double, double);   extern int
isinf(double);       // NOT included in EGCS math.h extern int
isnan(double);       // NOT included in EGCS math.h extern int
finite(double);      // NOT included in EGCS math.h extern double
j0(double);       extern double j1(double);       extern double
jn(int, double);  extern double lgamma(double);   // NOT included in
EGCS math.h very useful extern double y0(double);       extern double
y1(double);       extern double yn(int, double);  extern double
acosh(double);    // NOT included in EGCS math.h extern double
asinh(double);    // NOT included in EGCS math.h extern double
atanh(double);    // NOT included in EGCS math.h extern double
cbrt(double);     // NOT included in EGCS math.h extern double
logb(double);     // NOT included in EGCS math.h extern double
nextafter(double, double); // NOT included in EGCS math.h extern
double remainder(double, double); extern double scalb(double, double);


As well as with their single precision counterparts.




However, I found the following text in the math.h for EGCS-1.1.2


#ifndef	_NO_OLDNAMES

/*
 * Non-underscored versions of non-ANSI functions. These reside in *
 liboldnames.a. Provided for extra portability. */
double cabs (struct _complex x);
double hypot (double x, double y);
double j0 (double x);
double j1 (double x);
double jn (int n, double x);
double y0 (double x);
double y1 (double x);
double yn (int n, double x);

#endif	/* Not _NO_OLDNAMES */

#endif	/* Not __STRICT_ANSI__ */


This list could be improved in order to be as good as the
older gcc's.

liboldnames.a is not included in the downloadable package

With kind regards,

Staffan Ringbom

> Date:          Wed, 21 Apr 1999 15:22:39 +0200
> From:          Martin Kahlert <martin.kahlert@mchp.siemens.de>
> To:            STAFFAN RINGBOM <ringbom@shh.fi>
> Cc:            egcs@cygnus.com
> Subject:       Re: EGCS-1.1.2
> Reply-to:      martin.kahlert@mchp.siemens.de

> Quoting STAFFAN RINGBOM (ringbom@shh.fi):
> > Dear developers,
> > 
> > I've just downloaded egcs-1.1.2. for win95
> > (with mingw32)
> > 
> > Problems:
> > 1. NO libm !!!
> >   That means that those programs that used
> >   to run with the compiling switch -lm is not compiled!!!!
> >   Found a meaningless libm.a !<archive>.
> >   (The DJGPP compiler has libm!)
> >   Use frequently some of the functions included in 
> >   gcc:s math.h as "external C". 
> > Q: Are you workning on the port of libm to egcs.
> >    If not is it easily avalilable for egcs for win32 from any
> >    other source?? 
> libm.a isn't needed on mingw32. Be sure to not delete the stub
> you have. My one contains only this:
> !<arch>
> but i think i read something, that an empty one would do it, too. It
> must be present to allow the -lm switch, but the functions are
> exported by other libs. (libc?)
> 
> libm.a has nothing to do with the compiler itself. It's a system
> library, your os should provide. So the egcs-team won't provide any
> libm.a. (mingw32 does and provides a lot of other libs, which were
> converted from the MS versions somehow, i think.)
> 
> Bye,
> Martin.
> 
> -- 
> Your mouse has moved. Windows must be restarted for the change
> to take effect. Reboot now?

----- End forwarded message -----

-- 
Your mouse has moved. Windows must be restarted for the change
to take effect. Reboot now?


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]