diff options
author | Jan Hubicka <hubicka@ucw.cz> | 2017-04-26 11:57:38 +0200 |
---|---|---|
committer | Jan Hubicka <hubicka@gcc.gnu.org> | 2017-04-26 09:57:38 +0000 |
commit | 8a267096506388a0165d869daa42607b8bf96583 (patch) | |
tree | 5982acc57285f0be2e98859be6970af45dc91e8d /gcc | |
parent | f9726baa97f95d73f1ead290e4465824c4bcc673 (diff) | |
download | gcc-8a267096506388a0165d869daa42607b8bf96583.zip gcc-8a267096506388a0165d869daa42607b8bf96583.tar.gz gcc-8a267096506388a0165d869daa42607b8bf96583.tar.bz2 |
sreal.c: Include backend.h, tree.h, gimple.h, cgraph.h and data-streamer.h
* 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.
From-SVN: r247276
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 7 | ||||
-rw-r--r-- | gcc/sreal.c | 25 | ||||
-rw-r--r-- | gcc/sreal.h | 5 |
3 files changed, 37 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 91f81aa..41df066 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +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 diff --git a/gcc/sreal.c b/gcc/sreal.c index 72d5891..3993e27 100644 --- a/gcc/sreal.c +++ b/gcc/sreal.c @@ -53,6 +53,11 @@ along with GCC; see the file COPYING3. If not see #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. */ @@ -236,6 +241,26 @@ sreal::operator/ (const sreal &other) const 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 { diff --git a/gcc/sreal.h b/gcc/sreal.h index 917ce3e..18a454c 100644 --- a/gcc/sreal.h +++ b/gcc/sreal.h @@ -34,6 +34,9 @@ along with GCC; see the file COPYING3. If not see #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 { @@ -50,6 +53,8 @@ public: 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; |