H A D | reg_add_sub.c | 29 FPU_REG const *b, u_char tagb, u_char signb, 36 int FPU_add(FPU_REG const *b, u_char tagb, int deststnr, int control_w) FPU_add() argument 46 if (!(taga | tagb)) { FPU_add() 96 if (tagb == TAG_Special) FPU_add() 97 tagb = FPU_Special(b); FPU_add() 99 if (((taga == TAG_Valid) && (tagb == TW_Denormal)) FPU_add() 100 || ((taga == TW_Denormal) && (tagb == TAG_Valid)) FPU_add() 101 || ((taga == TW_Denormal) && (tagb == TW_Denormal))) { FPU_add() 116 if ((taga == TW_NaN) || (tagb == TW_NaN)) { FPU_add() 118 return real_2op_NaN(b, tagb, deststnr, a); FPU_add() 123 return add_sub_specials(a, taga, signa, b, tagb, signb, FPU_add() 132 u_char taga, tagb, signa, signb, saved_sign, sign; FPU_sub() local 141 tagb = flags & 0x0f; FPU_sub() 144 tagb = FPU_gettagi(rm); FPU_sub() 161 if (!(taga | tagb)) { FPU_sub() 227 if (tagb == TAG_Special) FPU_sub() 228 tagb = FPU_Special(b); FPU_sub() 230 if (((taga == TAG_Valid) && (tagb == TW_Denormal)) FPU_sub() 231 || ((taga == TW_Denormal) && (tagb == TAG_Valid)) FPU_sub() 232 || ((taga == TW_Denormal) && (tagb == TW_Denormal))) { FPU_sub() 248 if ((taga == TW_NaN) || (tagb == TW_NaN)) { FPU_sub() 258 return real_2op_NaN(b, tagb, deststnr, d1); FPU_sub() 262 return real_2op_NaN(b, tagb, deststnr, d2); FPU_sub() 265 return add_sub_specials(a, taga, signa, b, tagb, signb ^ SIGN_NEG, FPU_sub() 271 FPU_REG const *b, u_char tagb, u_char signb, add_sub_specials() 274 if (((taga == TW_Denormal) || (tagb == TW_Denormal)) add_sub_specials() 279 if (tagb == TAG_Zero) { add_sub_specials() 294 if ((tagb == TW_Denormal) && (b->sigh & 0x80000000)) { add_sub_specials() 297 tagb = TAG_Valid; add_sub_specials() 298 } else if (tagb > TAG_Empty) add_sub_specials() 299 tagb = TAG_Special; add_sub_specials() 301 FPU_settagi(deststnr, tagb); add_sub_specials() 302 return tagb; add_sub_specials() 304 } else if (tagb == TAG_Zero) { add_sub_specials() 316 if ((tagb != TW_Infinity) || (signa == signb)) { add_sub_specials() 323 } else if (tagb == TW_Infinity) { add_sub_specials() 326 return tagb; add_sub_specials() 270 add_sub_specials(FPU_REG const *a, u_char taga, u_char signa, FPU_REG const *b, u_char tagb, u_char signb, FPU_REG * dest, int deststnr, int control_w) add_sub_specials() argument
|