frexp function misoptimization

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



I notice on x86_64 Linux with gcc-4.1.2, that if I make a call to frexp()
from math.h, this function is not inlined in the assembly output
(with -O2). I've tried -ffast-math as well.

As this function could be trivially inlined (it's just a matter of getting
the correct bits from the stored number), is this a gcc misoptimization or
is glibc the culprit?

Here's a sample program:

---------------------------
#include <math.h>

int main()
{
  double x = 1.;
  int i;

  x = frexp(x, &i);
  return 0;
}
---------------------------

$ gcc -O2 -S test.c
$ cat test.s
...
       call    frexp
...

Thanks

Jeremy

-- 
Jeremy Sanders <jss@xxxxxxxxxxxxx>   http://www-xray.ast.cam.ac.uk/~jss/



[Index of Archives]     [Linux C Programming]     [Linux Kernel]     [eCos]     [Fedora Development]     [Fedora Announce]     [Autoconf]     [The DWARVES Debugging Tools]     [Yosemite Campsites]     [Yosemite News]     [Linux GCC]

  Powered by Linux