data-streamer-in.c (streamer_read_wide_int): New.
gcc/ChangeLog: 2016-08-07 Kugan Vivekanandarajah <kuganv@linaro.org> * data-streamer-in.c (streamer_read_wide_int): New. (streamer_read_widest_int): Renamed function. * data-streamer-out.c (streamer_write_wide_int): New (streamer_write_widest_int): Renamed function. * lto-streamer-in.c (streamer_read_wi): Renamed and moved to data-stream-in.c. (input_cfg): Call renamed function. * lto-streamer-out.c (streamer_write_wi): Renamed and moved to data-stream-out.c. (output_cfg): Call renamed function. * data-streamer.h: Add declarations. From-SVN: r239213
This commit is contained in:
parent
19278b02d7
commit
a73f34c2d2
|
@ -1,3 +1,17 @@
|
|||
2016-08-07 Kugan Vivekanandarajah <kuganv@linaro.org>
|
||||
|
||||
* data-streamer-in.c (streamer_read_wide_int): New.
|
||||
(streamer_read_widest_int): Renamed function.
|
||||
* data-streamer-out.c (streamer_write_wide_int): New
|
||||
(streamer_write_widest_int): Renamed function.
|
||||
* lto-streamer-in.c (streamer_read_wi): Renamed and moved to
|
||||
data-stream-in.c.
|
||||
(input_cfg): Call renamed function.
|
||||
* lto-streamer-out.c (streamer_write_wi): Renamed and moved to
|
||||
data-stream-out.c.
|
||||
(output_cfg): Call renamed function.
|
||||
* data-streamer.h: Add declarations.
|
||||
|
||||
2016-08-08 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org>
|
||||
|
||||
* tree-ssa-ccp.c (extend_mask): New param sgn.
|
||||
|
|
|
@ -184,3 +184,34 @@ streamer_read_gcov_count (struct lto_input_block *ib)
|
|||
gcc_assert (ret >= 0);
|
||||
return ret;
|
||||
}
|
||||
|
||||
/* Read the physical representation of a wide_int val from
|
||||
input block IB. */
|
||||
|
||||
wide_int
|
||||
streamer_read_wide_int (struct lto_input_block *ib)
|
||||
{
|
||||
HOST_WIDE_INT a[WIDE_INT_MAX_ELTS];
|
||||
int i;
|
||||
int prec = streamer_read_uhwi (ib);
|
||||
int len = streamer_read_uhwi (ib);
|
||||
for (i = 0; i < len; i++)
|
||||
a[i] = streamer_read_hwi (ib);
|
||||
return wide_int::from_array (a, len, prec);
|
||||
}
|
||||
|
||||
/* Read the physical representation of a widest_int val from
|
||||
input block IB. */
|
||||
|
||||
widest_int
|
||||
streamer_read_widest_int (struct lto_input_block *ib)
|
||||
{
|
||||
HOST_WIDE_INT a[WIDE_INT_MAX_ELTS];
|
||||
int i;
|
||||
int prec ATTRIBUTE_UNUSED = streamer_read_uhwi (ib);
|
||||
int len = streamer_read_uhwi (ib);
|
||||
for (i = 0; i < len; i++)
|
||||
a[i] = streamer_read_hwi (ib);
|
||||
return widest_int::from_array (a, len);
|
||||
}
|
||||
|
||||
|
|
|
@ -375,3 +375,30 @@ streamer_write_data_stream (struct lto_output_stream *obs, const void *data,
|
|||
}
|
||||
}
|
||||
|
||||
/* Emit the physical representation of wide_int VAL to output block OB. */
|
||||
|
||||
void
|
||||
streamer_write_wide_int (struct output_block *ob, const wide_int &val)
|
||||
{
|
||||
int len = val.get_len ();
|
||||
|
||||
streamer_write_uhwi (ob, val.get_precision ());
|
||||
streamer_write_uhwi (ob, len);
|
||||
for (int i = 0; i < len; i++)
|
||||
streamer_write_hwi (ob, val.elt (i));
|
||||
}
|
||||
|
||||
/* Emit the physical representation of widest_int W to output block OB. */
|
||||
|
||||
void
|
||||
streamer_write_widest_int (struct output_block *ob,
|
||||
const widest_int &w)
|
||||
{
|
||||
int len = w.get_len ();
|
||||
|
||||
streamer_write_uhwi (ob, w.get_precision ());
|
||||
streamer_write_uhwi (ob, len);
|
||||
for (int i = 0; i < len; i++)
|
||||
streamer_write_hwi (ob, w.elt (i));
|
||||
}
|
||||
|
||||
|
|
|
@ -69,6 +69,8 @@ void streamer_write_hwi_stream (struct lto_output_stream *, HOST_WIDE_INT);
|
|||
void streamer_write_gcov_count_stream (struct lto_output_stream *, gcov_type);
|
||||
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 &);
|
||||
|
||||
/* In data-streamer-in.c */
|
||||
const char *streamer_read_string (struct data_in *, struct lto_input_block *);
|
||||
|
@ -81,6 +83,8 @@ const char *bp_unpack_string (struct data_in *, struct bitpack_d *);
|
|||
unsigned HOST_WIDE_INT streamer_read_uhwi (struct lto_input_block *);
|
||||
HOST_WIDE_INT streamer_read_hwi (struct lto_input_block *);
|
||||
gcov_type streamer_read_gcov_count (struct lto_input_block *);
|
||||
wide_int streamer_read_wide_int (struct lto_input_block *);
|
||||
widest_int streamer_read_widest_int (struct lto_input_block *);
|
||||
|
||||
/* Returns a new bit-packing context for bit-packing into S. */
|
||||
static inline struct bitpack_d
|
||||
|
|
|
@ -710,21 +710,6 @@ make_new_block (struct function *fn, unsigned int index)
|
|||
}
|
||||
|
||||
|
||||
/* Read a wide-int. */
|
||||
|
||||
static widest_int
|
||||
streamer_read_wi (struct lto_input_block *ib)
|
||||
{
|
||||
HOST_WIDE_INT a[WIDE_INT_MAX_ELTS];
|
||||
int i;
|
||||
int prec ATTRIBUTE_UNUSED = streamer_read_uhwi (ib);
|
||||
int len = streamer_read_uhwi (ib);
|
||||
for (i = 0; i < len; i++)
|
||||
a[i] = streamer_read_hwi (ib);
|
||||
return widest_int::from_array (a, len);
|
||||
}
|
||||
|
||||
|
||||
/* Read the CFG for function FN from input block IB. */
|
||||
|
||||
static void
|
||||
|
@ -834,13 +819,13 @@ input_cfg (struct lto_input_block *ib, struct data_in *data_in,
|
|||
loop->estimate_state = streamer_read_enum (ib, loop_estimation, EST_LAST);
|
||||
loop->any_upper_bound = streamer_read_hwi (ib);
|
||||
if (loop->any_upper_bound)
|
||||
loop->nb_iterations_upper_bound = streamer_read_wi (ib);
|
||||
loop->nb_iterations_upper_bound = streamer_read_widest_int (ib);
|
||||
loop->any_likely_upper_bound = streamer_read_hwi (ib);
|
||||
if (loop->any_likely_upper_bound)
|
||||
loop->nb_iterations_likely_upper_bound = streamer_read_wi (ib);
|
||||
loop->nb_iterations_likely_upper_bound = streamer_read_widest_int (ib);
|
||||
loop->any_estimate = streamer_read_hwi (ib);
|
||||
if (loop->any_estimate)
|
||||
loop->nb_iterations_estimate = streamer_read_wi (ib);
|
||||
loop->nb_iterations_estimate = streamer_read_widest_int (ib);
|
||||
|
||||
/* Read OMP SIMD related info. */
|
||||
loop->safelen = streamer_read_hwi (ib);
|
||||
|
|
|
@ -1828,20 +1828,6 @@ output_ssa_names (struct output_block *ob, struct function *fn)
|
|||
}
|
||||
|
||||
|
||||
/* Output a wide-int. */
|
||||
|
||||
static void
|
||||
streamer_write_wi (struct output_block *ob,
|
||||
const widest_int &w)
|
||||
{
|
||||
int len = w.get_len ();
|
||||
|
||||
streamer_write_uhwi (ob, w.get_precision ());
|
||||
streamer_write_uhwi (ob, len);
|
||||
for (int i = 0; i < len; i++)
|
||||
streamer_write_hwi (ob, w.elt (i));
|
||||
}
|
||||
|
||||
|
||||
/* Output the cfg. */
|
||||
|
||||
|
@ -1915,13 +1901,13 @@ output_cfg (struct output_block *ob, struct function *fn)
|
|||
loop_estimation, EST_LAST, loop->estimate_state);
|
||||
streamer_write_hwi (ob, loop->any_upper_bound);
|
||||
if (loop->any_upper_bound)
|
||||
streamer_write_wi (ob, loop->nb_iterations_upper_bound);
|
||||
streamer_write_widest_int (ob, loop->nb_iterations_upper_bound);
|
||||
streamer_write_hwi (ob, loop->any_likely_upper_bound);
|
||||
if (loop->any_likely_upper_bound)
|
||||
streamer_write_wi (ob, loop->nb_iterations_likely_upper_bound);
|
||||
streamer_write_widest_int (ob, loop->nb_iterations_likely_upper_bound);
|
||||
streamer_write_hwi (ob, loop->any_estimate);
|
||||
if (loop->any_estimate)
|
||||
streamer_write_wi (ob, loop->nb_iterations_estimate);
|
||||
streamer_write_widest_int (ob, loop->nb_iterations_estimate);
|
||||
|
||||
/* Write OMP SIMD related info. */
|
||||
streamer_write_hwi (ob, loop->safelen);
|
||||
|
|
Loading…
Reference in New Issue