(decide_peel_simple): Likewise.
(decide_unroll_stupid): Likewise.
* lto-streamer-in.c
+ (streamer_read_wi): Add.
(input_cfg): Use wide-int interfaces.
(lto_input_tree_1): Likewise.
* lto-streamer-out.c
+ (streamer_write_wi): Add.
(hash_tree): Use wide-int interfaces.
(output_cfg): Likewise.
* Makefile.in
}
+/* 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
loop->estimate_state = streamer_read_enum (ib, loop_estimation, EST_LAST);
loop->any_upper_bound = streamer_read_hwi (ib);
if (loop->any_upper_bound)
- {
- 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);
-
- loop->nb_iterations_upper_bound = widest_int::from_array (a, len);
- }
+ loop->nb_iterations_upper_bound = streamer_read_wi (ib);
loop->any_estimate = streamer_read_hwi (ib);
if (loop->any_estimate)
- {
- 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);
-
- loop->nb_iterations_estimate = widest_int::from_array (a, len);
- }
+ loop->nb_iterations_estimate = streamer_read_wi (ib);
/* Read OMP SIMD related info. */
loop->safelen = streamer_read_hwi (ib);
}
+/* 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. */
static void
loop_estimation, EST_LAST, loop->estimate_state);
streamer_write_hwi (ob, loop->any_upper_bound);
if (loop->any_upper_bound)
- {
- int len = loop->nb_iterations_upper_bound.get_len ();
- int i;
-
- streamer_write_uhwi (ob, loop->nb_iterations_upper_bound.get_precision ());
- streamer_write_uhwi (ob, len);
- for (i = 0; i < len; i++)
- streamer_write_hwi (ob, loop->nb_iterations_upper_bound.elt (i));
- }
+ streamer_write_wi (ob, loop->nb_iterations_upper_bound);
streamer_write_hwi (ob, loop->any_estimate);
if (loop->any_estimate)
- {
- int len = loop->nb_iterations_estimate.get_len ();
- int i;
-
- streamer_write_uhwi (ob, loop->nb_iterations_estimate.get_precision ());
- streamer_write_uhwi (ob, len);
- for (i = 0; i < len; i++)
- streamer_write_hwi (ob, loop->nb_iterations_estimate.elt (i));
- }
+ streamer_write_wi (ob, loop->nb_iterations_estimate);
/* Write OMP SIMD related info. */
streamer_write_hwi (ob, loop->safelen);