This is the mail archive of the glibc-bugs@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug math/15563] sincos() is incorrect for long double and large inputs on x86_64


http://sourceware.org/bugzilla/show_bug.cgi?id=15563

--- Comment #1 from joseph at codesourcery dot com <joseph at codesourcery dot com> ---
I can't tell what you think the bug is here.  You give a testcase for 
double but talk about long double, and with the obvious substitutions

#define _GNU_SOURCE
#include <stdio.h>
#include <math.h>

int main (void)
{
  volatile long double x = 1.0e22;
  long double s1, s2, c1;

  sincosl (x, &s1, &c1);
  s2 = sinl (x);
  printf ("s1 = %.17Lg\n", s1);
  printf ("s2 = %.17Lg\n", s2);
  return 0;
}

I get on x86_64 (with current glibc)

s1 = -0.8522008497671888
s2 = -0.8522008497671888

which appears to be what you'd expect.  So what program are you building, 
with what options, and running with current glibc, and getting what 
results, and what would you like instead?

-- 
You are receiving this mail because:
You are on the CC list for the bug.


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