MCPcopy Create free account
hub / github.com/LPC4/Full-Stack / flags_binary_d

Function flags_binary_d

crates/virtual-machine/src/cpu/alu.rs:373–385  ·  view source on GitHub ↗
(a: f64, b: f64, result: f64)

Source from the content-addressed store, hash-verified

371 if result.is_nan() && !a.is_nan() && !b.is_nan() {
372 flags |= NV;
373 }
374 if result.is_infinite() && !a.is_infinite() && !b.is_infinite() {
375 flags |= OF | NX;
376 } else if result.is_subnormal() {
377 // Subnormal result implies underflow; NX is almost certain for subnormals.
378 flags |= UF | NX;
379 }
380 flags
381}
382
383// --- F extension, single-precision arithmetic (exact via f64 promotion) ---
384
385pub fn fp_add_s(a: f32, b: f32, rm: u8) -> (u64, u8) {
386 if a.is_nan() || b.is_nan() {
387 return (canon_nan_s(), 0);
388 }

Callers 4

fp_add_dFunction · 0.85
fp_sub_dFunction · 0.85
fp_mul_dFunction · 0.85
fp_div_dFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected