On 6/19/19 9:56 AM, David Brenken wrote:
+
+ result = 0;
+ result = deposit32(result, 31, 1, new_S);
+ result = deposit32(result, 23, 8, new_E);
+ result = deposit32(result, 15, 8, new_M);
+ }
+
+ if (float32_is_any_nan(arg1) || result == float32_sqrt_nan) {
You need float32_is_signaling_nan, since only signaling nan raises the
invalid flag.
+ env->FPU_FI = 1;
env->FPU_FI = 1 << 31;
See f_update_psw_flags(). FPU_FIĀ and PSW_V are the same and we defined
bit 31 as the V bit for optimization purposes.
Cheers,
Bastian