fmerge Operation Font Conventions
if
(PR[qp]) {
fp_check_target_register;
if (tmp_isrcode =
fp_reg_disabled(f1,
f2, f3, 0))
disabled_fp_register_fault(tmp_isrcode, 0);
if (
fp_is_natval([f2])
|| fp_is_natval(FR[f3])) {
FR[f1] = NATVAL;
} else {
FR[f1].significand = FR[f3].significand;
if (neg_sign_form) {
FR[f1].exponent = FR[f3].exponent;
FR[f1].sign = !FR[f2].sign;
} else if (sign_form) {
FR[f1].exponent = FR[f3].exponent;
FR[f1].sign = FR[f2].sign;
} else { // sign_exp_form
FR[f1].exponent = FR[f2].exponent;
FR[f1].sign = FR[f2].sign;
}
}
fp_update_psr(f1);
}