diff options
Diffstat (limited to 'gcc/testsuite/gcc.c-torture/compile/pr34966.c')
-rw-r--r-- | gcc/testsuite/gcc.c-torture/compile/pr34966.c | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.c-torture/compile/pr34966.c b/gcc/testsuite/gcc.c-torture/compile/pr34966.c new file mode 100644 index 000000000..6c36fb1e4 --- /dev/null +++ b/gcc/testsuite/gcc.c-torture/compile/pr34966.c @@ -0,0 +1,21 @@ +extern double sin (double), cos (double); + +__inline double +atan (double __x) +{ + register double __result; +#if defined(__i386__) || defined(__x86_64__) + __asm __volatile__ ("" : "=t" (__result) : "0" (__x)); +#else + __result = __x; +#endif + return __result; +} + +double +f(double x) +{ + double t = atan (x); + return cos (t) + sin (t); +} + |