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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? op_helper.c

?? QEMU 0.91 source code, supports ARM processor including S3C24xx series
?? C
?? 第 1 頁(yè) / 共 5 頁(yè)
字號(hào):
            else                T0 = 0x02;        } else {            if (isden(FT0)) {                /* Denormalized numbers */                T0 = 0x10;            } else {                /* Normalized numbers */                T0 = 0x00;            }            if (isneg) {                T0 |= 0x08;            } else {                T0 |= 0x04;            }        }    }    if (set_fprf) {        /* We update FPSCR_FPRF */        env->fpscr &= ~(0x1F << FPSCR_FPRF);        env->fpscr |= T0 << FPSCR_FPRF;    }    /* We just need fpcc to update Rc1 */    T0 &= 0xF;}/* Floating-point invalid operations exception */static always_inline void fload_invalid_op_excp (int op){    int ve;    ve = fpscr_ve;    if (op & POWERPC_EXCP_FP_VXSNAN) {        /* Operation on signaling NaN */        env->fpscr |= 1 << FPSCR_VXSNAN;    }    if (op & POWERPC_EXCP_FP_VXSOFT) {        /* Software-defined condition */        env->fpscr |= 1 << FPSCR_VXSOFT;    }    switch (op & ~(POWERPC_EXCP_FP_VXSOFT | POWERPC_EXCP_FP_VXSNAN)) {    case POWERPC_EXCP_FP_VXISI:        /* Magnitude subtraction of infinities */        env->fpscr |= 1 << FPSCR_VXISI;        goto update_arith;    case POWERPC_EXCP_FP_VXIDI:        /* Division of infinity by infinity */        env->fpscr |= 1 << FPSCR_VXIDI;        goto update_arith;    case POWERPC_EXCP_FP_VXZDZ:        /* Division of zero by zero */        env->fpscr |= 1 << FPSCR_VXZDZ;        goto update_arith;    case POWERPC_EXCP_FP_VXIMZ:        /* Multiplication of zero by infinity */        env->fpscr |= 1 << FPSCR_VXIMZ;        goto update_arith;    case POWERPC_EXCP_FP_VXVC:        /* Ordered comparison of NaN */        env->fpscr |= 1 << FPSCR_VXVC;        env->fpscr &= ~(0xF << FPSCR_FPCC);        env->fpscr |= 0x11 << FPSCR_FPCC;        /* We must update the target FPR before raising the exception */        if (ve != 0) {            env->exception_index = POWERPC_EXCP_PROGRAM;            env->error_code = POWERPC_EXCP_FP | POWERPC_EXCP_FP_VXVC;            /* Update the floating-point enabled exception summary */            env->fpscr |= 1 << FPSCR_FEX;            /* Exception is differed */            ve = 0;        }        break;    case POWERPC_EXCP_FP_VXSQRT:        /* Square root of a negative number */        env->fpscr |= 1 << FPSCR_VXSQRT;    update_arith:        env->fpscr &= ~((1 << FPSCR_FR) | (1 << FPSCR_FI));        if (ve == 0) {            /* Set the result to quiet NaN */            FT0 = UINT64_MAX;            env->fpscr &= ~(0xF << FPSCR_FPCC);            env->fpscr |= 0x11 << FPSCR_FPCC;        }        break;    case POWERPC_EXCP_FP_VXCVI:        /* Invalid conversion */        env->fpscr |= 1 << FPSCR_VXCVI;        env->fpscr &= ~((1 << FPSCR_FR) | (1 << FPSCR_FI));        if (ve == 0) {            /* Set the result to quiet NaN */            FT0 = UINT64_MAX;            env->fpscr &= ~(0xF << FPSCR_FPCC);            env->fpscr |= 0x11 << FPSCR_FPCC;        }        break;    }    /* Update the floating-point invalid operation summary */    env->fpscr |= 1 << FPSCR_VX;    /* Update the floating-point exception summary */    env->fpscr |= 1 << FPSCR_FX;    if (ve != 0) {        /* Update the floating-point enabled exception summary */        env->fpscr |= 1 << FPSCR_FEX;        if (msr_fe0 != 0 || msr_fe1 != 0)            do_raise_exception_err(POWERPC_EXCP_PROGRAM, POWERPC_EXCP_FP | op);    }}static always_inline void float_zero_divide_excp (void){    union {        float64 f;        uint64_t u;    } u0, u1;    env->fpscr |= 1 << FPSCR_ZX;    env->fpscr &= ~((1 << FPSCR_FR) | (1 << FPSCR_FI));    /* Update the floating-point exception summary */    env->fpscr |= 1 << FPSCR_FX;    if (fpscr_ze != 0) {        /* Update the floating-point enabled exception summary */        env->fpscr |= 1 << FPSCR_FEX;        if (msr_fe0 != 0 || msr_fe1 != 0) {            do_raise_exception_err(POWERPC_EXCP_PROGRAM,                                   POWERPC_EXCP_FP | POWERPC_EXCP_FP_ZX);        }    } else {        /* Set the result to infinity */        u0.f = FT0;        u1.f = FT1;        u0.u = ((u0.u ^ u1.u) & 0x8000000000000000ULL);        u0.u |= 0x7FFULL << 52;        FT0 = u0.f;    }}static always_inline void float_overflow_excp (void){    env->fpscr |= 1 << FPSCR_OX;    /* Update the floating-point exception summary */    env->fpscr |= 1 << FPSCR_FX;    if (fpscr_oe != 0) {        /* XXX: should adjust the result */        /* Update the floating-point enabled exception summary */        env->fpscr |= 1 << FPSCR_FEX;        /* We must update the target FPR before raising the exception */        env->exception_index = POWERPC_EXCP_PROGRAM;        env->error_code = POWERPC_EXCP_FP | POWERPC_EXCP_FP_OX;    } else {        env->fpscr |= 1 << FPSCR_XX;        env->fpscr |= 1 << FPSCR_FI;    }}static always_inline void float_underflow_excp (void){    env->fpscr |= 1 << FPSCR_UX;    /* Update the floating-point exception summary */    env->fpscr |= 1 << FPSCR_FX;    if (fpscr_ue != 0) {        /* XXX: should adjust the result */        /* Update the floating-point enabled exception summary */        env->fpscr |= 1 << FPSCR_FEX;        /* We must update the target FPR before raising the exception */        env->exception_index = POWERPC_EXCP_PROGRAM;        env->error_code = POWERPC_EXCP_FP | POWERPC_EXCP_FP_UX;    }}static always_inline void float_inexact_excp (void){    env->fpscr |= 1 << FPSCR_XX;    /* Update the floating-point exception summary */    env->fpscr |= 1 << FPSCR_FX;    if (fpscr_xe != 0) {        /* Update the floating-point enabled exception summary */        env->fpscr |= 1 << FPSCR_FEX;        /* We must update the target FPR before raising the exception */        env->exception_index = POWERPC_EXCP_PROGRAM;        env->error_code = POWERPC_EXCP_FP | POWERPC_EXCP_FP_XX;    }}static always_inline void fpscr_set_rounding_mode (void){    int rnd_type;    /* Set rounding mode */    switch (fpscr_rn) {    case 0:        /* Best approximation (round to nearest) */        rnd_type = float_round_nearest_even;        break;    case 1:        /* Smaller magnitude (round toward zero) */        rnd_type = float_round_to_zero;        break;    case 2:        /* Round toward +infinite */        rnd_type = float_round_up;        break;    default:    case 3:        /* Round toward -infinite */        rnd_type = float_round_down;        break;    }    set_float_rounding_mode(rnd_type, &env->fp_status);}void do_fpscr_setbit (int bit){    int prev;    prev = (env->fpscr >> bit) & 1;    env->fpscr |= 1 << bit;    if (prev == 0) {        switch (bit) {        case FPSCR_VX:            env->fpscr |= 1 << FPSCR_FX;            if (fpscr_ve)                goto raise_ve;        case FPSCR_OX:            env->fpscr |= 1 << FPSCR_FX;            if (fpscr_oe)                goto raise_oe;            break;        case FPSCR_UX:            env->fpscr |= 1 << FPSCR_FX;            if (fpscr_ue)                goto raise_ue;            break;        case FPSCR_ZX:            env->fpscr |= 1 << FPSCR_FX;            if (fpscr_ze)                goto raise_ze;            break;        case FPSCR_XX:            env->fpscr |= 1 << FPSCR_FX;            if (fpscr_xe)                goto raise_xe;            break;        case FPSCR_VXSNAN:        case FPSCR_VXISI:        case FPSCR_VXIDI:        case FPSCR_VXZDZ:        case FPSCR_VXIMZ:        case FPSCR_VXVC:        case FPSCR_VXSOFT:        case FPSCR_VXSQRT:        case FPSCR_VXCVI:            env->fpscr |= 1 << FPSCR_VX;            env->fpscr |= 1 << FPSCR_FX;            if (fpscr_ve != 0)                goto raise_ve;            break;        case FPSCR_VE:            if (fpscr_vx != 0) {            raise_ve:                env->error_code = POWERPC_EXCP_FP;                if (fpscr_vxsnan)                    env->error_code |= POWERPC_EXCP_FP_VXSNAN;                if (fpscr_vxisi)                    env->error_code |= POWERPC_EXCP_FP_VXISI;                if (fpscr_vxidi)                    env->error_code |= POWERPC_EXCP_FP_VXIDI;                if (fpscr_vxzdz)                    env->error_code |= POWERPC_EXCP_FP_VXZDZ;                if (fpscr_vximz)                    env->error_code |= POWERPC_EXCP_FP_VXIMZ;                if (fpscr_vxvc)                    env->error_code |= POWERPC_EXCP_FP_VXVC;                if (fpscr_vxsoft)                    env->error_code |= POWERPC_EXCP_FP_VXSOFT;                if (fpscr_vxsqrt)                    env->error_code |= POWERPC_EXCP_FP_VXSQRT;                if (fpscr_vxcvi)                    env->error_code |= POWERPC_EXCP_FP_VXCVI;                goto raise_excp;            }            break;        case FPSCR_OE:            if (fpscr_ox != 0) {            raise_oe:                env->error_code = POWERPC_EXCP_FP | POWERPC_EXCP_FP_OX;                goto raise_excp;            }            break;        case FPSCR_UE:            if (fpscr_ux != 0) {            raise_ue:                env->error_code = POWERPC_EXCP_FP | POWERPC_EXCP_FP_UX;                goto raise_excp;            }            break;        case FPSCR_ZE:            if (fpscr_zx != 0) {            raise_ze:                env->error_code = POWERPC_EXCP_FP | POWERPC_EXCP_FP_ZX;                goto raise_excp;            }            break;        case FPSCR_XE:            if (fpscr_xx != 0) {            raise_xe:                env->error_code = POWERPC_EXCP_FP | POWERPC_EXCP_FP_XX;                goto raise_excp;            }            break;        case FPSCR_RN1:        case FPSCR_RN:            fpscr_set_rounding_mode();            break;        default:            break;        raise_excp:            /* Update the floating-point enabled exception summary */            env->fpscr |= 1 << FPSCR_FEX;                /* We have to update Rc1 before raising the exception */            env->exception_index = POWERPC_EXCP_PROGRAM;            break;        }    }}#if defined(WORDS_BIGENDIAN)#define WORD0 0#define WORD1 1#else#define WORD0 1#define WORD1 0#endifvoid do_store_fpscr (uint32_t mask){    /*     * We use only the 32 LSB of the incoming fpr     */    union {        double d;        struct {            uint32_t u[2];        } s;    } u;    uint32_t prev, new;    int i;    u.d = FT0;    prev = env->fpscr;    new = u.s.u[WORD1];    new &= ~0x90000000;    new |= prev & 0x90000000;    for (i = 0; i < 7; i++) {        if (mask & (1 << i)) {            env->fpscr &= ~(0xF << (4 * i));            env->fpscr |= new & (0xF << (4 * i));        }    }    /* Update VX and FEX */    if (fpscr_ix != 0)        env->fpscr |= 1 << FPSCR_VX;    if ((fpscr_ex & fpscr_eex) != 0) {        env->fpscr |= 1 << FPSCR_FEX;        env->exception_index = POWERPC_EXCP_PROGRAM;        /* XXX: we should compute it properly */        env->error_code = POWERPC_EXCP_FP;    }    fpscr_set_rounding_mode();}#undef WORD0#undef WORD1#ifdef CONFIG_SOFTFLOATvoid do_float_check_status (void){    if (env->exception_index == POWERPC_EXCP_PROGRAM &&        (env->error_code & POWERPC_EXCP_FP)) {        /* Differred floating-point exception after target FPR update */        if (msr_fe0 != 0 || msr_fe1 != 0)            do_raise_exception_err(env->exception_index, env->error_code);    } else if (env->fp_status.float_exception_flags & float_flag_overflow) {        float_overflow_excp();    } else if (env->fp_status.float_exception_flags & float_flag_underflow) {        float_underflow_excp();    } else if (env->fp_status.float_exception_flags & float_flag_inexact) {        float_inexact_excp();    }}#endif#if USE_PRECISE_EMULATIONvoid do_fadd (void){    if (unlikely(float64_is_signaling_nan(FT0) ||                 float64_is_signaling_nan(FT1))) {        /* sNaN addition */        fload_invalid_op_excp(POWERPC_EXCP_FP_VXSNAN);    } else if (likely(isfinite(FT0) || isfinite(FT1) ||                      fpisneg(FT0) == fpisneg(FT1))) {        FT0 = float64_add(FT0, FT1, &env->fp_status);    } else {        /* Magnitude subtraction of infinities */        fload_invalid_op_excp(POWERPC_EXCP_FP_VXISI);    }}void do_fsub (void){    if (unlikely(float64_is_signaling_nan(FT0) ||                 float64_is_signaling_nan(FT1))) {        /* sNaN subtraction */        fload_invalid_op_excp(POWERPC_EXCP_FP_VXSNAN);    } else if (likely(isfinite(FT0) || isfinite(FT1) ||                      fpisneg(FT0) != fpisneg(FT1))) {        FT0 = float64_sub(FT0, FT1, &env->fp_status);    } else {        /* Magnitude subtraction of infinities */        fload_invalid_op_excp(POWERPC_EXCP_FP_VXISI);    }}void do_fmul (void){    if (unlikely(float64_is_signaling_nan(FT0) ||                 float64_is_signaling_nan(FT1))) {        /* sNaN multiplication */        fload_invalid_op_excp(POWERPC_EXCP_FP_VXSNAN);    } else if (unlikely((isinfinity(FT0) && iszero(FT1)) ||                        (iszero(FT0) && isinfinity(FT1)))) {        /* Multiplication of zero by infinity */        fload_invalid_op_excp(POWERPC_EXCP_FP_VXIMZ);    } else {        FT0 = float64_mul(FT0, FT1, &env->fp_status);    }}void do_fdiv (void){    if (unlikely(float64_is_signaling_nan(FT0) ||                 float64_is_signaling_nan(FT1))) {        /* sNaN division */        fload_invalid_op_excp(POWERPC_EXCP_FP_VXSNAN);    } else if (unlikely(isinfinity(FT0) && isinfinity(FT1))) {        /* Division of infinity by infinity */        fload_invalid_op_excp(POWERPC_EXCP_FP_VXIDI);    } else if (unlikely(iszero(FT1))) {        if (iszero(FT0)) {            /* Division of zero by zero */            fload_invalid_op_excp(POWERPC_EXCP_FP_VXZDZ);        } else {            /* Division by zero */            float_zero_divide_excp();        }    } else {        FT0 = float64_div(FT0, FT1, &env->fp_status);    }}#endif /* USE_PRECISE_EMULATION */void do_fctiw (void){    union {        double d;        uint64_t i;    } p;    if (unlikely(float64_is_signaling_nan(FT0))) {        /* sNaN conversion */        fload_invalid_op_excp(POWERPC_EXCP_FP_VXSNAN | POWERPC_EXCP_FP_VXCVI);    } else if (unlikely(float64_is_nan(FT0) || isinfinity(FT0))) {        /* qNan / infinity conversion */        fload_invalid_op_excp(POWERPC_EXCP_FP_VXCVI);    } else {        p.i = float64_to_int32(FT0, &env->fp_status);#if USE_PRECISE_EMULATION        /* XXX: higher bits are not supposed to be significant.         *     to make tests easier, return the same as a real PowerPC 750         */        p.i |= 0xFFF80000ULL << 32;#endif        FT0 = p.d;    }}void do_fctiwz (void){    union {        double d;        uint64_t i;    } p;    if (unlikely(float64_is_signaling_nan(FT0))) {        /* sNaN conversion */        fload_invalid_op_excp(POWERPC_EXCP_FP_VXSNAN | POWERPC_EXCP_FP_VXCVI);    } else if (unlikely(float64_is_nan(FT0) || isinfinity(FT0))) {        /* qNan / infinity conversion */        fload_invalid_op_excp(POWERPC_EXCP_FP_VXCVI);    } else {        p.i = float64_to_int32_round_to_zero(FT0, &env->fp_status);#if USE_PRECISE_EMULATION        /* XXX: higher bits are not supposed to be significant.         *     to make tests easier, return the same as a real PowerPC 750         */        p.i |= 0xFFF80000ULL << 32;#endif        FT0 = p.d;    }}#if defined(TARGET_PPC64)void do_fcfid (void){    union {        double d;        uint64_t i;    } p;    p.d = FT0;    FT0 = int64_to_float64(p.i, &env->fp_status);}void do_fctid (void){    union {        double d;        uint64_t i;    } p;    if (unlikely(float64_is_signaling_nan(FT0))) {        /* sNaN conversion */        fload_invalid_op_excp(POWERPC_EXCP_FP_VXSNAN | POWERPC_EXCP_FP_VXCVI);

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
午夜欧美大尺度福利影院在线看| 91啪九色porn原创视频在线观看| 6080亚洲精品一区二区| 亚洲一区二区三区四区的| 日本精品免费观看高清观看| 伊人开心综合网| 69堂精品视频| 蜜桃视频第一区免费观看| 精品国产91洋老外米糕| 成人黄色一级视频| 亚洲欧美日韩中文播放| 在线观看av一区二区| 午夜影院久久久| 精品少妇一区二区三区在线视频| 久草精品在线观看| 国产精品网站一区| 91色porny蝌蚪| 麻豆精品一二三| 久久综合久久久久88| 91免费国产在线观看| 视频一区视频二区在线观看| 久久麻豆一区二区| 91小视频免费看| 免费成人性网站| 国产精品久久久久四虎| 欧美日韩中字一区| 国产伦精品一区二区三区免费迷| 亚洲欧美国产77777| 日韩视频永久免费| av中文字幕一区| 成人性生交大片免费看视频在线| 亚洲嫩草精品久久| 日韩一区二区电影| 一本一道波多野结衣一区二区| 青青青爽久久午夜综合久久午夜| 欧美经典一区二区| 日韩午夜三级在线| 一本久久精品一区二区| 精品一区二区久久久| 亚洲女爱视频在线| 国产日韩亚洲欧美综合| 欧美日韩在线三级| av日韩在线网站| 精一区二区三区| 亚洲一区在线免费观看| 国产欧美日韩综合精品一区二区| 欧美精品vⅰdeose4hd| 成人免费不卡视频| 国产一区二区三区电影在线观看| 一区二区三区免费观看| 中文字幕高清不卡| 欧美影视一区二区三区| a在线欧美一区| 国产精品1区二区.| 日本网站在线观看一区二区三区 | 亚洲欧美经典视频| 欧美精品一区男女天堂| 91精品视频网| 欧美视频一二三区| 日本韩国欧美在线| 91亚洲国产成人精品一区二区三 | 日韩欧美一区中文| 欧美日韩在线播放| 色先锋资源久久综合| 国产不卡视频在线观看| 国内精品视频一区二区三区八戒 | 亚洲日本在线天堂| 欧美国产日韩a欧美在线观看| 精品久久久久久综合日本欧美| 在线观看网站黄不卡| 色天天综合久久久久综合片| 成a人片亚洲日本久久| 国产福利一区二区三区视频| 久久精品二区亚洲w码| 日本不卡在线视频| 日韩中文字幕不卡| 日韩精品亚洲专区| 蜜桃av噜噜一区二区三区小说| 午夜不卡在线视频| 日韩在线一二三区| 美腿丝袜在线亚洲一区| 另类人妖一区二区av| 麻豆高清免费国产一区| 久久99精品国产.久久久久久| 老汉av免费一区二区三区| 美女被吸乳得到大胸91| 九九精品一区二区| 国产不卡免费视频| 成人黄色av电影| 色视频一区二区| 欧美日韩一级大片网址| 欧美群妇大交群的观看方式| 日韩限制级电影在线观看| 欧美岛国在线观看| 久久精品欧美一区二区三区麻豆| 国产精品女上位| 亚洲激情第一区| 国产在线不卡一区| 成人一区二区视频| 色婷婷激情综合| 欧美一级日韩一级| 中文字幕+乱码+中文字幕一区| 国产精品伦理一区二区| 亚洲一区二区三区不卡国产欧美| 日韩在线一区二区| 国产麻豆成人精品| 欧美亚洲国产一区二区三区va | 韩国av一区二区三区四区 | 精品一区二区在线观看| 国产精品中文有码| 在线欧美日韩国产| 日韩欧美一级片| 国产精品久久久久久久久快鸭| 一区二区三区四区在线| 久久国产精品99久久人人澡| 久久精品国产999大香线蕉| 99久久99久久综合| 日韩一级大片在线| 国产精品国产三级国产普通话99| 最新高清无码专区| 精品一区二区三区免费毛片爱| 暴力调教一区二区三区| 8x8x8国产精品| 成人欧美一区二区三区| 久久爱另类一区二区小说| 99综合影院在线| 欧美本精品男人aⅴ天堂| 一区二区三区蜜桃| 国产在线精品一区二区三区不卡 | 免费高清在线一区| 99久久精品久久久久久清纯| 日韩三级免费观看| 亚洲免费高清视频在线| 国产麻豆91精品| 91精品国产高清一区二区三区蜜臀| 亚洲国产高清在线| 久久99久久久欧美国产| 欧美性猛交xxxx乱大交退制版| 精品国产伦一区二区三区免费| 夜夜亚洲天天久久| a级精品国产片在线观看| 久久久亚洲精华液精华液精华液| 亚洲成人综合视频| 色综合天天狠狠| 国产精品久久久一区麻豆最新章节| 免费在线观看视频一区| 欧美三级日韩三级| 亚洲精品日韩综合观看成人91| 国产mv日韩mv欧美| 久久日韩粉嫩一区二区三区| 蜜桃视频一区二区三区| 日韩一区二区免费在线电影| 亚洲成人激情自拍| 欧洲一区在线观看| 怡红院av一区二区三区| 99久久精品国产麻豆演员表| 国产精品免费网站在线观看| 国产盗摄女厕一区二区三区| 日韩一区二区麻豆国产| 日本美女视频一区二区| 69堂国产成人免费视频| 三级在线观看一区二区| 欧美日韩国产中文| 五月天视频一区| 制服丝袜亚洲网站| 偷拍一区二区三区| 日韩一级完整毛片| 卡一卡二国产精品| 久久先锋影音av鲁色资源网| 久久99国产精品成人| 2021国产精品久久精品| 国产盗摄女厕一区二区三区 | 精品久久久网站| 成人99免费视频| 成人欧美一区二区三区小说| 99久久er热在这里只有精品66| 一区精品在线播放| 欧洲生活片亚洲生活在线观看| 亚洲欧洲综合另类| 欧美日韩成人高清| 麻豆91在线播放免费| 久久综合色综合88| 不卡的av网站| 一区二区三区在线播放| 欧美日本乱大交xxxxx| 美女任你摸久久| 欧美国产一区视频在线观看| av电影在线不卡| 亚洲午夜免费电影| 欧美一级二级在线观看| 国产很黄免费观看久久| 国产精品久99| 欧美久久久久久久久| 久久精品国产77777蜜臀| 国产精品电影院| 欧美网站一区二区| 国产伦理精品不卡| 亚洲自拍偷拍av| 久久一留热品黄| 91美女视频网站|