From 52ce486045074d0af0298082f94e385e6b2fe443 Mon Sep 17 00:00:00 2001 From: Joseph Myers Date: Tue, 2 Apr 2013 22:54:00 +0000 Subject: Fix cacosh inaccuracy and spurious exceptions (bug 15327). --- ChangeLog | 13 + NEWS | 2 +- math/libm-test.inc | 600 +++++++++++++++++++++++ math/s_cacosh.c | 32 +- math/s_cacoshf.c | 33 +- math/s_cacoshl.c | 33 +- sysdeps/i386/fpu/libm-test-ulps | 732 ++++++++++++++++++++++++++-- sysdeps/x86_64/fpu/libm-test-ulps | 981 ++++++++++++++++++++++++++++++++++++-- 8 files changed, 2298 insertions(+), 128 deletions(-) diff --git a/ChangeLog b/ChangeLog index 22b8214c11..3d85c1da05 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,16 @@ +2013-04-02 Joseph Myers + + [BZ #15327] + * math/s_cacosh.c (__cacosh): Implement for finite nonzero + arguments using __kernel_casinh. + * math/s_cacoshf.c (__cacoshf): Implement for finite nonzero + arguments using __kernel_casinhf. + * math/s_cacoshl.c (__cacoshl): Implement for finite nonzero + arguments using __kernel_casinhl. + * math/libm-test.inc (cacosh_test): Add more tests. + * sysdeps/i386/fpu/libm-test-ulps: Update. + * sysdeps/x86_64/fpu/libm-test-ulps: Likewise. + 2013-04-02 Siddhesh Poyarekar * sysdeps/ieee754/dbl-64/mpa.h (HALFRAD): Define as TWO23. diff --git a/NEWS b/NEWS index 3bb5cb3e94..56cdc56d9e 100644 --- a/NEWS +++ b/NEWS @@ -12,7 +12,7 @@ Version 2.18 10357, 11120, 11561, 12723, 13550, 13889, 13951, 14142, 14176, 14200, 14317, 14327, 14496, 14812, 14920, 14964, 14981, 14982, 14985, 14994, 14996, 15003, 15006, 15020, 15023, 15036, 15054, 15055, 15062, 15078, - 15160, 15214, 15232, 15234, 15283, 15285, 15287, 15304, 15307. + 15160, 15214, 15232, 15234, 15283, 15285, 15287, 15304, 15307, 15327. * Add support for calling C++11 thread_local object destructors on thread and program exit. This needs compiler support for offloading C++11 diff --git a/math/libm-test.inc b/math/libm-test.inc index 1d3ba48b7d..c9ed719d18 100644 --- a/math/libm-test.inc +++ b/math/libm-test.inc @@ -2166,6 +2166,606 @@ cacosh_test (void) TEST_c_c (cacosh, 1.5L, plus_zero, 0.9624236501192068949955178268487368462704L, plus_zero); TEST_c_c (cacosh, 1.5L, minus_zero, 0.9624236501192068949955178268487368462704L, minus_zero); + TEST_c_c (cacosh, 0x1p50L, 1.0L, 3.535050620855721078027883819436720218708e1L, 8.881784197001252323389053344727730248720e-16L); + TEST_c_c (cacosh, 0x1p50L, -1.0L, 3.535050620855721078027883819436720218708e1L, -8.881784197001252323389053344727730248720e-16L); + TEST_c_c (cacosh, -0x1p50L, 1.0L, 3.535050620855721078027883819436720218708e1L, 3.141592653589792350284223683154270545292L); + TEST_c_c (cacosh, -0x1p50L, -1.0L, 3.535050620855721078027883819436720218708e1L, -3.141592653589792350284223683154270545292L); + TEST_c_c (cacosh, 1.0L, 0x1p50L, 3.535050620855721078027883819436759661753e1L, 1.570796326794895731052901991514519103193L); + TEST_c_c (cacosh, -1.0L, 0x1p50L, 3.535050620855721078027883819436759661753e1L, 1.570796326794897507409741391764983781004L); + TEST_c_c (cacosh, 1.0L, -0x1p50L, 3.535050620855721078027883819436759661753e1L, -1.570796326794895731052901991514519103193L); + TEST_c_c (cacosh, -1.0L, -0x1p50L, 3.535050620855721078027883819436759661753e1L, -1.570796326794897507409741391764983781004L); +#ifndef TEST_FLOAT + TEST_c_c (cacosh, 0x1p500L, 1.0L, 3.472667374605326000180332928505464606058e2L, 3.054936363499604682051979393213617699789e-151L); + TEST_c_c (cacosh, 0x1p500L, -1.0L, 3.472667374605326000180332928505464606058e2L, -3.054936363499604682051979393213617699789e-151L); + TEST_c_c (cacosh, -0x1p500L, 1.0L, 3.472667374605326000180332928505464606058e2L, 3.141592653589793238462643383279502884197L); + TEST_c_c (cacosh, -0x1p500L, -1.0L, 3.472667374605326000180332928505464606058e2L, -3.141592653589793238462643383279502884197L); + TEST_c_c (cacosh, 1.0L, 0x1p500L, 3.472667374605326000180332928505464606058e2L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -1.0L, 0x1p500L, 3.472667374605326000180332928505464606058e2L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 1.0L, -0x1p500L, 3.472667374605326000180332928505464606058e2L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -1.0L, -0x1p500L, 3.472667374605326000180332928505464606058e2L, -1.570796326794896619231321691639751442099L); +#endif +#if defined TEST_LDOUBLE && LDBL_MAX_EXP >= 16384 + TEST_c_c (cacosh, 0x1p5000L, 1.0L, 3.466429049980286492395577839412341016946e3L, 7.079811261048172892385615158694057552948e-1506L); + TEST_c_c (cacosh, 0x1p5000L, -1.0L, 3.466429049980286492395577839412341016946e3L, -7.079811261048172892385615158694057552948e-1506L); + TEST_c_c (cacosh, -0x1p5000L, 1.0L, 3.466429049980286492395577839412341016946e3L, 3.141592653589793238462643383279502884197L); + TEST_c_c (cacosh, -0x1p5000L, -1.0L, 3.466429049980286492395577839412341016946e3L, -3.141592653589793238462643383279502884197L); + TEST_c_c (cacosh, 1.0L, 0x1p5000L, 3.466429049980286492395577839412341016946e3L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -1.0L, 0x1p5000L, 3.466429049980286492395577839412341016946e3L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 1.0L, -0x1p5000L, 3.466429049980286492395577839412341016946e3L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -1.0L, -0x1p5000L, 3.466429049980286492395577839412341016946e3L, -1.570796326794896619231321691639751442099L); +#endif + TEST_c_c (cacosh, 0x1.fp127L, 0x1.fp127L, 8.973081118419833726837456344608533993585e1L, 7.853981633974483096156608458198757210493e-1L); +#ifndef TEST_FLOAT + TEST_c_c (cacosh, 0x1.fp1023L, 0x1.fp1023L, 7.107906849659093345062145442726115449315e2L, 7.853981633974483096156608458198757210493e-1L); +#endif +#if defined TEST_LDOUBLE && LDBL_MAX_EXP >= 16384 + TEST_c_c (cacosh, 0x1.fp16383L, 0x1.fp16383L, 1.135753137836666928715489992987020363057e4L, 7.853981633974483096156608458198757210493e-1L); +#endif + TEST_c_c (cacosh, 0x1.fp-129L, 1.5L, 1.194763217287109304111930828519090523536L, 1.570796326794896619231321691639751442097L); + TEST_c_c (cacosh, 0x1.fp-129L, -1.5L, 1.194763217287109304111930828519090523536L, -1.570796326794896619231321691639751442097L); + TEST_c_c (cacosh, -0x1.fp-129L, 1.5L, 1.194763217287109304111930828519090523536L, 1.570796326794896619231321691639751442100L); + TEST_c_c (cacosh, -0x1.fp-129L, -1.5L, 1.194763217287109304111930828519090523536L, -1.570796326794896619231321691639751442100L); + TEST_c_c (cacosh, 1.5L, 0x1.fp-129L, 9.624236501192068949955178268487368462704e-1L, 2.546345110742945032959687790021055102355e-39L, UNDERFLOW_EXCEPTION_FLOAT); + TEST_c_c (cacosh, -1.5L, 0x1.fp-129L, 9.624236501192068949955178268487368462704e-1L, 3.141592653589793238462643383279502884195L); + TEST_c_c (cacosh, 1.5L, -0x1.fp-129L, 9.624236501192068949955178268487368462704e-1L, -2.546345110742945032959687790021055102355e-39L, UNDERFLOW_EXCEPTION_FLOAT); + TEST_c_c (cacosh, -1.5L, -0x1.fp-129L, 9.624236501192068949955178268487368462704e-1L, -3.141592653589793238462643383279502884195L); +#ifndef TEST_FLOAT + TEST_c_c (cacosh, 0x1.fp-1025L, 1.5L, 1.194763217287109304111930828519090523536L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0x1.fp-1025L, -1.5L, 1.194763217287109304111930828519090523536L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0x1.fp-1025L, 1.5L, 1.194763217287109304111930828519090523536L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0x1.fp-1025L, -1.5L, 1.194763217287109304111930828519090523536L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 1.5L, 0x1.fp-1025L, 9.624236501192068949955178268487368462704e-1L, 4.819934639999230680322935210539402497827e-309L, UNDERFLOW_EXCEPTION_DOUBLE); + TEST_c_c (cacosh, -1.5L, 0x1.fp-1025L, 9.624236501192068949955178268487368462704e-1L, 3.141592653589793238462643383279502884197L); + TEST_c_c (cacosh, 1.5L, -0x1.fp-1025L, 9.624236501192068949955178268487368462704e-1L, -4.819934639999230680322935210539402497827e-309L, UNDERFLOW_EXCEPTION_DOUBLE); + TEST_c_c (cacosh, -1.5L, -0x1.fp-1025L, 9.624236501192068949955178268487368462704e-1L, -3.141592653589793238462643383279502884197L); +#endif +#if defined TEST_LDOUBLE && LDBL_MIN_EXP <= -16381 + TEST_c_c (cacosh, 0x1.fp-16385L, 1.5L, 1.194763217287109304111930828519090523536L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0x1.fp-16385L, -1.5L, 1.194763217287109304111930828519090523536L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0x1.fp-16385L, 1.5L, 1.194763217287109304111930828519090523536L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0x1.fp-16385L, -1.5L, 1.194763217287109304111930828519090523536L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 1.5L, 0x1.fp-16385L, 9.624236501192068949955178268487368462704e-1L, 7.282957076134209141226696333885150260319e-4933L, UNDERFLOW_EXCEPTION); + TEST_c_c (cacosh, -1.5L, 0x1.fp-16385L, 9.624236501192068949955178268487368462704e-1L, 3.141592653589793238462643383279502884197L); + TEST_c_c (cacosh, 1.5L, -0x1.fp-16385L, 9.624236501192068949955178268487368462704e-1L, -7.282957076134209141226696333885150260319e-4933L, UNDERFLOW_EXCEPTION); + TEST_c_c (cacosh, -1.5L, -0x1.fp-16385L, 9.624236501192068949955178268487368462704e-1L, -3.141592653589793238462643383279502884197L); +#endif + TEST_c_c (cacosh, 0.5L, 1.0L, 9.261330313501824245501244453057873152694e-1L, 1.221357263937683325603909865564381489366L); + TEST_c_c (cacosh, 0.5L, -1.0L, 9.261330313501824245501244453057873152694e-1L, -1.221357263937683325603909865564381489366L); + TEST_c_c (cacosh, -0.5L, 1.0L, 9.261330313501824245501244453057873152694e-1L, 1.920235389652109912858733517715121394831L); + TEST_c_c (cacosh, -0.5L, -1.0L, 9.261330313501824245501244453057873152694e-1L, -1.920235389652109912858733517715121394831L); + TEST_c_c (cacosh, 1.0L, 0.5L, 7.328576759736452608886724437653071523305e-1L, 6.748888455860063801646649673121744318756e-1L); + TEST_c_c (cacosh, -1.0L, 0.5L, 7.328576759736452608886724437653071523305e-1L, 2.466703808003786858297978415967328452322L); + TEST_c_c (cacosh, 1.0L, -0.5L, 7.328576759736452608886724437653071523305e-1L, -6.748888455860063801646649673121744318756e-1L); + TEST_c_c (cacosh, -1.0L, -0.5L, 7.328576759736452608886724437653071523305e-1L, -2.466703808003786858297978415967328452322L); + TEST_c_c (cacosh, 0.25L, 1.0L, 8.924633639033482359562124741744951972772e-1L, 1.394493894017929688812643125003661339452L); + TEST_c_c (cacosh, 0.25L, -1.0L, 8.924633639033482359562124741744951972772e-1L, -1.394493894017929688812643125003661339452L); + TEST_c_c (cacosh, -0.25L, 1.0L, 8.924633639033482359562124741744951972772e-1L, 1.747098759571863549650000258275841544745L); + TEST_c_c (cacosh, -0.25L, -1.0L, 8.924633639033482359562124741744951972772e-1L, -1.747098759571863549650000258275841544745L); + TEST_c_c (cacosh, 1.0L, 0.25L, 5.097911466811016354623559941115413499164e-1L, 4.890443302710802929202843732146540079124e-1L); + TEST_c_c (cacosh, -1.0L, 0.25L, 5.097911466811016354623559941115413499164e-1L, 2.652548323318712945542359010064848876285L); + TEST_c_c (cacosh, 1.0L, -0.25L, 5.097911466811016354623559941115413499164e-1L, -4.890443302710802929202843732146540079124e-1L); + TEST_c_c (cacosh, -1.0L, -0.25L, 5.097911466811016354623559941115413499164e-1L, -2.652548323318712945542359010064848876285L); + TEST_c_c (cacosh, 0x1.fp-10L, 1.0L, 8.813742198809567991336704287826445879025e-1L, 1.569458417435338878318763342108699202986L); + TEST_c_c (cacosh, 0x1.fp-10L, -1.0L, 8.813742198809567991336704287826445879025e-1L, -1.569458417435338878318763342108699202986L); + TEST_c_c (cacosh, -0x1.fp-10L, 1.0L, 8.813742198809567991336704287826445879025e-1L, 1.572134236154454360143880041170803681211L); + TEST_c_c (cacosh, -0x1.fp-10L, -1.0L, 8.813742198809567991336704287826445879025e-1L, -1.572134236154454360143880041170803681211L); + TEST_c_c (cacosh, 1.0L, 0x1.fp-10L, 4.350501469856803800217957402220976497152e-2L, 4.349129763101882771258049954181971959031e-2L); + TEST_c_c (cacosh, -1.0L, 0x1.fp-10L, 4.350501469856803800217957402220976497152e-2L, 3.098101355958774410750062883737683164607L); + TEST_c_c (cacosh, 1.0L, -0x1.fp-10L, 4.350501469856803800217957402220976497152e-2L, -4.349129763101882771258049954181971959031e-2L); + TEST_c_c (cacosh, -1.0L, -0x1.fp-10L, 4.350501469856803800217957402220976497152e-2L, -3.098101355958774410750062883737683164607L); + TEST_c_c (cacosh, 0x1.fp-30L, 1.0L, 8.813735870195430258081932989769495326854e-1L, 1.570796325518966635014803151387033957091L); + TEST_c_c (cacosh, 0x1.fp-30L, -1.0L, 8.813735870195430258081932989769495326854e-1L, -1.570796325518966635014803151387033957091L); + TEST_c_c (cacosh, -0x1.fp-30L, 1.0L, 8.813735870195430258081932989769495326854e-1L, 1.570796328070826603447840231892468927106L); + TEST_c_c (cacosh, -0x1.fp-30L, -1.0L, 8.813735870195430258081932989769495326854e-1L, -1.570796328070826603447840231892468927106L); + TEST_c_c (cacosh, 1.0L, 0x1.fp-30L, 4.247867098745151888768727039216644758847e-5L, 4.247867097467650115899790787875186617316e-5L); + TEST_c_c (cacosh, -1.0L, 0x1.fp-30L, 4.247867098745151888768727039216644758847e-5L, 3.141550174918818561961484385371624132331L); + TEST_c_c (cacosh, 1.0L, -0x1.fp-30L, 4.247867098745151888768727039216644758847e-5L, -4.247867097467650115899790787875186617316e-5L); + TEST_c_c (cacosh, -1.0L, -0x1.fp-30L, 4.247867098745151888768727039216644758847e-5L, -3.141550174918818561961484385371624132331L); + TEST_c_c (cacosh, 0x1.fp-100L, 1.0L, 8.813735870195430252326093249797923090282e-1L, 1.570796326794896619231321691638670687364L); + TEST_c_c (cacosh, 0x1.fp-100L, -1.0L, 8.813735870195430252326093249797923090282e-1L, -1.570796326794896619231321691638670687364L); + TEST_c_c (cacosh, -0x1.fp-100L, 1.0L, 8.813735870195430252326093249797923090282e-1L, 1.570796326794896619231321691640832196834L); + TEST_c_c (cacosh, -0x1.fp-100L, -1.0L, 8.813735870195430252326093249797923090282e-1L, -1.570796326794896619231321691640832196834L); + TEST_c_c (cacosh, 1.0L, 0x1.fp-100L, 1.236292038260260888664514866457202186027e-15L, 1.236292038260260888664514866456887257525e-15L); + TEST_c_c (cacosh, -1.0L, 0x1.fp-100L, 1.236292038260260888664514866457202186027e-15L, 3.141592653589792002170605123018614219682L); + TEST_c_c (cacosh, 1.0L, -0x1.fp-100L, 1.236292038260260888664514866457202186027e-15L, -1.236292038260260888664514866456887257525e-15L); + TEST_c_c (cacosh, -1.0L, -0x1.fp-100L, 1.236292038260260888664514866457202186027e-15L, -3.141592653589792002170605123018614219682L); + TEST_c_c (cacosh, 0x1.fp-129L, 1.0L, 8.813735870195430252326093249797923090282e-1L, 1.570796326794896619231321691639751442097L); + TEST_c_c (cacosh, 0x1.fp-129L, -1.0L, 8.813735870195430252326093249797923090282e-1L, -1.570796326794896619231321691639751442097L); + TEST_c_c (cacosh, -0x1.fp-129L, 1.0L, 8.813735870195430252326093249797923090282e-1L, 1.570796326794896619231321691639751442101L); + TEST_c_c (cacosh, -0x1.fp-129L, -1.0L, 8.813735870195430252326093249797923090282e-1L, -1.570796326794896619231321691639751442101L); + TEST_c_c (cacosh, 1.0L, 0x1.fp-129L, 5.335635276982233498398987585285818977933e-20L, 5.335635276982233498398987585285818977930e-20L); + TEST_c_c (cacosh, -1.0L, 0x1.fp-129L, 5.335635276982233498398987585285818977933e-20L, 3.141592653589793238409287030509680549213L); + TEST_c_c (cacosh, 1.0L, -0x1.fp-129L, 5.335635276982233498398987585285818977933e-20L, -5.335635276982233498398987585285818977930e-20L); + TEST_c_c (cacosh, -1.0L, -0x1.fp-129L, 5.335635276982233498398987585285818977933e-20L, -3.141592653589793238409287030509680549213L); +#ifndef TEST_FLOAT + TEST_c_c (cacosh, 0x1.fp-1000L, 1.0L, 8.813735870195430252326093249797923090282e-1L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0x1.fp-1000L, -1.0L, 8.813735870195430252326093249797923090282e-1L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0x1.fp-1000L, 1.0L, 8.813735870195430252326093249797923090282e-1L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0x1.fp-1000L, -1.0L, 8.813735870195430252326093249797923090282e-1L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 1.0L, 0x1.fp-1000L, 4.252291453851660175550490409247739011867e-151L, 4.252291453851660175550490409247739011867e-151L); + TEST_c_c (cacosh, -1.0L, 0x1.fp-1000L, 4.252291453851660175550490409247739011867e-151L, 3.141592653589793238462643383279502884197L); + TEST_c_c (cacosh, 1.0L, -0x1.fp-1000L, 4.252291453851660175550490409247739011867e-151L, -4.252291453851660175550490409247739011867e-151L); + TEST_c_c (cacosh, -1.0L, -0x1.fp-1000L, 4.252291453851660175550490409247739011867e-151L, -3.141592653589793238462643383279502884197L); + TEST_c_c (cacosh, 0x1.fp-1025L, 1.0L, 8.813735870195430252326093249797923090282e-1L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0x1.fp-1025L, -1.0L, 8.813735870195430252326093249797923090282e-1L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0x1.fp-1025L, 1.0L, 8.813735870195430252326093249797923090282e-1L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0x1.fp-1025L, -1.0L, 8.813735870195430252326093249797923090282e-1L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 1.0L, 0x1.fp-1025L, 7.340879205566679497036857179189356754017e-155L, 7.340879205566679497036857179189356754017e-155L); + TEST_c_c (cacosh, -1.0L, 0x1.fp-1025L, 7.340879205566679497036857179189356754017e-155L, 3.141592653589793238462643383279502884197L); + TEST_c_c (cacosh, 1.0L, -0x1.fp-1025L, 7.340879205566679497036857179189356754017e-155L, -7.340879205566679497036857179189356754017e-155L); + TEST_c_c (cacosh, -1.0L, -0x1.fp-1025L, 7.340879205566679497036857179189356754017e-155L, -3.141592653589793238462643383279502884197L); +#endif +#if defined TEST_LDOUBLE && LDBL_MIN_EXP <= -16381 + TEST_c_c (cacosh, 0x1.fp-10000L, 1.0L, 8.813735870195430252326093249797923090282e-1L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0x1.fp-10000L, -1.0L, 8.813735870195430252326093249797923090282e-1L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0x1.fp-10000L, 1.0L, 8.813735870195430252326093249797923090282e-1L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0x1.fp-10000L, -1.0L, 8.813735870195430252326093249797923090282e-1L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 1.0L, 0x1.fp-10000L, 9.854680208706673586644342922051388714633e-1506L, 9.854680208706673586644342922051388714633e-1506L); + TEST_c_c (cacosh, -1.0L, 0x1.fp-10000L, 9.854680208706673586644342922051388714633e-1506L, 3.141592653589793238462643383279502884197L); + TEST_c_c (cacosh, 1.0L, -0x1.fp-10000L, 9.854680208706673586644342922051388714633e-1506L, -9.854680208706673586644342922051388714633e-1506L); + TEST_c_c (cacosh, -1.0L, -0x1.fp-10000L, 9.854680208706673586644342922051388714633e-1506L, -3.141592653589793238462643383279502884197L); + TEST_c_c (cacosh, 0x1.fp-16385L, 1.0L, 8.813735870195430252326093249797923090282e-1L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0x1.fp-16385L, -1.0L, 8.813735870195430252326093249797923090282e-1L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0x1.fp-16385L, 1.0L, 8.813735870195430252326093249797923090282e-1L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0x1.fp-16385L, -1.0L, 8.813735870195430252326093249797923090282e-1L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 1.0L, 0x1.fp-16385L, 9.023632056840860275214893047597614177639e-2467L, 9.023632056840860275214893047597614177639e-2467L); + TEST_c_c (cacosh, -1.0L, 0x1.fp-16385L, 9.023632056840860275214893047597614177639e-2467L, 3.141592653589793238462643383279502884197L); + TEST_c_c (cacosh, 1.0L, -0x1.fp-16385L, 9.023632056840860275214893047597614177639e-2467L, -9.023632056840860275214893047597614177639e-2467L); + TEST_c_c (cacosh, -1.0L, -0x1.fp-16385L, 9.023632056840860275214893047597614177639e-2467L, -3.141592653589793238462643383279502884197L); +#endif + TEST_c_c (cacosh, 0x1p-23L, 0x1.000002p0L, 8.813736713132400470205730751186547909968e-1L, 1.570796242501204621739026081991856762292L); + TEST_c_c (cacosh, 0x1p-23L, -0x1.000002p0L, 8.813736713132400470205730751186547909968e-1L, -1.570796242501204621739026081991856762292L); + TEST_c_c (cacosh, -0x1p-23L, 0x1.000002p0L, 8.813736713132400470205730751186547909968e-1L, 1.570796411088588616723617301287646121905L); + TEST_c_c (cacosh, -0x1p-23L, -0x1.000002p0L, 8.813736713132400470205730751186547909968e-1L, -1.570796411088588616723617301287646121905L); + TEST_c_c (cacosh, 0x1.000002p0L, 0x1p-23L, 5.364668491573609633134147164031476452679e-4L, 2.222118384408546368406374049167636760903e-4L); + TEST_c_c (cacosh, -0x1.000002p0L, 0x1p-23L, 5.364668491573609633134147164031476452679e-4L, 3.141370441751352383825802745874586120521L); + TEST_c_c (cacosh, 0x1.000002p0L, -0x1p-23L, 5.364668491573609633134147164031476452679e-4L, -2.222118384408546368406374049167636760903e-4L); + TEST_c_c (cacosh, -0x1.000002p0L, -0x1p-23L, 5.364668491573609633134147164031476452679e-4L, -3.141370441751352383825802745874586120521L); + TEST_c_c (cacosh, 0x1.fp-129L, 0x1.000002p0L, 8.813736713132375348727889167749389235161e-1L, 1.570796326794896619231321691639751442097L); + TEST_c_c (cacosh, 0x1.fp-129L, -0x1.000002p0L, 8.813736713132375348727889167749389235161e-1L, -1.570796326794896619231321691639751442097L); + TEST_c_c (cacosh, -0x1.fp-129L, 0x1.000002p0L, 8.813736713132375348727889167749389235161e-1L, 1.570796326794896619231321691639751442101L); + TEST_c_c (cacosh, -0x1.fp-129L, -0x1.000002p0L, 8.813736713132375348727889167749389235161e-1L, -1.570796326794896619231321691639751442101L); + TEST_c_c (cacosh, 0x1.000002p0L, 0x1.fp-129L, 4.882812451493617206486388134172712975070e-4L, 5.830451806317544230969669308596361881467e-36L); + TEST_c_c (cacosh, -0x1.000002p0L, 0x1.fp-129L, 4.882812451493617206486388134172712975070e-4L, 3.141592653589793238462643383279502878367L); + TEST_c_c (cacosh, 0x1.000002p0L, -0x1.fp-129L, 4.882812451493617206486388134172712975070e-4L, -5.830451806317544230969669308596361881467e-36L); + TEST_c_c (cacosh, -0x1.000002p0L, -0x1.fp-129L, 4.882812451493617206486388134172712975070e-4L, -3.141592653589793238462643383279502878367L); + TEST_c_c (cacosh, 0.0L, 0x1.000002p0L, 8.813736713132375348727889167749389235161e-1L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0.0L, -0x1.000002p0L, 8.813736713132375348727889167749389235161e-1L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0.0L, 0x1.000002p0L, 8.813736713132375348727889167749389235161e-1L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0.0L, -0x1.000002p0L, 8.813736713132375348727889167749389235161e-1L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0x1.000002p0L, 0.0L, 4.882812451493617206486388134172712975070e-4L, 0.0L); + TEST_c_c (cacosh, -0x1.000002p0L, 0.0L, 4.882812451493617206486388134172712975070e-4L, 3.141592653589793238462643383279502884197L); + TEST_c_c (cacosh, 0x1.000002p0L, -0.0L, 4.882812451493617206486388134172712975070e-4L, -0.0L); + TEST_c_c (cacosh, -0x1.000002p0L, -0.0L, 4.882812451493617206486388134172712975070e-4L, -3.141592653589793238462643383279502884197L); +#ifndef TEST_FLOAT + TEST_c_c (cacosh, 0x1p-52L, 0x1.0000000000001p0L, 8.813735870195431822418551933572982483664e-1L, 1.570796326794896462222075823262262934288L); + TEST_c_c (cacosh, 0x1p-52L, -0x1.0000000000001p0L, 8.813735870195431822418551933572982483664e-1L, -1.570796326794896462222075823262262934288L); + TEST_c_c (cacosh, -0x1p-52L, 0x1.0000000000001p0L, 8.813735870195431822418551933572982483664e-1L, 1.570796326794896776240567560017239949909L); + TEST_c_c (cacosh, -0x1p-52L, -0x1.0000000000001p0L, 8.813735870195431822418551933572982483664e-1L, -1.570796326794896776240567560017239949909L); + TEST_c_c (cacosh, 0x1.0000000000001p0L, 0x1p-52L, 2.315303644582684770975188768022139415020e-8L, 9.590301705980041385828904092662391018164e-9L); + TEST_c_c (cacosh, -0x1.0000000000001p0L, 0x1p-52L, 2.315303644582684770975188768022139415020e-8L, 3.141592643999491532482601997450598791535L); + TEST_c_c (cacosh, 0x1.0000000000001p0L, -0x1p-52L, 2.315303644582684770975188768022139415020e-8L, -9.590301705980041385828904092662391018164e-9L); + TEST_c_c (cacosh, -0x1.0000000000001p0L, -0x1p-52L, 2.315303644582684770975188768022139415020e-8L, -3.141592643999491532482601997450598791535L); + TEST_c_c (cacosh, 0x1.fp-1025L, 0x1.0000000000001p0L, 8.813735870195431822418551933572895326024e-1L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0x1.fp-1025L, -0x1.0000000000001p0L, 8.813735870195431822418551933572895326024e-1L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0x1.fp-1025L, 0x1.0000000000001p0L, 8.813735870195431822418551933572895326024e-1L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0x1.fp-1025L, -0x1.0000000000001p0L, 8.813735870195431822418551933572895326024e-1L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0x1.0000000000001p0L, 0x1.fp-1025L, 2.107342425544701550354780375182800088393e-8L, 2.557178503953494342609835913586108008322e-301L, UNDERFLOW_EXCEPTION_LDOUBLE_IBM); + TEST_c_c (cacosh, -0x1.0000000000001p0L, 0x1.fp-1025L, 2.107342425544701550354780375182800088393e-8L, 3.141592653589793238462643383279502884197L); + TEST_c_c (cacosh, 0x1.0000000000001p0L, -0x1.fp-1025L, 2.107342425544701550354780375182800088393e-8L, -2.557178503953494342609835913586108008322e-301L, UNDERFLOW_EXCEPTION_LDOUBLE_IBM); + TEST_c_c (cacosh, -0x1.0000000000001p0L, -0x1.fp-1025L, 2.107342425544701550354780375182800088393e-8L, -3.141592653589793238462643383279502884197L); + TEST_c_c (cacosh, 0.0L, 0x1.0000000000001p0L, 8.813735870195431822418551933572895326024e-1L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0.0L, -0x1.0000000000001p0L, 8.813735870195431822418551933572895326024e-1L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0.0L, 0x1.0000000000001p0L, 8.813735870195431822418551933572895326024e-1L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0.0L, -0x1.0000000000001p0L, 8.813735870195431822418551933572895326024e-1L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0x1.0000000000001p0L, 0.0L, 2.107342425544701550354780375182800088393e-8L, 0.0L); + TEST_c_c (cacosh, -0x1.0000000000001p0L, 0.0L, 2.107342425544701550354780375182800088393e-8L, 3.141592653589793238462643383279502884197L); + TEST_c_c (cacosh, 0x1.0000000000001p0L, -0.0L, 2.107342425544701550354780375182800088393e-8L, -0.0L); + TEST_c_c (cacosh, -0x1.0000000000001p0L, -0.0L, 2.107342425544701550354780375182800088393e-8L, -3.141592653589793238462643383279502884197L); +#endif +#if defined TEST_LDOUBLE && LDBL_MANT_DIG >= 64 + TEST_c_c (cacosh, 0x1p-63L, 0x1.0000000000000002p0L, 8.813735870195430253092739958139610131001e-1L, 1.570796326794896619154657020805582738031L); + TEST_c_c (cacosh, 0x1p-63L, -0x1.0000000000000002p0L, 8.813735870195430253092739958139610131001e-1L, -1.570796326794896619154657020805582738031L); + TEST_c_c (cacosh, -0x1p-63L, 0x1.0000000000000002p0L, 8.813735870195430253092739958139610131001e-1L, 1.570796326794896619307986362473920146166L); + TEST_c_c (cacosh, -0x1p-63L, -0x1.0000000000000002p0L, 8.813735870195430253092739958139610131001e-1L, -1.570796326794896619307986362473920146166L); + TEST_c_c (cacosh, 0x1.0000000000000002p0L, 0x1p-63L, 5.116146586219826555037807251857670783420e-10L, 2.119177303101063432592523199680782317447e-10L); + TEST_c_c (cacosh, -0x1.0000000000000002p0L, 0x1p-63L, 5.116146586219826555037807251857670783420e-10L, 3.141592653377875508152537040020250564229L); + TEST_c_c (cacosh, 0x1.0000000000000002p0L, -0x1p-63L, 5.116146586219826555037807251857670783420e-10L, -2.119177303101063432592523199680782317447e-10L); + TEST_c_c (cacosh, -0x1.0000000000000002p0L, -0x1p-63L, 5.116146586219826555037807251857670783420e-10L, -3.141592653377875508152537040020250564229L); +# if LDBL_MIN_EXP <= -16381 + TEST_c_c (cacosh, 0x1.fp-16385L, 0x1.0000000000000002p0L, 8.813735870195430253092739958139610130980e-1L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0x1.fp-16385L, -0x1.0000000000000002p0L, 8.813735870195430253092739958139610130980e-1L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0x1.fp-16385L, 0x1.0000000000000002p0L, 8.813735870195430253092739958139610130980e-1L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0x1.fp-16385L, -0x1.0000000000000002p0L, 8.813735870195430253092739958139610130980e-1L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0x1.0000000000000002p0L, 0x1.fp-16385L, 4.656612873077392578082927418388212703712e-10L, 1.748608650034385653922359120438227480943e-4923L); + TEST_c_c (cacosh, -0x1.0000000000000002p0L, 0x1.fp-16385L, 4.656612873077392578082927418388212703712e-10L, 3.141592653589793238462643383279502884197L); + TEST_c_c (cacosh, 0x1.0000000000000002p0L, -0x1.fp-16385L, 4.656612873077392578082927418388212703712e-10L, -1.748608650034385653922359120438227480943e-4923L); + TEST_c_c (cacosh, -0x1.0000000000000002p0L, -0x1.fp-16385L, 4.656612873077392578082927418388212703712e-10L, -3.141592653589793238462643383279502884197L); +# endif + TEST_c_c (cacosh, 0.0L, 0x1.0000000000000002p0L, 8.813735870195430253092739958139610130980e-1L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0.0L, -0x1.0000000000000002p0L, 8.813735870195430253092739958139610130980e-1L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0.0L, 0x1.0000000000000002p0L, 8.813735870195430253092739958139610130980e-1L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0.0L, -0x1.0000000000000002p0L, 8.813735870195430253092739958139610130980e-1L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0x1.0000000000000002p0L, 0.0L, 4.656612873077392578082927418388212703712e-10L, 0.0L); + TEST_c_c (cacosh, -0x1.0000000000000002p0L, 0.0L, 4.656612873077392578082927418388212703712e-10L, 3.141592653589793238462643383279502884197L); + TEST_c_c (cacosh, 0x1.0000000000000002p0L, -0.0L, 4.656612873077392578082927418388212703712e-10L, -0.0L); + TEST_c_c (cacosh, -0x1.0000000000000002p0L, -0.0L, 4.656612873077392578082927418388212703712e-10L, -3.141592653589793238462643383279502884197L); +#endif +#if defined TEST_LDOUBLE && LDBL_MANT_DIG >= 106 + TEST_c_c (cacosh, 0x1p-106L, 0x1.000000000000000000000000008p0L, 8.813735870195430252326093249798097405561e-1L, 1.570796326794896619231321691639742726335L); + TEST_c_c (cacosh, 0x1p-106L, -0x1.000000000000000000000000008p0L, 8.813735870195430252326093249798097405561e-1L, -1.570796326794896619231321691639742726335L); + TEST_c_c (cacosh, -0x1p-106L, 0x1.000000000000000000000000008p0L, 8.813735870195430252326093249798097405561e-1L, 1.570796326794896619231321691639760157863L); + TEST_c_c (cacosh, -0x1p-106L, -0x1.000000000000000000000000008p0L, 8.813735870195430252326093249798097405561e-1L, -1.570796326794896619231321691639760157863L); + TEST_c_c (cacosh, 0x1.000000000000000000000000008p0L, 0x1p-106L, 2.285028863093221674154232933662774454211e-16L, 5.394221422390606848017034778914096659726e-17L); + TEST_c_c (cacosh, -0x1.000000000000000000000000008p0L, 0x1p-106L, 2.285028863093221674154232933662774454211e-16L, 3.141592653589793184520429159373434404027L); + TEST_c_c (cacosh, 0x1.000000000000000000000000008p0L, -0x1p-106L, 2.285028863093221674154232933662774454211e-16L, -5.394221422390606848017034778914096659726e-17L); + TEST_c_c (cacosh, -0x1.000000000000000000000000008p0L, -0x1p-106L, 2.285028863093221674154232933662774454211e-16L, -3.141592653589793184520429159373434404027L); + TEST_c_c (cacosh, 0x1.fp-1025L, 0x1.000000000000000000000000008p0L, 8.813735870195430252326093249798097405561e-1L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0x1.fp-1025L, -0x1.000000000000000000000000008p0L, 8.813735870195430252326093249798097405561e-1L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0x1.fp-1025L, 0x1.000000000000000000000000008p0L, 8.813735870195430252326093249798097405561e-1L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0x1.fp-1025L, -0x1.000000000000000000000000008p0L, 8.813735870195430252326093249798097405561e-1L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0x1.000000000000000000000000008p0L, 0x1.fp-1025L, 2.220446049250313080847263336181636063482e-16L, 2.426922623448365473354662093431821897807e-293L, UNDERFLOW_EXCEPTION_LDOUBLE_IBM); + TEST_c_c (cacosh, -0x1.000000000000000000000000008p0L, 0x1.fp-1025L, 2.220446049250313080847263336181636063482e-16L, 3.141592653589793238462643383279502884197L); + TEST_c_c (cacosh, 0x1.000000000000000000000000008p0L, -0x1.fp-1025L, 2.220446049250313080847263336181636063482e-16L, -2.426922623448365473354662093431821897807e-293L, UNDERFLOW_EXCEPTION_LDOUBLE_IBM); + TEST_c_c (cacosh, -0x1.000000000000000000000000008p0L, -0x1.fp-1025L, 2.220446049250313080847263336181636063482e-16L, -3.141592653589793238462643383279502884197L); + TEST_c_c (cacosh, 0.0L, 0x1.000000000000000000000000008p0L, 8.813735870195430252326093249798097405561e-1L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0.0L, -0x1.000000000000000000000000008p0L, 8.813735870195430252326093249798097405561e-1L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0.0L, 0x1.000000000000000000000000008p0L, 8.813735870195430252326093249798097405561e-1L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0.0L, -0x1.000000000000000000000000008p0L, 8.813735870195430252326093249798097405561e-1L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0x1.000000000000000000000000008p0L, 0.0L, 2.220446049250313080847263336181636063482e-16L, 0.0L); + TEST_c_c (cacosh, -0x1.000000000000000000000000008p0L, 0.0L, 2.220446049250313080847263336181636063482e-16L, 3.141592653589793238462643383279502884197L); + TEST_c_c (cacosh, 0x1.000000000000000000000000008p0L, -0.0L, 2.220446049250313080847263336181636063482e-16L, -0.0L); + TEST_c_c (cacosh, -0x1.000000000000000000000000008p0L, -0.0L, 2.220446049250313080847263336181636063482e-16L, -3.141592653589793238462643383279502884197L); +#endif +#if defined TEST_LDOUBLE && LDBL_MANT_DIG >= 113 + TEST_c_c (cacosh, 0x1p-113L, 0x1.0000000000000000000000000001p0L, 8.813735870195430252326093249797924452120e-1L, 1.570796326794896619231321691639751374007L); + TEST_c_c (cacosh, 0x1p-113L, -0x1.0000000000000000000000000001p0L, 8.813735870195430252326093249797924452120e-1L, -1.570796326794896619231321691639751374007L); + TEST_c_c (cacosh, -0x1p-113L, 0x1.0000000000000000000000000001p0L, 8.813735870195430252326093249797924452120e-1L, 1.570796326794896619231321691639751510190L); + TEST_c_c (cacosh, -0x1p-113L, -0x1.0000000000000000000000000001p0L, 8.813735870195430252326093249797924452120e-1L, -1.570796326794896619231321691639751510190L); + TEST_c_c (cacosh, 0x1.0000000000000000000000000001p0L, 0x1p-113L, 2.019699255375255198156433710951064632386e-17L, 4.767863183742677481693563511435642755521e-18L); + TEST_c_c (cacosh, -0x1.0000000000000000000000000001p0L, 0x1p-113L, 2.019699255375255198156433710951064632386e-17L, 3.141592653589793233694780199536825402504L); + TEST_c_c (cacosh, 0x1.0000000000000000000000000001p0L, -0x1p-113L, 2.019699255375255198156433710951064632386e-17L, -4.767863183742677481693563511435642755521e-18L); + TEST_c_c (cacosh, -0x1.0000000000000000000000000001p0L, -0x1p-113L, 2.019699255375255198156433710951064632386e-17L, -3.141592653589793233694780199536825402504L); + TEST_c_c (cacosh, 0x1.fp-16385L, 0x1.0000000000000000000000000001p0L, 8.813735870195430252326093249797924452120e-1L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0x1.fp-16385L, -0x1.0000000000000000000000000001p0L, 8.813735870195430252326093249797924452120e-1L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0x1.fp-16385L, 0x1.0000000000000000000000000001p0L, 8.813735870195430252326093249797924452120e-1L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0x1.fp-16385L, -0x1.0000000000000000000000000001p0L, 8.813735870195430252326093249797924452120e-1L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0x1.0000000000000000000000000001p0L, 0x1.fp-16385L, 1.962615573354718824241727964954454332780e-17L, 4.148847925325683229178506116378864361396e-4916L); + TEST_c_c (cacosh, -0x1.0000000000000000000000000001p0L, 0x1.fp-16385L, 1.962615573354718824241727964954454332780e-17L, 3.141592653589793238462643383279502884197L); + TEST_c_c (cacosh, 0x1.0000000000000000000000000001p0L, -0x1.fp-16385L, 1.962615573354718824241727964954454332780e-17L, -4.148847925325683229178506116378864361396e-4916L); + TEST_c_c (cacosh, -0x1.0000000000000000000000000001p0L, -0x1.fp-16385L, 1.962615573354718824241727964954454332780e-17L, -3.141592653589793238462643383279502884197L); + TEST_c_c (cacosh, 0.0L, 0x1.0000000000000000000000000001p0L, 8.813735870195430252326093249797924452120e-1L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0.0L, -0x1.0000000000000000000000000001p0L, 8.813735870195430252326093249797924452120e-1L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0.0L, 0x1.0000000000000000000000000001p0L, 8.813735870195430252326093249797924452120e-1L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0.0L, -0x1.0000000000000000000000000001p0L, 8.813735870195430252326093249797924452120e-1L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0x1.0000000000000000000000000001p0L, 0.0L, 1.962615573354718824241727964954454332780e-17L, 0.0L); + TEST_c_c (cacosh, -0x1.0000000000000000000000000001p0L, 0.0L, 1.962615573354718824241727964954454332780e-17L, 3.141592653589793238462643383279502884197L); + TEST_c_c (cacosh, 0x1.0000000000000000000000000001p0L, -0.0L, 1.962615573354718824241727964954454332780e-17L, -0.0L); + TEST_c_c (cacosh, -0x1.0000000000000000000000000001p0L, -0.0L, 1.962615573354718824241727964954454332780e-17L, -3.141592653589793238462643383279502884197L); +#endif + TEST_c_c (cacosh, 0x1p-23L, 0x0.ffffffp0L, 8.813735448726963984495965873956465777250e-1L, 1.570796242501197085295336701632142060969L); + TEST_c_c (cacosh, 0x1p-23L, -0x0.ffffffp0L, 8.813735448726963984495965873956465777250e-1L, -1.570796242501197085295336701632142060969L); + TEST_c_c (cacosh, -0x1p-23L, 0x0.ffffffp0L, 8.813735448726963984495965873956465777250e-1L, 1.570796411088596153167306681647360823228L); + TEST_c_c (cacosh, -0x1p-23L, -0x0.ffffffp0L, 8.813735448726963984495965873956465777250e-1L, -1.570796411088596153167306681647360823228L); + TEST_c_c (cacosh, 0x0.ffffffp0L, 0x1p-23L, 2.714321200917194650737217746780928423385e-4L, 4.391863861910487109445187743978204002614e-4L); + TEST_c_c (cacosh, -0x0.ffffffp0L, 0x1p-23L, 2.714321200917194650737217746780928423385e-4L, 3.141153467203602189751698864505105063797L); + TEST_c_c (cacosh, 0x0.ffffffp0L, -0x1p-23L, 2.714321200917194650737217746780928423385e-4L, -4.391863861910487109445187743978204002614e-4L); + TEST_c_c (cacosh, -0x0.ffffffp0L, -0x1p-23L, 2.714321200917194650737217746780928423385e-4L, -3.141153467203602189751698864505105063797L); + TEST_c_c (cacosh, 0x1.fp-129L, 0x0.ffffffp0L, 8.813735448726938863015878255140556727969e-1L, 1.570796326794896619231321691639751442097L); + TEST_c_c (cacosh, 0x1.fp-129L, -0x0.ffffffp0L, 8.813735448726938863015878255140556727969e-1L, -1.570796326794896619231321691639751442097L); + TEST_c_c (cacosh, -0x1.fp-129L, 0x0.ffffffp0L, 8.813735448726938863015878255140556727969e-1L, 1.570796326794896619231321691639751442101L); + TEST_c_c (cacosh, -0x1.fp-129L, -0x0.ffffffp0L, 8.813735448726938863015878255140556727969e-1L, -1.570796326794896619231321691639751442101L); + TEST_c_c (cacosh, 0x0.ffffffp0L, 0x1.fp-129L, 8.245504387859737323891843603996428534945e-36L, 3.452669847162035876032494826387364972849e-4L); + TEST_c_c (cacosh, -0x0.ffffffp0L, 0x1.fp-129L, 8.245504387859737323891843603996428534945e-36L, 3.141247386605077034875040133796864147700L); + TEST_c_c (cacosh, 0x0.ffffffp0L, -0x1.fp-129L, 8.245504387859737323891843603996428534945e-36L, -3.452669847162035876032494826387364972849e-4L); + TEST_c_c (cacosh, -0x0.ffffffp0L, -0x1.fp-129L, 8.245504387859737323891843603996428534945e-36L, -3.141247386605077034875040133796864147700L); + TEST_c_c (cacosh, 0.0L, 0x0.ffffffp0L, 8.813735448726938863015878255140556727969e-1L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0.0L, -0x0.ffffffp0L, 8.813735448726938863015878255140556727969e-1L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0.0L, 0x0.ffffffp0L, 8.813735448726938863015878255140556727969e-1L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0.0L, -0x0.ffffffp0L, 8.813735448726938863015878255140556727969e-1L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0x0.ffffffp0L, 0.0L, 0.0L, 3.452669847162035876032494826387364972849e-4L); + TEST_c_c (cacosh, -0x0.ffffffp0L, 0.0L, 0.0L, 3.141247386605077034875040133796864147700L); + TEST_c_c (cacosh, 0x0.ffffffp0L, -0.0L, 0.0L, -3.452669847162035876032494826387364972849e-4L); + TEST_c_c (cacosh, -0x0.ffffffp0L, -0.0L, 0.0L, -3.141247386605077034875040133796864147700L); + TEST_c_c (cacosh, 0x1p-23L, 0.5L, 4.812118250596059896127318386463676808798e-1L, 1.570796220170866625230343643673321150378L); + TEST_c_c (cacosh, 0x1p-23L, -0.5L, 4.812118250596059896127318386463676808798e-1L, -1.570796220170866625230343643673321150378L); + TEST_c_c (cacosh, -0x1p-23L, 0.5L, 4.812118250596059896127318386463676808798e-1L, 1.570796433418926613232299739606181733819L); + TEST_c_c (cacosh, -0x1p-23L, -0.5L, 4.812118250596059896127318386463676808798e-1L, -1.570796433418926613232299739606181733819L); + TEST_c_c (cacosh, 0.5L, 0x1p-23L, 1.376510308240943236356088341381173571841e-7L, 1.047197551196603215914744618665204532273L); + TEST_c_c (cacosh, -0.5L, 0x1p-23L, 1.376510308240943236356088341381173571841e-7L, 2.094395102393190022547898764614298351924L); + TEST_c_c (cacosh, 0.5L, -0x1p-23L, 1.376510308240943236356088341381173571841e-7L, -1.047197551196603215914744618665204532273L); + TEST_c_c (cacosh, -0.5L, -0x1p-23L, 1.376510308240943236356088341381173571841e-7L, -2.094395102393190022547898764614298351924L); + TEST_c_c (cacosh, 0x1.fp-129L, 0.5L, 4.812118250596034474977589134243684231352e-1L, 1.570796326794896619231321691639751442096L); + TEST_c_c (cacosh, 0x1.fp-129L, -0.5L, 4.812118250596034474977589134243684231352e-1L, -1.570796326794896619231321691639751442096L); + TEST_c_c (cacosh, -0x1.fp-129L, 0.5L, 4.812118250596034474977589134243684231352e-1L, 1.570796326794896619231321691639751442101L); + TEST_c_c (cacosh, -0x1.fp-129L, -0.5L, 4.812118250596034474977589134243684231352e-1L, -1.570796326794896619231321691639751442101L); + TEST_c_c (cacosh, 0.5L, 0x1.fp-129L, 3.287317402534702257036015056278368274737e-39L, 1.047197551196597746154214461093167628066L, UNDERFLOW_EXCEPTION_FLOAT); + TEST_c_c (cacosh, -0.5L, 0x1.fp-129L, 3.287317402534702257036015056278368274737e-39L, 2.094395102393195492308428922186335256131L, UNDERFLOW_EXCEPTION_FLOAT); + TEST_c_c (cacosh, 0.5L, -0x1.fp-129L, 3.287317402534702257036015056278368274737e-39L, -1.047197551196597746154214461093167628066L, UNDERFLOW_EXCEPTION_FLOAT); + TEST_c_c (cacosh, -0.5L, -0x1.fp-129L, 3.287317402534702257036015056278368274737e-39L, -2.094395102393195492308428922186335256131L, UNDERFLOW_EXCEPTION_FLOAT); + TEST_c_c (cacosh, 0x1p-23L, 0x1p-23L, 1.192092895507818146886315028596704749235e-7L, 1.570796207585607068450636380271254316214L); + TEST_c_c (cacosh, 0x1p-23L, -0x1p-23L, 1.192092895507818146886315028596704749235e-7L, -1.570796207585607068450636380271254316214L); + TEST_c_c (cacosh, -0x1p-23L, 0x1p-23L, 1.192092895507818146886315028596704749235e-7L, 1.570796446004186170012007003008248567984L); + TEST_c_c (cacosh, -0x1p-23L, -0x1p-23L, 1.192092895507818146886315028596704749235e-7L, -1.570796446004186170012007003008248567984L); + TEST_c_c (cacosh, 0x1.fp-129L, 0x1p-23L, 1.192092895507809676556842485683592032154e-7L, 1.570796326794896619231321691639751442096L); + TEST_c_c (cacosh, 0x1.fp-129L, -0x1p-23L, 1.192092895507809676556842485683592032154e-7L, -1.570796326794896619231321691639751442096L); + TEST_c_c (cacosh, -0x1.fp-129L, 0x1p-23L, 1.192092895507809676556842485683592032154e-7L, 1.570796326794896619231321691639751442101L); + TEST_c_c (cacosh, -0x1.fp-129L, -0x1p-23L, 1.192092895507809676556842485683592032154e-7L, -1.570796326794896619231321691639751442101L); + TEST_c_c (cacosh, 0x1p-23L, 0x1.fp-129L, 2.846900380897747786805634596726756660388e-39L, 1.570796207585607068449789347324000006847L, UNDERFLOW_EXCEPTION_FLOAT); + TEST_c_c (cacosh, -0x1p-23L, 0x1.fp-129L, 2.846900380897747786805634596726756660388e-39L, 1.570796446004186170012854035955502877351L, UNDERFLOW_EXCEPTION_FLOAT); + TEST_c_c (cacosh, 0x1p-23L, -0x1.fp-129L, 2.846900380897747786805634596726756660388e-39L, -1.570796207585607068449789347324000006847L, UNDERFLOW_EXCEPTION_FLOAT); + TEST_c_c (cacosh, -0x1p-23L, -0x1.fp-129L, 2.846900380897747786805634596726756660388e-39L, -1.570796446004186170012854035955502877351L, UNDERFLOW_EXCEPTION_FLOAT); + TEST_c_c (cacosh, 0.0L, 0x1p-23L, 1.192092895507809676556842485683592032154e-7L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0.0L, -0x1p-23L, 1.192092895507809676556842485683592032154e-7L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0.0L, 0x1p-23L, 1.192092895507809676556842485683592032154e-7L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0.0L, -0x1p-23L, 1.192092895507809676556842485683592032154e-7L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0x1p-23L, 0.0L, 0.0L, 1.570796207585607068449789347324000006847L); + TEST_c_c (cacosh, -0x1p-23L, 0.0L, 0.0L, 1.570796446004186170012854035955502877351L); + TEST_c_c (cacosh, 0x1p-23L, -0.0L, 0.0L, -1.570796207585607068449789347324000006847L); + TEST_c_c (cacosh, -0x1p-23L, -0.0L, 0.0L, -1.570796446004186170012854035955502877351L); + TEST_c_c (cacosh, 0x1.fp-129L, 0x1.fp-129L, 2.846900380897727558361783801085126250967e-39L, 1.570796326794896619231321691639751442096L, UNDERFLOW_EXCEPTION_FLOAT); + TEST_c_c (cacosh, 0x1.fp-129L, -0x1.fp-129L, 2.846900380897727558361783801085126250967e-39L, -1.570796326794896619231321691639751442096L, UNDERFLOW_EXCEPTION_FLOAT); + TEST_c_c (cacosh, -0x1.fp-129L, 0x1.fp-129L, 2.846900380897727558361783801085126250967e-39L, 1.570796326794896619231321691639751442101L, UNDERFLOW_EXCEPTION_FLOAT); + TEST_c_c (cacosh, -0x1.fp-129L, -0x1.fp-129L, 2.846900380897727558361783801085126250967e-39L, -1.570796326794896619231321691639751442101L, UNDERFLOW_EXCEPTION_FLOAT); +#ifndef TEST_FLOAT + TEST_c_c (cacosh, 0x1p-52L, 0x0.fffffffffffff8p0L, 8.813735870195429467279863907910458761820e-1L, 1.570796326794896462222075823262236786996L); + TEST_c_c (cacosh, 0x1p-52L, -0x0.fffffffffffff8p0L, 8.813735870195429467279863907910458761820e-1L, -1.570796326794896462222075823262236786996L); + TEST_c_c (cacosh, -0x1p-52L, 0x0.fffffffffffff8p0L, 8.813735870195429467279863907910458761820e-1L, 1.570796326794896776240567560017266097201L); + TEST_c_c (cacosh, -0x1p-52L, -0x0.fffffffffffff8p0L, 8.813735870195429467279863907910458761820e-1L, -1.570796326794896776240567560017266097201L); + TEST_c_c (cacosh, 0x0.fffffffffffff8p0L, 0x1p-52L, 1.171456840272878582596796205397918831268e-8L, 1.895456983915074112227925127005564372844e-8L); + TEST_c_c (cacosh, -0x0.fffffffffffff8p0L, 0x1p-52L, 1.171456840272878582596796205397918831268e-8L, 3.141592634635223399311902261000251614142L); + TEST_c_c (cacosh, 0x0.fffffffffffff8p0L, -0x1p-52L, 1.171456840272878582596796205397918831268e-8L, -1.895456983915074112227925127005564372844e-8L); + TEST_c_c (cacosh, -0x0.fffffffffffff8p0L, -0x1p-52L, 1.171456840272878582596796205397918831268e-8L, -3.141592634635223399311902261000251614142L); + TEST_c_c (cacosh, 0x1.fp-1025L, 0x0.fffffffffffff8p0L, 8.813735870195429467279863907910371604180e-1L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0x1.fp-1025L, -0x0.fffffffffffff8p0L, 8.813735870195429467279863907910371604180e-1L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0x1.fp-1025L, 0x0.fffffffffffff8p0L, 8.813735870195429467279863907910371604180e-1L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0x1.fp-1025L, -0x0.fffffffffffff8p0L, 8.813735870195429467279863907910371604180e-1L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0x0.fffffffffffff8p0L, 0x1.fp-1025L, 3.616396521699973256461764099945789620604e-301L, 1.490116119384765638786343542550461592240e-8L, UNDERFLOW_EXCEPTION_LDOUBLE_IBM); + TEST_c_c (cacosh, -0x0.fffffffffffff8p0L, 0x1.fp-1025L, 3.616396521699973256461764099945789620604e-301L, 3.141592638688632044614986995416067458693L, UNDERFLOW_EXCEPTION_LDOUBLE_IBM); + TEST_c_c (cacosh, 0x0.fffffffffffff8p0L, -0x1.fp-1025L, 3.616396521699973256461764099945789620604e-301L, -1.490116119384765638786343542550461592240e-8L, UNDERFLOW_EXCEPTION_LDOUBLE_IBM); + TEST_c_c (cacosh, -0x0.fffffffffffff8p0L, -0x1.fp-1025L, 3.616396521699973256461764099945789620604e-301L, -3.141592638688632044614986995416067458693L, UNDERFLOW_EXCEPTION_LDOUBLE_IBM); + TEST_c_c (cacosh, 0.0L, 0x0.fffffffffffff8p0L, 8.813735870195429467279863907910371604180e-1L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0.0L, -0x0.fffffffffffff8p0L, 8.813735870195429467279863907910371604180e-1L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0.0L, 0x0.fffffffffffff8p0L, 8.813735870195429467279863907910371604180e-1L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0.0L, -0x0.fffffffffffff8p0L, 8.813735870195429467279863907910371604180e-1L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0x0.fffffffffffff8p0L, 0.0L, 0.0L, 1.490116119384765638786343542550461592240e-8L); + TEST_c_c (cacosh, -0x0.fffffffffffff8p0L, 0.0L, 0.0L, 3.141592638688632044614986995416067458693L); + TEST_c_c (cacosh, 0x0.fffffffffffff8p0L, -0.0L, 0.0L, -1.490116119384765638786343542550461592240e-8L); + TEST_c_c (cacosh, -0x0.fffffffffffff8p0L, -0.0L, 0.0L, -3.141592638688632044614986995416067458693L); +#endif + TEST_c_c (cacosh, 0x1p-52L, 0.5L, 4.812118250596034474977589134243772428682e-1L, 1.570796326794896420628589431857911675917L); + TEST_c_c (cacosh, 0x1p-52L, -0.5L, 4.812118250596034474977589134243772428682e-1L, -1.570796326794896420628589431857911675917L); + TEST_c_c (cacosh, -0x1p-52L, 0.5L, 4.812118250596034474977589134243772428682e-1L, 1.570796326794896817834053951421591208280L); + TEST_c_c (cacosh, -0x1p-52L, -0.5L, 4.812118250596034474977589134243772428682e-1L, -1.570796326794896817834053951421591208280L); + TEST_c_c (cacosh, 0.5L, 0x1p-52L, 2.563950248511418570403591756798643804971e-16L, 1.047197551196597746154214461093186605110L); + TEST_c_c (cacosh, -0.5L, 0x1p-52L, 2.563950248511418570403591756798643804971e-16L, 2.094395102393195492308428922186316279087L); + TEST_c_c (cacosh, 0.5L, -0x1p-52L, 2.563950248511418570403591756798643804971e-16L, -1.047197551196597746154214461093186605110L); + TEST_c_c (cacosh, -0.5L, -0x1p-52L, 2.563950248511418570403591756798643804971e-16L, -2.094395102393195492308428922186316279087L); +#ifndef TEST_FLOAT + TEST_c_c (cacosh, 0x1.fp-1025L, 0.5L, 4.812118250596034474977589134243684231352e-1L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0x1.fp-1025L, -0.5L, 4.812118250596034474977589134243684231352e-1L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0x1.fp-1025L, 0.5L, 4.812118250596034474977589134243684231352e-1L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0x1.fp-1025L, -0.5L, 4.812118250596034474977589134243684231352e-1L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0.5L, 0x1.fp-1025L, 6.222508863508420569166420770843207333493e-309L, 1.047197551196597746154214461093167628066L, UNDERFLOW_EXCEPTION_DOUBLE); + TEST_c_c (cacosh, -0.5L, 0x1.fp-1025L, 6.222508863508420569166420770843207333493e-309L, 2.094395102393195492308428922186335256131L, UNDERFLOW_EXCEPTION_DOUBLE); + TEST_c_c (cacosh, 0.5L, -0x1.fp-1025L, 6.222508863508420569166420770843207333493e-309L, -1.047197551196597746154214461093167628066L, UNDERFLOW_EXCEPTION_DOUBLE); + TEST_c_c (cacosh, -0.5L, -0x1.fp-1025L, 6.222508863508420569166420770843207333493e-309L, -2.094395102393195492308428922186335256131L, UNDERFLOW_EXCEPTION_DOUBLE); +#endif + TEST_c_c (cacosh, 0x1p-52L, 0x1p-52L, 2.220446049250313080847263336181677117148e-16L, 1.570796326794896397186716766608443357372L); + TEST_c_c (cacosh, 0x1p-52L, -0x1p-52L, 2.220446049250313080847263336181677117148e-16L, -1.570796326794896397186716766608443357372L); + TEST_c_c (cacosh, -0x1p-52L, 0x1p-52L, 2.220446049250313080847263336181677117148e-16L, 1.570796326794896841275926616671059526825L); + TEST_c_c (cacosh, -0x1p-52L, -0x1p-52L, 2.220446049250313080847263336181677117148e-16L, -1.570796326794896841275926616671059526825L); +#ifndef TEST_FLOAT + TEST_c_c (cacosh, 0x1.fp-1025L, 0x1p-52L, 2.220446049250313080847263336181622378926e-16L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0x1.fp-1025L, -0x1p-52L, 2.220446049250313080847263336181622378926e-16L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0x1.fp-1025L, 0x1p-52L, 2.220446049250313080847263336181622378926e-16L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0x1.fp-1025L, -0x1p-52L, 2.220446049250313080847263336181622378926e-16L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0x1p-52L, 0x1.fp-1025L, 5.388850751072128349671657362289548938458e-309L, 1.570796326794896397186716766608443357372L, UNDERFLOW_EXCEPTION_DOUBLE); + TEST_c_c (cacosh, -0x1p-52L, 0x1.fp-1025L, 5.388850751072128349671657362289548938458e-309L, 1.570796326794896841275926616671059526825L, UNDERFLOW_EXCEPTION_DOUBLE); + TEST_c_c (cacosh, 0x1p-52L, -0x1.fp-1025L, 5.388850751072128349671657362289548938458e-309L, -1.570796326794896397186716766608443357372L, UNDERFLOW_EXCEPTION_DOUBLE); + TEST_c_c (cacosh, -0x1p-52L, -0x1.fp-1025L, 5.388850751072128349671657362289548938458e-309L, -1.570796326794896841275926616671059526825L, UNDERFLOW_EXCEPTION_DOUBLE); +#endif + TEST_c_c (cacosh, 0.0L, 0x1p-52L, 2.220446049250313080847263336181622378926e-16L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0.0L, -0x1p-52L, 2.220446049250313080847263336181622378926e-16L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0.0L, 0x1p-52L, 2.220446049250313080847263336181622378926e-16L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0.0L, -0x1p-52L, 2.220446049250313080847263336181622378926e-16L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0x1p-52L, 0.0L, 0.0L, 1.570796326794896397186716766608443357372L); + TEST_c_c (cacosh, -0x1p-52L, 0.0L, 0.0L, 1.570796326794896841275926616671059526825L); + TEST_c_c (cacosh, 0x1p-52L, -0.0L, 0.0L, -1.570796326794896397186716766608443357372L); + TEST_c_c (cacosh, -0x1p-52L, -0.0L, 0.0L, -1.570796326794896841275926616671059526825L); +#ifndef TEST_FLOAT + TEST_c_c (cacosh, 0x1.fp-1025L, 0x1.fp-1025L, 5.388850751072128349671657362289416093031e-309L, 1.570796326794896619231321691639751442099L, UNDERFLOW_EXCEPTION_DOUBLE); + TEST_c_c (cacosh, 0x1.fp-1025L, -0x1.fp-1025L, 5.388850751072128349671657362289416093031e-309L, -1.570796326794896619231321691639751442099L, UNDERFLOW_EXCEPTION_DOUBLE); + TEST_c_c (cacosh, -0x1.fp-1025L, 0x1.fp-1025L, 5.388850751072128349671657362289416093031e-309L, 1.570796326794896619231321691639751442099L, UNDERFLOW_EXCEPTION_DOUBLE); + TEST_c_c (cacosh, -0x1.fp-1025L, -0x1.fp-1025L, 5.388850751072128349671657362289416093031e-309L, -1.570796326794896619231321691639751442099L, UNDERFLOW_EXCEPTION_DOUBLE); +#endif +#if defined TEST_LDOUBLE && LDBL_MANT_DIG >= 64 + TEST_c_c (cacosh, 0x1p-63L, 0x0.ffffffffffffffffp0L, 8.813735870195430251942769895627079569937e-1L, 1.570796326794896619154657020805582738025L); + TEST_c_c (cacosh, 0x1p-63L, -0x0.ffffffffffffffffp0L, 8.813735870195430251942769895627079569937e-1L, -1.570796326794896619154657020805582738025L); + TEST_c_c (cacosh, -0x1p-63L, 0x0.ffffffffffffffffp0L, 8.813735870195430251942769895627079569937e-1L, 1.570796326794896619307986362473920146173L); + TEST_c_c (cacosh, -0x1p-63L, -0x0.ffffffffffffffffp0L, 8.813735870195430251942769895627079569937e-1L, -1.570796326794896619307986362473920146173L); + TEST_c_c (cacosh, 0x0.ffffffffffffffffp0L, 0x1p-63L, 2.588578361325995866221775673638805081337e-10L, 4.188407771167967636741951941902992986043e-10L); + TEST_c_c (cacosh, -0x0.ffffffffffffffffp0L, 0x1p-63L, 2.588578361325995866221775673638805081337e-10L, 3.141592653170952461345846619605307690007L); + TEST_c_c (cacosh, 0x0.ffffffffffffffffp0L, -0x1p-63L, 2.588578361325995866221775673638805081337e-10L, -4.188407771167967636741951941902992986043e-10L); + TEST_c_c (cacosh, -0x0.ffffffffffffffffp0L, -0x1p-63L, 2.588578361325995866221775673638805081337e-10L, -3.141592653170952461345846619605307690007L); +# if LDBL_MIN_EXP <= -16381 + TEST_c_c (cacosh, 0x1.fp-16385L, 0x0.ffffffffffffffffp0L, 8.813735870195430251942769895627079569917e-1L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0x1.fp-16385L, -0x0.ffffffffffffffffp0L, 8.813735870195430251942769895627079569917e-1L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0x1.fp-16385L, 0x0.ffffffffffffffffp0L, 8.813735870195430251942769895627079569917e-1L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0x1.fp-16385L, -0x0.ffffffffffffffffp0L, 8.813735870195430251942769895627079569917e-1L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0x0.ffffffffffffffffp0L, 0x1.fp-16385L, 2.472906068161537187835415298076415423459e-4923L, 3.292722539913596233371825532007990724506e-10L); + TEST_c_c (cacosh, -0x0.ffffffffffffffffp0L, 0x1.fp-16385L, 2.472906068161537187835415298076415423459e-4923L, 3.141592653260520984471283759942320330996L); + TEST_c_c (cacosh, 0x0.ffffffffffffffffp0L, -0x1.fp-16385L, 2.472906068161537187835415298076415423459e-4923L, -3.292722539913596233371825532007990724506e-10L); + TEST_c_c (cacosh, -0x0.ffffffffffffffffp0L, -0x1.fp-16385L, 2.472906068161537187835415298076415423459e-4923L, -3.141592653260520984471283759942320330996L); +# endif + TEST_c_c (cacosh, 0.0L, 0x0.ffffffffffffffffp0L, 8.813735870195430251942769895627079569917e-1L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0.0L, -0x0.ffffffffffffffffp0L, 8.813735870195430251942769895627079569917e-1L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0.0L, 0x0.ffffffffffffffffp0L, 8.813735870195430251942769895627079569917e-1L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0.0L, -0x0.ffffffffffffffffp0L, 8.813735870195430251942769895627079569917e-1L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0x0.ffffffffffffffffp0L, 0.0L, 0.0L, 3.292722539913596233371825532007990724506e-10L); + TEST_c_c (cacosh, -0x0.ffffffffffffffffp0L, 0.0L, 0.0L, 3.141592653260520984471283759942320330996L); + TEST_c_c (cacosh, 0x0.ffffffffffffffffp0L, -0.0L, 0.0L, -3.292722539913596233371825532007990724506e-10L); + TEST_c_c (cacosh, -0x0.ffffffffffffffffp0L, -0.0L, 0.0L, -3.141592653260520984471283759942320330996L); +#endif + TEST_c_c (cacosh, 0x1p-63L, 0.5L, 4.812118250596034474977589134243684231373e-1L, 1.570796326794896619134347701278529840650L); + TEST_c_c (cacosh, 0x1p-63L, -0.5L, 4.812118250596034474977589134243684231373e-1L, -1.570796326794896619134347701278529840650L); + TEST_c_c (cacosh, -0x1p-63L, 0.5L, 4.812118250596034474977589134243684231373e-1L, 1.570796326794896619328295682000973043547L); + TEST_c_c (cacosh, -0x1p-63L, -0.5L, 4.812118250596034474977589134243684231373e-1L, -1.570796326794896619328295682000973043547L); + TEST_c_c (cacosh, 0.5L, 0x1p-63L, 1.251928832280966098829878787499365228659e-19L, 1.047197551196597746154214461093167628070L); + TEST_c_c (cacosh, -0.5L, 0x1p-63L, 1.251928832280966098829878787499365228659e-19L, 2.094395102393195492308428922186335256127L); + TEST_c_c (cacosh, 0.5L, -0x1p-63L, 1.251928832280966098829878787499365228659e-19L, -1.047197551196597746154214461093167628070L); + TEST_c_c (cacosh, -0.5L, -0x1p-63L, 1.251928832280966098829878787499365228659e-19L, -2.094395102393195492308428922186335256127L); +#if defined TEST_LDOUBLE && LDBL_MIN_EXP <= -16381 + TEST_c_c (cacosh, 0x1.fp-16385L, 0.5L, 4.812118250596034474977589134243684231352e-1L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0x1.fp-16385L, -0.5L, 4.812118250596034474977589134243684231352e-1L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0x1.fp-16385L, 0.5L, 4.812118250596034474977589134243684231352e-1L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0x1.fp-16385L, -0.5L, 4.812118250596034474977589134243684231352e-1L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0.5L, 0x1.fp-16385L, 9.402257155670418112159334875199821342890e-4933L, 1.047197551196597746154214461093167628066L, UNDERFLOW_EXCEPTION); + TEST_c_c (cacosh, -0.5L, 0x1.fp-16385L, 9.402257155670418112159334875199821342890e-4933L, 2.094395102393195492308428922186335256131L, UNDERFLOW_EXCEPTION); + TEST_c_c (cacosh, 0.5L, -0x1.fp-16385L, 9.402257155670418112159334875199821342890e-4933L, -1.047197551196597746154214461093167628066L, UNDERFLOW_EXCEPTION); + TEST_c_c (cacosh, -0.5L, -0x1.fp-16385L, 9.402257155670418112159334875199821342890e-4933L, -2.094395102393195492308428922186335256131L, UNDERFLOW_EXCEPTION); +#endif + TEST_c_c (cacosh, 0x1p-63L, 0x1p-63L, 1.084202172485504434007452800869941711430e-19L, 1.570796326794896619122901474391200998698L); + TEST_c_c (cacosh, 0x1p-63L, -0x1p-63L, 1.084202172485504434007452800869941711430e-19L, -1.570796326794896619122901474391200998698L); + TEST_c_c (cacosh, -0x1p-63L, 0x1p-63L, 1.084202172485504434007452800869941711430e-19L, 1.570796326794896619339741908888301885499L); + TEST_c_c (cacosh, -0x1p-63L, -0x1p-63L, 1.084202172485504434007452800869941711430e-19L, -1.570796326794896619339741908888301885499L); +#if defined TEST_LDOUBLE && LDBL_MIN_EXP <= -16381 + TEST_c_c (cacosh, 0x1.fp-16385L, 0x1p-63L, 1.084202172485504434007452800869941711424e-19L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0x1.fp-16385L, -0x1p-63L, 1.084202172485504434007452800869941711424e-19L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0x1.fp-16385L, 0x1p-63L, 1.084202172485504434007452800869941711424e-19L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0x1.fp-16385L, -0x1p-63L, 1.084202172485504434007452800869941711424e-19L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0x1p-63L, 0x1.fp-16385L, 8.142593549724601460479922838826119584465e-4933L, 1.570796326794896619122901474391200998698L, UNDERFLOW_EXCEPTION); + TEST_c_c (cacosh, -0x1p-63L, 0x1.fp-16385L, 8.142593549724601460479922838826119584465e-4933L, 1.570796326794896619339741908888301885499L, UNDERFLOW_EXCEPTION); + TEST_c_c (cacosh, 0x1p-63L, -0x1.fp-16385L, 8.142593549724601460479922838826119584465e-4933L, -1.570796326794896619122901474391200998698L, UNDERFLOW_EXCEPTION); + TEST_c_c (cacosh, -0x1p-63L, -0x1.fp-16385L, 8.142593549724601460479922838826119584465e-4933L, -1.570796326794896619339741908888301885499L, UNDERFLOW_EXCEPTION); +#endif + TEST_c_c (cacosh, 0.0L, 0x1p-63L, 1.084202172485504434007452800869941711424e-19L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0.0L, -0x1p-63L, 1.084202172485504434007452800869941711424e-19L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0.0L, 0x1p-63L, 1.084202172485504434007452800869941711424e-19L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0.0L, -0x1p-63L, 1.084202172485504434007452800869941711424e-19L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0x1p-63L, 0.0L, 0.0L, 1.570796326794896619122901474391200998698L); + TEST_c_c (cacosh, -0x1p-63L, 0.0L, 0.0L, 1.570796326794896619339741908888301885499L); + TEST_c_c (cacosh, 0x1p-63L, -0.0L, 0.0L, -1.570796326794896619122901474391200998698L); + TEST_c_c (cacosh, -0x1p-63L, -0.0L, 0.0L, -1.570796326794896619339741908888301885499L); +#if defined TEST_LDOUBLE && LDBL_MIN_EXP <= -16381 + TEST_c_c (cacosh, 0x1.fp-16385L, 0x1.fp-16385L, 8.142593549724601460479922838826119584417e-4933L, 1.570796326794896619231321691639751442099L, UNDERFLOW_EXCEPTION); + TEST_c_c (cacosh, 0x1.fp-16385L, -0x1.fp-16385L, 8.142593549724601460479922838826119584417e-4933L, -1.570796326794896619231321691639751442099L, UNDERFLOW_EXCEPTION); + TEST_c_c (cacosh, -0x1.fp-16385L, 0x1.fp-16385L, 8.142593549724601460479922838826119584417e-4933L, 1.570796326794896619231321691639751442099L, UNDERFLOW_EXCEPTION); + TEST_c_c (cacosh, -0x1.fp-16385L, -0x1.fp-16385L, 8.142593549724601460479922838826119584417e-4933L, -1.570796326794896619231321691639751442099L, UNDERFLOW_EXCEPTION); +#endif +#if defined TEST_LDOUBLE && LDBL_MANT_DIG >= 106 + TEST_c_c (cacosh, 0x1p-105L, 0x0.ffffffffffffffffffffffffffcp0L, 8.813735870195430252326093249797835932642e-1L, 1.570796326794896619231321691639734010571L); + TEST_c_c (cacosh, 0x1p-105L, -0x0.ffffffffffffffffffffffffffcp0L, 8.813735870195430252326093249797835932642e-1L, -1.570796326794896619231321691639734010571L); + TEST_c_c (cacosh, -0x1p-105L, 0x0.ffffffffffffffffffffffffffcp0L, 8.813735870195430252326093249797835932642e-1L, 1.570796326794896619231321691639768873627L); + TEST_c_c (cacosh, -0x1p-105L, -0x0.ffffffffffffffffffffffffffcp0L, 8.813735870195430252326093249797835932642e-1L, -1.570796326794896619231321691639768873627L); + TEST_c_c (cacosh, 0x0.ffffffffffffffffffffffffffcp0L, 0x1p-105L, 1.234330349600789959989661887846005659983e-16L, 1.997188458999618357060632049675702684031e-16L); + TEST_c_c (cacosh, -0x0.ffffffffffffffffffffffffffcp0L, 0x1p-105L, 1.234330349600789959989661887846005659983e-16L, 3.141592653589793038743797483317667178134L); + TEST_c_c (cacosh, 0x0.ffffffffffffffffffffffffffcp0L, -0x1p-105L, 1.234330349600789959989661887846005659983e-16L, -1.997188458999618357060632049675702684031e-16L); + TEST_c_c (cacosh, -0x0.ffffffffffffffffffffffffffcp0L, -0x1p-105L, 1.234330349600789959989661887846005659983e-16L, -3.141592653589793038743797483317667178134L); + TEST_c_c (cacosh, 0x1.fp-1025L, 0x0.ffffffffffffffffffffffffffcp0L, 8.813735870195430252326093249797835932642e-1L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0x1.fp-1025L, -0x0.ffffffffffffffffffffffffffcp0L, 8.813735870195430252326093249797835932642e-1L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0x1.fp-1025L, 0x0.ffffffffffffffffffffffffffcp0L, 8.813735870195430252326093249797835932642e-1L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0x1.fp-1025L, -0x0.ffffffffffffffffffffffffffcp0L, 8.813735870195430252326093249797835932642e-1L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0x0.ffffffffffffffffffffffffffcp0L, 0x1.fp-1025L, 3.432186888910770473784103112009399360940e-293L, 1.570092458683775059393382371963565104164e-16L, UNDERFLOW_EXCEPTION_LDOUBLE_IBM); + TEST_c_c (cacosh, -0x0.ffffffffffffffffffffffffffcp0L, 0x1.fp-1025L, 3.432186888910770473784103112009399360940e-293L, 3.141592653589793081453397514901996944859L, UNDERFLOW_EXCEPTION_LDOUBLE_IBM); + TEST_c_c (cacosh, 0x0.ffffffffffffffffffffffffffcp0L, -0x1.fp-1025L, 3.432186888910770473784103112009399360940e-293L, -1.570092458683775059393382371963565104164e-16L, UNDERFLOW_EXCEPTION_LDOUBLE_IBM); + TEST_c_c (cacosh, -0x0.ffffffffffffffffffffffffffcp0L, -0x1.fp-1025L, 3.432186888910770473784103112009399360940e-293L, -3.141592653589793081453397514901996944859L, UNDERFLOW_EXCEPTION_LDOUBLE_IBM); + TEST_c_c (cacosh, 0.0L, 0x0.ffffffffffffffffffffffffffcp0L, 8.813735870195430252326093249797835932642e-1L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0.0L, -0x0.ffffffffffffffffffffffffffcp0L, 8.813735870195430252326093249797835932642e-1L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0.0L, 0x0.ffffffffffffffffffffffffffcp0L, 8.813735870195430252326093249797835932642e-1L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0.0L, -0x0.ffffffffffffffffffffffffffcp0L, 8.813735870195430252326093249797835932642e-1L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0x0.ffffffffffffffffffffffffffcp0L, 0.0L, 0.0L, 1.570092458683775059393382371963565104164e-16L); + TEST_c_c (cacosh, -0x0.ffffffffffffffffffffffffffcp0L, 0.0L, 0.0L, 3.141592653589793081453397514901996944859L); + TEST_c_c (cacosh, 0x0.ffffffffffffffffffffffffffcp0L, -0.0L, 0.0L, -1.570092458683775059393382371963565104164e-16L); + TEST_c_c (cacosh, -0x0.ffffffffffffffffffffffffffcp0L, -0.0L, 0.0L, -3.141592653589793081453397514901996944859L); +#endif + TEST_c_c (cacosh, 0x1p-105L, 0.5L, 4.812118250596034474977589134243684231352e-1L, 1.570796326794896619231321691639729392766L); + TEST_c_c (cacosh, 0x1p-105L, -0.5L, 4.812118250596034474977589134243684231352e-1L, -1.570796326794896619231321691639729392766L); + TEST_c_c (cacosh, -0x1p-105L, 0.5L, 4.812118250596034474977589134243684231352e-1L, 1.570796326794896619231321691639773491431L); + TEST_c_c (cacosh, -0x1p-105L, -0.5L, 4.812118250596034474977589134243684231352e-1L, -1.570796326794896619231321691639773491431L); + TEST_c_c (cacosh, 0.5L, 0x1p-105L, 2.846556599890768890940941645338546615370e-32L, 1.047197551196597746154214461093167628066L); + TEST_c_c (cacosh, -0.5L, 0x1p-105L, 2.846556599890768890940941645338546615370e-32L, 2.094395102393195492308428922186335256131L); + TEST_c_c (cacosh, 0.5L, -0x1p-105L, 2.846556599890768890940941645338546615370e-32L, -1.047197551196597746154214461093167628066L); + TEST_c_c (cacosh, -0.5L, -0x1p-105L, 2.846556599890768890940941645338546615370e-32L, -2.094395102393195492308428922186335256131L); + TEST_c_c (cacosh, 0x1p-105L, 0x1p-105L, 2.465190328815661891911651766508706967729e-32L, 1.570796326794896619231321691639726790195L); + TEST_c_c (cacosh, 0x1p-105L, -0x1p-105L, 2.465190328815661891911651766508706967729e-32L, -1.570796326794896619231321691639726790195L); + TEST_c_c (cacosh, -0x1p-105L, 0x1p-105L, 2.465190328815661891911651766508706967729e-32L, 1.570796326794896619231321691639776094002L); + TEST_c_c (cacosh, -0x1p-105L, -0x1p-105L, 2.465190328815661891911651766508706967729e-32L, -1.570796326794896619231321691639776094002L); +#ifndef TEST_FLOAT + TEST_c_c (cacosh, 0x1.fp-1025L, 0x1p-105L, 2.465190328815661891911651766508706967729e-32L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0x1.fp-1025L, -0x1p-105L, 2.465190328815661891911651766508706967729e-32L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0x1.fp-1025L, 0x1p-105L, 2.465190328815661891911651766508706967729e-32L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0x1.fp-1025L, -0x1p-105L, 2.465190328815661891911651766508706967729e-32L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0x1p-105L, 0x1.fp-1025L, 5.388850751072128349671657362289416093031e-309L, 1.570796326794896619231321691639726790195L, UNDERFLOW_EXCEPTION_DOUBLE); + TEST_c_c (cacosh, -0x1p-105L, 0x1.fp-1025L, 5.388850751072128349671657362289416093031e-309L, 1.570796326794896619231321691639776094002L, UNDERFLOW_EXCEPTION_DOUBLE); + TEST_c_c (cacosh, 0x1p-105L, -0x1.fp-1025L, 5.388850751072128349671657362289416093031e-309L, -1.570796326794896619231321691639726790195L, UNDERFLOW_EXCEPTION_DOUBLE); + TEST_c_c (cacosh, -0x1p-105L, -0x1.fp-1025L, 5.388850751072128349671657362289416093031e-309L, -1.570796326794896619231321691639776094002L, UNDERFLOW_EXCEPTION_DOUBLE); +#endif + TEST_c_c (cacosh, 0.0L, 0x1p-105L, 2.465190328815661891911651766508706967729e-32L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0.0L, -0x1p-105L, 2.465190328815661891911651766508706967729e-32L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0.0L, 0x1p-105L, 2.465190328815661891911651766508706967729e-32L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0.0L, -0x1p-105L, 2.465190328815661891911651766508706967729e-32L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0x1p-105L, 0.0L, 0.0L, 1.570796326794896619231321691639726790195L); + TEST_c_c (cacosh, -0x1p-105L, 0.0L, 0.0L, 1.570796326794896619231321691639776094002L); + TEST_c_c (cacosh, 0x1p-105L, -0.0L, 0.0L, -1.570796326794896619231321691639726790195L); + TEST_c_c (cacosh, -0x1p-105L, -0.0L, 0.0L, -1.570796326794896619231321691639776094002L); +#if defined TEST_LDOUBLE && LDBL_MANT_DIG >= 113 + TEST_c_c (cacosh, 0x1p-112L, 0x0.ffffffffffffffffffffffffffff8p0L, 8.813735870195430252326093249797922409363e-1L, 1.570796326794896619231321691639751305915L); + TEST_c_c (cacosh, 0x1p-112L, -0x0.ffffffffffffffffffffffffffff8p0L, 8.813735870195430252326093249797922409363e-1L, -1.570796326794896619231321691639751305915L); + TEST_c_c (cacosh, -0x1p-112L, 0x0.ffffffffffffffffffffffffffff8p0L, 8.813735870195430252326093249797922409363e-1L, 1.570796326794896619231321691639751578282L); + TEST_c_c (cacosh, -0x1p-112L, -0x0.ffffffffffffffffffffffffffff8p0L, 8.813735870195430252326093249797922409363e-1L, -1.570796326794896619231321691639751578282L); + TEST_c_c (cacosh, 0x0.ffffffffffffffffffffffffffff8p0L, 0x1p-112L, 1.091004200533850618345330909857103457781e-17L, 1.765281878332676474347460257221369818872e-17L); + TEST_c_c (cacosh, -0x0.ffffffffffffffffffffffffffff8p0L, 0x1p-112L, 1.091004200533850618345330909857103457781e-17L, 3.141592653589793220809824599952738140723L); + TEST_c_c (cacosh, 0x0.ffffffffffffffffffffffffffff8p0L, -0x1p-112L, 1.091004200533850618345330909857103457781e-17L, -1.765281878332676474347460257221369818872e-17L); + TEST_c_c (cacosh, -0x0.ffffffffffffffffffffffffffff8p0L, -0x1p-112L, 1.091004200533850618345330909857103457781e-17L, -3.141592653589793220809824599952738140723L); + TEST_c_c (cacosh, 0x1.fp-16385L, 0x0.ffffffffffffffffffffffffffff8p0L, 8.813735870195430252326093249797922409363e-1L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0x1.fp-16385L, -0x0.ffffffffffffffffffffffffffff8p0L, 8.813735870195430252326093249797922409363e-1L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0x1.fp-16385L, 0x0.ffffffffffffffffffffffffffff8p0L, 8.813735870195430252326093249797922409363e-1L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0x1.fp-16385L, -0x0.ffffffffffffffffffffffffffff8p0L, 8.813735870195430252326093249797922409363e-1L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0x0.ffffffffffffffffffffffffffff8p0L, 0x1.fp-16385L, 5.867357004219059108790368268900490184505e-4916L, 1.387778780781445675529539585113525401762e-17L); + TEST_c_c (cacosh, -0x0.ffffffffffffffffffffffffffff8p0L, 0x1.fp-16385L, 5.867357004219059108790368268900490184505e-4916L, 3.141592653589793224584855575465046128902L); + TEST_c_c (cacosh, 0x0.ffffffffffffffffffffffffffff8p0L, -0x1.fp-16385L, 5.867357004219059108790368268900490184505e-4916L, -1.387778780781445675529539585113525401762e-17L); + TEST_c_c (cacosh, -0x0.ffffffffffffffffffffffffffff8p0L, -0x1.fp-16385L, 5.867357004219059108790368268900490184505e-4916L, -3.141592653589793224584855575465046128902L); + TEST_c_c (cacosh, 0.0L, 0x0.ffffffffffffffffffffffffffff8p0L, 8.813735870195430252326093249797922409363e-1L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0.0L, -0x0.ffffffffffffffffffffffffffff8p0L, 8.813735870195430252326093249797922409363e-1L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0.0L, 0x0.ffffffffffffffffffffffffffff8p0L, 8.813735870195430252326093249797922409363e-1L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0.0L, -0x0.ffffffffffffffffffffffffffff8p0L, 8.813735870195430252326093249797922409363e-1L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0x0.ffffffffffffffffffffffffffff8p0L, 0.0L, 0.0L, 1.387778780781445675529539585113525401762e-17L); + TEST_c_c (cacosh, -0x0.ffffffffffffffffffffffffffff8p0L, 0.0L, 0.0L, 3.141592653589793224584855575465046128902L); + TEST_c_c (cacosh, 0x0.ffffffffffffffffffffffffffff8p0L, -0.0L, 0.0L, -1.387778780781445675529539585113525401762e-17L); + TEST_c_c (cacosh, -0x0.ffffffffffffffffffffffffffff8p0L, -0.0L, 0.0L, -3.141592653589793224584855575465046128902L); +#endif + TEST_c_c (cacosh, 0x1p-112L, 0.5L, 4.812118250596034474977589134243684231352e-1L, 1.570796326794896619231321691639751269838L); + TEST_c_c (cacosh, 0x1p-112L, -0.5L, 4.812118250596034474977589134243684231352e-1L, -1.570796326794896619231321691639751269838L); + TEST_c_c (cacosh, -0x1p-112L, 0.5L, 4.812118250596034474977589134243684231352e-1L, 1.570796326794896619231321691639751614359L); + TEST_c_c (cacosh, -0x1p-112L, -0.5L, 4.812118250596034474977589134243684231352e-1L, -1.570796326794896619231321691639751614359L); + TEST_c_c (cacosh, 0.5L, 0x1p-112L, 2.223872343664663196047610660420739543258e-34L, 1.047197551196597746154214461093167628066L); + TEST_c_c (cacosh, -0.5L, 0x1p-112L, 2.223872343664663196047610660420739543258e-34L, 2.094395102393195492308428922186335256131L); + TEST_c_c (cacosh, 0.5L, -0x1p-112L, 2.223872343664663196047610660420739543258e-34L, -1.047197551196597746154214461093167628066L); + TEST_c_c (cacosh, -0.5L, -0x1p-112L, 2.223872343664663196047610660420739543258e-34L, -2.094395102393195492308428922186335256131L); + TEST_c_c (cacosh, 0x1p-112L, 0x1p-112L, 1.925929944387235853055977942584927318538e-34L, 1.570796326794896619231321691639751249506L); + TEST_c_c (cacosh, 0x1p-112L, -0x1p-112L, 1.925929944387235853055977942584927318538e-34L, -1.570796326794896619231321691639751249506L); + TEST_c_c (cacosh, -0x1p-112L, 0x1p-112L, 1.925929944387235853055977942584927318538e-34L, 1.570796326794896619231321691639751634692L); + TEST_c_c (cacosh, -0x1p-112L, -0x1p-112L, 1.925929944387235853055977942584927318538e-34L, -1.570796326794896619231321691639751634692L); +#if defined TEST_LDOUBLE && LDBL_MIN_EXP <= -16381 + TEST_c_c (cacosh, 0x1.fp-16385L, 0x1p-112L, 1.925929944387235853055977942584927318538e-34L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0x1.fp-16385L, -0x1p-112L, 1.925929944387235853055977942584927318538e-34L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0x1.fp-16385L, 0x1p-112L, 1.925929944387235853055977942584927318538e-34L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0x1.fp-16385L, -0x1p-112L, 1.925929944387235853055977942584927318538e-34L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0x1p-112L, 0x1.fp-16385L, 8.142593549724601460479922838826119584417e-4933L, 1.570796326794896619231321691639751249506L, UNDERFLOW_EXCEPTION); + TEST_c_c (cacosh, -0x1p-112L, 0x1.fp-16385L, 8.142593549724601460479922838826119584417e-4933L, 1.570796326794896619231321691639751634692L, UNDERFLOW_EXCEPTION); + TEST_c_c (cacosh, 0x1p-112L, -0x1.fp-16385L, 8.142593549724601460479922838826119584417e-4933L, -1.570796326794896619231321691639751249506L, UNDERFLOW_EXCEPTION); + TEST_c_c (cacosh, -0x1p-112L, -0x1.fp-16385L, 8.142593549724601460479922838826119584417e-4933L, -1.570796326794896619231321691639751634692L, UNDERFLOW_EXCEPTION); +#endif + TEST_c_c (cacosh, 0.0L, 0x1p-112L, 1.925929944387235853055977942584927318538e-34L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0.0L, -0x1p-112L, 1.925929944387235853055977942584927318538e-34L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0.0L, 0x1p-112L, 1.925929944387235853055977942584927318538e-34L, 1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, -0.0L, -0x1p-112L, 1.925929944387235853055977942584927318538e-34L, -1.570796326794896619231321691639751442099L); + TEST_c_c (cacosh, 0x1p-112L, 0.0L, 0.0L, 1.570796326794896619231321691639751249506L); + TEST_c_c (cacosh, -0x1p-112L, 0.0L, 0.0L, 1.570796326794896619231321691639751634692L); + TEST_c_c (cacosh, 0x1p-112L, -0.0L, 0.0L, -1.570796326794896619231321691639751249506L); + TEST_c_c (cacosh, -0x1p-112L, -0.0L, 0.0L, -1.570796326794896619231321691639751634692L); + TEST_c_c (cacosh, 0.75L, 1.25L, 1.13239363160530819522266333696834467L, 1.11752014915610270578240049553777969L); TEST_c_c (cacosh, -2, -3, 1.9833870299165354323470769028940395L, -2.1414491111159960199416055713254211L); diff --git a/math/s_cacosh.c b/math/s_cacosh.c index 9c31cb80ac..1e502fa913 100644 --- a/math/s_cacosh.c +++ b/math/s_cacosh.c @@ -64,31 +64,25 @@ __cacosh (__complex__ double x) __real__ res = 0.0; __imag__ res = __copysign (M_PI_2, __imag__ x); } - /* The factor 16 is just a guess. */ - else if (16.0 * fabs (__imag__ x) < fabs (__real__ x)) - { - /* Kahan's formula which avoid cancellation through subtraction in - some cases. */ - res = 2.0 * __clog (__csqrt ((x + 1.0) / 2.0) + __csqrt ((x - 1.0) / 2.0)); - if (signbit (__real__ res)) - __real__ res = 0.0; - } else { __complex__ double y; - __real__ y = (__real__ x - __imag__ x) * (__real__ x + __imag__ x) - 1.0; - __imag__ y = 2.0 * __real__ x * __imag__ x; - - y = __csqrt (y); + __real__ y = -__imag__ x; + __imag__ y = __real__ x; - if (signbit (__real__ x)) - y = -y; + y = __kernel_casinh (y, 1); - __real__ y += __real__ x; - __imag__ y += __imag__ x; - - res = __clog (y); + if (signbit (__imag__ x)) + { + __real__ res = __real__ y; + __imag__ res = -__imag__ y; + } + else + { + __real__ res = -__real__ y; + __imag__ res = __imag__ y; + } } return res; diff --git a/math/s_cacoshf.c b/math/s_cacoshf.c index 74cb2760d6..1e692f139e 100644 --- a/math/s_cacoshf.c +++ b/math/s_cacoshf.c @@ -64,32 +64,25 @@ __cacoshf (__complex__ float x) __real__ res = 0.0; __imag__ res = __copysignf (M_PI_2, __imag__ x); } - /* The factor 16 is just a guess. */ - else if (16.0 * fabsf (__imag__ x) < fabsf (__real__ x)) - { - /* Kahan's formula which avoid cancellation through subtraction in - some cases. */ - res = 2.0 * __clogf (__csqrtf ((x + 1.0) / 2.0) - + __csqrtf ((x - 1.0) / 2.0)); - if (signbit (__real__ res)) - __real__ res = 0.0f; - } else { __complex__ float y; - __real__ y = (__real__ x - __imag__ x) * (__real__ x + __imag__ x) - 1.0; - __imag__ y = 2.0 * __real__ x * __imag__ x; - - y = __csqrtf (y); + __real__ y = -__imag__ x; + __imag__ y = __real__ x; - if (signbit (__real__ x)) - y = -y; + y = __kernel_casinhf (y, 1); - __real__ y += __real__ x; - __imag__ y += __imag__ x; - - res = __clogf (y); + if (signbit (__imag__ x)) + { + __real__ res = __real__ y; + __imag__ res = -__imag__ y; + } + else + { + __real__ res = -__real__ y; + __imag__ res = __imag__ y; + } } return res; diff --git a/math/s_cacoshl.c b/math/s_cacoshl.c index 7fd0b8206c..c110fabe3b 100644 --- a/math/s_cacoshl.c +++ b/math/s_cacoshl.c @@ -64,32 +64,25 @@ __cacoshl (__complex__ long double x) __real__ res = 0.0; __imag__ res = __copysignl (M_PI_2l, __imag__ x); } - /* The factor 16 is just a guess. */ - else if (16.0L * fabsl (__imag__ x) < fabsl (__real__ x)) - { - /* Kahan's formula which avoid cancellation through subtraction in - some cases. */ - res = 2.0L * __clogl (__csqrtl ((x + 1.0L) / 2.0L) - + __csqrtl ((x - 1.0L) / 2.0L)); - if (signbit (__real__ res)) - __real__ res = 0.0L; - } else { __complex__ long double y; - __real__ y = (__real__ x - __imag__ x) * (__real__ x + __imag__ x) - 1.0; - __imag__ y = 2.0 * __real__ x * __imag__ x; - - y = __csqrtl (y); + __real__ y = -__imag__ x; + __imag__ y = __real__ x; - if (signbit (__real__ x)) - y = -y; + y = __kernel_casinhl (y, 1); - __real__ y += __real__ x; - __imag__ y += __imag__ x; - - res = __clogl (y); + if (signbit (__imag__ x)) + { + __real__ res = __real__ y; + __imag__ res = -__imag__ y; + } + else + { + __real__ res = -__real__ y; + __imag__ res = __imag__ y; + } } return res; diff --git a/sysdeps/i386/fpu/libm-test-ulps b/sysdeps/i386/fpu/libm-test-ulps index 31e5d94595..4de455c8c0 100644 --- a/sysdeps/i386/fpu/libm-test-ulps +++ b/sysdeps/i386/fpu/libm-test-ulps @@ -983,116 +983,778 @@ ldouble: 1 # cacosh Test "Real part of: cacosh (+0 + 0.5 i) == 0.4812118250596034474977589134243684231352 + pi/2 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (+0 + 1.0 i) == 0.8813735870195430252326093249797923090282 + pi/2 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Real part of: cacosh (+0 + 1.5 i) == 1.194763217287109304111930828519090523536 + pi/2 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (+0 - 0.5 i) == 0.4812118250596034474977589134243684231352 - pi/2 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (+0 - 1.0 i) == 0.8813735870195430252326093249797923090282 - pi/2 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Real part of: cacosh (+0 - 1.5 i) == 1.194763217287109304111930828519090523536 - pi/2 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (-0 + 0.5 i) == 0.4812118250596034474977589134243684231352 + pi/2 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (-0 + 1.0 i) == 0.8813735870195430252326093249797923090282 + pi/2 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Real part of: cacosh (-0 + 1.5 i) == 1.194763217287109304111930828519090523536 + pi/2 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (-0 - 0.5 i) == 0.4812118250596034474977589134243684231352 - pi/2 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (-0 - 1.0 i) == 0.8813735870195430252326093249797923090282 - pi/2 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Real part of: cacosh (-0 - 1.5 i) == 1.194763217287109304111930828519090523536 - pi/2 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (-0.0 + 0x0.ffffffffffffffffp0 i) == 8.813735870195430251942769895627079569917e-1 + 1.570796326794896619231321691639751442099 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0.0 + 0x1.000002p0 i) == 8.813736713132375348727889167749389235161e-1 + 1.570796326794896619231321691639751442099 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0.0 + 0x1p-23 i) == 1.192092895507809676556842485683592032154e-7 + 1.570796326794896619231321691639751442099 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0.0 - 0x0.ffffffffffffffffp0 i) == 8.813735870195430251942769895627079569917e-1 - 1.570796326794896619231321691639751442099 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0.0 - 0x1.000002p0 i) == 8.813736713132375348727889167749389235161e-1 - 1.570796326794896619231321691639751442099 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0.0 - 0x1p-23 i) == 1.192092895507809676556842485683592032154e-7 - 1.570796326794896619231321691639751442099 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0.25 + 1.0 i) == 8.924633639033482359562124741744951972772e-1 + 1.747098759571863549650000258275841544745 i": +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (-0.25 + 1.0 i) == 8.924633639033482359562124741744951972772e-1 + 1.747098759571863549650000258275841544745 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (-0.25 - 1.0 i) == 8.924633639033482359562124741744951972772e-1 - 1.747098759571863549650000258275841544745 i": +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (-0.25 - 1.0 i) == 8.924633639033482359562124741744951972772e-1 - 1.747098759571863549650000258275841544745 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (-0.5 + 0x1.fp-1025 i) == 6.222508863508420569166420770843207333493e-309 + 2.094395102393195492308428922186335256131 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0.5 + 0x1.fp-129 i) == 3.287317402534702257036015056278368274737e-39 + 2.094395102393195492308428922186335256131 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0.5 + 0x1.fp-16385 i) == 9.402257155670418112159334875199821342890e-4933 + 2.094395102393195492308428922186335256131 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0.5 + 0x1p-23 i) == 1.376510308240943236356088341381173571841e-7 + 2.094395102393190022547898764614298351924 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (-0.5 + 0x1p-52 i) == 2.563950248511418570403591756798643804971e-16 + 2.094395102393195492308428922186316279087 i": +double: 1 +idouble: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0.5 + 1.0 i) == 9.261330313501824245501244453057873152694e-1 + 1.920235389652109912858733517715121394831 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0.5 - 0x1.fp-1025 i) == 6.222508863508420569166420770843207333493e-309 - 2.094395102393195492308428922186335256131 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0.5 - 0x1.fp-129 i) == 3.287317402534702257036015056278368274737e-39 - 2.094395102393195492308428922186335256131 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0.5 - 0x1.fp-16385 i) == 9.402257155670418112159334875199821342890e-4933 - 2.094395102393195492308428922186335256131 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0.5 - 0x1p-23 i) == 1.376510308240943236356088341381173571841e-7 - 2.094395102393190022547898764614298351924 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (-0.5 - 0x1p-52 i) == 2.563950248511418570403591756798643804971e-16 - 2.094395102393195492308428922186316279087 i": +double: 1 +idouble: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0.5 - 1.0 i) == 9.261330313501824245501244453057873152694e-1 - 1.920235389652109912858733517715121394831 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0x0.fffffffffffff8p0 + 0x1p-52 i) == 1.171456840272878582596796205397918831268e-8 + 3.141592634635223399311902261000251614142 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (-0x0.fffffffffffff8p0 - 0x1p-52 i) == 1.171456840272878582596796205397918831268e-8 - 3.141592634635223399311902261000251614142 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (-0x0.ffffffffffffffffp0 + 0x1.fp-16385 i) == 2.472906068161537187835415298076415423459e-4923 + 3.141592653260520984471283759942320330996 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0x0.ffffffffffffffffp0 + 0x1p-63 i) == 2.588578361325995866221775673638805081337e-10 + 3.141592653170952461345846619605307690007 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0x0.ffffffffffffffffp0 - 0x1.fp-16385 i) == 2.472906068161537187835415298076415423459e-4923 - 3.141592653260520984471283759942320330996 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0x0.ffffffffffffffffp0 - 0x1p-63 i) == 2.588578361325995866221775673638805081337e-10 - 3.141592653170952461345846619605307690007 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0x1.0000000000000002p0 + 0x1p-63 i) == 5.116146586219826555037807251857670783420e-10 + 3.141592653377875508152537040020250564229 i": +ildouble: 2 +ldouble: 2 +Test "Real part of: cacosh (-0x1.0000000000000002p0 - 0x1p-63 i) == 5.116146586219826555037807251857670783420e-10 - 3.141592653377875508152537040020250564229 i": +ildouble: 2 +ldouble: 2 +Test "Real part of: cacosh (-0x1.0000000000001p0 + 0.0 i) == 2.107342425544701550354780375182800088393e-8 + 3.141592653589793238462643383279502884197 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0x1.0000000000001p0 + 0x1.fp-1025 i) == 2.107342425544701550354780375182800088393e-8 + 3.141592653589793238462643383279502884197 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0x1.0000000000001p0 + 0x1p-52 i) == 2.315303644582684770975188768022139415020e-8 + 3.141592643999491532482601997450598791535 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0x1.0000000000001p0 - 0.0 i) == 2.107342425544701550354780375182800088393e-8 - 3.141592653589793238462643383279502884197 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0x1.0000000000001p0 - 0x1.fp-1025 i) == 2.107342425544701550354780375182800088393e-8 - 3.141592653589793238462643383279502884197 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0x1.0000000000001p0 - 0x1p-52 i) == 2.315303644582684770975188768022139415020e-8 - 3.141592643999491532482601997450598791535 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0x1.fp-10 + 1.0 i) == 8.813742198809567991336704287826445879025e-1 + 1.572134236154454360143880041170803681211 i": +double: 1 +idouble: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0x1.fp-10 - 1.0 i) == 8.813742198809567991336704287826445879025e-1 - 1.572134236154454360143880041170803681211 i": +double: 1 +idouble: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0x1.fp-100 + 1.0 i) == 8.813735870195430252326093249797923090282e-1 + 1.570796326794896619231321691640832196834 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Real part of: cacosh (-0x1.fp-100 - 1.0 i) == 8.813735870195430252326093249797923090282e-1 - 1.570796326794896619231321691640832196834 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Real part of: cacosh (-0x1.fp-1000 + 1.0 i) == 8.813735870195430252326093249797923090282e-1 + 1.570796326794896619231321691639751442099 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (-0x1.fp-1000 - 1.0 i) == 8.813735870195430252326093249797923090282e-1 - 1.570796326794896619231321691639751442099 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (-0x1.fp-1025 + 1.0 i) == 8.813735870195430252326093249797923090282e-1 + 1.570796326794896619231321691639751442099 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (-0x1.fp-1025 + 1.5 i) == 1.194763217287109304111930828519090523536 + 1.570796326794896619231321691639751442099 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (-0x1.fp-1025 - 1.0 i) == 8.813735870195430252326093249797923090282e-1 - 1.570796326794896619231321691639751442099 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (-0x1.fp-1025 - 1.5 i) == 1.194763217287109304111930828519090523536 - 1.570796326794896619231321691639751442099 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (-0x1.fp-129 + 0.5 i) == 4.812118250596034474977589134243684231352e-1 + 1.570796326794896619231321691639751442101 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (-0x1.fp-129 + 0x1.000002p0 i) == 8.813736713132375348727889167749389235161e-1 + 1.570796326794896619231321691639751442101 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0x1.fp-129 + 0x1p-23 i) == 1.192092895507809676556842485683592032154e-7 + 1.570796326794896619231321691639751442101 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0x1.fp-129 + 1.0 i) == 8.813735870195430252326093249797923090282e-1 + 1.570796326794896619231321691639751442101 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Real part of: cacosh (-0x1.fp-129 + 1.5 i) == 1.194763217287109304111930828519090523536 + 1.570796326794896619231321691639751442100 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (-0x1.fp-129 - 0.5 i) == 4.812118250596034474977589134243684231352e-1 - 1.570796326794896619231321691639751442101 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (-0x1.fp-129 - 0x1.000002p0 i) == 8.813736713132375348727889167749389235161e-1 - 1.570796326794896619231321691639751442101 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0x1.fp-129 - 0x1p-23 i) == 1.192092895507809676556842485683592032154e-7 - 1.570796326794896619231321691639751442101 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0x1.fp-129 - 1.0 i) == 8.813735870195430252326093249797923090282e-1 - 1.570796326794896619231321691639751442101 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Real part of: cacosh (-0x1.fp-129 - 1.5 i) == 1.194763217287109304111930828519090523536 - 1.570796326794896619231321691639751442100 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (-0x1.fp-16385 + 0x0.ffffffffffffffffp0 i) == 8.813735870195430251942769895627079569917e-1 + 1.570796326794896619231321691639751442099 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0x1.fp-16385 - 0x0.ffffffffffffffffp0 i) == 8.813735870195430251942769895627079569917e-1 - 1.570796326794896619231321691639751442099 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0x1.fp-30 + 1.0 i) == 8.813735870195430258081932989769495326854e-1 + 1.570796328070826603447840231892468927106 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0x1.fp-30 - 1.0 i) == 8.813735870195430258081932989769495326854e-1 - 1.570796328070826603447840231892468927106 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0x1p-105 + 0.5 i) == 4.812118250596034474977589134243684231352e-1 + 1.570796326794896619231321691639773491431 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (-0x1p-105 - 0.5 i) == 4.812118250596034474977589134243684231352e-1 - 1.570796326794896619231321691639773491431 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (-0x1p-112 + 0.5 i) == 4.812118250596034474977589134243684231352e-1 + 1.570796326794896619231321691639751614359 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (-0x1p-112 - 0.5 i) == 4.812118250596034474977589134243684231352e-1 - 1.570796326794896619231321691639751614359 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (-0x1p-23 + 0.5 i) == 4.812118250596059896127318386463676808798e-1 + 1.570796433418926613232299739606181733819 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Real part of: cacosh (-0x1p-23 + 0x0.ffffffp0 i) == 8.813735448726963984495965873956465777250e-1 + 1.570796411088596153167306681647360823228 i": +double: 1 +idouble: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0x1p-23 - 0.5 i) == 4.812118250596059896127318386463676808798e-1 - 1.570796433418926613232299739606181733819 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Real part of: cacosh (-0x1p-23 - 0x0.ffffffp0 i) == 8.813735448726963984495965873956465777250e-1 - 1.570796411088596153167306681647360823228 i": +double: 1 +idouble: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0x1p-52 + 0.5 i) == 4.812118250596034474977589134243772428682e-1 + 1.570796326794896817834053951421591208280 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0x1p-52 - 0.5 i) == 4.812118250596034474977589134243772428682e-1 - 1.570796326794896817834053951421591208280 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0x1p-63 + 0.5 i) == 4.812118250596034474977589134243684231373e-1 + 1.570796326794896619328295682000973043547 i": +float: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0x1p-63 + 0x0.ffffffffffffffffp0 i) == 8.813735870195430251942769895627079569937e-1 + 1.570796326794896619307986362473920146173 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0x1p-63 - 0.5 i) == 4.812118250596034474977589134243684231373e-1 - 1.570796326794896619328295682000973043547 i": +float: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0x1p-63 - 0x0.ffffffffffffffffp0 i) == 8.813735870195430251942769895627079569937e-1 - 1.570796326794896619307986362473920146173 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-1.0 + 0.5 i) == 7.328576759736452608886724437653071523305e-1 + 2.466703808003786858297978415967328452322 i": +float: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (-1.0 + 0.5 i) == 7.328576759736452608886724437653071523305e-1 + 2.466703808003786858297978415967328452322 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (-1.0 + 0x1.fp-30 i) == 4.247867098745151888768727039216644758847e-5 + 3.141550174918818561961484385371624132331 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-1.0 - 0.5 i) == 7.328576759736452608886724437653071523305e-1 - 2.466703808003786858297978415967328452322 i": +float: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (-1.0 - 0.5 i) == 7.328576759736452608886724437653071523305e-1 - 2.466703808003786858297978415967328452322 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (-1.0 - 0x1.fp-30 i) == 4.247867098745151888768727039216644758847e-5 - 3.141550174918818561961484385371624132331 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-1.5 + +0 i) == 0.9624236501192068949955178268487368462704 + pi i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-1.5 + 0x1.fp-1025 i) == 9.624236501192068949955178268487368462704e-1 + 3.141592653589793238462643383279502884197 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-1.5 + 0x1.fp-129 i) == 9.624236501192068949955178268487368462704e-1 + 3.141592653589793238462643383279502884195 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-1.5 + 0x1.fp-16385 i) == 9.624236501192068949955178268487368462704e-1 + 3.141592653589793238462643383279502884197 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-1.5 - 0 i) == 0.9624236501192068949955178268487368462704 - pi i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-1.5 - 0x1.fp-1025 i) == 9.624236501192068949955178268487368462704e-1 - 3.141592653589793238462643383279502884197 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-1.5 - 0x1.fp-129 i) == 9.624236501192068949955178268487368462704e-1 - 3.141592653589793238462643383279502884195 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-1.5 - 0x1.fp-16385 i) == 9.624236501192068949955178268487368462704e-1 - 3.141592653589793238462643383279502884197 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0.0 + 0x0.ffffffffffffffffp0 i) == 8.813735870195430251942769895627079569917e-1 + 1.570796326794896619231321691639751442099 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0.0 + 0x1.000002p0 i) == 8.813736713132375348727889167749389235161e-1 + 1.570796326794896619231321691639751442099 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0.0 + 0x1p-23 i) == 1.192092895507809676556842485683592032154e-7 + 1.570796326794896619231321691639751442099 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0.0 - 0x0.ffffffffffffffffp0 i) == 8.813735870195430251942769895627079569917e-1 - 1.570796326794896619231321691639751442099 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0.0 - 0x1.000002p0 i) == 8.813736713132375348727889167749389235161e-1 - 1.570796326794896619231321691639751442099 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0.0 - 0x1p-23 i) == 1.192092895507809676556842485683592032154e-7 - 1.570796326794896619231321691639751442099 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0.25 + 1.0 i) == 8.924633639033482359562124741744951972772e-1 + 1.394493894017929688812643125003661339452 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0.25 - 1.0 i) == 8.924633639033482359562124741744951972772e-1 - 1.394493894017929688812643125003661339452 i": +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (0.5 + +0 i) == +0 + 1.047197551196597746154214461093167628066 i": double: 1 -float: 1 idouble: 1 -ifloat: 1 +Test "Real part of: cacosh (0.5 + 0x1.fp-1025 i) == 6.222508863508420569166420770843207333493e-309 + 1.047197551196597746154214461093167628066 i": ildouble: 1 ldouble: 1 -Test "Real part of: cacosh (+0 + 1.0 i) == 0.8813735870195430252326093249797923090282 + pi/2 i": +Test "Imaginary part of: cacosh (0.5 + 0x1.fp-1025 i) == 6.222508863508420569166420770843207333493e-309 + 1.047197551196597746154214461093167628066 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (0.5 + 0x1.fp-129 i) == 3.287317402534702257036015056278368274737e-39 + 1.047197551196597746154214461093167628066 i": +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (0.5 + 0x1.fp-129 i) == 3.287317402534702257036015056278368274737e-39 + 1.047197551196597746154214461093167628066 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (0.5 + 0x1.fp-16385 i) == 9.402257155670418112159334875199821342890e-4933 + 1.047197551196597746154214461093167628066 i": +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (0.5 + 0x1p-105 i) == 2.846556599890768890940941645338546615370e-32 + 1.047197551196597746154214461093167628066 i": +double: 1 +idouble: 1 +Test "Imaginary part of: cacosh (0.5 + 0x1p-112 i) == 2.223872343664663196047610660420739543258e-34 + 1.047197551196597746154214461093167628066 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (0.5 + 0x1p-23 i) == 1.376510308240943236356088341381173571841e-7 + 1.047197551196603215914744618665204532273 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (0.5 + 0x1p-52 i) == 2.563950248511418570403591756798643804971e-16 + 1.047197551196597746154214461093186605110 i": +double: 1 +idouble: 1 +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (0.5 + 0x1p-52 i) == 2.563950248511418570403591756798643804971e-16 + 1.047197551196597746154214461093186605110 i": +double: 1 +idouble: 1 +Test "Imaginary part of: cacosh (0.5 + 0x1p-63 i) == 1.251928832280966098829878787499365228659e-19 + 1.047197551196597746154214461093167628070 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (0.5 + 1.0 i) == 9.261330313501824245501244453057873152694e-1 + 1.221357263937683325603909865564381489366 i": double: 1 float: 1 idouble: 1 ifloat: 1 -Test "Real part of: cacosh (+0 + 1.5 i) == 1.194763217287109304111930828519090523536 + pi/2 i": +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (0.5 - 0 i) == +0 - 1.047197551196597746154214461093167628066 i": double: 1 idouble: 1 -Test "Real part of: cacosh (+0 - 0.5 i) == 0.4812118250596034474977589134243684231352 - pi/2 i": +Test "Real part of: cacosh (0.5 - 0x1.fp-1025 i) == 6.222508863508420569166420770843207333493e-309 - 1.047197551196597746154214461093167628066 i": +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (0.5 - 0x1.fp-1025 i) == 6.222508863508420569166420770843207333493e-309 - 1.047197551196597746154214461093167628066 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (0.5 - 0x1.fp-129 i) == 3.287317402534702257036015056278368274737e-39 - 1.047197551196597746154214461093167628066 i": +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (0.5 - 0x1.fp-129 i) == 3.287317402534702257036015056278368274737e-39 - 1.047197551196597746154214461093167628066 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (0.5 - 0x1.fp-16385 i) == 9.402257155670418112159334875199821342890e-4933 - 1.047197551196597746154214461093167628066 i": +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (0.5 - 0x1p-105 i) == 2.846556599890768890940941645338546615370e-32 - 1.047197551196597746154214461093167628066 i": +double: 1 +idouble: 1 +Test "Imaginary part of: cacosh (0.5 - 0x1p-112 i) == 2.223872343664663196047610660420739543258e-34 - 1.047197551196597746154214461093167628066 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (0.5 - 0x1p-23 i) == 1.376510308240943236356088341381173571841e-7 - 1.047197551196603215914744618665204532273 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (0.5 - 0x1p-52 i) == 2.563950248511418570403591756798643804971e-16 - 1.047197551196597746154214461093186605110 i": +double: 1 +idouble: 1 +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (0.5 - 0x1p-52 i) == 2.563950248511418570403591756798643804971e-16 - 1.047197551196597746154214461093186605110 i": +double: 1 +idouble: 1 +Test "Imaginary part of: cacosh (0.5 - 0x1p-63 i) == 1.251928832280966098829878787499365228659e-19 - 1.047197551196597746154214461093167628070 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (0.5 - 1.0 i) == 9.261330313501824245501244453057873152694e-1 - 1.221357263937683325603909865564381489366 i": double: 1 float: 1 idouble: 1 ifloat: 1 ildouble: 1 ldouble: 1 -Test "Real part of: cacosh (+0 - 1.0 i) == 0.8813735870195430252326093249797923090282 - pi/2 i": +Test "Real part of: cacosh (0.75 + 1.25 i) == 1.13239363160530819522266333696834467 + 1.11752014915610270578240049553777969 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0x0.fffffffffffff8p0 + 0x1p-52 i) == 1.171456840272878582596796205397918831268e-8 + 1.895456983915074112227925127005564372844e-8 i": +double: 1 +idouble: 1 +Test "Imaginary part of: cacosh (0x0.fffffffffffff8p0 + 0x1p-52 i) == 1.171456840272878582596796205397918831268e-8 + 1.895456983915074112227925127005564372844e-8 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0x0.fffffffffffff8p0 - 0x1p-52 i) == 1.171456840272878582596796205397918831268e-8 - 1.895456983915074112227925127005564372844e-8 i": +double: 1 +idouble: 1 +Test "Imaginary part of: cacosh (0x0.fffffffffffff8p0 - 0x1p-52 i) == 1.171456840272878582596796205397918831268e-8 - 1.895456983915074112227925127005564372844e-8 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0x0.ffffffffffffffffp0 + 0x1.fp-16385 i) == 2.472906068161537187835415298076415423459e-4923 + 3.292722539913596233371825532007990724506e-10 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0x0.ffffffffffffffffp0 + 0x1p-63 i) == 2.588578361325995866221775673638805081337e-10 + 4.188407771167967636741951941902992986043e-10 i": +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (0x0.ffffffffffffffffp0 + 0x1p-63 i) == 2.588578361325995866221775673638805081337e-10 + 4.188407771167967636741951941902992986043e-10 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0x0.ffffffffffffffffp0 - 0x1.fp-16385 i) == 2.472906068161537187835415298076415423459e-4923 - 3.292722539913596233371825532007990724506e-10 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0x0.ffffffffffffffffp0 - 0x1p-63 i) == 2.588578361325995866221775673638805081337e-10 - 4.188407771167967636741951941902992986043e-10 i": +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (0x0.ffffffffffffffffp0 - 0x1p-63 i) == 2.588578361325995866221775673638805081337e-10 - 4.188407771167967636741951941902992986043e-10 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0x1.0000000000000002p0 + 0x1p-63 i) == 5.116146586219826555037807251857670783420e-10 + 2.119177303101063432592523199680782317447e-10 i": +ildouble: 2 +ldouble: 2 +Test "Imaginary part of: cacosh (0x1.0000000000000002p0 + 0x1p-63 i) == 5.116146586219826555037807251857670783420e-10 + 2.119177303101063432592523199680782317447e-10 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0x1.0000000000000002p0 - 0x1p-63 i) == 5.116146586219826555037807251857670783420e-10 - 2.119177303101063432592523199680782317447e-10 i": +ildouble: 2 +ldouble: 2 +Test "Imaginary part of: cacosh (0x1.0000000000000002p0 - 0x1p-63 i) == 5.116146586219826555037807251857670783420e-10 - 2.119177303101063432592523199680782317447e-10 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0x1.0000000000001p0 + 0.0 i) == 2.107342425544701550354780375182800088393e-8 + 0.0 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0x1.0000000000001p0 + 0x1.fp-1025 i) == 2.107342425544701550354780375182800088393e-8 + 2.557178503953494342609835913586108008322e-301 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0x1.0000000000001p0 + 0x1p-52 i) == 2.315303644582684770975188768022139415020e-8 + 9.590301705980041385828904092662391018164e-9 i": +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (0x1.0000000000001p0 + 0x1p-52 i) == 2.315303644582684770975188768022139415020e-8 + 9.590301705980041385828904092662391018164e-9 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0x1.0000000000001p0 - 0.0 i) == 2.107342425544701550354780375182800088393e-8 - 0.0 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0x1.0000000000001p0 - 0x1.fp-1025 i) == 2.107342425544701550354780375182800088393e-8 - 2.557178503953494342609835913586108008322e-301 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0x1.0000000000001p0 - 0x1p-52 i) == 2.315303644582684770975188768022139415020e-8 - 9.590301705980041385828904092662391018164e-9 i": +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (0x1.0000000000001p0 - 0x1p-52 i) == 2.315303644582684770975188768022139415020e-8 - 9.590301705980041385828904092662391018164e-9 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0x1.fp-10 + 1.0 i) == 8.813742198809567991336704287826445879025e-1 + 1.569458417435338878318763342108699202986 i": +double: 1 +idouble: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0x1.fp-10 - 1.0 i) == 8.813742198809567991336704287826445879025e-1 - 1.569458417435338878318763342108699202986 i": +double: 1 +idouble: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0x1.fp-100 + 1.0 i) == 8.813735870195430252326093249797923090282e-1 + 1.570796326794896619231321691638670687364 i": double: 1 float: 1 idouble: 1 ifloat: 1 -Test "Real part of: cacosh (+0 - 1.5 i) == 1.194763217287109304111930828519090523536 - pi/2 i": +Test "Real part of: cacosh (0x1.fp-100 - 1.0 i) == 8.813735870195430252326093249797923090282e-1 - 1.570796326794896619231321691638670687364 i": double: 1 +float: 1 idouble: 1 -Test "Real part of: cacosh (-0 + 0.5 i) == 0.4812118250596034474977589134243684231352 + pi/2 i": +ifloat: 1 +Test "Real part of: cacosh (0x1.fp-1000 + 1.0 i) == 8.813735870195430252326093249797923090282e-1 + 1.570796326794896619231321691639751442099 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (0x1.fp-1000 - 1.0 i) == 8.813735870195430252326093249797923090282e-1 - 1.570796326794896619231321691639751442099 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (0x1.fp-1025 + 1.0 i) == 8.813735870195430252326093249797923090282e-1 + 1.570796326794896619231321691639751442099 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (0x1.fp-1025 + 1.5 i) == 1.194763217287109304111930828519090523536 + 1.570796326794896619231321691639751442099 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (0x1.fp-1025 - 1.0 i) == 8.813735870195430252326093249797923090282e-1 - 1.570796326794896619231321691639751442099 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (0x1.fp-1025 - 1.5 i) == 1.194763217287109304111930828519090523536 - 1.570796326794896619231321691639751442099 i": double: 1 -float: 1 idouble: 1 +Test "Real part of: cacosh (0x1.fp-129 + 0.5 i) == 4.812118250596034474977589134243684231352e-1 + 1.570796326794896619231321691639751442096 i": +float: 1 ifloat: 1 +Test "Real part of: cacosh (0x1.fp-129 + 0x1.000002p0 i) == 8.813736713132375348727889167749389235161e-1 + 1.570796326794896619231321691639751442097 i": ildouble: 1 ldouble: 1 -Test "Real part of: cacosh (-0 + 1.0 i) == 0.8813735870195430252326093249797923090282 + pi/2 i": +Test "Real part of: cacosh (0x1.fp-129 + 0x1p-23 i) == 1.192092895507809676556842485683592032154e-7 + 1.570796326794896619231321691639751442096 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0x1.fp-129 + 1.0 i) == 8.813735870195430252326093249797923090282e-1 + 1.570796326794896619231321691639751442097 i": double: 1 float: 1 idouble: 1 ifloat: 1 -Test "Real part of: cacosh (-0 + 1.5 i) == 1.194763217287109304111930828519090523536 + pi/2 i": +Test "Real part of: cacosh (0x1.fp-129 + 1.5 i) == 1.194763217287109304111930828519090523536 + 1.570796326794896619231321691639751442097 i": double: 1 idouble: 1 -Test "Real part of: cacosh (-0 - 0.5 i) == 0.4812118250596034474977589134243684231352 - pi/2 i": +Test "Real part of: cacosh (0x1.fp-129 - 0.5 i) == 4.812118250596034474977589134243684231352e-1 - 1.570796326794896619231321691639751442096 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (0x1.fp-129 - 0x1.000002p0 i) == 8.813736713132375348727889167749389235161e-1 - 1.570796326794896619231321691639751442097 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0x1.fp-129 - 0x1p-23 i) == 1.192092895507809676556842485683592032154e-7 - 1.570796326794896619231321691639751442096 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0x1.fp-129 - 1.0 i) == 8.813735870195430252326093249797923090282e-1 - 1.570796326794896619231321691639751442097 i": double: 1 float: 1 idouble: 1 ifloat: 1 +Test "Real part of: cacosh (0x1.fp-129 - 1.5 i) == 1.194763217287109304111930828519090523536 - 1.570796326794896619231321691639751442097 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (0x1.fp-16385 + 0x0.ffffffffffffffffp0 i) == 8.813735870195430251942769895627079569917e-1 + 1.570796326794896619231321691639751442099 i": ildouble: 1 ldouble: 1 -Test "Real part of: cacosh (-0 - 1.0 i) == 0.8813735870195430252326093249797923090282 - pi/2 i": +Test "Real part of: cacosh (0x1.fp-16385 - 0x0.ffffffffffffffffp0 i) == 8.813735870195430251942769895627079569917e-1 - 1.570796326794896619231321691639751442099 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0x1.fp-30 + 1.0 i) == 8.813735870195430258081932989769495326854e-1 + 1.570796325518966635014803151387033957091 i": double: 1 float: 1 idouble: 1 ifloat: 1 -Test "Real part of: cacosh (-0 - 1.5 i) == 1.194763217287109304111930828519090523536 - pi/2 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0x1.fp-30 - 1.0 i) == 8.813735870195430258081932989769495326854e-1 - 1.570796325518966635014803151387033957091 i": double: 1 +float: 1 idouble: 1 -Test "Imaginary part of: cacosh (-0.5 + +0 i) == +0 + 2.094395102393195492308428922186335256131 i": +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0x1.fp1023 + 0x1.fp1023 i) == 7.107906849659093345062145442726115449315e2 + 7.853981633974483096156608458198757210493e-1 i": double: 1 idouble: 1 -Test "Imaginary part of: cacosh (-0.5 - 0 i) == +0 - 2.094395102393195492308428922186335256131 i": +Test "Real part of: cacosh (0x1.fp127 + 0x1.fp127 i) == 8.973081118419833726837456344608533993585e1 + 7.853981633974483096156608458198757210493e-1 i": double: 1 idouble: 1 -Test "Real part of: cacosh (-1.5 + +0 i) == 0.9624236501192068949955178268487368462704 + pi i": +Test "Real part of: cacosh (0x1p-105 + 0.5 i) == 4.812118250596034474977589134243684231352e-1 + 1.570796326794896619231321691639729392766 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (0x1p-105 - 0.5 i) == 4.812118250596034474977589134243684231352e-1 - 1.570796326794896619231321691639729392766 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (0x1p-112 + 0.5 i) == 4.812118250596034474977589134243684231352e-1 + 1.570796326794896619231321691639751269838 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (0x1p-112 - 0.5 i) == 4.812118250596034474977589134243684231352e-1 - 1.570796326794896619231321691639751269838 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (0x1p-23 + 0.5 i) == 4.812118250596059896127318386463676808798e-1 + 1.570796220170866625230343643673321150378 i": double: 1 float: 1 idouble: 1 ifloat: 1 +Test "Real part of: cacosh (0x1p-23 + 0x0.ffffffp0 i) == 8.813735448726963984495965873956465777250e-1 + 1.570796242501197085295336701632142060969 i": +double: 1 +idouble: 1 ildouble: 1 ldouble: 1 -Test "Real part of: cacosh (-1.5 - 0 i) == 0.9624236501192068949955178268487368462704 - pi i": +Test "Real part of: cacosh (0x1p-23 - 0.5 i) == 4.812118250596059896127318386463676808798e-1 - 1.570796220170866625230343643673321150378 i": double: 1 float: 1 idouble: 1 ifloat: 1 +Test "Real part of: cacosh (0x1p-23 - 0x0.ffffffp0 i) == 8.813735448726963984495965873956465777250e-1 - 1.570796242501197085295336701632142060969 i": +double: 1 +idouble: 1 ildouble: 1 ldouble: 1 -Test "Real part of: cacosh (-2 - 3 i) == 1.9833870299165354323470769028940395 - 2.1414491111159960199416055713254211 i": +Test "Real part of: cacosh (0x1p-52 + 0.5 i) == 4.812118250596034474977589134243772428682e-1 + 1.570796326794896420628589431857911675917 i": double: 1 -float: 9 +float: 1 idouble: 1 -ifloat: 9 -ildouble: 6 -ldouble: 6 -Test "Imaginary part of: cacosh (-2 - 3 i) == 1.9833870299165354323470769028940395 - 2.1414491111159960199416055713254211 i": +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0x1p-52 - 0.5 i) == 4.812118250596034474977589134243772428682e-1 - 1.570796326794896420628589431857911675917 i": double: 1 -float: 4 +float: 1 idouble: 1 -ifloat: 4 +ifloat: 1 ildouble: 1 ldouble: 1 -Test "Real part of: cacosh (0.75 + 1.25 i) == 1.13239363160530819522266333696834467 + 1.11752014915610270578240049553777969 i": +Test "Real part of: cacosh (0x1p-63 + 0.5 i) == 4.812118250596034474977589134243684231373e-1 + 1.570796326794896619134347701278529840650 i": +float: 1 +ifloat: 1 ildouble: 1 ldouble: 1 -Test "Real part of: cacosh (1.5 + +0 i) == 0.9624236501192068949955178268487368462704 + +0 i": +Test "Real part of: cacosh (0x1p-63 + 0x0.ffffffffffffffffp0 i) == 8.813735870195430251942769895627079569937e-1 + 1.570796326794896619154657020805582738025 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0x1p-63 - 0.5 i) == 4.812118250596034474977589134243684231373e-1 - 1.570796326794896619134347701278529840650 i": +float: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0x1p-63 - 0x0.ffffffffffffffffp0 i) == 8.813735870195430251942769895627079569937e-1 - 1.570796326794896619154657020805582738025 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (1.0 + 0.5 i) == 7.328576759736452608886724437653071523305e-1 + 6.748888455860063801646649673121744318756e-1 i": +float: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (1.0 + 0.5 i) == 7.328576759736452608886724437653071523305e-1 + 6.748888455860063801646649673121744318756e-1 i": +float: 1 +ifloat: 1 +Test "Imaginary part of: cacosh (1.0 + 0x1.fp-10 i) == 4.350501469856803800217957402220976497152e-2 + 4.349129763101882771258049954181971959031e-2 i": double: 1 float: 1 idouble: 1 ifloat: 1 ildouble: 1 ldouble: 1 -Test "Real part of: cacosh (1.5 - 0 i) == 0.9624236501192068949955178268487368462704 - 0 i": +Test "Real part of: cacosh (1.0 + 0x1.fp-30 i) == 4.247867098745151888768727039216644758847e-5 + 4.247867097467650115899790787875186617316e-5 i": +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (1.0 + 0x1.fp-30 i) == 4.247867098745151888768727039216644758847e-5 + 4.247867097467650115899790787875186617316e-5 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (1.0 - 0.5 i) == 7.328576759736452608886724437653071523305e-1 - 6.748888455860063801646649673121744318756e-1 i": +float: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (1.0 - 0.5 i) == 7.328576759736452608886724437653071523305e-1 - 6.748888455860063801646649673121744318756e-1 i": +float: 1 +ifloat: 1 +Test "Imaginary part of: cacosh (1.0 - 0x1.fp-10 i) == 4.350501469856803800217957402220976497152e-2 - 4.349129763101882771258049954181971959031e-2 i": double: 1 float: 1 idouble: 1 ifloat: 1 ildouble: 1 ldouble: 1 +Test "Real part of: cacosh (1.0 - 0x1.fp-30 i) == 4.247867098745151888768727039216644758847e-5 - 4.247867097467650115899790787875186617316e-5 i": +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (1.0 - 0x1.fp-30 i) == 4.247867098745151888768727039216644758847e-5 - 4.247867097467650115899790787875186617316e-5 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (1.5 + +0 i) == 0.9624236501192068949955178268487368462704 + +0 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (1.5 + 0x1.fp-1025 i) == 9.624236501192068949955178268487368462704e-1 + 4.819934639999230680322935210539402497827e-309 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (1.5 + 0x1.fp-129 i) == 9.624236501192068949955178268487368462704e-1 + 2.546345110742945032959687790021055102355e-39 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (1.5 + 0x1.fp-16385 i) == 9.624236501192068949955178268487368462704e-1 + 7.282957076134209141226696333885150260319e-4933 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (1.5 - 0 i) == 0.9624236501192068949955178268487368462704 - 0 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (1.5 - 0x1.fp-1025 i) == 9.624236501192068949955178268487368462704e-1 - 4.819934639999230680322935210539402497827e-309 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (1.5 - 0x1.fp-129 i) == 9.624236501192068949955178268487368462704e-1 - 2.546345110742945032959687790021055102355e-39 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (1.5 - 0x1.fp-16385 i) == 9.624236501192068949955178268487368462704e-1 - 7.282957076134209141226696333885150260319e-4933 i": +ildouble: 1 +ldouble: 1 # casin Test "Imaginary part of: casin (+0 + 0.5 i) == +0 + 0.4812118250596034474977589134243684231352 i": @@ -5455,17 +6117,17 @@ ldouble: 2 Function: Real part of "cacosh": double: 1 -float: 9 +float: 1 idouble: 1 -ifloat: 9 -ildouble: 6 -ldouble: 6 +ifloat: 1 +ildouble: 2 +ldouble: 2 Function: Imaginary part of "cacosh": double: 1 -float: 4 +float: 1 idouble: 1 -ifloat: 4 +ifloat: 1 ildouble: 1 ldouble: 1 diff --git a/sysdeps/x86_64/fpu/libm-test-ulps b/sysdeps/x86_64/fpu/libm-test-ulps index 29167f388d..28f4bfc0de 100644 --- a/sysdeps/x86_64/fpu/libm-test-ulps +++ b/sysdeps/x86_64/fpu/libm-test-ulps @@ -1195,96 +1195,1011 @@ ldouble: 1 Test "Real part of: cacosh (+0 + 0.5 i) == 0.4812118250596034474977589134243684231352 + pi/2 i": float: 1 ifloat: 1 +Test "Real part of: cacosh (+0 + 1.0 i) == 0.8813735870195430252326093249797923090282 + pi/2 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Real part of: cacosh (+0 + 1.5 i) == 1.194763217287109304111930828519090523536 + pi/2 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (+0 - 0.5 i) == 0.4812118250596034474977589134243684231352 - pi/2 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (+0 - 1.0 i) == 0.8813735870195430252326093249797923090282 - pi/2 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Real part of: cacosh (+0 - 1.5 i) == 1.194763217287109304111930828519090523536 - pi/2 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (-0 + 0.5 i) == 0.4812118250596034474977589134243684231352 + pi/2 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (-0 + 1.0 i) == 0.8813735870195430252326093249797923090282 + pi/2 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Real part of: cacosh (-0 + 1.5 i) == 1.194763217287109304111930828519090523536 + pi/2 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (-0 - 0.5 i) == 0.4812118250596034474977589134243684231352 - pi/2 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (-0 - 1.0 i) == 0.8813735870195430252326093249797923090282 - pi/2 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Real part of: cacosh (-0 - 1.5 i) == 1.194763217287109304111930828519090523536 - pi/2 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (-0.0 + 0x0.ffffffffffffffffp0 i) == 8.813735870195430251942769895627079569917e-1 + 1.570796326794896619231321691639751442099 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0.0 + 0x1.000002p0 i) == 8.813736713132375348727889167749389235161e-1 + 1.570796326794896619231321691639751442099 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0.0 + 0x1p-23 i) == 1.192092895507809676556842485683592032154e-7 + 1.570796326794896619231321691639751442099 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0.0 - 0x0.ffffffffffffffffp0 i) == 8.813735870195430251942769895627079569917e-1 - 1.570796326794896619231321691639751442099 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0.0 - 0x1.000002p0 i) == 8.813736713132375348727889167749389235161e-1 - 1.570796326794896619231321691639751442099 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0.0 - 0x1p-23 i) == 1.192092895507809676556842485683592032154e-7 - 1.570796326794896619231321691639751442099 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0.25 + 1.0 i) == 8.924633639033482359562124741744951972772e-1 + 1.747098759571863549650000258275841544745 i": +float: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (-0.25 + 1.0 i) == 8.924633639033482359562124741744951972772e-1 + 1.747098759571863549650000258275841544745 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Real part of: cacosh (-0.25 - 1.0 i) == 8.924633639033482359562124741744951972772e-1 - 1.747098759571863549650000258275841544745 i": +float: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (-0.25 - 1.0 i) == 8.924633639033482359562124741744951972772e-1 - 1.747098759571863549650000258275841544745 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Real part of: cacosh (-0.5 + 0x1.fp-1025 i) == 6.222508863508420569166420770843207333493e-309 + 2.094395102393195492308428922186335256131 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0.5 + 0x1.fp-129 i) == 3.287317402534702257036015056278368274737e-39 + 2.094395102393195492308428922186335256131 i": +double: 1 +idouble: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0.5 + 0x1.fp-16385 i) == 9.402257155670418112159334875199821342890e-4933 + 2.094395102393195492308428922186335256131 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0.5 + 0x1p-105 i) == 2.846556599890768890940941645338546615370e-32 + 2.094395102393195492308428922186335256131 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (-0.5 + 0x1p-112 i) == 2.223872343664663196047610660420739543258e-34 + 2.094395102393195492308428922186335256131 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (-0.5 + 0x1p-23 i) == 1.376510308240943236356088341381173571841e-7 + 2.094395102393190022547898764614298351924 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (-0.5 + 0x1p-52 i) == 2.563950248511418570403591756798643804971e-16 + 2.094395102393195492308428922186316279087 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0.5 + 1.0 i) == 9.261330313501824245501244453057873152694e-1 + 1.920235389652109912858733517715121394831 i": +double: 1 +idouble: 1 +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (-0.5 + 1.0 i) == 9.261330313501824245501244453057873152694e-1 + 1.920235389652109912858733517715121394831 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (-0.5 - 0x1.fp-1025 i) == 6.222508863508420569166420770843207333493e-309 - 2.094395102393195492308428922186335256131 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0.5 - 0x1.fp-129 i) == 3.287317402534702257036015056278368274737e-39 - 2.094395102393195492308428922186335256131 i": +double: 1 +idouble: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0.5 - 0x1.fp-16385 i) == 9.402257155670418112159334875199821342890e-4933 - 2.094395102393195492308428922186335256131 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0.5 - 0x1p-105 i) == 2.846556599890768890940941645338546615370e-32 - 2.094395102393195492308428922186335256131 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (-0.5 - 0x1p-112 i) == 2.223872343664663196047610660420739543258e-34 - 2.094395102393195492308428922186335256131 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (-0.5 - 0x1p-23 i) == 1.376510308240943236356088341381173571841e-7 - 2.094395102393190022547898764614298351924 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (-0.5 - 0x1p-52 i) == 2.563950248511418570403591756798643804971e-16 - 2.094395102393195492308428922186316279087 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0.5 - 1.0 i) == 9.261330313501824245501244453057873152694e-1 - 1.920235389652109912858733517715121394831 i": +double: 1 +idouble: 1 +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (-0.5 - 1.0 i) == 9.261330313501824245501244453057873152694e-1 - 1.920235389652109912858733517715121394831 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (-0x0.fffffffffffff8p0 + 0x1p-52 i) == 1.171456840272878582596796205397918831268e-8 + 3.141592634635223399311902261000251614142 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (-0x0.fffffffffffff8p0 - 0x1p-52 i) == 1.171456840272878582596796205397918831268e-8 - 3.141592634635223399311902261000251614142 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (-0x0.ffffffffffffffffp0 + 0x1.fp-16385 i) == 2.472906068161537187835415298076415423459e-4923 + 3.141592653260520984471283759942320330996 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0x0.ffffffffffffffffp0 + 0x1p-63 i) == 2.588578361325995866221775673638805081337e-10 + 3.141592653170952461345846619605307690007 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0x0.ffffffffffffffffp0 - 0x1.fp-16385 i) == 2.472906068161537187835415298076415423459e-4923 - 3.141592653260520984471283759942320330996 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0x0.ffffffffffffffffp0 - 0x1p-63 i) == 2.588578361325995866221775673638805081337e-10 - 3.141592653170952461345846619605307690007 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0x0.ffffffp0 + 0x1p-23 i) == 2.714321200917194650737217746780928423385e-4 + 3.141153467203602189751698864505105063797 i": +float: 2 +ifloat: 2 +Test "Real part of: cacosh (-0x0.ffffffp0 - 0x1p-23 i) == 2.714321200917194650737217746780928423385e-4 - 3.141153467203602189751698864505105063797 i": +float: 2 +ifloat: 2 +Test "Real part of: cacosh (-0x1.0000000000000002p0 + 0x1p-63 i) == 5.116146586219826555037807251857670783420e-10 + 3.141592653377875508152537040020250564229 i": +ildouble: 2 +ldouble: 2 +Test "Real part of: cacosh (-0x1.0000000000000002p0 - 0x1p-63 i) == 5.116146586219826555037807251857670783420e-10 - 3.141592653377875508152537040020250564229 i": +ildouble: 2 +ldouble: 2 +Test "Real part of: cacosh (-0x1.0000000000001p0 + 0.0 i) == 2.107342425544701550354780375182800088393e-8 + 3.141592653589793238462643383279502884197 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0x1.0000000000001p0 + 0x1.fp-1025 i) == 2.107342425544701550354780375182800088393e-8 + 3.141592653589793238462643383279502884197 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0x1.0000000000001p0 + 0x1p-52 i) == 2.315303644582684770975188768022139415020e-8 + 3.141592643999491532482601997450598791535 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0x1.0000000000001p0 - 0.0 i) == 2.107342425544701550354780375182800088393e-8 - 3.141592653589793238462643383279502884197 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0x1.0000000000001p0 - 0x1.fp-1025 i) == 2.107342425544701550354780375182800088393e-8 - 3.141592653589793238462643383279502884197 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0x1.0000000000001p0 - 0x1p-52 i) == 2.315303644582684770975188768022139415020e-8 - 3.141592643999491532482601997450598791535 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0x1.000002p0 + 0x1p-23 i) == 5.364668491573609633134147164031476452679e-4 + 3.141370441751352383825802745874586120521 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (-0x1.000002p0 - 0x1p-23 i) == 5.364668491573609633134147164031476452679e-4 - 3.141370441751352383825802745874586120521 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (-0x1.fp-10 + 1.0 i) == 8.813742198809567991336704287826445879025e-1 + 1.572134236154454360143880041170803681211 i": +double: 1 +idouble: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0x1.fp-10 - 1.0 i) == 8.813742198809567991336704287826445879025e-1 - 1.572134236154454360143880041170803681211 i": +double: 1 +idouble: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0x1.fp-100 + 1.0 i) == 8.813735870195430252326093249797923090282e-1 + 1.570796326794896619231321691640832196834 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Imaginary part of: cacosh (-0x1.fp-100 + 1.0 i) == 8.813735870195430252326093249797923090282e-1 + 1.570796326794896619231321691640832196834 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (-0x1.fp-100 - 1.0 i) == 8.813735870195430252326093249797923090282e-1 - 1.570796326794896619231321691640832196834 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Imaginary part of: cacosh (-0x1.fp-100 - 1.0 i) == 8.813735870195430252326093249797923090282e-1 - 1.570796326794896619231321691640832196834 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (-0x1.fp-1000 + 1.0 i) == 8.813735870195430252326093249797923090282e-1 + 1.570796326794896619231321691639751442099 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (-0x1.fp-1000 - 1.0 i) == 8.813735870195430252326093249797923090282e-1 - 1.570796326794896619231321691639751442099 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (-0x1.fp-1025 + 1.0 i) == 8.813735870195430252326093249797923090282e-1 + 1.570796326794896619231321691639751442099 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (-0x1.fp-1025 + 1.5 i) == 1.194763217287109304111930828519090523536 + 1.570796326794896619231321691639751442099 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (-0x1.fp-1025 - 1.0 i) == 8.813735870195430252326093249797923090282e-1 - 1.570796326794896619231321691639751442099 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (-0x1.fp-1025 - 1.5 i) == 1.194763217287109304111930828519090523536 - 1.570796326794896619231321691639751442099 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (-0x1.fp-129 + 0.5 i) == 4.812118250596034474977589134243684231352e-1 + 1.570796326794896619231321691639751442101 i": +float: 1 +ifloat: 1 +Test "Imaginary part of: cacosh (-0x1.fp-129 + 0.5 i) == 4.812118250596034474977589134243684231352e-1 + 1.570796326794896619231321691639751442101 i": +float: 1 +ifloat: 1 +Test "Imaginary part of: cacosh (-0x1.fp-129 + 0x0.ffffffp0 i) == 8.813735448726938863015878255140556727969e-1 + 1.570796326794896619231321691639751442101 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (-0x1.fp-129 + 0x1.000002p0 i) == 8.813736713132375348727889167749389235161e-1 + 1.570796326794896619231321691639751442101 i": +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (-0x1.fp-129 + 0x1.000002p0 i) == 8.813736713132375348727889167749389235161e-1 + 1.570796326794896619231321691639751442101 i": +float: 1 +ifloat: 1 +Test "Imaginary part of: cacosh (-0x1.fp-129 + 0x1.fp-129 i) == 2.846900380897727558361783801085126250967e-39 + 1.570796326794896619231321691639751442101 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (-0x1.fp-129 + 0x1p-23 i) == 1.192092895507809676556842485683592032154e-7 + 1.570796326794896619231321691639751442101 i": +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (-0x1.fp-129 + 0x1p-23 i) == 1.192092895507809676556842485683592032154e-7 + 1.570796326794896619231321691639751442101 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (-0x1.fp-129 + 1.0 i) == 8.813735870195430252326093249797923090282e-1 + 1.570796326794896619231321691639751442101 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Imaginary part of: cacosh (-0x1.fp-129 + 1.0 i) == 8.813735870195430252326093249797923090282e-1 + 1.570796326794896619231321691639751442101 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (-0x1.fp-129 + 1.5 i) == 1.194763217287109304111930828519090523536 + 1.570796326794896619231321691639751442100 i": +double: 1 +idouble: 1 +Test "Imaginary part of: cacosh (-0x1.fp-129 + 1.5 i) == 1.194763217287109304111930828519090523536 + 1.570796326794896619231321691639751442100 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (-0x1.fp-129 - 0.5 i) == 4.812118250596034474977589134243684231352e-1 - 1.570796326794896619231321691639751442101 i": +float: 1 +ifloat: 1 +Test "Imaginary part of: cacosh (-0x1.fp-129 - 0.5 i) == 4.812118250596034474977589134243684231352e-1 - 1.570796326794896619231321691639751442101 i": +float: 1 +ifloat: 1 +Test "Imaginary part of: cacosh (-0x1.fp-129 - 0x0.ffffffp0 i) == 8.813735448726938863015878255140556727969e-1 - 1.570796326794896619231321691639751442101 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (-0x1.fp-129 - 0x1.000002p0 i) == 8.813736713132375348727889167749389235161e-1 - 1.570796326794896619231321691639751442101 i": +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (-0x1.fp-129 - 0x1.000002p0 i) == 8.813736713132375348727889167749389235161e-1 - 1.570796326794896619231321691639751442101 i": +float: 1 +ifloat: 1 +Test "Imaginary part of: cacosh (-0x1.fp-129 - 0x1.fp-129 i) == 2.846900380897727558361783801085126250967e-39 - 1.570796326794896619231321691639751442101 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (-0x1.fp-129 - 0x1p-23 i) == 1.192092895507809676556842485683592032154e-7 - 1.570796326794896619231321691639751442101 i": +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (-0x1.fp-129 - 0x1p-23 i) == 1.192092895507809676556842485683592032154e-7 - 1.570796326794896619231321691639751442101 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (-0x1.fp-129 - 1.0 i) == 8.813735870195430252326093249797923090282e-1 - 1.570796326794896619231321691639751442101 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "Imaginary part of: cacosh (-0x1.fp-129 - 1.0 i) == 8.813735870195430252326093249797923090282e-1 - 1.570796326794896619231321691639751442101 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (-0x1.fp-129 - 1.5 i) == 1.194763217287109304111930828519090523536 - 1.570796326794896619231321691639751442100 i": +double: 1 +idouble: 1 +Test "Imaginary part of: cacosh (-0x1.fp-129 - 1.5 i) == 1.194763217287109304111930828519090523536 - 1.570796326794896619231321691639751442100 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (-0x1.fp-16385 + 0x0.ffffffffffffffffp0 i) == 8.813735870195430251942769895627079569917e-1 + 1.570796326794896619231321691639751442099 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0x1.fp-16385 - 0x0.ffffffffffffffffp0 i) == 8.813735870195430251942769895627079569917e-1 - 1.570796326794896619231321691639751442099 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-0x1.fp-30 + 1.0 i) == 8.813735870195430258081932989769495326854e-1 + 1.570796328070826603447840231892468927106 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (-0x1.fp-30 + 1.0 i) == 8.813735870195430258081932989769495326854e-1 + 1.570796328070826603447840231892468927106 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (-0x1.fp-30 - 1.0 i) == 8.813735870195430258081932989769495326854e-1 - 1.570796328070826603447840231892468927106 i": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (-0x1.fp-30 - 1.0 i) == 8.813735870195430258081932989769495326854e-1 - 1.570796328070826603447840231892468927106 i": +float: 1 +ifloat: 1 +Test "Imaginary part of: cacosh (-0x1p-105 + 0.0 i) == 0.0 + 1.570796326794896619231321691639776094002 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (-0x1p-105 + 0.5 i) == 4.812118250596034474977589134243684231352e-1 + 1.570796326794896619231321691639773491431 i": +float: 1 +ifloat: 1 +Test "Imaginary part of: cacosh (-0x1p-105 + 0.5 i) == 4.812118250596034474977589134243684231352e-1 + 1.570796326794896619231321691639773491431 i": +float: 1 +ifloat: 1 +Test "Imaginary part of: cacosh (-0x1p-105 + 0x1p-105 i) == 2.465190328815661891911651766508706967729e-32 + 1.570796326794896619231321691639776094002 i": +float: 1 +ifloat: 1 +Test "Imaginary part of: cacosh (-0x1p-105 - 0.0 i) == 0.0 - 1.570796326794896619231321691639776094002 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (-0x1p-105 - 0.5 i) == 4.812118250596034474977589134243684231352e-1 - 1.570796326794896619231321691639773491431 i": +float: 1 +ifloat: 1 +Test "Imaginary part of: cacosh (-0x1p-105 - 0.5 i) == 4.812118250596034474977589134243684231352e-1 - 1.570796326794896619231321691639773491431 i": +float: 1 +ifloat: 1 +Test "Imaginary part of: cacosh (-0x1p-105 - 0x1p-105 i) == 2.465190328815661891911651766508706967729e-32 - 1.570796326794896619231321691639776094002 i": +float: 1 +ifloat: 1 +Test "Imaginary part of: cacosh (-0x1p-112 + 0.0 i) == 0.0 + 1.570796326794896619231321691639751634692 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (-0x1p-112 + 0.5 i) == 4.812118250596034474977589134243684231352e-1 + 1.570796326794896619231321691639751614359 i": +float: 1 +ifloat: 1 +Test "Imaginary part of: cacosh (-0x1p-112 + 0.5 i) == 4.812118250596034474977589134243684231352e-1 + 1.570796326794896619231321691639751614359 i": +float: 1 +ifloat: 1 +Test "Imaginary part of: cacosh (-0x1p-112 + 0x1p-112 i) == 1.925929944387235853055977942584927318538e-34 + 1.570796326794896619231321691639751634692 i": +float: 1 +ifloat: 1 +Test "Imaginary part of: cacosh (-0x1p-112 - 0.0 i) == 0.0 - 1.570796326794896619231321691639751634692 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (-0x1p-112 - 0.5 i) == 4.812118250596034474977589134243684231352e-1 - 1.570796326794896619231321691639751614359 i": +float: 1 +ifloat: 1 +Test "Imaginary part of: cacosh (-0x1p-112 - 0.5 i) == 4.812118250596034474977589134243684231352e-1 - 1.570796326794896619231321691639751614359 i": +float: 1 +ifloat: 1 +Test "Imaginary part of: cacosh (-0x1p-112 - 0x1p-112 i) == 1.925929944387235853055977942584927318538e-34 - 1.570796326794896619231321691639751634692 i": +float: 1 +ifloat: 1 +Test "Imaginary part of: cacosh (-0x1p-23 + 0.0 i) == 0.0 + 1.570796446004186170012854035955502877351 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (-0x1p-23 + 0.5 i) == 4.812118250596059896127318386463676808798e-1 + 1.570796433418926613232299739606181733819 i": +float: 1 +ifloat: 1 +Test "Imaginary part of: cacosh (-0x1p-23 + 0.5 i) == 4.812118250596059896127318386463676808798e-1 + 1.570796433418926613232299739606181733819 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (-0x1p-23 + 0x0.ffffffp0 i) == 8.813735448726963984495965873956465777250e-1 + 1.570796411088596153167306681647360823228 i": +double: 1 +idouble: 1 +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (-0x1p-23 + 0x1.fp-129 i) == 2.846900380897747786805634596726756660388e-39 + 1.570796446004186170012854035955502877351 i": +float: 1 +ifloat: 1 +Test "Imaginary part of: cacosh (-0x1p-23 + 0x1p-23 i) == 1.192092895507818146886315028596704749235e-7 + 1.570796446004186170012007003008248567984 i": +float: 1 +ifloat: 1 +Test "Imaginary part of: cacosh (-0x1p-23 - 0.0 i) == 0.0 - 1.570796446004186170012854035955502877351 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (-0x1p-23 - 0.5 i) == 4.812118250596059896127318386463676808798e-1 - 1.570796433418926613232299739606181733819 i": +float: 1 +ifloat: 1 +Test "Imaginary part of: cacosh (-0x1p-23 - 0.5 i) == 4.812118250596059896127318386463676808798e-1 - 1.570796433418926613232299739606181733819 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (-0x1p-23 - 0x0.ffffffp0 i) == 8.813735448726963984495965873956465777250e-1 - 1.570796411088596153167306681647360823228 i": +double: 1 +idouble: 1 +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (-0x1p-23 - 0x1.fp-129 i) == 2.846900380897747786805634596726756660388e-39 - 1.570796446004186170012854035955502877351 i": +float: 1 +ifloat: 1 +Test "Imaginary part of: cacosh (-0x1p-23 - 0x1p-23 i) == 1.192092895507818146886315028596704749235e-7 - 1.570796446004186170012007003008248567984 i": +float: 1 +ifloat: 1 +Test "Imaginary part of: cacosh (-0x1p-52 + 0.0 i) == 0.0 + 1.570796326794896841275926616671059526825 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (-0x1p-52 + 0.5 i) == 4.812118250596034474977589134243772428682e-1 + 1.570796326794896817834053951421591208280 i": +float: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (-0x1p-52 + 0.5 i) == 4.812118250596034474977589134243772428682e-1 + 1.570796326794896817834053951421591208280 i": +float: 1 +ifloat: 1 +Test "Imaginary part of: cacosh (-0x1p-52 + 0x1p-52 i) == 2.220446049250313080847263336181677117148e-16 + 1.570796326794896841275926616671059526825 i": +float: 1 +ifloat: 1 +Test "Imaginary part of: cacosh (-0x1p-52 - 0.0 i) == 0.0 - 1.570796326794896841275926616671059526825 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (-0x1p-52 - 0.5 i) == 4.812118250596034474977589134243772428682e-1 - 1.570796326794896817834053951421591208280 i": +float: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (-0x1p-52 - 0.5 i) == 4.812118250596034474977589134243772428682e-1 - 1.570796326794896817834053951421591208280 i": +float: 1 +ifloat: 1 +Test "Imaginary part of: cacosh (-0x1p-52 - 0x1p-52 i) == 2.220446049250313080847263336181677117148e-16 - 1.570796326794896841275926616671059526825 i": +float: 1 +ifloat: 1 +Test "Imaginary part of: cacosh (-0x1p-63 + 0.0 i) == 0.0 + 1.570796326794896619339741908888301885499 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (-0x1p-63 + 0.5 i) == 4.812118250596034474977589134243684231373e-1 + 1.570796326794896619328295682000973043547 i": +float: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (-0x1p-63 + 0.5 i) == 4.812118250596034474977589134243684231373e-1 + 1.570796326794896619328295682000973043547 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (-0x1p-63 + 0x0.ffffffffffffffffp0 i) == 8.813735870195430251942769895627079569937e-1 + 1.570796326794896619307986362473920146173 i": +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (-0x1p-63 + 0x1p-63 i) == 1.084202172485504434007452800869941711430e-19 + 1.570796326794896619339741908888301885499 i": +float: 1 +ifloat: 1 +Test "Imaginary part of: cacosh (-0x1p-63 - 0.0 i) == 0.0 - 1.570796326794896619339741908888301885499 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (-0x1p-63 - 0.5 i) == 4.812118250596034474977589134243684231373e-1 - 1.570796326794896619328295682000973043547 i": +float: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (-0x1p-63 - 0.5 i) == 4.812118250596034474977589134243684231373e-1 - 1.570796326794896619328295682000973043547 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (-0x1p-63 - 0x0.ffffffffffffffffp0 i) == 8.813735870195430251942769895627079569937e-1 - 1.570796326794896619307986362473920146173 i": +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (-0x1p-63 - 0x1p-63 i) == 1.084202172485504434007452800869941711430e-19 - 1.570796326794896619339741908888301885499 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (-1.0 + 0.5 i) == 7.328576759736452608886724437653071523305e-1 + 2.466703808003786858297978415967328452322 i": +float: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-1.0 + 0x1.fp-10 i) == 4.350501469856803800217957402220976497152e-2 + 3.098101355958774410750062883737683164607 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (-1.0 + 0x1.fp-30 i) == 4.247867098745151888768727039216644758847e-5 + 3.141550174918818561961484385371624132331 i": +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (-1.0 + 0x1p50 i) == 3.535050620855721078027883819436759661753e1 + 1.570796326794897507409741391764983781004 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (-1.0 - 0.5 i) == 7.328576759736452608886724437653071523305e-1 - 2.466703808003786858297978415967328452322 i": +float: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-1.0 - 0x1.fp-10 i) == 4.350501469856803800217957402220976497152e-2 - 3.098101355958774410750062883737683164607 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (-1.0 - 0x1.fp-30 i) == 4.247867098745151888768727039216644758847e-5 - 3.141550174918818561961484385371624132331 i": +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (-1.0 - 0x1p50 i) == 3.535050620855721078027883819436759661753e1 - 1.570796326794897507409741391764983781004 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (-1.5 + +0 i) == 0.9624236501192068949955178268487368462704 + pi i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-1.5 + 0x1.fp-1025 i) == 9.624236501192068949955178268487368462704e-1 + 3.141592653589793238462643383279502884197 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-1.5 + 0x1.fp-129 i) == 9.624236501192068949955178268487368462704e-1 + 3.141592653589793238462643383279502884195 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-1.5 + 0x1.fp-16385 i) == 9.624236501192068949955178268487368462704e-1 + 3.141592653589793238462643383279502884197 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-1.5 - 0 i) == 0.9624236501192068949955178268487368462704 - pi i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-1.5 - 0x1.fp-1025 i) == 9.624236501192068949955178268487368462704e-1 - 3.141592653589793238462643383279502884197 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-1.5 - 0x1.fp-129 i) == 9.624236501192068949955178268487368462704e-1 - 3.141592653589793238462643383279502884195 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (-1.5 - 0x1.fp-16385 i) == 9.624236501192068949955178268487368462704e-1 - 3.141592653589793238462643383279502884197 i": +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (-2 - 3 i) == 1.9833870299165354323470769028940395 - 2.1414491111159960199416055713254211 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (0.0 + 0x0.ffffffffffffffffp0 i) == 8.813735870195430251942769895627079569917e-1 + 1.570796326794896619231321691639751442099 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0.0 + 0x1.000002p0 i) == 8.813736713132375348727889167749389235161e-1 + 1.570796326794896619231321691639751442099 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0.0 + 0x1p-23 i) == 1.192092895507809676556842485683592032154e-7 + 1.570796326794896619231321691639751442099 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0.0 - 0x0.ffffffffffffffffp0 i) == 8.813735870195430251942769895627079569917e-1 - 1.570796326794896619231321691639751442099 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0.0 - 0x1.000002p0 i) == 8.813736713132375348727889167749389235161e-1 - 1.570796326794896619231321691639751442099 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0.0 - 0x1p-23 i) == 1.192092895507809676556842485683592032154e-7 - 1.570796326794896619231321691639751442099 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0.25 + 1.0 i) == 8.924633639033482359562124741744951972772e-1 + 1.394493894017929688812643125003661339452 i": +float: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0.25 - 1.0 i) == 8.924633639033482359562124741744951972772e-1 - 1.394493894017929688812643125003661339452 i": +float: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (0.5 + +0 i) == +0 + 1.047197551196597746154214461093167628066 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (0.5 + 0x1.fp-1025 i) == 6.222508863508420569166420770843207333493e-309 + 1.047197551196597746154214461093167628066 i": +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (0.5 + 0x1.fp-1025 i) == 6.222508863508420569166420770843207333493e-309 + 1.047197551196597746154214461093167628066 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (0.5 + 0x1.fp-129 i) == 3.287317402534702257036015056278368274737e-39 + 1.047197551196597746154214461093167628066 i": +double: 1 +idouble: 1 +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (0.5 + 0x1.fp-129 i) == 3.287317402534702257036015056278368274737e-39 + 1.047197551196597746154214461093167628066 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (0.5 + 0x1.fp-16385 i) == 9.402257155670418112159334875199821342890e-4933 + 1.047197551196597746154214461093167628066 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0.5 + 0x1p-105 i) == 2.846556599890768890940941645338546615370e-32 + 1.047197551196597746154214461093167628066 i": +double: 1 +idouble: 1 +Test "Imaginary part of: cacosh (0.5 + 0x1p-105 i) == 2.846556599890768890940941645338546615370e-32 + 1.047197551196597746154214461093167628066 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (0.5 + 0x1p-112 i) == 2.223872343664663196047610660420739543258e-34 + 1.047197551196597746154214461093167628066 i": +double: 1 +idouble: 1 +Test "Imaginary part of: cacosh (0.5 + 0x1p-112 i) == 2.223872343664663196047610660420739543258e-34 + 1.047197551196597746154214461093167628066 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (0.5 + 0x1p-23 i) == 1.376510308240943236356088341381173571841e-7 + 1.047197551196603215914744618665204532273 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (0.5 + 0x1p-52 i) == 2.563950248511418570403591756798643804971e-16 + 1.047197551196597746154214461093186605110 i": ildouble: 1 ldouble: 1 -Test "Real part of: cacosh (+0 + 1.0 i) == 0.8813735870195430252326093249797923090282 + pi/2 i": +Test "Imaginary part of: cacosh (0.5 + 0x1p-52 i) == 2.563950248511418570403591756798643804971e-16 + 1.047197551196597746154214461093186605110 i": +double: 1 +idouble: 1 +Test "Imaginary part of: cacosh (0.5 + 0x1p-63 i) == 1.251928832280966098829878787499365228659e-19 + 1.047197551196597746154214461093167628070 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (0.5 + 1.0 i) == 9.261330313501824245501244453057873152694e-1 + 1.221357263937683325603909865564381489366 i": double: 1 +idouble: 1 +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (0.5 + 1.0 i) == 9.261330313501824245501244453057873152694e-1 + 1.221357263937683325603909865564381489366 i": float: 1 +ifloat: 1 +Test "Imaginary part of: cacosh (0.5 - 0 i) == +0 - 1.047197551196597746154214461093167628066 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (0.5 - 0x1.fp-1025 i) == 6.222508863508420569166420770843207333493e-309 - 1.047197551196597746154214461093167628066 i": +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (0.5 - 0x1.fp-1025 i) == 6.222508863508420569166420770843207333493e-309 - 1.047197551196597746154214461093167628066 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (0.5 - 0x1.fp-129 i) == 3.287317402534702257036015056278368274737e-39 - 1.047197551196597746154214461093167628066 i": +double: 1 +idouble: 1 +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (0.5 - 0x1.fp-129 i) == 3.287317402534702257036015056278368274737e-39 - 1.047197551196597746154214461093167628066 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (0.5 - 0x1.fp-16385 i) == 9.402257155670418112159334875199821342890e-4933 - 1.047197551196597746154214461093167628066 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0.5 - 0x1p-105 i) == 2.846556599890768890940941645338546615370e-32 - 1.047197551196597746154214461093167628066 i": +double: 1 idouble: 1 +Test "Imaginary part of: cacosh (0.5 - 0x1p-105 i) == 2.846556599890768890940941645338546615370e-32 - 1.047197551196597746154214461093167628066 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (0.5 - 0x1p-112 i) == 2.223872343664663196047610660420739543258e-34 - 1.047197551196597746154214461093167628066 i": +double: 1 +idouble: 1 +Test "Imaginary part of: cacosh (0.5 - 0x1p-112 i) == 2.223872343664663196047610660420739543258e-34 - 1.047197551196597746154214461093167628066 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (0.5 - 0x1p-23 i) == 1.376510308240943236356088341381173571841e-7 - 1.047197551196603215914744618665204532273 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (0.5 - 0x1p-52 i) == 2.563950248511418570403591756798643804971e-16 - 1.047197551196597746154214461093186605110 i": +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (0.5 - 0x1p-52 i) == 2.563950248511418570403591756798643804971e-16 - 1.047197551196597746154214461093186605110 i": +double: 1 +idouble: 1 +Test "Imaginary part of: cacosh (0.5 - 0x1p-63 i) == 1.251928832280966098829878787499365228659e-19 - 1.047197551196597746154214461093167628070 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (0.5 - 1.0 i) == 9.261330313501824245501244453057873152694e-1 - 1.221357263937683325603909865564381489366 i": +double: 1 +idouble: 1 +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (0.5 - 1.0 i) == 9.261330313501824245501244453057873152694e-1 - 1.221357263937683325603909865564381489366 i": +float: 1 ifloat: 1 -Test "Real part of: cacosh (+0 + 1.5 i) == 1.194763217287109304111930828519090523536 + pi/2 i": +Test "Real part of: cacosh (0.75 + 1.25 i) == 1.13239363160530819522266333696834467 + 1.11752014915610270578240049553777969 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0x0.fffffffffffff8p0 + 0x1p-52 i) == 1.171456840272878582596796205397918831268e-8 + 1.895456983915074112227925127005564372844e-8 i": double: 1 idouble: 1 -Test "Real part of: cacosh (+0 - 0.5 i) == 0.4812118250596034474977589134243684231352 - pi/2 i": +Test "Imaginary part of: cacosh (0x0.fffffffffffff8p0 + 0x1p-52 i) == 1.171456840272878582596796205397918831268e-8 + 1.895456983915074112227925127005564372844e-8 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0x0.fffffffffffff8p0 - 0x1p-52 i) == 1.171456840272878582596796205397918831268e-8 - 1.895456983915074112227925127005564372844e-8 i": +double: 1 +idouble: 1 +Test "Imaginary part of: cacosh (0x0.fffffffffffff8p0 - 0x1p-52 i) == 1.171456840272878582596796205397918831268e-8 - 1.895456983915074112227925127005564372844e-8 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0x0.ffffffffffffffffp0 + 0x1.fp-16385 i) == 2.472906068161537187835415298076415423459e-4923 + 3.292722539913596233371825532007990724506e-10 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0x0.ffffffffffffffffp0 + 0x1p-63 i) == 2.588578361325995866221775673638805081337e-10 + 4.188407771167967636741951941902992986043e-10 i": +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (0x0.ffffffffffffffffp0 + 0x1p-63 i) == 2.588578361325995866221775673638805081337e-10 + 4.188407771167967636741951941902992986043e-10 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0x0.ffffffffffffffffp0 - 0x1.fp-16385 i) == 2.472906068161537187835415298076415423459e-4923 - 3.292722539913596233371825532007990724506e-10 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0x0.ffffffffffffffffp0 - 0x1p-63 i) == 2.588578361325995866221775673638805081337e-10 - 4.188407771167967636741951941902992986043e-10 i": +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (0x0.ffffffffffffffffp0 - 0x1p-63 i) == 2.588578361325995866221775673638805081337e-10 - 4.188407771167967636741951941902992986043e-10 i": +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (0x0.ffffffp0 + 0.0 i) == 0.0 + 3.452669847162035876032494826387364972849e-4 i": +float: 1 +ifloat: 1 +Test "Imaginary part of: cacosh (0x0.ffffffp0 + 0x1.fp-129 i) == 8.245504387859737323891843603996428534945e-36 + 3.452669847162035876032494826387364972849e-4 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (0x0.ffffffp0 + 0x1p-23 i) == 2.714321200917194650737217746780928423385e-4 + 4.391863861910487109445187743978204002614e-4 i": +float: 2 +ifloat: 2 +Test "Imaginary part of: cacosh (0x0.ffffffp0 + 0x1p-23 i) == 2.714321200917194650737217746780928423385e-4 + 4.391863861910487109445187743978204002614e-4 i": +float: 2 +ifloat: 2 +Test "Imaginary part of: cacosh (0x0.ffffffp0 - 0.0 i) == 0.0 - 3.452669847162035876032494826387364972849e-4 i": +float: 1 +ifloat: 1 +Test "Imaginary part of: cacosh (0x0.ffffffp0 - 0x1.fp-129 i) == 8.245504387859737323891843603996428534945e-36 - 3.452669847162035876032494826387364972849e-4 i": float: 1 ifloat: 1 +Test "Real part of: cacosh (0x0.ffffffp0 - 0x1p-23 i) == 2.714321200917194650737217746780928423385e-4 - 4.391863861910487109445187743978204002614e-4 i": +float: 2 +ifloat: 2 +Test "Imaginary part of: cacosh (0x0.ffffffp0 - 0x1p-23 i) == 2.714321200917194650737217746780928423385e-4 - 4.391863861910487109445187743978204002614e-4 i": +float: 2 +ifloat: 2 +Test "Real part of: cacosh (0x1.0000000000000002p0 + 0x1p-63 i) == 5.116146586219826555037807251857670783420e-10 + 2.119177303101063432592523199680782317447e-10 i": +ildouble: 2 +ldouble: 2 +Test "Imaginary part of: cacosh (0x1.0000000000000002p0 + 0x1p-63 i) == 5.116146586219826555037807251857670783420e-10 + 2.119177303101063432592523199680782317447e-10 i": ildouble: 1 ldouble: 1 -Test "Real part of: cacosh (+0 - 1.0 i) == 0.8813735870195430252326093249797923090282 - pi/2 i": +Test "Real part of: cacosh (0x1.0000000000000002p0 - 0x1p-63 i) == 5.116146586219826555037807251857670783420e-10 - 2.119177303101063432592523199680782317447e-10 i": +ildouble: 2 +ldouble: 2 +Test "Imaginary part of: cacosh (0x1.0000000000000002p0 - 0x1p-63 i) == 5.116146586219826555037807251857670783420e-10 - 2.119177303101063432592523199680782317447e-10 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0x1.0000000000001p0 + 0.0 i) == 2.107342425544701550354780375182800088393e-8 + 0.0 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0x1.0000000000001p0 + 0x1.fp-1025 i) == 2.107342425544701550354780375182800088393e-8 + 2.557178503953494342609835913586108008322e-301 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0x1.0000000000001p0 + 0x1p-52 i) == 2.315303644582684770975188768022139415020e-8 + 9.590301705980041385828904092662391018164e-9 i": +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (0x1.0000000000001p0 + 0x1p-52 i) == 2.315303644582684770975188768022139415020e-8 + 9.590301705980041385828904092662391018164e-9 i": +double: 1 +idouble: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0x1.0000000000001p0 - 0.0 i) == 2.107342425544701550354780375182800088393e-8 - 0.0 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0x1.0000000000001p0 - 0x1.fp-1025 i) == 2.107342425544701550354780375182800088393e-8 - 2.557178503953494342609835913586108008322e-301 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0x1.0000000000001p0 - 0x1p-52 i) == 2.315303644582684770975188768022139415020e-8 - 9.590301705980041385828904092662391018164e-9 i": +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (0x1.0000000000001p0 - 0x1p-52 i) == 2.315303644582684770975188768022139415020e-8 - 9.590301705980041385828904092662391018164e-9 i": +double: 1 +idouble: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0x1.000002p0 + 0x1p-23 i) == 5.364668491573609633134147164031476452679e-4 + 2.222118384408546368406374049167636760903e-4 i": +float: 1 +ifloat: 1 +Test "Imaginary part of: cacosh (0x1.000002p0 + 0x1p-23 i) == 5.364668491573609633134147164031476452679e-4 + 2.222118384408546368406374049167636760903e-4 i": +float: 2 +ifloat: 2 +Test "Real part of: cacosh (0x1.000002p0 - 0x1p-23 i) == 5.364668491573609633134147164031476452679e-4 - 2.222118384408546368406374049167636760903e-4 i": +float: 1 +ifloat: 1 +Test "Imaginary part of: cacosh (0x1.000002p0 - 0x1p-23 i) == 5.364668491573609633134147164031476452679e-4 - 2.222118384408546368406374049167636760903e-4 i": +float: 2 +ifloat: 2 +Test "Real part of: cacosh (0x1.fp-10 + 1.0 i) == 8.813742198809567991336704287826445879025e-1 + 1.569458417435338878318763342108699202986 i": +double: 1 +idouble: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0x1.fp-10 - 1.0 i) == 8.813742198809567991336704287826445879025e-1 - 1.569458417435338878318763342108699202986 i": +double: 1 +idouble: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0x1.fp-100 + 1.0 i) == 8.813735870195430252326093249797923090282e-1 + 1.570796326794896619231321691638670687364 i": double: 1 float: 1 idouble: 1 ifloat: 1 -Test "Real part of: cacosh (+0 - 1.5 i) == 1.194763217287109304111930828519090523536 - pi/2 i": +Test "Real part of: cacosh (0x1.fp-100 - 1.0 i) == 8.813735870195430252326093249797923090282e-1 - 1.570796326794896619231321691638670687364 i": double: 1 +float: 1 idouble: 1 -Test "Real part of: cacosh (-0 + 0.5 i) == 0.4812118250596034474977589134243684231352 + pi/2 i": +ifloat: 1 +Test "Real part of: cacosh (0x1.fp-1000 + 1.0 i) == 8.813735870195430252326093249797923090282e-1 + 1.570796326794896619231321691639751442099 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (0x1.fp-1000 - 1.0 i) == 8.813735870195430252326093249797923090282e-1 - 1.570796326794896619231321691639751442099 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (0x1.fp-1025 + 1.0 i) == 8.813735870195430252326093249797923090282e-1 + 1.570796326794896619231321691639751442099 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (0x1.fp-1025 + 1.5 i) == 1.194763217287109304111930828519090523536 + 1.570796326794896619231321691639751442099 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (0x1.fp-1025 - 1.0 i) == 8.813735870195430252326093249797923090282e-1 - 1.570796326794896619231321691639751442099 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (0x1.fp-1025 - 1.5 i) == 1.194763217287109304111930828519090523536 - 1.570796326794896619231321691639751442099 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (0x1.fp-129 + 0.5 i) == 4.812118250596034474977589134243684231352e-1 + 1.570796326794896619231321691639751442096 i": float: 1 ifloat: 1 +Test "Real part of: cacosh (0x1.fp-129 + 0x1.000002p0 i) == 8.813736713132375348727889167749389235161e-1 + 1.570796326794896619231321691639751442097 i": ildouble: 1 ldouble: 1 -Test "Real part of: cacosh (-0 + 1.0 i) == 0.8813735870195430252326093249797923090282 + pi/2 i": +Test "Real part of: cacosh (0x1.fp-129 + 0x1p-23 i) == 1.192092895507809676556842485683592032154e-7 + 1.570796326794896619231321691639751442096 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0x1.fp-129 + 1.0 i) == 8.813735870195430252326093249797923090282e-1 + 1.570796326794896619231321691639751442097 i": double: 1 float: 1 idouble: 1 ifloat: 1 -Test "Real part of: cacosh (-0 + 1.5 i) == 1.194763217287109304111930828519090523536 + pi/2 i": +Test "Real part of: cacosh (0x1.fp-129 + 1.5 i) == 1.194763217287109304111930828519090523536 + 1.570796326794896619231321691639751442097 i": double: 1 idouble: 1 -Test "Real part of: cacosh (-0 - 0.5 i) == 0.4812118250596034474977589134243684231352 - pi/2 i": +Test "Real part of: cacosh (0x1.fp-129 - 0.5 i) == 4.812118250596034474977589134243684231352e-1 - 1.570796326794896619231321691639751442096 i": float: 1 ifloat: 1 +Test "Real part of: cacosh (0x1.fp-129 - 0x1.000002p0 i) == 8.813736713132375348727889167749389235161e-1 - 1.570796326794896619231321691639751442097 i": ildouble: 1 ldouble: 1 -Test "Real part of: cacosh (-0 - 1.0 i) == 0.8813735870195430252326093249797923090282 - pi/2 i": +Test "Real part of: cacosh (0x1.fp-129 - 0x1p-23 i) == 1.192092895507809676556842485683592032154e-7 - 1.570796326794896619231321691639751442096 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0x1.fp-129 - 1.0 i) == 8.813735870195430252326093249797923090282e-1 - 1.570796326794896619231321691639751442097 i": double: 1 float: 1 idouble: 1 ifloat: 1 -Test "Real part of: cacosh (-0 - 1.5 i) == 1.194763217287109304111930828519090523536 - pi/2 i": +Test "Real part of: cacosh (0x1.fp-129 - 1.5 i) == 1.194763217287109304111930828519090523536 - 1.570796326794896619231321691639751442097 i": double: 1 idouble: 1 -Test "Imaginary part of: cacosh (-0.5 + +0 i) == +0 + 2.094395102393195492308428922186335256131 i": +Test "Real part of: cacosh (0x1.fp-16385 + 0x0.ffffffffffffffffp0 i) == 8.813735870195430251942769895627079569917e-1 + 1.570796326794896619231321691639751442099 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0x1.fp-16385 - 0x0.ffffffffffffffffp0 i) == 8.813735870195430251942769895627079569917e-1 - 1.570796326794896619231321691639751442099 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0x1.fp-30 + 1.0 i) == 8.813735870195430258081932989769495326854e-1 + 1.570796325518966635014803151387033957091 i": double: 1 +float: 1 idouble: 1 -Test "Imaginary part of: cacosh (-0.5 - 0 i) == +0 - 2.094395102393195492308428922186335256131 i": +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0x1.fp-30 - 1.0 i) == 8.813735870195430258081932989769495326854e-1 - 1.570796325518966635014803151387033957091 i": double: 1 -idouble: 1 -Test "Real part of: cacosh (-1.5 + +0 i) == 0.9624236501192068949955178268487368462704 + pi i": float: 1 +idouble: 1 ifloat: 1 ildouble: 1 ldouble: 1 -Test "Real part of: cacosh (-1.5 - 0 i) == 0.9624236501192068949955178268487368462704 - pi i": +Test "Real part of: cacosh (0x1.fp1023 + 0x1.fp1023 i) == 7.107906849659093345062145442726115449315e2 + 7.853981633974483096156608458198757210493e-1 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (0x1.fp127 + 0x1.fp127 i) == 8.973081118419833726837456344608533993585e1 + 7.853981633974483096156608458198757210493e-1 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (0x1p-105 + 0.5 i) == 4.812118250596034474977589134243684231352e-1 + 1.570796326794896619231321691639729392766 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (0x1p-105 - 0.5 i) == 4.812118250596034474977589134243684231352e-1 - 1.570796326794896619231321691639729392766 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (0x1p-112 + 0.5 i) == 4.812118250596034474977589134243684231352e-1 + 1.570796326794896619231321691639751269838 i": float: 1 ifloat: 1 +Test "Real part of: cacosh (0x1p-112 - 0.5 i) == 4.812118250596034474977589134243684231352e-1 - 1.570796326794896619231321691639751269838 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (0x1p-23 + 0.5 i) == 4.812118250596059896127318386463676808798e-1 + 1.570796220170866625230343643673321150378 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (0x1p-23 + 0x0.ffffffp0 i) == 8.813735448726963984495965873956465777250e-1 + 1.570796242501197085295336701632142060969 i": +double: 1 +idouble: 1 ildouble: 1 ldouble: 1 -Test "Real part of: cacosh (-2 - 3 i) == 1.9833870299165354323470769028940395 - 2.1414491111159960199416055713254211 i": +Test "Real part of: cacosh (0x1p-23 - 0.5 i) == 4.812118250596059896127318386463676808798e-1 - 1.570796220170866625230343643673321150378 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (0x1p-23 - 0x0.ffffffp0 i) == 8.813735448726963984495965873956465777250e-1 - 1.570796242501197085295336701632142060969 i": double: 1 -float: 7 idouble: 1 -ifloat: 7 -ildouble: 6 -ldouble: 6 -Test "Imaginary part of: cacosh (-2 - 3 i) == 1.9833870299165354323470769028940395 - 2.1414491111159960199416055713254211 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0x1p-52 + 0.5 i) == 4.812118250596034474977589134243772428682e-1 + 1.570796326794896420628589431857911675917 i": +float: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0x1p-52 - 0.5 i) == 4.812118250596034474977589134243772428682e-1 - 1.570796326794896420628589431857911675917 i": +float: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0x1p-63 + 0.5 i) == 4.812118250596034474977589134243684231373e-1 + 1.570796326794896619134347701278529840650 i": +float: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0x1p-63 + 0x0.ffffffffffffffffp0 i) == 8.813735870195430251942769895627079569937e-1 + 1.570796326794896619154657020805582738025 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0x1p-63 - 0.5 i) == 4.812118250596034474977589134243684231373e-1 - 1.570796326794896619134347701278529840650 i": +float: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (0x1p-63 - 0x0.ffffffffffffffffp0 i) == 8.813735870195430251942769895627079569937e-1 - 1.570796326794896619154657020805582738025 i": +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (1.0 + 0.25 i) == 5.097911466811016354623559941115413499164e-1 + 4.890443302710802929202843732146540079124e-1 i": double: 1 -float: 3 idouble: 1 -ifloat: 3 +Test "Real part of: cacosh (1.0 + 0.5 i) == 7.328576759736452608886724437653071523305e-1 + 6.748888455860063801646649673121744318756e-1 i": +float: 1 +ifloat: 1 ildouble: 1 ldouble: 1 -Test "Real part of: cacosh (0.75 + 1.25 i) == 1.13239363160530819522266333696834467 + 1.11752014915610270578240049553777969 i": +Test "Imaginary part of: cacosh (1.0 + 0.5 i) == 7.328576759736452608886724437653071523305e-1 + 6.748888455860063801646649673121744318756e-1 i": +float: 1 +ifloat: 1 +Test "Real part of: cacosh (1.0 + 0x1.fp-10 i) == 4.350501469856803800217957402220976497152e-2 + 4.349129763101882771258049954181971959031e-2 i": +float: 1 +ifloat: 1 +Test "Imaginary part of: cacosh (1.0 + 0x1.fp-10 i) == 4.350501469856803800217957402220976497152e-2 + 4.349129763101882771258049954181971959031e-2 i": +float: 2 +ifloat: 2 ildouble: 1 ldouble: 1 -Test "Real part of: cacosh (1.5 + +0 i) == 0.9624236501192068949955178268487368462704 + +0 i": +Test "Real part of: cacosh (1.0 + 0x1.fp-30 i) == 4.247867098745151888768727039216644758847e-5 + 4.247867097467650115899790787875186617316e-5 i": +ildouble: 1 +ldouble: 1 +Test "Imaginary part of: cacosh (1.0 - 0.25 i) == 5.097911466811016354623559941115413499164e-1 - 4.890443302710802929202843732146540079124e-1 i": +double: 1 +idouble: 1 +Test "Real part of: cacosh (1.0 - 0.5 i) == 7.328576759736452608886724437653071523305e-1 - 6.748888455860063801646649673121744318756e-1 i": float: 1 ifloat: 1 ildouble: 1 ldouble: 1 -Test "Real part of: cacosh (1.5 - 0 i) == 0.9624236501192068949955178268487368462704 - 0 i": +Test "Imaginary part of: cacosh (1.0 - 0.5 i) == 7.328576759736452608886724437653071523305e-1 - 6.748888455860063801646649673121744318756e-1 i": float: 1 ifloat: 1 +Test "Real part of: cacosh (1.0 - 0x1.fp-10 i) == 4.350501469856803800217957402220976497152e-2 - 4.349129763101882771258049954181971959031e-2 i": +float: 1 +ifloat: 1 +Test "Imaginary part of: cacosh (1.0 - 0x1.fp-10 i) == 4.350501469856803800217957402220976497152e-2 - 4.349129763101882771258049954181971959031e-2 i": +float: 2 +ifloat: 2 +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (1.0 - 0x1.fp-30 i) == 4.247867098745151888768727039216644758847e-5 - 4.247867097467650115899790787875186617316e-5 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (1.5 + +0 i) == 0.9624236501192068949955178268487368462704 + +0 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (1.5 + 0x1.fp-1025 i) == 9.624236501192068949955178268487368462704e-1 + 4.819934639999230680322935210539402497827e-309 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (1.5 + 0x1.fp-129 i) == 9.624236501192068949955178268487368462704e-1 + 2.546345110742945032959687790021055102355e-39 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (1.5 + 0x1.fp-16385 i) == 9.624236501192068949955178268487368462704e-1 + 7.282957076134209141226696333885150260319e-4933 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (1.5 - 0 i) == 0.9624236501192068949955178268487368462704 - 0 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (1.5 - 0x1.fp-1025 i) == 9.624236501192068949955178268487368462704e-1 - 4.819934639999230680322935210539402497827e-309 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (1.5 - 0x1.fp-129 i) == 9.624236501192068949955178268487368462704e-1 - 2.546345110742945032959687790021055102355e-39 i": +ildouble: 1 +ldouble: 1 +Test "Real part of: cacosh (1.5 - 0x1.fp-16385 i) == 9.624236501192068949955178268487368462704e-1 - 7.282957076134209141226696333885150260319e-4933 i": ildouble: 1 ldouble: 1 @@ -5578,17 +6493,17 @@ ldouble: 2 Function: Real part of "cacosh": double: 1 -float: 7 +float: 2 idouble: 1 -ifloat: 7 -ildouble: 6 -ldouble: 6 +ifloat: 2 +ildouble: 2 +ldouble: 2 Function: Imaginary part of "cacosh": double: 1 -float: 3 +float: 2 idouble: 1 -ifloat: 3 +ifloat: 2 ildouble: 1 ldouble: 1 -- cgit 1.4.1