diff options
author | Jakub Jelinek <jakub@redhat.com> | 2020-09-04 11:55:13 +0200 |
---|---|---|
committer | Jakub Jelinek <jakub@redhat.com> | 2020-09-04 11:55:13 +0200 |
commit | b898878032a5bbba0d1a981db6399664181531e9 (patch) | |
tree | 6634a835111137ac96190ee67bb9851237e429a2 /gcc | |
parent | 70d8d9bd93f7912e56a27e64abc9e1e895fe143a (diff) | |
download | gcc-b898878032a5bbba0d1a981db6399664181531e9.zip gcc-b898878032a5bbba0d1a981db6399664181531e9.tar.gz gcc-b898878032a5bbba0d1a981db6399664181531e9.tar.bz2 |
lto: Remove stream_input_location_now
As discussed yesterday, stream_input_location_now has been used in 3
remaining places. For ERT_MUST_NOT_THROW, I believe the failure_loc
location is stable at least until the apply_cache after the bbs are all
read, and the locations do not include BLOCK, so we can use normal
stream_input_location, and the two input_struct_function_base also
shouldn't include BLOCK and are stable at least until that same apply_cache
after reading all bbs, so again we can use the location cache.
2020-09-04 Jakub Jelinek <jakub@redhat.com>
* lto-streamer.h (stream_input_location_now): Remove declaration.
* lto-streamer-in.c (stream_input_location_now): Remove.
(input_eh_region, input_struct_function_base): Use
stream_input_location instead of stream_input_location_now.
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/lto-streamer-in.c | 21 | ||||
-rw-r--r-- | gcc/lto-streamer.h | 2 |
2 files changed, 4 insertions, 19 deletions
diff --git a/gcc/lto-streamer-in.c b/gcc/lto-streamer-in.c index 478125a..783ecc0 100644 --- a/gcc/lto-streamer-in.c +++ b/gcc/lto-streamer-in.c @@ -351,19 +351,6 @@ lto_input_location (location_t *loc, struct bitpack_d *bp, data_in->location_cache.input_location (loc, bp, data_in); } -/* Read location and return it instead of going through location caching. - This should be used only when the resulting location is not going to be - discarded. */ - -location_t -stream_input_location_now (struct bitpack_d *bp, class data_in *data_in) -{ - location_t loc; - stream_input_location (&loc, bp, data_in); - data_in->location_cache.apply_location_cache (); - return loc; -} - /* Read a reference to a tree node from DATA_IN using input block IB. TAG is the expected node that should be found in IB, if TAG belongs to one of the indexable trees, expect to read a reference index to @@ -527,8 +514,8 @@ input_eh_region (class lto_input_block *ib, class data_in *data_in, int ix) r->type = ERT_MUST_NOT_THROW; r->u.must_not_throw.failure_decl = stream_read_tree (ib, data_in); bitpack_d bp = streamer_read_bitpack (ib); - r->u.must_not_throw.failure_loc - = stream_input_location_now (&bp, data_in); + stream_input_location (&r->u.must_not_throw.failure_loc, + &bp, data_in); } break; @@ -1059,8 +1046,8 @@ input_struct_function_base (struct function *fn, class data_in *data_in, fn->last_clique = bp_unpack_value (&bp, sizeof (short) * 8); /* Input the function start and end loci. */ - fn->function_start_locus = stream_input_location_now (&bp, data_in); - fn->function_end_locus = stream_input_location_now (&bp, data_in); + stream_input_location (&fn->function_start_locus, &bp, data_in); + stream_input_location (&fn->function_end_locus, &bp, data_in); /* Restore the instance discriminators if present. */ int instance_number = bp_unpack_value (&bp, 1); diff --git a/gcc/lto-streamer.h b/gcc/lto-streamer.h index 470f6fb..1ca13ed 100644 --- a/gcc/lto-streamer.h +++ b/gcc/lto-streamer.h @@ -854,8 +854,6 @@ extern class data_in *lto_data_in_create (struct lto_file_decl_data *, extern void lto_data_in_delete (class data_in *); extern void lto_input_data_block (class lto_input_block *, void *, size_t); void lto_input_location (location_t *, struct bitpack_d *, class data_in *); -location_t stream_input_location_now (struct bitpack_d *bp, - class data_in *data); tree lto_input_tree_ref (class lto_input_block *, class data_in *, struct function *, enum LTO_tags); void lto_tag_check_set (enum LTO_tags, int, ...); |