+/**
+ * Check if the tarval can be converted to the given mode without
+ * precision loss.
+ *
+ * @param tv the tarval
+ * param mode the mode to convert to
+ */
+int tarval_ieee754_can_conv_lossless(tarval *tv, ir_mode *mode);
+
+/**
+ * Set the immediate precision for IEEE-754 results. Set this to
+ * 0 to get the same precision as the operands.
+ * For x87 compatibility, set this to 80.
+ *
+ * @return the old setting
+ */
+unsigned tarval_ieee754_set_immediate_precision(unsigned bits);
+
+/**
+ * Returns non-zero if the result of the last IEEE-754 operation was exact.
+ */
+unsigned tarval_ieee754_get_exact(void);
+
+/**
+ * Return the size of the mantissa in bits (including possible
+ * implicit bits) for the given mode.
+ */
+unsigned tarval_ieee754_get_mantissa_size(const ir_mode *mode);
+
+/**
+ * Enable/Disable floating point constant folding.
+ */
+int tarval_enable_fp_ops(int enable);
+
+/**
+ * Check if its the a floating point NaN.
+ *
+ * @param tv the tarval
+ */
+int tarval_is_NaN(tarval *tv);
+
+/**
+ * Check if its the a floating point +inf.
+ *
+ * @param tv the tarval
+ */
+int tarval_is_plus_inf(tarval *tv);
+
+/**
+ * Check if its the a floating point -inf.
+ *
+ * @param tv the tarval
+ */
+int tarval_is_minus_inf(tarval *tv);
+
+/**
+ * Check if the tarval represents a finite value, ie neither NaN nor inf.
+ *
+ * @param tv the tarval
+ */
+int tarval_is_finite(tarval *tv);
+
+/**
+ * Checks whether a pointer points to a tarval.
+ *
+ * @param thing an arbitrary pointer
+ *
+ * @return
+ * true if the thing is a tarval, else false
+ */
+int is_tarval(const void *thing);
+