tag | line | file | source code |
st0_ptr | 127 | arch/i386/math-emu/fpu_aux.c | register FPU_REG *sti_ptr = &st(FPU_rm), *st0_ptr = &st(0); |
st0_ptr | 129 | arch/i386/math-emu/fpu_aux.c | if ( st0_ptr->tag == TW_Empty ) |
st0_ptr | 138 | arch/i386/math-emu/fpu_aux.c | reg_move(sti_ptr, st0_ptr); /* Masked response */ |
st0_ptr | 145 | arch/i386/math-emu/fpu_aux.c | reg_move(st0_ptr, sti_ptr); /* Masked response */ |
st0_ptr | 150 | arch/i386/math-emu/fpu_aux.c | reg_move(st0_ptr, &t); |
st0_ptr | 151 | arch/i386/math-emu/fpu_aux.c | reg_move(sti_ptr, st0_ptr); |
st0_ptr | 104 | arch/i386/math-emu/fpu_emu.h | typedef void (*FUNC_ST0)(FPU_REG *st0_ptr); |
st0_ptr | 144 | arch/i386/math-emu/fpu_entry.c | FPU_REG *st0_ptr; |
st0_ptr | 342 | arch/i386/math-emu/fpu_entry.c | st0_ptr = &st(0); |
st0_ptr | 343 | arch/i386/math-emu/fpu_entry.c | st0_tag = st0_ptr->tag; |
st0_ptr | 401 | arch/i386/math-emu/fpu_entry.c | real_2op_NaN(&loaded_data, st0_ptr, |
st0_ptr | 402 | arch/i386/math-emu/fpu_entry.c | st0_ptr); |
st0_ptr | 406 | arch/i386/math-emu/fpu_entry.c | real_2op_NaN(st0_ptr, &loaded_data, |
st0_ptr | 407 | arch/i386/math-emu/fpu_entry.c | st0_ptr); |
st0_ptr | 422 | arch/i386/math-emu/fpu_entry.c | st0_ptr) ) |
st0_ptr | 440 | arch/i386/math-emu/fpu_entry.c | reg_add(st0_ptr, &loaded_data, st0_ptr, |
st0_ptr | 445 | arch/i386/math-emu/fpu_entry.c | reg_mul(st0_ptr, &loaded_data, st0_ptr, |
st0_ptr | 457 | arch/i386/math-emu/fpu_entry.c | reg_sub(st0_ptr, &loaded_data, st0_ptr, |
st0_ptr | 462 | arch/i386/math-emu/fpu_entry.c | reg_sub(&loaded_data, st0_ptr, st0_ptr, |
st0_ptr | 467 | arch/i386/math-emu/fpu_entry.c | reg_div(st0_ptr, &loaded_data, st0_ptr, |
st0_ptr | 475 | arch/i386/math-emu/fpu_entry.c | reg_div(&loaded_data, st0_ptr, st0_ptr, |
st0_ptr | 519 | arch/i386/math-emu/fpu_entry.c | st0_ptr = &st(0); |
st0_ptr | 520 | arch/i386/math-emu/fpu_entry.c | st0_tag = st0_ptr->tag; |
st0_ptr | 20 | arch/i386/math-emu/fpu_etc.c | static void fchs(FPU_REG *st0_ptr) |
st0_ptr | 22 | arch/i386/math-emu/fpu_etc.c | if ( st0_ptr->tag ^ TW_Empty ) |
st0_ptr | 24 | arch/i386/math-emu/fpu_etc.c | st0_ptr->sign ^= SIGN_POS^SIGN_NEG; |
st0_ptr | 31 | arch/i386/math-emu/fpu_etc.c | static void fabs(FPU_REG *st0_ptr) |
st0_ptr | 33 | arch/i386/math-emu/fpu_etc.c | if ( st0_ptr->tag ^ TW_Empty ) |
st0_ptr | 35 | arch/i386/math-emu/fpu_etc.c | st0_ptr->sign = SIGN_POS; |
st0_ptr | 43 | arch/i386/math-emu/fpu_etc.c | static void ftst_(FPU_REG *st0_ptr) |
st0_ptr | 45 | arch/i386/math-emu/fpu_etc.c | switch (st0_ptr->tag) |
st0_ptr | 51 | arch/i386/math-emu/fpu_etc.c | if (st0_ptr->sign == SIGN_POS) |
st0_ptr | 57 | arch/i386/math-emu/fpu_etc.c | if ( (st0_ptr->exp <= EXP_UNDER) && (denormal_operand()) ) |
st0_ptr | 61 | arch/i386/math-emu/fpu_etc.c | if (st0_ptr->sign == SIGN_POS) |
st0_ptr | 74 | arch/i386/math-emu/fpu_etc.c | if (st0_ptr->sign == SIGN_POS) |
st0_ptr | 90 | arch/i386/math-emu/fpu_etc.c | static void fxam(FPU_REG *st0_ptr) |
st0_ptr | 93 | arch/i386/math-emu/fpu_etc.c | switch (st0_ptr->tag) |
st0_ptr | 103 | arch/i386/math-emu/fpu_etc.c | if ( st0_ptr->exp <= EXP_UNDER ) |
st0_ptr | 115 | arch/i386/math-emu/fpu_etc.c | if (st0_ptr->sign == SIGN_NEG) |
st0_ptr | 121 | arch/i386/math-emu/fpu_proto.h | extern int reg_store_extended(long double *d, FPU_REG *st0_ptr); |
st0_ptr | 122 | arch/i386/math-emu/fpu_proto.h | extern int reg_store_double(double *dfloat, FPU_REG *st0_ptr); |
st0_ptr | 123 | arch/i386/math-emu/fpu_proto.h | extern int reg_store_single(float *single, FPU_REG *st0_ptr); |
st0_ptr | 124 | arch/i386/math-emu/fpu_proto.h | extern int reg_store_int64(long long *d, FPU_REG *st0_ptr); |
st0_ptr | 125 | arch/i386/math-emu/fpu_proto.h | extern int reg_store_int32(long *d, FPU_REG *st0_ptr); |
st0_ptr | 126 | arch/i386/math-emu/fpu_proto.h | extern int reg_store_int16(short *d, FPU_REG *st0_ptr); |
st0_ptr | 127 | arch/i386/math-emu/fpu_proto.h | extern int reg_store_bcd(char *d, FPU_REG *st0_ptr); |
st0_ptr | 172 | arch/i386/math-emu/fpu_trig.c | static void single_arg_error(FPU_REG *st0_ptr) |
st0_ptr | 174 | arch/i386/math-emu/fpu_trig.c | switch ( st0_ptr->tag ) |
st0_ptr | 177 | arch/i386/math-emu/fpu_trig.c | if ( !(st0_ptr->sigh & 0x40000000) ) /* Signaling ? */ |
st0_ptr | 181 | arch/i386/math-emu/fpu_trig.c | st0_ptr->sigh |= 0x40000000; /* Convert to a QNaN */ |
st0_ptr | 195 | arch/i386/math-emu/fpu_trig.c | static void single_arg_2_error(FPU_REG *st0_ptr) |
st0_ptr | 199 | arch/i386/math-emu/fpu_trig.c | switch ( st0_ptr->tag ) |
st0_ptr | 202 | arch/i386/math-emu/fpu_trig.c | if ( !(st0_ptr->sigh & 0x40000000) ) /* Signaling ? */ |
st0_ptr | 209 | arch/i386/math-emu/fpu_trig.c | st0_ptr->sigh |= 0x40000000; |
st0_ptr | 233 | arch/i386/math-emu/fpu_trig.c | static void f2xm1(FPU_REG *st0_ptr) |
st0_ptr | 236 | arch/i386/math-emu/fpu_trig.c | switch ( st0_ptr->tag ) |
st0_ptr | 240 | arch/i386/math-emu/fpu_trig.c | if ( st0_ptr->exp >= 0 ) |
st0_ptr | 245 | arch/i386/math-emu/fpu_trig.c | else if ( (st0_ptr->exp <= EXP_UNDER) && (denormal_operand()) ) |
st0_ptr | 251 | arch/i386/math-emu/fpu_trig.c | poly_2xm1(st0_ptr, st0_ptr); |
st0_ptr | 253 | arch/i386/math-emu/fpu_trig.c | if ( st0_ptr->exp <= EXP_UNDER ) |
st0_ptr | 258 | arch/i386/math-emu/fpu_trig.c | arith_underflow(st0_ptr); |
st0_ptr | 266 | arch/i386/math-emu/fpu_trig.c | if ( st0_ptr->sign == SIGN_NEG ) |
st0_ptr | 269 | arch/i386/math-emu/fpu_trig.c | reg_move(&CONST_1, st0_ptr); |
st0_ptr | 270 | arch/i386/math-emu/fpu_trig.c | st0_ptr->sign = SIGN_NEG; |
st0_ptr | 274 | arch/i386/math-emu/fpu_trig.c | single_arg_error(st0_ptr); |
st0_ptr | 279 | arch/i386/math-emu/fpu_trig.c | static void fptan(FPU_REG *st0_ptr) |
st0_ptr | 281 | arch/i386/math-emu/fpu_trig.c | char st0_tag = st0_ptr->tag; |
st0_ptr | 284 | arch/i386/math-emu/fpu_trig.c | char arg_sign = st0_ptr->sign; |
st0_ptr | 305 | arch/i386/math-emu/fpu_trig.c | if ( st0_ptr->exp > EXP_BIAS - 40 ) |
st0_ptr | 307 | arch/i386/math-emu/fpu_trig.c | st0_ptr->sign = SIGN_POS; |
st0_ptr | 308 | arch/i386/math-emu/fpu_trig.c | if ( (q = trig_arg(st0_ptr, 0)) != -1 ) |
st0_ptr | 310 | arch/i386/math-emu/fpu_trig.c | poly_tan(st0_ptr, st0_ptr); |
st0_ptr | 311 | arch/i386/math-emu/fpu_trig.c | st0_ptr->sign = (q & 1) ^ arg_sign; |
st0_ptr | 316 | arch/i386/math-emu/fpu_trig.c | st0_ptr->sign = arg_sign; /* restore st(0) */ |
st0_ptr | 326 | arch/i386/math-emu/fpu_trig.c | if ( st0_ptr->exp <= EXP_UNDER ) |
st0_ptr | 335 | arch/i386/math-emu/fpu_trig.c | if ( arith_underflow(st0_ptr) ) |
st0_ptr | 346 | arch/i386/math-emu/fpu_trig.c | arith_invalid(st0_ptr); |
st0_ptr | 360 | arch/i386/math-emu/fpu_trig.c | single_arg_2_error(st0_ptr); |
st0_ptr | 366 | arch/i386/math-emu/fpu_trig.c | static void fxtract(FPU_REG *st0_ptr) |
st0_ptr | 368 | arch/i386/math-emu/fpu_trig.c | char st0_tag = st0_ptr->tag; |
st0_ptr | 370 | arch/i386/math-emu/fpu_trig.c | register FPU_REG *st1_ptr = st0_ptr; /* anticipate */ |
st0_ptr | 380 | arch/i386/math-emu/fpu_trig.c | if ( (st0_ptr->exp <= EXP_UNDER) && (denormal_operand()) ) |
st0_ptr | 393 | arch/i386/math-emu/fpu_trig.c | char sign = st0_ptr->sign; |
st0_ptr | 394 | arch/i386/math-emu/fpu_trig.c | if ( divide_by_zero(SIGN_NEG, st0_ptr) ) |
st0_ptr | 403 | arch/i386/math-emu/fpu_trig.c | char sign = st0_ptr->sign; |
st0_ptr | 404 | arch/i386/math-emu/fpu_trig.c | st0_ptr->sign = SIGN_POS; |
st0_ptr | 412 | arch/i386/math-emu/fpu_trig.c | if ( real_2op_NaN(st0_ptr, st0_ptr, st0_ptr) ) |
st0_ptr | 437 | arch/i386/math-emu/fpu_trig.c | static void fdecstp(FPU_REG *st0_ptr) |
st0_ptr | 443 | arch/i386/math-emu/fpu_trig.c | static void fincstp(FPU_REG *st0_ptr) |
st0_ptr | 450 | arch/i386/math-emu/fpu_trig.c | static void fsqrt_(FPU_REG *st0_ptr) |
st0_ptr | 452 | arch/i386/math-emu/fpu_trig.c | char st0_tag = st0_ptr->tag; |
st0_ptr | 459 | arch/i386/math-emu/fpu_trig.c | if (st0_ptr->sign == SIGN_NEG) |
st0_ptr | 461 | arch/i386/math-emu/fpu_trig.c | arith_invalid(st0_ptr); /* sqrt(negative) is invalid */ |
st0_ptr | 466 | arch/i386/math-emu/fpu_trig.c | if ( (st0_ptr->exp <= EXP_UNDER) && (denormal_operand()) ) |
st0_ptr | 470 | arch/i386/math-emu/fpu_trig.c | expon = st0_ptr->exp - EXP_BIAS; |
st0_ptr | 471 | arch/i386/math-emu/fpu_trig.c | st0_ptr->exp = EXP_BIAS + (expon & 1); /* make st(0) in [1.0 .. 4.0) */ |
st0_ptr | 473 | arch/i386/math-emu/fpu_trig.c | wm_sqrt(st0_ptr, control_word); /* Do the computation */ |
st0_ptr | 475 | arch/i386/math-emu/fpu_trig.c | st0_ptr->exp += expon >> 1; |
st0_ptr | 476 | arch/i386/math-emu/fpu_trig.c | st0_ptr->sign = SIGN_POS; |
st0_ptr | 482 | arch/i386/math-emu/fpu_trig.c | if ( st0_ptr->sign == SIGN_NEG ) |
st0_ptr | 483 | arch/i386/math-emu/fpu_trig.c | arith_invalid(st0_ptr); /* sqrt(-Infinity) is invalid */ |
st0_ptr | 487 | arch/i386/math-emu/fpu_trig.c | { single_arg_error(st0_ptr); return; } |
st0_ptr | 492 | arch/i386/math-emu/fpu_trig.c | static void frndint_(FPU_REG *st0_ptr) |
st0_ptr | 494 | arch/i386/math-emu/fpu_trig.c | char st0_tag = st0_ptr->tag; |
st0_ptr | 499 | arch/i386/math-emu/fpu_trig.c | if (st0_ptr->exp > EXP_BIAS+63) |
st0_ptr | 503 | arch/i386/math-emu/fpu_trig.c | if ( (st0_ptr->exp <= EXP_UNDER) && (denormal_operand()) ) |
st0_ptr | 508 | arch/i386/math-emu/fpu_trig.c | if ( (flags = round_to_int(st0_ptr)) ) |
st0_ptr | 511 | arch/i386/math-emu/fpu_trig.c | st0_ptr->exp = EXP_BIAS + 63; |
st0_ptr | 512 | arch/i386/math-emu/fpu_trig.c | normalize(st0_ptr); |
st0_ptr | 518 | arch/i386/math-emu/fpu_trig.c | single_arg_error(st0_ptr); |
st0_ptr | 522 | arch/i386/math-emu/fpu_trig.c | static void fsin(FPU_REG *st0_ptr) |
st0_ptr | 524 | arch/i386/math-emu/fpu_trig.c | char st0_tag = st0_ptr->tag; |
st0_ptr | 525 | arch/i386/math-emu/fpu_trig.c | char arg_sign = st0_ptr->sign; |
st0_ptr | 532 | arch/i386/math-emu/fpu_trig.c | if ( st0_ptr->exp > EXP_BIAS - 40 ) |
st0_ptr | 534 | arch/i386/math-emu/fpu_trig.c | st0_ptr->sign = SIGN_POS; |
st0_ptr | 535 | arch/i386/math-emu/fpu_trig.c | if ( (q = trig_arg(st0_ptr, 0)) != -1 ) |
st0_ptr | 538 | arch/i386/math-emu/fpu_trig.c | poly_sine(st0_ptr, &rv); |
st0_ptr | 543 | arch/i386/math-emu/fpu_trig.c | reg_move(&rv, st0_ptr); |
st0_ptr | 552 | arch/i386/math-emu/fpu_trig.c | st0_ptr->sign = arg_sign; /* restore st(0) */ |
st0_ptr | 561 | arch/i386/math-emu/fpu_trig.c | if ( st0_ptr->exp <= EXP_UNDER ) |
st0_ptr | 570 | arch/i386/math-emu/fpu_trig.c | arith_underflow(st0_ptr); |
st0_ptr | 585 | arch/i386/math-emu/fpu_trig.c | arith_invalid(st0_ptr); |
st0_ptr | 589 | arch/i386/math-emu/fpu_trig.c | single_arg_error(st0_ptr); |
st0_ptr | 674 | arch/i386/math-emu/fpu_trig.c | static void fcos(FPU_REG *st0_ptr) |
st0_ptr | 676 | arch/i386/math-emu/fpu_trig.c | f_cos(st0_ptr); |
st0_ptr | 680 | arch/i386/math-emu/fpu_trig.c | static void fsincos(FPU_REG *st0_ptr) |
st0_ptr | 682 | arch/i386/math-emu/fpu_trig.c | char st0_tag = st0_ptr->tag; |
st0_ptr | 704 | arch/i386/math-emu/fpu_trig.c | single_arg_2_error(st0_ptr); |
st0_ptr | 710 | arch/i386/math-emu/fpu_trig.c | if ( !arith_invalid(st0_ptr) ) |
st0_ptr | 719 | arch/i386/math-emu/fpu_trig.c | reg_move(st0_ptr,&arg); |
st0_ptr | 722 | arch/i386/math-emu/fpu_trig.c | fsin(st0_ptr); |
st0_ptr | 763 | arch/i386/math-emu/fpu_trig.c | static void do_fprem(FPU_REG *st0_ptr, int round) |
st0_ptr | 767 | arch/i386/math-emu/fpu_trig.c | char st0_tag = st0_ptr->tag; |
st0_ptr | 768 | arch/i386/math-emu/fpu_trig.c | char sign = st0_ptr->sign; |
st0_ptr | 774 | arch/i386/math-emu/fpu_trig.c | int expdif = st0_ptr->exp - st1_ptr->exp; |
st0_ptr | 780 | arch/i386/math-emu/fpu_trig.c | if ( ((st0_ptr->exp <= EXP_UNDER) || |
st0_ptr | 797 | arch/i386/math-emu/fpu_trig.c | reg_div(st0_ptr, st1_ptr, &tmp, PR_64_BITS | RC_CHOP | 0x3f); |
st0_ptr | 805 | arch/i386/math-emu/fpu_trig.c | rem_kernel(significand(st0_ptr), |
st0_ptr | 814 | arch/i386/math-emu/fpu_trig.c | reg_move(st0_ptr, &tmp); |
st0_ptr | 862 | arch/i386/math-emu/fpu_trig.c | reg_move(st0_ptr, &tmp); |
st0_ptr | 872 | arch/i386/math-emu/fpu_trig.c | rem_kernel(significand(st0_ptr), |
st0_ptr | 891 | arch/i386/math-emu/fpu_trig.c | reg_move(&CONST_Z, st0_ptr); |
st0_ptr | 892 | arch/i386/math-emu/fpu_trig.c | st0_ptr->sign = sign; |
st0_ptr | 906 | arch/i386/math-emu/fpu_trig.c | reg_move(&tmp, st0_ptr); |
st0_ptr | 911 | arch/i386/math-emu/fpu_trig.c | if ( (st0_ptr->exp <= EXP_UNDER) && (st0_ptr->tag != TW_Zero) |
st0_ptr | 913 | arch/i386/math-emu/fpu_trig.c | arith_underflow(st0_ptr); |
st0_ptr | 934 | arch/i386/math-emu/fpu_trig.c | { arith_invalid(st0_ptr); return; } /* fprem(?,0) always invalid */ |
st0_ptr | 942 | arch/i386/math-emu/fpu_trig.c | arith_invalid(st0_ptr); /* fprem(Valid,Zero) is invalid */ |
st0_ptr | 948 | arch/i386/math-emu/fpu_trig.c | if ( (st0_ptr->exp <= EXP_UNDER) && (denormal_operand()) ) |
st0_ptr | 963 | arch/i386/math-emu/fpu_trig.c | arith_invalid(st0_ptr); /* fprem(Infinity,?) is invalid */ |
st0_ptr | 975 | arch/i386/math-emu/fpu_trig.c | real_2op_NaN(st1_ptr, st0_ptr, st0_ptr); |
st0_ptr | 981 | arch/i386/math-emu/fpu_trig.c | static void fyl2x(FPU_REG *st0_ptr) |
st0_ptr | 983 | arch/i386/math-emu/fpu_trig.c | char st0_tag = st0_ptr->tag; |
st0_ptr | 991 | arch/i386/math-emu/fpu_trig.c | if ( st0_ptr->sign == SIGN_POS ) |
st0_ptr | 994 | arch/i386/math-emu/fpu_trig.c | if ( ((st0_ptr->exp <= EXP_UNDER) || |
st0_ptr | 999 | arch/i386/math-emu/fpu_trig.c | if ( (st0_ptr->sigh == 0x80000000) && (st0_ptr->sigl == 0) ) |
st0_ptr | 1002 | arch/i386/math-emu/fpu_trig.c | e = st0_ptr->exp - EXP_BIAS; |
st0_ptr | 1022 | arch/i386/math-emu/fpu_trig.c | poly_l2(st0_ptr, st1_ptr, st1_ptr); |
st0_ptr | 1051 | arch/i386/math-emu/fpu_trig.c | if ( !real_2op_NaN(st0_ptr, st1_ptr, st1_ptr) ) |
st0_ptr | 1070 | arch/i386/math-emu/fpu_trig.c | else if ( st0_ptr->tag == TW_Infinity ) |
st0_ptr | 1089 | arch/i386/math-emu/fpu_trig.c | if ( st0_ptr->sign == SIGN_NEG ) |
st0_ptr | 1098 | arch/i386/math-emu/fpu_trig.c | if ( (st0_ptr->exp <= EXP_UNDER) && (denormal_operand()) ) |
st0_ptr | 1102 | arch/i386/math-emu/fpu_trig.c | if ( st0_ptr->exp < EXP_BIAS ) sign ^= SIGN_NEG^SIGN_POS; |
st0_ptr | 1103 | arch/i386/math-emu/fpu_trig.c | pop(); st0_ptr = &st(0); |
st0_ptr | 1104 | arch/i386/math-emu/fpu_trig.c | reg_move(&CONST_Z, st0_ptr); |
st0_ptr | 1105 | arch/i386/math-emu/fpu_trig.c | st0_ptr->sign = sign; |
st0_ptr | 1112 | arch/i386/math-emu/fpu_trig.c | if ( (st0_ptr->sign == SIGN_NEG) || (st1_tag == TW_Zero) ) |
st0_ptr | 1128 | arch/i386/math-emu/fpu_trig.c | pop(); st0_ptr = &st(0); |
st0_ptr | 1129 | arch/i386/math-emu/fpu_trig.c | reg_move(&CONST_INF, st0_ptr); |
st0_ptr | 1130 | arch/i386/math-emu/fpu_trig.c | st0_ptr->sign = sign; |
st0_ptr | 1135 | arch/i386/math-emu/fpu_trig.c | else if ( (st0_tag == TW_Valid) && (st0_ptr->sign == SIGN_POS) ) |
st0_ptr | 1137 | arch/i386/math-emu/fpu_trig.c | if ( st0_ptr->exp >= EXP_BIAS ) |
st0_ptr | 1139 | arch/i386/math-emu/fpu_trig.c | if ( (st0_ptr->exp == EXP_BIAS) && |
st0_ptr | 1140 | arch/i386/math-emu/fpu_trig.c | (st0_ptr->sigh == 0x80000000) && |
st0_ptr | 1141 | arch/i386/math-emu/fpu_trig.c | (st0_ptr->sigl == 0) ) |
st0_ptr | 1157 | arch/i386/math-emu/fpu_trig.c | if ( (st0_ptr->exp <= EXP_UNDER) && (denormal_operand()) ) |
st0_ptr | 1169 | arch/i386/math-emu/fpu_trig.c | if ( st0_ptr->tag == TW_Zero ) |
st0_ptr | 1191 | arch/i386/math-emu/fpu_trig.c | static void fpatan(FPU_REG *st0_ptr) |
st0_ptr | 1193 | arch/i386/math-emu/fpu_trig.c | char st0_tag = st0_ptr->tag; |
st0_ptr | 1201 | arch/i386/math-emu/fpu_trig.c | if ( ((st0_ptr->exp <= EXP_UNDER) || |
st0_ptr | 1206 | arch/i386/math-emu/fpu_trig.c | poly_atan(st0_ptr, st1_ptr, st1_ptr); |
st0_ptr | 1225 | arch/i386/math-emu/fpu_trig.c | if ( !real_2op_NaN(st0_ptr, st1_ptr, st1_ptr) ) |
st0_ptr | 1236 | arch/i386/math-emu/fpu_trig.c | if ( st0_ptr->sign == SIGN_POS ) |
st0_ptr | 1251 | arch/i386/math-emu/fpu_trig.c | if ( st0_ptr->sign == SIGN_POS ) |
st0_ptr | 1268 | arch/i386/math-emu/fpu_trig.c | if ( (st0_ptr->exp <= EXP_UNDER) && (denormal_operand()) ) |
st0_ptr | 1285 | arch/i386/math-emu/fpu_trig.c | if ( (st0_ptr->exp <= EXP_UNDER) && (denormal_operand()) ) |
st0_ptr | 1290 | arch/i386/math-emu/fpu_trig.c | if ( st0_ptr->sign == SIGN_POS ) |
st0_ptr | 1319 | arch/i386/math-emu/fpu_trig.c | static void fprem(FPU_REG *st0_ptr) |
st0_ptr | 1321 | arch/i386/math-emu/fpu_trig.c | do_fprem(st0_ptr, RC_CHOP); |
st0_ptr | 1325 | arch/i386/math-emu/fpu_trig.c | static void fprem1(FPU_REG *st0_ptr) |
st0_ptr | 1327 | arch/i386/math-emu/fpu_trig.c | do_fprem(st0_ptr, RC_RND); |
st0_ptr | 1331 | arch/i386/math-emu/fpu_trig.c | static void fyl2xp1(FPU_REG *st0_ptr) |
st0_ptr | 1333 | arch/i386/math-emu/fpu_trig.c | char st0_tag = st0_ptr->tag, sign; |
st0_ptr | 1341 | arch/i386/math-emu/fpu_trig.c | if ( ((st0_ptr->exp <= EXP_UNDER) || |
st0_ptr | 1346 | arch/i386/math-emu/fpu_trig.c | if ( poly_l2p1(st0_ptr, st1_ptr, st1_ptr) ) |
st0_ptr | 1384 | arch/i386/math-emu/fpu_trig.c | st0_ptr->sign ^= st1_ptr->sign; |
st0_ptr | 1385 | arch/i386/math-emu/fpu_trig.c | reg_move(st0_ptr, st1_ptr); |
st0_ptr | 1396 | arch/i386/math-emu/fpu_trig.c | if ( !real_2op_NaN(st0_ptr, st1_ptr, st1_ptr) ) |
st0_ptr | 1413 | arch/i386/math-emu/fpu_trig.c | if ( st0_ptr->sign == SIGN_NEG ) |
st0_ptr | 1415 | arch/i386/math-emu/fpu_trig.c | if ( st0_ptr->exp >= EXP_BIAS ) |
st0_ptr | 1426 | arch/i386/math-emu/fpu_trig.c | if ( (st0_ptr->exp <= EXP_UNDER) && (denormal_operand()) ) |
st0_ptr | 1433 | arch/i386/math-emu/fpu_trig.c | if ( (st0_ptr->exp <= EXP_UNDER) && (denormal_operand()) ) |
st0_ptr | 1440 | arch/i386/math-emu/fpu_trig.c | if ( st0_ptr->sign == SIGN_NEG ) |
st0_ptr | 1442 | arch/i386/math-emu/fpu_trig.c | if ( (st0_ptr->exp >= EXP_BIAS) && |
st0_ptr | 1443 | arch/i386/math-emu/fpu_trig.c | !((st0_ptr->sigh == 0x80000000) && |
st0_ptr | 1444 | arch/i386/math-emu/fpu_trig.c | (st0_ptr->sigl == 0)) ) |
st0_ptr | 1455 | arch/i386/math-emu/fpu_trig.c | if ( (st0_ptr->exp <= EXP_UNDER) && (denormal_operand()) ) |
st0_ptr | 1462 | arch/i386/math-emu/fpu_trig.c | if ( (st0_ptr->exp <= EXP_UNDER) && (denormal_operand()) ) |
st0_ptr | 1469 | arch/i386/math-emu/fpu_trig.c | if ( !real_2op_NaN(st0_ptr, st1_ptr, st1_ptr) ) |
st0_ptr | 1476 | arch/i386/math-emu/fpu_trig.c | if ( !real_2op_NaN(st0_ptr, st1_ptr, st1_ptr) ) |
st0_ptr | 1484 | arch/i386/math-emu/fpu_trig.c | if ( !real_2op_NaN(st0_ptr, st1_ptr, st1_ptr) ) |
st0_ptr | 1488 | arch/i386/math-emu/fpu_trig.c | else if ( st0_ptr->sign == SIGN_NEG ) |
st0_ptr | 1544 | arch/i386/math-emu/fpu_trig.c | static void fscale(FPU_REG *st0_ptr) |
st0_ptr | 1546 | arch/i386/math-emu/fpu_trig.c | char st0_tag = st0_ptr->tag; |
st0_ptr | 1550 | arch/i386/math-emu/fpu_trig.c | char sign = st0_ptr->sign; |
st0_ptr | 1559 | arch/i386/math-emu/fpu_trig.c | if ( ((st0_ptr->exp <= EXP_UNDER) || |
st0_ptr | 1572 | arch/i386/math-emu/fpu_trig.c | sign = st0_ptr->sign; |
st0_ptr | 1573 | arch/i386/math-emu/fpu_trig.c | reg_move(&CONST_INF, st0_ptr); |
st0_ptr | 1574 | arch/i386/math-emu/fpu_trig.c | st0_ptr->sign = sign; |
st0_ptr | 1579 | arch/i386/math-emu/fpu_trig.c | sign = st0_ptr->sign; |
st0_ptr | 1580 | arch/i386/math-emu/fpu_trig.c | reg_move(&CONST_Z, st0_ptr); |
st0_ptr | 1581 | arch/i386/math-emu/fpu_trig.c | st0_ptr->sign = sign; |
st0_ptr | 1592 | arch/i386/math-emu/fpu_trig.c | scale += st0_ptr->exp; |
st0_ptr | 1593 | arch/i386/math-emu/fpu_trig.c | st0_ptr->exp = scale; |
st0_ptr | 1596 | arch/i386/math-emu/fpu_trig.c | round_reg(st0_ptr, 0, control_word); |
st0_ptr | 1606 | arch/i386/math-emu/fpu_trig.c | if ( (st0_ptr->exp <= EXP_UNDER) && (denormal_operand()) ) |
st0_ptr | 1615 | arch/i386/math-emu/fpu_trig.c | if ( (st0_ptr->exp <= EXP_UNDER) && (denormal_operand()) ) |
st0_ptr | 1620 | arch/i386/math-emu/fpu_trig.c | { reg_move(&CONST_INF, st0_ptr); } |
st0_ptr | 1622 | arch/i386/math-emu/fpu_trig.c | reg_move(&CONST_Z, st0_ptr); |
st0_ptr | 1623 | arch/i386/math-emu/fpu_trig.c | st0_ptr->sign = sign; |
st0_ptr | 1627 | arch/i386/math-emu/fpu_trig.c | { real_2op_NaN(st0_ptr, st1_ptr, st0_ptr); return; } |
st0_ptr | 1648 | arch/i386/math-emu/fpu_trig.c | arith_invalid(st0_ptr); /* Zero scaled by +Infinity */ |
st0_ptr | 1653 | arch/i386/math-emu/fpu_trig.c | { real_2op_NaN(st0_ptr, st1_ptr, st0_ptr); return; } |
st0_ptr | 1672 | arch/i386/math-emu/fpu_trig.c | arith_invalid(st0_ptr); /* Infinity scaled by -Infinity */ |
st0_ptr | 1676 | arch/i386/math-emu/fpu_trig.c | { real_2op_NaN(st0_ptr, st1_ptr, st0_ptr); return; } |
st0_ptr | 1681 | arch/i386/math-emu/fpu_trig.c | { real_2op_NaN(st0_ptr, st1_ptr, st0_ptr); return; } |
st0_ptr | 35 | arch/i386/math-emu/load_store.c | #define pop_0() { st0_ptr->tag = TW_Empty; top++; } |
st0_ptr | 67 | arch/i386/math-emu/load_store.c | FPU_REG *st0_ptr; |
st0_ptr | 69 | arch/i386/math-emu/load_store.c | st0_ptr = NULL; /* Initialized just to stop compiler warnings. */ |
st0_ptr | 94 | arch/i386/math-emu/load_store.c | st0_ptr = &st(0); /* Some of these instructions pop after |
st0_ptr | 99 | arch/i386/math-emu/load_store.c | st0_ptr = &st(-1); |
st0_ptr | 100 | arch/i386/math-emu/load_store.c | if ( st0_ptr->tag != TW_Empty ) |
st0_ptr | 126 | arch/i386/math-emu/load_store.c | reg_move(&loaded_data, st0_ptr); |
st0_ptr | 130 | arch/i386/math-emu/load_store.c | reg_load_int32((long *)data_address, st0_ptr); |
st0_ptr | 141 | arch/i386/math-emu/load_store.c | reg_move(&loaded_data, st0_ptr); |
st0_ptr | 145 | arch/i386/math-emu/load_store.c | reg_load_int16((short *)data_address, st0_ptr); |
st0_ptr | 149 | arch/i386/math-emu/load_store.c | reg_store_single((float *)data_address, st0_ptr); |
st0_ptr | 153 | arch/i386/math-emu/load_store.c | reg_store_int32((long *)data_address, st0_ptr); |
st0_ptr | 157 | arch/i386/math-emu/load_store.c | reg_store_double((double *)data_address, st0_ptr); |
st0_ptr | 161 | arch/i386/math-emu/load_store.c | reg_store_int16((short *)data_address, st0_ptr); |
st0_ptr | 165 | arch/i386/math-emu/load_store.c | if ( reg_store_single((float *)data_address, st0_ptr) ) |
st0_ptr | 171 | arch/i386/math-emu/load_store.c | if ( reg_store_int32((long *)data_address, st0_ptr) ) |
st0_ptr | 177 | arch/i386/math-emu/load_store.c | if ( reg_store_double((double *)data_address, st0_ptr) ) |
st0_ptr | 183 | arch/i386/math-emu/load_store.c | if ( reg_store_int16((short *)data_address, st0_ptr) ) |
st0_ptr | 199 | arch/i386/math-emu/load_store.c | reg_load_bcd((char *)data_address, st0_ptr); |
st0_ptr | 216 | arch/i386/math-emu/load_store.c | reg_load_extended((long double *)data_address, st0_ptr); |
st0_ptr | 220 | arch/i386/math-emu/load_store.c | reg_load_int64((long long *)data_address, st0_ptr); |
st0_ptr | 230 | arch/i386/math-emu/load_store.c | if ( reg_store_bcd((char *)data_address, st0_ptr) ) |
st0_ptr | 242 | arch/i386/math-emu/load_store.c | if ( reg_store_extended((long double *)data_address, st0_ptr) ) |
st0_ptr | 254 | arch/i386/math-emu/load_store.c | if ( reg_store_int64((long long *)data_address, st0_ptr) ) |
st0_ptr | 28 | arch/i386/math-emu/reg_compare.c | FPU_REG *st0_ptr; |
st0_ptr | 30 | arch/i386/math-emu/reg_compare.c | st0_ptr = &st(0); |
st0_ptr | 31 | arch/i386/math-emu/reg_compare.c | st0_tag = st0_ptr->tag; |
st0_ptr | 52 | arch/i386/math-emu/reg_compare.c | return ((st0_ptr->sign == SIGN_POS) ? COMP_A_gt_B |
st0_ptr | 55 | arch/i386/math-emu/reg_compare.c | | ((st0_ptr->exp <= EXP_UNDER ) |
st0_ptr | 66 | arch/i386/math-emu/reg_compare.c | return ((st0_ptr->sign == SIGN_POS) ? COMP_A_gt_B |
st0_ptr | 77 | arch/i386/math-emu/reg_compare.c | return (st0_ptr->sign == b->sign) ? COMP_A_eq_B : |
st0_ptr | 78 | arch/i386/math-emu/reg_compare.c | ((st0_ptr->sign == SIGN_POS) ? COMP_A_gt_B : COMP_A_lt_B); |
st0_ptr | 89 | arch/i386/math-emu/reg_compare.c | && (st0_ptr->exp <= EXP_UNDER)) ? |
st0_ptr | 101 | arch/i386/math-emu/reg_compare.c | if ( ((st0_tag == TW_NaN) && !(st0_ptr->sigh & 0x40000000)) |
st0_ptr | 114 | arch/i386/math-emu/reg_compare.c | if (!(st0_ptr->sigh & 0x80000000)) EXCEPTION(EX_Invalid); |
st0_ptr | 119 | arch/i386/math-emu/reg_compare.c | if (st0_ptr->sign != b->sign) |
st0_ptr | 121 | arch/i386/math-emu/reg_compare.c | return ((st0_ptr->sign == SIGN_POS) ? COMP_A_gt_B : COMP_A_lt_B) |
st0_ptr | 124 | arch/i386/math-emu/reg_compare.c | ( ((st0_ptr->exp <= EXP_UNDER) || (b->exp <= EXP_UNDER)) ? |
st0_ptr | 130 | arch/i386/math-emu/reg_compare.c | diff = st0_ptr->exp - b->exp; |
st0_ptr | 133 | arch/i386/math-emu/reg_compare.c | diff = st0_ptr->sigh - b->sigh; /* Works only if ms bits are |
st0_ptr | 137 | arch/i386/math-emu/reg_compare.c | diff = st0_ptr->sigl > b->sigl; |
st0_ptr | 139 | arch/i386/math-emu/reg_compare.c | diff = -(st0_ptr->sigl < b->sigl); |
st0_ptr | 145 | arch/i386/math-emu/reg_compare.c | return ((st0_ptr->sign == SIGN_POS) ? COMP_A_gt_B : COMP_A_lt_B) |
st0_ptr | 148 | arch/i386/math-emu/reg_compare.c | ( ((st0_ptr->exp <= EXP_UNDER) || (b->exp <= EXP_UNDER)) ? |
st0_ptr | 155 | arch/i386/math-emu/reg_compare.c | return ((st0_ptr->sign == SIGN_POS) ? COMP_A_lt_B : COMP_A_gt_B) |
st0_ptr | 158 | arch/i386/math-emu/reg_compare.c | ( ((st0_ptr->exp <= EXP_UNDER) || (b->exp <= EXP_UNDER)) ? |
st0_ptr | 167 | arch/i386/math-emu/reg_compare.c | ( ((st0_ptr->exp <= EXP_UNDER) || (b->exp <= EXP_UNDER)) ? |
st0_ptr | 423 | arch/i386/math-emu/reg_ld_str.c | int reg_store_extended(long double *d, FPU_REG *st0_ptr) |
st0_ptr | 431 | arch/i386/math-emu/reg_ld_str.c | if ( st0_ptr->tag != TW_Empty ) |
st0_ptr | 436 | arch/i386/math-emu/reg_ld_str.c | write_to_extended(st0_ptr, (char *) d); |
st0_ptr | 461 | arch/i386/math-emu/reg_ld_str.c | int reg_store_double(double *dfloat, FPU_REG *st0_ptr) |
st0_ptr | 465 | arch/i386/math-emu/reg_ld_str.c | char st0_tag = st0_ptr->tag; |
st0_ptr | 472 | arch/i386/math-emu/reg_ld_str.c | reg_move(st0_ptr, &tmp); |
st0_ptr | 483 | arch/i386/math-emu/reg_ld_str.c | if ( st0_ptr->exp <= EXP_UNDER ) |
st0_ptr | 501 | arch/i386/math-emu/reg_ld_str.c | (st0_ptr->sigl & 0x000007ff)) ) |
st0_ptr | 612 | arch/i386/math-emu/reg_ld_str.c | l[0] = (st0_ptr->sigl >> 11) | (st0_ptr->sigh << 21); |
st0_ptr | 613 | arch/i386/math-emu/reg_ld_str.c | l[1] = ((st0_ptr->sigh >> 11) & 0xfffff); |
st0_ptr | 614 | arch/i386/math-emu/reg_ld_str.c | if ( !(st0_ptr->sigh & 0x40000000) ) |
st0_ptr | 642 | arch/i386/math-emu/reg_ld_str.c | if ( st0_ptr->sign ) |
st0_ptr | 656 | arch/i386/math-emu/reg_ld_str.c | int reg_store_single(float *single, FPU_REG *st0_ptr) |
st0_ptr | 660 | arch/i386/math-emu/reg_ld_str.c | char st0_tag = st0_ptr->tag; |
st0_ptr | 667 | arch/i386/math-emu/reg_ld_str.c | reg_move(st0_ptr, &tmp); |
st0_ptr | 678 | arch/i386/math-emu/reg_ld_str.c | if ( st0_ptr->exp <= EXP_UNDER ) |
st0_ptr | 696 | arch/i386/math-emu/reg_ld_str.c | ((st0_ptr->sigh & 0x000000ff) || st0_ptr->sigl)) ) |
st0_ptr | 797 | arch/i386/math-emu/reg_ld_str.c | templ = st0_ptr->sigh >> 8; |
st0_ptr | 798 | arch/i386/math-emu/reg_ld_str.c | if ( !(st0_ptr->sigh & 0x40000000) ) |
st0_ptr | 832 | arch/i386/math-emu/reg_ld_str.c | if (st0_ptr->sign) |
st0_ptr | 845 | arch/i386/math-emu/reg_ld_str.c | int reg_store_int64(long long *d, FPU_REG *st0_ptr) |
st0_ptr | 850 | arch/i386/math-emu/reg_ld_str.c | char st0_tag = st0_ptr->tag; |
st0_ptr | 865 | arch/i386/math-emu/reg_ld_str.c | reg_move(st0_ptr, &t); |
st0_ptr | 904 | arch/i386/math-emu/reg_ld_str.c | int reg_store_int32(long *d, FPU_REG *st0_ptr) |
st0_ptr | 908 | arch/i386/math-emu/reg_ld_str.c | char st0_tag = st0_ptr->tag; |
st0_ptr | 923 | arch/i386/math-emu/reg_ld_str.c | reg_move(st0_ptr, &t); |
st0_ptr | 958 | arch/i386/math-emu/reg_ld_str.c | int reg_store_int16(short *d, FPU_REG *st0_ptr) |
st0_ptr | 962 | arch/i386/math-emu/reg_ld_str.c | char st0_tag = st0_ptr->tag; |
st0_ptr | 977 | arch/i386/math-emu/reg_ld_str.c | reg_move(st0_ptr, &t); |
st0_ptr | 1012 | arch/i386/math-emu/reg_ld_str.c | int reg_store_bcd(char *d, FPU_REG *st0_ptr) |
st0_ptr | 1018 | arch/i386/math-emu/reg_ld_str.c | unsigned char sign = (st0_ptr->sign == SIGN_NEG) ? 0x80 : 0; |
st0_ptr | 1019 | arch/i386/math-emu/reg_ld_str.c | char st0_tag = st0_ptr->tag; |
st0_ptr | 1028 | arch/i386/math-emu/reg_ld_str.c | reg_move(st0_ptr, &t); |