clean up internal comments about float semantics · qinheping/verify-rust-std@04c4ab4 (original) (raw)

3 files changed

lines changed

Original file line number Diff line number Diff line change
@@ -435,6 +435,7 @@ impl f16 {
435 435 // WASM, see llvm/llvm-project#96437). These are platforms bugs, and Rust will misbehave on
436 436 // such platforms, but we can at least try to make things seem as sane as possible by being
437 437 // careful here.
438 +// see also https://github.com/rust-lang/rust/issues/114479
438 439 if self.is_infinite() {
439 440 // Thus, a value may compare unequal to infinity, despite having a "full" exponent mask.
440 441 FpCategory::Infinite
Original file line number Diff line number Diff line change
@@ -662,10 +662,7 @@ impl f32 {
662 662 // hardware flushes subnormals to zero. These are platforms bugs, and Rust will misbehave on
663 663 // such hardware, but we can at least try to make things seem as sane as possible by being
664 664 // careful here.
665 -//
666 -// FIXME(jubilee): Using x87 operations is never necessary in order to function
667 -// on x86 processors for Rust-to-Rust calls, so this issue should not happen.
668 -// Code generation should be adjusted to use non-C calling conventions, avoiding this.
665 +// see also https://github.com/rust-lang/rust/issues/114479
669 666 if self.is_infinite() {
670 667 // A value may compare unequal to infinity, despite having a "full" exponent mask.
671 668 FpCategory::Infinite
Original file line number Diff line number Diff line change
@@ -660,10 +660,7 @@ impl f64 {
660 660 // float semantics Rust relies on: x87 uses a too-large exponent, and some hardware flushes
661 661 // subnormals to zero. These are platforms bugs, and Rust will misbehave on such hardware,
662 662 // but we can at least try to make things seem as sane as possible by being careful here.
663 -//
664 -// FIXME(jubilee): Using x87 operations is never necessary in order to function
665 -// on x86 processors for Rust-to-Rust calls, so this issue should not happen.
666 -// Code generation should be adjusted to use non-C calling conventions, avoiding this.
663 +// see also https://github.com/rust-lang/rust/issues/114479
667 664 //
668 665 // Thus, a value may compare unequal to infinity, despite having a "full" exponent mask.
669 666 // And it may not be NaN, as it can simply be an "overextended" finite value.