An IEEE 754 value plus a rounding mode, enabling operations with rounding on values.
More...
|
| rounding_modet | rounding_mode () const |
| |
| | ieee_floatt (ieee_float_spect __spec, rounding_modet __rounding_mode) |
| |
| | ieee_floatt (ieee_float_spect __spec, rounding_modet __rounding_mode, const mp_integer &value) |
| |
| | ieee_floatt (const floatbv_typet &type, rounding_modet __rounding_mode) |
| |
| | ieee_floatt (const constant_exprt &expr, rounding_modet __rounding_mode) |
| |
| | ieee_floatt (ieee_float_valuet __value, rounding_modet __rounding_mode) |
| |
| void | from_integer (const mp_integer &i) |
| |
| void | from_base10 (const mp_integer &exp, const mp_integer &frac) |
| | compute f * (10^e)
|
| |
| void | build (const mp_integer &exp, const mp_integer &frac) |
| |
| double | to_double () const |
| |
| float | to_float () const |
| |
| mp_integer | to_integer () const |
| |
| void | change_spec (const ieee_float_spect &dest_spec) |
| |
| ieee_floatt | round_to_integral () const |
| |
| ieee_floatt & | operator/= (const ieee_floatt &other) |
| |
| ieee_floatt & | operator*= (const ieee_floatt &other) |
| |
| ieee_floatt & | operator+= (const ieee_floatt &other) |
| |
| ieee_floatt & | operator-= (const ieee_floatt &other) |
| |
| | ieee_float_valuet (const ieee_float_spect &_spec) |
| |
| | ieee_float_valuet (const floatbv_typet &type) |
| |
| | ieee_float_valuet (const constant_exprt &expr) |
| |
| | ieee_float_valuet () |
| |
| void | negate () |
| |
| void | set_sign (bool _sign) |
| |
| void | make_zero () |
| |
| void | make_NaN () |
| |
| void | make_plus_infinity () |
| |
| void | make_minus_infinity () |
| |
| void | make_fltmax () |
| |
| void | make_fltmin () |
| |
| void | increment (bool distinguish_zero=false) |
| |
| void | decrement (bool distinguish_zero=false) |
| |
| bool | is_zero () const |
| |
| bool | get_sign () const |
| |
| bool | is_negative () const |
| |
| bool | is_NaN () const |
| |
| bool | is_infinity () const |
| |
| bool | is_normal () const |
| |
| const mp_integer & | get_exponent () const |
| |
| const mp_integer & | get_fraction () const |
| |
| void | unpack (const mp_integer &) |
| |
| void | from_double (double) |
| |
| void | from_float (float) |
| |
| double | to_double () const |
| | Note that calling from_double -> to_double can return different bit patterns for NaN.
|
| |
| float | to_float () const |
| | Note that calling from_float -> to_float can return different bit patterns for NaN.
|
| |
| bool | is_double () const |
| |
| bool | is_float () const |
| |
| mp_integer | pack () const |
| |
| void | extract_base2 (mp_integer &_exponent, mp_integer &_fraction) const |
| |
| void | extract_base10 (mp_integer &_exponent, mp_integer &_fraction) const |
| |
| mp_integer | to_integer () const |
| |
| void | print (std::ostream &out) const |
| |
| std::string | to_ansi_c_string () const |
| |
| std::string | to_string_decimal (std::size_t precision) const |
| |
| std::string | to_string_scientific (std::size_t precision) const |
| | format as [-]d.ddde+-d Note that printf always produces at least two digits for the exponent.
|
| |
| std::string | format (const format_spect &format_spec) const |
| |
| constant_exprt | to_expr () const |
| |
| void | from_expr (const constant_exprt &expr) |
| |
| bool | operator< (const ieee_float_valuet &) const |
| |
| bool | operator<= (const ieee_float_valuet &) const |
| |
| bool | operator> (const ieee_float_valuet &) const |
| |
| bool | operator>= (const ieee_float_valuet &) const |
| |
| ieee_float_valuet | abs () const |
| |
| bool | operator== (const ieee_float_valuet &) const |
| |
| bool | operator!= (const ieee_float_valuet &) const |
| |
| bool | operator== (int) const |
| |
| bool | operator== (double) const |
| |
| bool | operator== (float) const |
| |
| bool | ieee_equal (const ieee_float_valuet &) const |
| |
| bool | ieee_not_equal (const ieee_float_valuet &) const |
| |
An IEEE 754 value plus a rounding mode, enabling operations with rounding on values.
Definition at line 337 of file ieee_float.h.