aboutsummaryrefslogtreecommitdiff
path: root/gcc/data-streamer.h
diff options
context:
space:
mode:
authorAldy Hernandez <aldyh@redhat.com>2023-04-18 07:57:43 +0200
committerAldy Hernandez <aldyh@redhat.com>2023-05-17 16:08:48 +0200
commit029bfd4f419a58a47fa27036b900def620a2cd28 (patch)
tree23951b7dc97dc19057812f5a05ab216dde7b58dc /gcc/data-streamer.h
parentd8a656d5b6246457e84934bc35115c134bc38def (diff)
downloadgcc-029bfd4f419a58a47fa27036b900def620a2cd28.zip
gcc-029bfd4f419a58a47fa27036b900def620a2cd28.tar.gz
gcc-029bfd4f419a58a47fa27036b900def620a2cd28.tar.bz2
Add support for vrange streaming.
I think it's time for the ranger folk to start owning range streaming instead of passes (IPA, etc) doing their own thing. I have plans for overhauling the IPA code later this cycle to support generic ranges, and I'd like to start cleaning up the streaming and hashing interface. This patch adds generic streaming support for vrange. gcc/ChangeLog: * data-streamer-in.cc (streamer_read_real_value): New. (streamer_read_value_range): New. * data-streamer-out.cc (streamer_write_real_value): New. (streamer_write_vrange): New. * data-streamer.h (streamer_write_vrange): New. (streamer_read_value_range): New.
Diffstat (limited to 'gcc/data-streamer.h')
-rw-r--r--gcc/data-streamer.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/data-streamer.h b/gcc/data-streamer.h
index 19c9d6e..7e69eb9 100644
--- a/gcc/data-streamer.h
+++ b/gcc/data-streamer.h
@@ -75,6 +75,7 @@ void streamer_write_data_stream (struct lto_output_stream *, const void *,
size_t);
void streamer_write_wide_int (struct output_block *, const wide_int &);
void streamer_write_widest_int (struct output_block *, const widest_int &);
+void streamer_write_vrange (struct output_block *, const class vrange &);
/* In data-streamer-in.cc */
const char *streamer_read_string (class data_in *, class lto_input_block *);
@@ -91,6 +92,8 @@ poly_int64 streamer_read_poly_int64 (class lto_input_block *);
gcov_type streamer_read_gcov_count (class lto_input_block *);
wide_int streamer_read_wide_int (class lto_input_block *);
widest_int streamer_read_widest_int (class lto_input_block *);
+void streamer_read_value_range (class lto_input_block *, class data_in *,
+ class Value_Range &);
/* Returns a new bit-packing context for bit-packing into S. */
inline struct bitpack_d