Trait rustc_apfloat::ieee::Semantics [−][src]
Represents floating point arithmetic semantics.
Associated Constants
const BITS: usize
[src]
Total number of bits in the in-memory format.
const PRECISION: usize
[src]
Number of bits in the significand. This includes the integer bit.
const MAX_EXP: ExpInt
[src]
The largest E such that 2E is representable; this matches the definition of IEEE 754.
const MIN_EXP: ExpInt
[src]
The smallest E such that 2E is a normalized number; this matches the definition of IEEE 754.
const QNAN_BIT: usize
[src]
The significand bit that marks NaN as quiet.
const QNAN_SIGNIFICAND: u128
[src]
The significand bitpattern to mark a NaN as quiet. NOTE: for X87DoubleExtended we need to set two bits instead of 2.
Provided methods
Loading content...Implementors
impl Semantics for DoubleS
[src]
impl Semantics for HalfS
[src]
impl Semantics for QuadS
[src]
impl Semantics for SingleS
[src]
impl Semantics for X87DoubleExtendedS
[src]
const BITS: usize
[src]
const PRECISION: usize
[src]
const MAX_EXP: ExpInt
[src]
const QNAN_SIGNIFICAND: u128
[src]
For x87 extended precision, we want to make a NaN, not a pseudo-NaN. Maybe we should expose the ability to make pseudo-NaNs?
fn from_bits(bits: u128) -> IeeeFloat<Self>
[src]
Integer bit is explicit in this format. Intel hardware (387 and later) does not support these bit patterns: exponent = all 1’s, integer bit 0, significand 0 (“pseudoinfinity”) exponent = all 1’s, integer bit 0, significand nonzero (“pseudoNaN”) exponent = 0, integer bit 1 (“pseudodenormal”) exponent != 0 nor all 1’s, integer bit 0 (“unnormal”) At the moment, the first two are treated as NaNs, the second two as Normal.