OpenCores
URL https://opencores.org/ocsvn/or1k/or1k/trunk

Subversion Repositories or1k

[/] [or1k/] [branches/] [newlib/] [newlib/] [newlib/] [libm/] [math/] [wf_jn.c] - Diff between revs 39 and 56

Go to most recent revision | Show entire file | Details | Blame | View Log

Rev 39 Rev 56
Line 33... Line 33...
        if(_LIB_VERSION == _IEEE_ || isnanf(x) ) return z;
        if(_LIB_VERSION == _IEEE_ || isnanf(x) ) return z;
        if(fabsf(x)>(float)X_TLOSS) {
        if(fabsf(x)>(float)X_TLOSS) {
            /* jnf(|x|>X_TLOSS) */
            /* jnf(|x|>X_TLOSS) */
            exc.type = TLOSS;
            exc.type = TLOSS;
            exc.name = "jnf";
            exc.name = "jnf";
 
            exc.err = 0;
 
            exc.arg1 = (double)n;
 
            exc.arg2 = (double)x;
            exc.retval = 0.0;
            exc.retval = 0.0;
            if (_LIB_VERSION == _POSIX_)
            if (_LIB_VERSION == _POSIX_)
                errno = ERANGE;
                errno = ERANGE;
            else if (!matherr(&exc)) {
            else if (!matherr(&exc)) {
               errno = ERANGE;
               errno = ERANGE;
Line 71... Line 74...
 
 
            SET_HIGH_WORD(inf,0x7ff00000);      /* set inf to infinite */
            SET_HIGH_WORD(inf,0x7ff00000);      /* set inf to infinite */
#endif
#endif
            exc.type = DOMAIN;  /* should be SING for IEEE */
            exc.type = DOMAIN;  /* should be SING for IEEE */
            exc.name = "ynf";
            exc.name = "ynf";
 
            exc.err = 0;
 
            exc.arg1 = (double)n;
 
            exc.arg2 = (double)x;
            if (_LIB_VERSION == _SVID_)
            if (_LIB_VERSION == _SVID_)
                exc.retval = -HUGE;
                exc.retval = -HUGE;
            else
            else
                exc.retval = -HUGE_VAL;
                exc.retval = -HUGE_VAL;
            if (_LIB_VERSION == _POSIX_)
            if (_LIB_VERSION == _POSIX_)
Line 88... Line 94...
        }
        }
        if(x>(float)X_TLOSS) {
        if(x>(float)X_TLOSS) {
            /* ynf(x>X_TLOSS) */
            /* ynf(x>X_TLOSS) */
            exc.type = TLOSS;
            exc.type = TLOSS;
            exc.name = "ynf";
            exc.name = "ynf";
 
            exc.err = 0;
 
            exc.arg1 = (double)n;
 
            exc.arg2 = (double)x;
            exc.retval = 0.0;
            exc.retval = 0.0;
            if (_LIB_VERSION == _POSIX_)
            if (_LIB_VERSION == _POSIX_)
                errno = ERANGE;
                errno = ERANGE;
            else if (!matherr(&exc)) {
            else if (!matherr(&exc)) {
                errno = ERANGE;
                errno = ERANGE;

powered by: WebSVN 2.1.0

© copyright 1999-2025 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.