+2017-04-25 Jan Hubicka <hubicka@ucw.cz>
+
+ * sreal.c: Include backend.h, tree.h, gimple.h, cgraph.h and
+ data-streamer.h
+ (sreal::stream_out, sreal::stream_in): New.
+ * sreal.h (sreal::stream_out, sreal::stream_in): Declare.
+
2017-04-25 Jakub Jelinek <jakub@redhat.com>
* Makefile.in (s-options): Invoke opt-gather.awk with LC_ALL=C in the
#include "coretypes.h"
#include "sreal.h"
#include "selftest.h"
+#include "backend.h"
+#include "tree.h"
+#include "gimple.h"
+#include "cgraph.h"
+#include "data-streamer.h"
/* Print the content of struct sreal. */
return r;
}
+/* Stream sreal value to OB. */
+
+void
+sreal::stream_out (struct output_block *ob)
+{
+ streamer_write_hwi (ob, m_sig);
+ streamer_write_hwi (ob, m_exp);
+}
+
+/* Read sreal value from IB. */
+
+sreal
+sreal::stream_in (struct lto_input_block *ib)
+{
+ sreal val;
+ val.m_sig = streamer_read_hwi (ib);
+ val.m_exp = streamer_read_hwi (ib);
+ return val;
+}
+
#if CHECKING_P
namespace selftest {
#define SREAL_SIGN(v) (v < 0 ? -1: 1)
#define SREAL_ABS(v) (v < 0 ? -v: v)
+struct output_block;
+struct lto_input_block;
+
/* Structure for holding a simple real number. */
class sreal
{
void dump (FILE *) const;
int64_t to_int () const;
double to_double () const;
+ void stream_out (struct output_block *);
+ static sreal stream_in (struct lto_input_block *);
sreal operator+ (const sreal &other) const;
sreal operator- (const sreal &other) const;
sreal operator* (const sreal &other) const;