pub struct PlatformProperties {Show 13 fields
pub canonical_nan_sign: Sign,
pub canonical_nan_mantissa_msb: bool,
pub canonical_nan_mantissa_second_to_msb: bool,
pub canonical_nan_mantissa_rest: bool,
pub std_bin_ops_nan_propagation_mode: BinaryNaNPropagationMode,
pub fma_nan_propagation_mode: TernaryNaNPropagationMode,
pub fma_inf_zero_qnan_result: FMAInfZeroQNaNResult,
pub round_to_integral_nan_propagation_mode: UnaryNaNPropagationMode,
pub next_up_or_down_nan_propagation_mode: UnaryNaNPropagationMode,
pub scale_b_nan_propagation_mode: UnaryNaNPropagationMode,
pub sqrt_nan_propagation_mode: UnaryNaNPropagationMode,
pub float_to_float_conversion_nan_propagation_mode: FloatToFloatConversionNaNPropagationMode,
pub rsqrt_nan_propagation_mode: UnaryNaNPropagationMode,
/* private fields */
}
Expand description
properties of a floating-point implementation
Fields§
§canonical_nan_sign: Sign
sign of the canonical NaN
canonical_nan_mantissa_msb: bool
most-significant-bit of the mantissa of the canonical NaN
canonical_nan_mantissa_second_to_msb: bool
second-most-significant-bit of the mantissa of the canonical NaN
canonical_nan_mantissa_rest: bool
rest of the bits of the mantissa of the canonical NaN
std_bin_ops_nan_propagation_mode: BinaryNaNPropagationMode
NaN payload propagation mode for the standard binary operations
fma_nan_propagation_mode: TernaryNaNPropagationMode
NaN payload propagation mode for fused_mul_add
fma_inf_zero_qnan_result: FMAInfZeroQNaNResult
the result of fused_mul_add
for (Infinity * 0.0) + QNaN
and
(0.0 * Infinity) + QNaN
round_to_integral_nan_propagation_mode: UnaryNaNPropagationMode
NaN payload propagation mode for round_to_integral
next_up_or_down_nan_propagation_mode: UnaryNaNPropagationMode
NaN payload propagation mode for next_up_or_down
, next_up
, and next_down
scale_b_nan_propagation_mode: UnaryNaNPropagationMode
NaN payload propagation mode for scale_b
sqrt_nan_propagation_mode: UnaryNaNPropagationMode
NaN payload propagation mode for sqrt
float_to_float_conversion_nan_propagation_mode: FloatToFloatConversionNaNPropagationMode
NaN payload propagation mode for float-to-float conversions
rsqrt_nan_propagation_mode: UnaryNaNPropagationMode
NaN payload propagation mode for rsqrt
Implementations§
Source§impl PlatformProperties
impl PlatformProperties
Sourcepub const ARM: PlatformProperties
pub const ARM: PlatformProperties
ARM 32-bit platform properties
Sourcepub const RISC_V: PlatformProperties
pub const RISC_V: PlatformProperties
RISC-V platform properties
Sourcepub const POWER: PlatformProperties
pub const POWER: PlatformProperties
Power ISA platform properties
Sourcepub const MIPS_2008: PlatformProperties
pub const MIPS_2008: PlatformProperties
MIPS 2008 revision platform properties
Sourcepub const X86_SSE: PlatformProperties
pub const X86_SSE: PlatformProperties
x86 SSE/AVX platform properties
Sourcepub const SPARC: PlatformProperties
pub const SPARC: PlatformProperties
Sparc platform properties
Sourcepub const HPPA: PlatformProperties
pub const HPPA: PlatformProperties
HPPA platform properties
Sourcepub const MIPS_LEGACY: PlatformProperties
pub const MIPS_LEGACY: PlatformProperties
MIPS pre-2008 revision platform properties
Source§impl PlatformProperties
impl PlatformProperties
Sourcepub const fn new_simple(
canonical_nan_sign: Sign,
canonical_nan_mantissa_msb: bool,
canonical_nan_mantissa_second_to_msb: bool,
canonical_nan_mantissa_rest: bool,
unary_nan_propagation_mode: UnaryNaNPropagationMode,
binary_nan_propagation_mode: BinaryNaNPropagationMode,
ternary_nan_propagation_mode: TernaryNaNPropagationMode,
fma_inf_zero_qnan_result: FMAInfZeroQNaNResult,
float_to_float_conversion_nan_propagation_mode: FloatToFloatConversionNaNPropagationMode,
) -> Self
pub const fn new_simple( canonical_nan_sign: Sign, canonical_nan_mantissa_msb: bool, canonical_nan_mantissa_second_to_msb: bool, canonical_nan_mantissa_rest: bool, unary_nan_propagation_mode: UnaryNaNPropagationMode, binary_nan_propagation_mode: BinaryNaNPropagationMode, ternary_nan_propagation_mode: TernaryNaNPropagationMode, fma_inf_zero_qnan_result: FMAInfZeroQNaNResult, float_to_float_conversion_nan_propagation_mode: FloatToFloatConversionNaNPropagationMode, ) -> Self
create PlatformProperties
Sourcepub fn quiet_nan_format(self) -> QuietNaNFormat
pub fn quiet_nan_format(self) -> QuietNaNFormat
get the QuietNaNFormat
Trait Implementations§
Source§impl Clone for PlatformProperties
impl Clone for PlatformProperties
Source§fn clone(&self) -> PlatformProperties
fn clone(&self) -> PlatformProperties
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more