亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? libm_error.c

?? glibc 庫, 不僅可以學習使用庫函數,還可以學習函數的具體實現,是提高功力的好資料
?? C
?? 第 1 頁 / 共 5 頁
字號:
/* file: libm_error.c */// Copyright (c) 2000 - 2005, Intel Corporation// All rights reserved.//// Contributed 2000 by the Intel Numerics Group, Intel Corporation//// Redistribution and use in source and binary forms, with or without// modification, are permitted provided that the following conditions are// met://// * Redistributions of source code must retain the above copyright// notice, this list of conditions and the following disclaimer.//// * Redistributions in binary form must reproduce the above copyright// notice, this list of conditions and the following disclaimer in the// documentation and/or other materials provided with the distribution.//// * The name of Intel Corporation may not be used to endorse or promote// products derived from this software without specific prior written// permission.//// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL INTEL OR ITS// CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,// EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR// PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY// OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY OR TORT (INCLUDING// NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.//// Intel Corporation is the author of this code, and requests that all// problem reports or change requests be submitted to it directly at// http://www.intel.com/software/products/opensource/libraries/num.htm.//// History//==============================================================//  2/02/00: Initial version//  3/22/00: Updated to support flexible and dynamic error handling.//  8/16/00: Changed all matherr function-calls to use the pmatherr//           function-pointers.// 10/03/00: Corrected a scalb type.// 11/28/00: Changed INPUT_XL to INPUT_XD for scalb_underflow case.// 12/07/00: Added code to make scalbn error support equivalent to ldexp.//  2/07/01: Added __declspec(align(16)) to long double constants to correct//           alignment problem.//  4/23/01: Added code for remquo//  6/07/01: Added code for fdim, lrint, lround, llrint, llround//           Deleted code for remquo//  8/15/01: Added code for scalbln, nexttoward// 12/10/01: Added code for erfc// 12/27/01: Added code for degree argument functions// 01/02/02: Added code for tand, cotd// 01/15/02: Corrected SVID/XOPEN code for log1p, pow, and acosh// 01/25/02: Corrected ISOC for lgamma and gamma to return EDOM for neg ints// 01/28/02: Corrected SVID/XOPEN stderr message for log2// 05/20/02: Added code for cot// 07/01/02: Added code for sinhcosh// 10/04/02: Underflow detection in ISOC path redefined to//           be zero rather than tiny and inexact// 12/06/02: Added code for annuity and compound// 01/30/03: Corrected test for underflow in ISOC path to not set denormal// 04/10/03: Corrected ISOC branch for gamma/lgamma to return ERANGE for neg ints.//           Added code for tgamma// 04/11/03: Corrected POSIX/SVID/XOPEN branches for gamma/lgamma//           to return EDOM for neg ints.// 09/08/03: Corrected XOPEN/SVID result for pow overflow with neg x, pos y.// 10/14/03: Added ILP32 ifdef// 12/12/03: Corrected XOPEN/SVID results for powf_zero_to_negative,//           powl_neg_to_non_integer, atan2f_zero, atan2df_zero,//           acoshf_lt_one, acosh_lt_one.// 12/07/04: Cast name strings as char *.// 12/08/04: Corrected POSIX behavior for atan2_zero, acos_gt_one, asin_gt_one,//           log_negative, log10_negative, log1p_negative, and log2_negative.//           Added SVID and XOPEN case log2l_zero.// 12/13/04: Corrected POSIX behavior for exp2_overflow, exp2_underflow,//           exp10_overflow, exp10_underflow.  Added ISOC to set errno for//           exp10_underflow.// 12/14/04: Corrected POSIX behavior for nextafter_overflow,//           nextafter_underflow, nexttoward_overflow, nexttoward_underflow.//           Added ISOC to set errno for nextafter and nexttoward underflow.// 12/15/04: Corrected POSIX behavior for exp, exp2, and exp10 underflow.// 03/31/05: Added missing ALIGNIT statement to 6 float constants.#include <errno.h>#include <stdio.h>#include <stdlib.h>#include "libm_support.h"#ifdef _LIBC# define pmatherr matherr# define pmatherrf matherrf# define pmatherrl matherrl#else_LIB_VERSION_TYPE#if defined( __POSIX__ )_LIB_VERSIONIMF = _POSIX_;#elif defined( __XOPEN__ )_LIB_VERSIONIMF = _XOPEN_;#elif defined( __SVID__ )_LIB_VERSIONIMF = _SVID_;#elif defined( __IEEE__ )_LIB_VERSIONIMF = _IEEE_;#else_LIB_VERSIONIMF = _ISOC_;#endif/************************************************************//* matherrX function pointers and setusermatherrX functions *//************************************************************/int (*pmatherrf)(struct exceptionf*) = MATHERR_F;int (*pmatherr)(struct EXC_DECL_D*) = MATHERR_D;int (*pmatherrl)(struct exceptionl*) = matherrl;void __libm_setusermatherrf( int(*user_merrf)(struct exceptionf*) ){   pmatherrf = ( (user_merrf==NULL)? (MATHERR_F) : (user_merrf) ); }void __libm_setusermatherr( int(*user_merr)(struct EXC_DECL_D*) ){   pmatherr = ( (user_merr==NULL)? (MATHERR_D) : (user_merr) );    }void __libm_setusermatherrl( int(*user_merrl)(struct exceptionl*) ){   pmatherrl = ( (user_merrl==NULL)? (matherrl) : (user_merrl) );  }#endif /* !_LIBC *//***********************************************//* error-handling function, libm_error_support *//***********************************************/void __libm_error_support(void *arg1,void *arg2,void *retval,error_types input_tag){# ifdef __cplusplusstruct __exception exc;# elsestruct exception  exc;# endifstruct exceptionf excf;struct exceptionl excl;# ifdef __GNUC__#define ALIGNIT __attribute__ ((__aligned__ (16)))# elif defined opensource#define ALIGNIT# else#define ALIGNIT __declspec(align(16))# endif# ifdef SIZE_LONG_INT_64#define __INT_64__ signed long# else# if ILP32#define __INT_64__ signed long long# else#define __INT_64__ __int64# endif# endif#define STATIC staticALIGNITSTATIC const char float_inf[4] = {0x00,0x00,0x80,0x7F};ALIGNITSTATIC const char float_huge[4] = {0xFF,0xFF,0x7F,0x7F};ALIGNITSTATIC const char float_zero[4] = {0x00,0x00,0x00,0x00};ALIGNITSTATIC const char float_neg_inf[4] = {0x00,0x00,0x80,0xFF};ALIGNITSTATIC const char float_neg_huge[4] = {0xFF,0xFF,0x7F,0xFF};ALIGNITSTATIC const char float_neg_zero[4] = {0x00,0x00,0x00,0x80};ALIGNITSTATIC const char double_inf[8] = {0x00,0x00,0x00,0x00,0x00,0x00,0xF0,0x7F};#ifndef _LIBCALIGNITSTATIC const char double_huge[8] = {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xEF,0x7F};#endifALIGNITSTATIC const char double_zero[8] = {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00};ALIGNITSTATIC const char double_neg_inf[8] = {0x00,0x00,0x00,0x00,0x00,0x00,0xF0,0xFF};#ifndef _LIBCALIGNITSTATIC const char double_neg_huge[8] = {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xEF,0xFF};#endifALIGNITSTATIC const char double_neg_zero[8] = {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80};ALIGNITSTATIC const char long_double_inf[16] = {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xFF,0x7F,0x00,0x00,0x00,0x00,0x00,0x00};ALIGNIT#ifndef _LIBCSTATIC const char long_double_huge[16] = {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFE,0x7F,0x00,0x00,0x00,0x00,0x00,0x00};#endifALIGNITSTATIC const char long_double_zero[16] = {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00};ALIGNITSTATIC const char long_double_neg_inf[16] = {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xFF,0xFF,0x00,0x00,0x00,0x00,0x00,0x00};ALIGNIT#ifndef _LIBCSTATIC const char long_double_neg_huge[16] = {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFE,0xFF,0x00,0x00,0x00,0x00,0x00,0x00};#endifALIGNITSTATIC const char long_double_neg_zero[16] = {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x00,0x00,0x00,0x00,0x00,0x00};#define RETVAL_HUGE_VALL *(long double *)retval =  *(long double *)long_double_inf#define RETVAL_NEG_HUGE_VALL *(long double *)retval = *(long double *)long_double_neg_inf#define RETVAL_HUGEL *(long double *)retval = (long double)*(float *)float_huge#define RETVAL_NEG_HUGEL *(long double *)retval =(long double)*(float*)float_neg_huge#define RETVAL_HUGE_VALD *(double *)retval = *(double *) double_inf#define RETVAL_NEG_HUGE_VALD *(double *)retval = *(double *) double_neg_inf#define RETVAL_HUGED *(double *)retval = (double) *(float *)float_huge#define RETVAL_NEG_HUGED *(double *)retval = (double) *(float *) float_neg_huge#define RETVAL_HUGE_VALF *(float *)retval =  *(float *) float_inf#define RETVAL_NEG_HUGE_VALF *(float *)retval = *(float *) float_neg_inf#define RETVAL_HUGEF *(float *)retval = *(float *) float_huge#define RETVAL_NEG_HUGEF *(float *)retval = *(float *) float_neg_huge#define ZEROL_VALUE *(long double *)long_double_zero#define ZEROD_VALUE *(double *)double_zero#define ZEROF_VALUE *(float *)float_zero#define RETVAL_ZEROL *(long double *)retval = *(long double *)long_double_zero#define RETVAL_ZEROD *(double *)retval = *(double *)double_zero#define RETVAL_ZEROF *(float *)retval = *(float *)float_zero#define RETVAL_NEG_ZEROL *(long double *)retval = *(long double *)long_double_neg_zero#define RETVAL_NEG_ZEROD *(double *)retval = *(double *)double_neg_zero#define RETVAL_NEG_ZEROF *(float *)retval = *(float *)float_neg_zero#define RETVAL_ONEL *(long double *)retval = (long double) 1.0#define RETVAL_ONED *(double *)retval = 1.0#define RETVAL_ONEF *(float *)retval = 1.0f#define NOT_MATHERRL excl.arg1=*(long double *)arg1;excl.arg2=*(long double *)arg2;excl.retval=*(long double *)retval;if(!pmatherrl(&excl))#define NOT_MATHERRD exc.arg1=*(double *)arg1;exc.arg2=*(double *)arg2;exc.retval=*(double *)retval;if(!pmatherr(&exc))#define NOT_MATHERRF excf.arg1=*(float *)arg1;excf.arg2=*(float *)arg2;excf.retval=*(float *)retval;if(!pmatherrf(&excf))#define ifSVID if(_LIB_VERSIONIMF==_SVID_)#define NAMEL excl.name#define NAMED exc.name#define NAMEF excf.name//// These should work OK for MS because they are ints -// leading underbars are not necessary.//#define DOMAIN          1#define SING            2#define OVERFLOW        3#define UNDERFLOW       4#define TLOSS           5#define PLOSS           6#define SINGL excl.type = SING#define DOMAINL excl.type = DOMAIN#define OVERFLOWL excl.type = OVERFLOW#define UNDERFLOWL excl.type = UNDERFLOW#define TLOSSL excl.type = TLOSS#define SINGD exc.type = SING#define DOMAIND exc.type = DOMAIN#define OVERFLOWD exc.type = OVERFLOW#define UNDERFLOWD exc.type = UNDERFLOW#define TLOSSD exc.type = TLOSS#define SINGF excf.type = SING#define DOMAINF excf.type = DOMAIN#define OVERFLOWF excf.type = OVERFLOW#define UNDERFLOWF excf.type = UNDERFLOW#define TLOSSF excf.type = TLOSS#define INPUT_XL (excl.arg1=*(long double*)arg1)#define INPUT_XD (exc.arg1=*(double*)arg1)#define INPUT_XF (excf.arg1=*(float*)arg1)#define INPUT_YL (excl.arg2=*(long double*)arg2)#define INPUT_YD (exc.arg2=*(double*)arg2)#define INPUT_YF (excf.arg2=*(float*)arg2)#define INPUT_RESL (*(long double *)retval)#define INPUT_RESD (*(double *)retval)#define INPUT_RESF (*(float *)retval)#define INPUT_RESI64 (*(__INT_64__ *)retval)#define WRITEL_LOG_ZERO fputs("logl: SING error\n",stderr)#define WRITED_LOG_ZERO fputs("log: SING error\n",stderr)#define WRITEF_LOG_ZERO fputs("logf: SING error\n",stderr)#define WRITEL_LOG_NEGATIVE fputs("logl: DOMAIN error\n",stderr)#define WRITED_LOG_NEGATIVE fputs("log: DOMAIN error\n",stderr)#define WRITEF_LOG_NEGATIVE fputs("logf: DOMAIN error\n",stderr)#define WRITEL_Y0_ZERO fputs("y0l: DOMAIN error\n",stderr)#define WRITED_Y0_ZERO fputs("y0: DOMAIN error\n",stderr)#define WRITEF_Y0_ZERO fputs("y0f: DOMAIN error\n",stderr)#define WRITEL_Y0_NEGATIVE fputs("y0l: DOMAIN error\n",stderr)#define WRITED_Y0_NEGATIVE fputs("y0: DOMAIN error\n",stderr)#define WRITEF_Y0_NEGATIVE fputs("y0f: DOMAIN error\n",stderr)#define WRITEL_Y1_ZERO fputs("y1l: DOMAIN error\n",stderr)#define WRITED_Y1_ZERO fputs("y1: DOMAIN error\n",stderr)#define WRITEF_Y1_ZERO fputs("y1f: DOMAIN error\n",stderr)#define WRITEL_Y1_NEGATIVE fputs("y1l: DOMAIN error\n",stderr)#define WRITED_Y1_NEGATIVE fputs("y1: DOMAIN error\n",stderr)#define WRITEF_Y1_NEGATIVE fputs("y1f: DOMAIN error\n",stderr)#define WRITEL_YN_ZERO fputs("ynl: DOMAIN error\n",stderr)#define WRITED_YN_ZERO fputs("yn: DOMAIN error\n",stderr)#define WRITEF_YN_ZERO fputs("ynf: DOMAIN error\n",stderr)#define WRITEL_YN_NEGATIVE fputs("ynl: DOMAIN error\n",stderr)#define WRITED_YN_NEGATIVE fputs("yn: DOMAIN error\n",stderr)#define WRITEF_YN_NEGATIVE fputs("ynf: DOMAIN error\n",stderr)#define WRITEL_LOG1P_ZERO fputs("log1pl: SING error\n",stderr)#define WRITED_LOG1P_ZERO fputs("log1p: SING error\n",stderr)#define WRITEF_LOG1P_ZERO fputs("log1pf: SING error\n",stderr)#define WRITEL_LOG1P_NEGATIVE fputs("log1pl: DOMAIN error\n",stderr)#define WRITED_LOG1P_NEGATIVE fputs("log1p: DOMAIN error\n",stderr)#define WRITEF_LOG1P_NEGATIVE fputs("log1pf: DOMAIN error\n",stderr)#define WRITEL_LOG10_ZERO fputs("log10l: SING error\n",stderr)#define WRITED_LOG10_ZERO fputs("log10: SING error\n",stderr)#define WRITEF_LOG10_ZERO fputs("log10f: SING error\n",stderr)#define WRITEL_LOG10_NEGATIVE fputs("log10l: DOMAIN error\n",stderr)#define WRITED_LOG10_NEGATIVE fputs("log10: DOMAIN error\n",stderr)#define WRITEF_LOG10_NEGATIVE fputs("log10f: DOMAIN error\n",stderr)#define WRITEL_LOG2_ZERO fputs("log2l: SING error\n",stderr)#define WRITED_LOG2_ZERO fputs("log2: SING error\n",stderr)#define WRITEF_LOG2_ZERO fputs("log2f: SING error\n",stderr)#define WRITEL_LOG2_NEGATIVE fputs("log2l: DOMAIN error\n",stderr)#define WRITED_LOG2_NEGATIVE fputs("log2: DOMAIN error\n",stderr)#define WRITEF_LOG2_NEGATIVE fputs("log2f: DOMAIN error\n",stderr)#define WRITEL_POW_ZERO_TO_ZERO fputs("powl(0,0): DOMAIN error\n",stderr)#define WRITED_POW_ZERO_TO_ZERO fputs("pow(0,0): DOMAIN error\n",stderr)#define WRITEF_POW_ZERO_TO_ZERO fputs("powf(0,0): DOMAIN error\n",stderr)#define WRITEL_POW_ZERO_TO_NEGATIVE fputs("powl(0,negative): DOMAIN error\n",stderr)#define WRITED_POW_ZERO_TO_NEGATIVE fputs("pow(0,negative): DOMAIN error\n",stderr)#define WRITEF_POW_ZERO_TO_NEGATIVE fputs("powf(0,negative): DOMAIN error\n",stderr)#define WRITEL_POW_NEG_TO_NON_INTEGER fputs("powl(negative,non-integer): DOMAIN error\n",stderr)#define WRITED_POW_NEG_TO_NON_INTEGER fputs("pow(negative,non-integer): DOMAIN error\n",stderr)#define WRITEF_POW_NEG_TO_NON_INTEGER fputs("powf(negative,non-integer): DOMAIN error\n",stderr)#define WRITEL_ATAN2_ZERO_BY_ZERO fputs("atan2l: DOMAIN error\n",stderr)#define WRITED_ATAN2_ZERO_BY_ZERO fputs("atan2: DOMAIN error\n",stderr)#define WRITEF_ATAN2_ZERO_BY_ZERO fputs("atan2f: DOMAIN error\n",stderr)#define WRITEL_SQRT fputs("sqrtl: DOMAIN error\n",stderr)#define WRITED_SQRT fputs("sqrt: DOMAIN error\n",stderr)#define WRITEF_SQRT fputs("sqrtf: DOMAIN error\n",stderr)#define WRITEL_FMOD fputs("fmodl: DOMAIN error\n",stderr)#define WRITED_FMOD fputs("fmod: DOMAIN error\n",stderr)#define WRITEF_FMOD fputs("fmodf: DOMAIN error\n",stderr)#define WRITEL_REM fputs("remainderl: DOMAIN error\n",stderr)#define WRITED_REM fputs("remainder: DOMAIN error\n",stderr)#define WRITEF_REM fputs("remainderf: DOMAIN error\n",stderr)#define WRITEL_ACOS fputs("acosl: DOMAIN error\n",stderr)#define WRITED_ACOS fputs("acos: DOMAIN error\n",stderr)#define WRITEF_ACOS fputs("acosf: DOMAIN error\n",stderr)#define WRITEL_ASIN fputs("asinl: DOMAIN error\n",stderr)#define WRITED_ASIN fputs("asin: DOMAIN error\n",stderr)#define WRITEF_ASIN fputs("asinf: DOMAIN error\n",stderr)#define WRITEL_ACOSH fputs("acoshl: DOMAIN error\n",stderr)#define WRITED_ACOSH fputs("acosh: DOMAIN error\n",stderr)#define WRITEF_ACOSH fputs("acoshf: DOMAIN error\n",stderr)#define WRITEL_ATANH_GT_ONE fputs("atanhl: DOMAIN error\n",stderr)#define WRITED_ATANH_GT_ONE fputs("atanh: DOMAIN error\n",stderr)#define WRITEF_ATANH_GT_ONE fputs("atanhf: DOMAIN error\n",stderr)#define WRITEL_ATANH_EQ_ONE fputs("atanhl: SING error\n",stderr)#define WRITED_ATANH_EQ_ONE fputs("atanh: SING error\n",stderr)#define WRITEF_ATANH_EQ_ONE fputs("atanhf: SING error\n",stderr)#define WRITEL_LGAMMA_NEGATIVE fputs("lgammal: SING error\n",stderr)#define WRITED_LGAMMA_NEGATIVE fputs("lgamma: SING error\n",stderr)#define WRITEF_LGAMMA_NEGATIVE fputs("lgammaf: SING error\n",stderr)#define WRITEL_GAMMA_NEGATIVE fputs("gammal: SING error\n",stderr)#define WRITED_GAMMA_NEGATIVE fputs("gamma: SING error\n",stderr)#define WRITEF_GAMMA_NEGATIVE fputs("gammaf: SING error\n",stderr)#define WRITEL_TGAMMA_NEGATIVE fputs("tgammal: SING error\n",stderr)#define WRITED_TGAMMA_NEGATIVE fputs("tgamma: SING error\n",stderr)#define WRITEF_TGAMMA_NEGATIVE fputs("tgammaf: SING error\n",stderr)#define WRITEL_J0_TLOSS  fputs("j0l: TLOSS error\n",stderr)#define WRITEL_Y0_TLOSS  fputs("y0l: TLOSS error\n",stderr)#define WRITEL_J1_TLOSS  fputs("j1l: TLOSS error\n",stderr)#define WRITEL_Y1_TLOSS  fputs("y1l: TLOSS error\n",stderr)#define WRITEL_JN_TLOSS  fputs("jnl: TLOSS error\n",stderr)#define WRITEL_YN_TLOSS  fputs("ynl: TLOSS error\n",stderr)#define WRITED_J0_TLOSS  fputs("j0: TLOSS error\n",stderr)#define WRITED_Y0_TLOSS  fputs("y0: TLOSS error\n",stderr)#define WRITED_J1_TLOSS  fputs("j1: TLOSS error\n",stderr)#define WRITED_Y1_TLOSS  fputs("y1: TLOSS error\n",stderr)#define WRITED_JN_TLOSS  fputs("jn: TLOSS error\n",stderr)#define WRITED_YN_TLOSS  fputs("yn: TLOSS error\n",stderr)#define WRITEF_J0_TLOSS  fputs("j0f: TLOSS error\n",stderr)#define WRITEF_Y0_TLOSS  fputs("y0f: TLOSS error\n",stderr)#define WRITEF_J1_TLOSS  fputs("j1f: TLOSS error\n",stderr)#define WRITEF_Y1_TLOSS  fputs("y1f: TLOSS error\n",stderr)#define WRITEF_JN_TLOSS  fputs("jnf: TLOSS error\n",stderr)#define WRITEF_YN_TLOSS  fputs("ynf: TLOSS error\n",stderr)#define WRITEL_ACOSD fputs("acosdl: DOMAIN error\n",stderr)#define WRITED_ACOSD fputs("acosd: DOMAIN error\n",stderr)#define WRITEF_ACOSD fputs("acosdf: DOMAIN error\n",stderr)#define WRITEL_ASIND fputs("asindl: DOMAIN error\n",stderr)#define WRITED_ASIND fputs("asind: DOMAIN error\n",stderr)#define WRITEF_ASIND fputs("asindf: DOMAIN error\n",stderr)#define WRITEL_ATAN2D_ZERO_BY_ZERO fputs("atan2dl: DOMAIN error\n",stderr)#define WRITED_ATAN2D_ZERO_BY_ZERO fputs("atan2d: DOMAIN error\n",stderr)#define WRITEF_ATAN2D_ZERO_BY_ZERO fputs("atan2df: DOMAIN error\n",stderr)/***********************//* IEEE Path           *//***********************/if(_LIB_VERSIONIMF==_IEEE_) return;/***********************//* C9X Path           *//***********************/else if(_LIB_VERSIONIMF==_ISOC_){  switch(input_tag)  {    case logl_zero:    case log_zero:    case logf_zero:    case log10l_zero:    case log10_zero:    case log10f_zero:    case log2l_zero:    case log2_zero:    case log2f_zero:    case log1pl_zero:    case log1p_zero:    case log1pf_zero:    case powl_overflow:    case pow_overflow:    case powf_overflow:    case expl_overflow:    case exp_overflow:    case expf_overflow:    case exp2l_overflow:    case exp2_overflow:    case exp2f_overflow:    case exp10l_overflow:    case exp10_overflow:    case exp10f_overflow:    case expm1l_overflow:    case expm1_overflow:    case expm1f_overflow:    case hypotl_overflow:    case hypot_overflow:    case hypotf_overflow:    case sinhl_overflow:    case sinh_overflow:    case sinhf_overflow:    case atanhl_eq_one:    case atanh_eq_one:    case atanhf_eq_one:    case scalbl_overflow:    case scalb_overflow:    case scalbf_overflow:    case coshl_overflow:    case cosh_overflow:    case coshf_overflow:    case nextafterl_overflow:    case nextafter_overflow:    case nextafterf_overflow:    case nextafterl_underflow:    case nextafter_underflow:    case nextafterf_underflow:    case nexttowardl_overflow:    case nexttoward_overflow:    case nexttowardf_overflow:    case nexttowardl_underflow:    case nexttoward_underflow:    case nexttowardf_underflow:    case scalbnl_overflow:    case scalbn_overflow:    case scalbnf_overflow:    case scalblnl_overflow:    case scalbln_overflow:    case scalblnf_overflow:    case ldexpl_overflow:    case ldexp_overflow:    case ldexpf_overflow:    case lgammal_overflow:    case lgamma_overflow:    case lgammaf_overflow:    case gammal_overflow:    case gamma_overflow:    case gammaf_overflow:    case lgammal_negative:    case lgamma_negative:    case lgammaf_negative:    case gammal_negative:    case gamma_negative:    case gammaf_negative:    case ilogbl_zero:    case ilogb_zero:    case ilogbf_zero:    case fdiml_overflow:    case fdim_overflow:    case fdimf_overflow:    case llrintl_large:    case llrint_large:    case llrintf_large:    case llroundl_large:    case llround_large:    case llroundf_large:    case lrintl_large:    case lrint_large:    case lrintf_large:    case lroundl_large:    case lround_large:    case lroundf_large:    case tandl_overflow:    case tand_overflow:    case tandf_overflow:    case cotdl_overflow:    case cotd_overflow:    case cotdf_overflow:    case cotl_overflow:    case cot_overflow:    case cotf_overflow:    case sinhcoshl_overflow:    case sinhcosh_overflow:

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩高清不卡在线| 亚洲乱码国产乱码精品精可以看| 美女网站在线免费欧美精品| 欧美肥妇free| 久久99最新地址| 久久久噜噜噜久久中文字幕色伊伊| 国内精品国产成人| 国产精品萝li| 欧美日韩一区二区三区不卡 | 欧美人动与zoxxxx乱| 舔着乳尖日韩一区| 日韩欧美国产一区二区在线播放| 国产另类ts人妖一区二区| 中文字幕亚洲区| 欧美一区二区三区婷婷月色| 国产精品99久久久久| 亚洲视频 欧洲视频| 欧美人与性动xxxx| 高清shemale亚洲人妖| 尤物av一区二区| 精品少妇一区二区三区| 国产风韵犹存在线视精品| 一区二区三区日韩| 日韩欧美国产综合| 99久久精品国产毛片| 日韩不卡免费视频| 最新国产の精品合集bt伙计| 欧美日韩国产成人在线免费| 国产成人aaa| 日本欧美肥老太交大片| 日韩伦理免费电影| 久久看人人爽人人| 欧美三级电影一区| 国产精品亚洲第一区在线暖暖韩国| 亚洲综合色婷婷| 国产欧美一区二区在线观看| 欧美片在线播放| 91在线一区二区三区| 久久精品国产精品亚洲红杏| 一区二区三区不卡在线观看| 久久男人中文字幕资源站| 欧美日韩成人一区| 99久久免费精品高清特色大片| 日本伊人午夜精品| 亚洲黄色片在线观看| 国产精品素人视频| 久久久噜噜噜久久中文字幕色伊伊 | 图片区小说区区亚洲影院| 亚洲国产精品激情在线观看| 日韩视频在线你懂得| 欧美三级韩国三级日本三斤| www.爱久久.com| 国产激情视频一区二区在线观看 | 精品国产露脸精彩对白| 88在线观看91蜜桃国自产| 色哟哟欧美精品| jlzzjlzz欧美大全| 国产成人综合网站| 国产精品一区二区你懂的| 久久福利视频一区二区| 免费观看在线色综合| 午夜在线成人av| 亚洲尤物在线视频观看| 一区二区三区中文在线观看| 成人免费在线视频| 国产精品久久毛片av大全日韩| 国产视频亚洲色图| 国产欧美日本一区视频| 久久精品综合网| 国产色产综合色产在线视频| 欧美精品一区二区三区高清aⅴ | 蜜臀精品久久久久久蜜臀| 亚洲国产精品久久人人爱蜜臀| 亚洲另类在线视频| 一区二区三区日韩欧美| 一区二区三区 在线观看视频| 亚洲欧美日韩成人高清在线一区| 自拍偷拍亚洲综合| 亚洲欧美另类久久久精品| 1000精品久久久久久久久| 一色屋精品亚洲香蕉网站| 中文字幕在线免费不卡| 国产精品国产自产拍高清av| 国产精品久久久久久久久免费丝袜| 国产精品免费久久久久| 中文字幕中文乱码欧美一区二区| 国产精品日韩成人| 一区二区三区在线观看网站| 亚洲小说欧美激情另类| 日本三级亚洲精品| 国产成人在线影院| 色综合亚洲欧洲| 欧美日韩一区二区三区四区| 91精品蜜臀在线一区尤物| 精品入口麻豆88视频| 亚洲国产精品激情在线观看| 亚洲欧美另类综合偷拍| 天堂在线一区二区| 国产综合色产在线精品| 成人综合婷婷国产精品久久蜜臀| 99re这里只有精品首页| 欧美老女人第四色| 久久久久国产精品麻豆ai换脸| 成人欧美一区二区三区小说| 午夜精品福利一区二区蜜股av| 狠狠网亚洲精品| 91蜜桃网址入口| 制服丝袜成人动漫| 亚洲国产精品ⅴa在线观看| 亚洲一级二级在线| 国产精品综合视频| 在线观看国产91| 久久免费的精品国产v∧| 亚洲摸摸操操av| 激情深爱一区二区| 色av综合在线| www国产成人免费观看视频 深夜成人网| 国产精品网友自拍| 免费在线看成人av| 99国产精品99久久久久久| 欧美一区二区三级| 1024国产精品| 国内精品久久久久影院薰衣草 | 欧美日韩精品一区二区| 国产亚洲欧美色| 五月天丁香久久| 成人av电影免费观看| 欧美成人官网二区| 伊人开心综合网| 成人午夜精品一区二区三区| 69av一区二区三区| 亚洲伦在线观看| 国产河南妇女毛片精品久久久| 欧美日韩精品系列| 亚洲男人的天堂在线aⅴ视频 | 美女网站在线免费欧美精品| 色诱视频网站一区| 中文字幕不卡三区| 久久99国产精品尤物| 欧美日韩一区二区三区高清| 亚洲视频一二三| 成人国产一区二区三区精品| 欧美变态tickle挠乳网站| 婷婷成人综合网| 欧美在线你懂的| 亚洲黄色片在线观看| 99精品在线免费| 国产精品乱码人人做人人爱 | 国产精品电影一区二区三区| 国产一区二区在线电影| 日韩欧美中文字幕精品| 婷婷久久综合九色综合伊人色| 色av一区二区| 亚洲男人天堂一区| 91麻豆免费看片| 国产精品久久久久久久久搜平片 | 美日韩一区二区三区| 884aa四虎影成人精品一区| 亚洲一区二区视频在线| 91免费版pro下载短视频| 国产精品久久久久aaaa| 成人教育av在线| 国产喷白浆一区二区三区| 国产成人精品亚洲午夜麻豆| 久久综合九色综合97婷婷| 九九**精品视频免费播放| 日韩欧美国产wwwww| 久久精品国产久精国产| 精品av综合导航| 国产精品亚洲成人| 国产区在线观看成人精品| 国产成人自拍网| 中文字幕一区日韩精品欧美| 91在线观看成人| 亚洲尤物视频在线| 777a∨成人精品桃花网| 久久99精品久久久久久动态图 | 蜜桃av一区二区三区电影| 精品国产污网站| 成人精品免费看| 亚洲欧美色综合| 欧美日韩在线播| 裸体在线国模精品偷拍| 精品成人免费观看| 成人性生交大片免费看中文| 国产精品久久久久精k8| 欧美图区在线视频| 久久成人精品无人区| 国产无人区一区二区三区| 97久久久精品综合88久久| 亚洲一区二区三区视频在线| 欧美一卡在线观看| 国产成人鲁色资源国产91色综 | 国产三级一区二区| 91国内精品野花午夜精品| 午夜激情一区二区| 国产欧美在线观看一区| 欧美在线一区二区| 国产精品资源在线观看| 亚洲欧洲综合另类|