lto-streamer.h (class lto_location_cache): New.
authorJan Hubicka <hubicka@gcc.gnu.org>
Fri, 27 Mar 2015 06:59:35 +0000 (06:59 +0000)
committerJan Hubicka <hubicka@gcc.gnu.org>
Fri, 27 Mar 2015 06:59:35 +0000 (06:59 +0000)
* lto-streamer.h (class lto_location_cache): New.
(struct data_in): Add location_cache.
(lto_input_location): Update prototype.
(stream_input_location_now): New.
* streamer-hooks.h (struct streamer_hooks): Make input_location to take
pointer to location.
(stream_input_location): Update.
* ipa-devirt.c: Include streamer-hooks.h and lto-streamer.h
(warn_odr): Apply location cache before warning.
(lto_input_location): Update prototype.
* gimple-streamer-in.c (input_phi, input_gimple_stmt):
Use stream_input_location_now.
* lto-streamer-in.c (lto_location_cache::current_cache): New static
variable.
(lto_location_cache::cmp_loc): New function.
(lto_location_cache::apply_location_cache): New function.
(lto_location_cache::accept_location_cache): New function.
(lto_location_cache::revert_location_cache): New function.
(lto_location_cache::input_location): New function.
(lto_input_location): Do location caching.
(stream_input_location_now): New function.
(input_eh_region, input_struct_function_base): Use
stream_input_location_now.
(lto_data_in_create): use new.
(lto_data_in_delete): Use delete.
* tree-streamer-in.c (unpack_ts_block_value_fields,
unpack_ts_omp_clause_value_fields, streamer_read_tree_bitfields,
lto_input_ts_exp_tree_pointers): Update for cached location api.

From-SVN: r221721

gcc/ChangeLog

index 4706ad99f105c5488f49c94fe04683fffee52722..240a2c9f70d2e1b73f9bff30815910d74ebad01e 100644 (file)
@@ -1,3 +1,35 @@
+2015-03-26  Jan Hubicka  <hubicka@ucw.cz>
+
+       PR lto/65536
+       * lto-streamer.h (class lto_location_cache): New.
+       (struct data_in): Add location_cache.
+       (lto_input_location): Update prototype.
+       (stream_input_location_now): New.
+       * streamer-hooks.h (struct streamer_hooks): Make input_location to take
+       pointer to location.
+       (stream_input_location): Update.
+       * ipa-devirt.c: Include streamer-hooks.h and lto-streamer.h
+       (warn_odr): Apply location cache before warning.
+       (lto_input_location): Update prototype.
+       * gimple-streamer-in.c (input_phi, input_gimple_stmt):
+       Use stream_input_location_now.
+       * lto-streamer-in.c (lto_location_cache::current_cache): New static
+       variable.
+       (lto_location_cache::cmp_loc): New function.
+       (lto_location_cache::apply_location_cache): New function.
+       (lto_location_cache::accept_location_cache): New function.
+       (lto_location_cache::revert_location_cache): New function.
+       (lto_location_cache::input_location): New function.
+       (lto_input_location): Do location caching.
+       (stream_input_location_now): New function.
+       (input_eh_region, input_struct_function_base): Use
+       stream_input_location_now.
+       (lto_data_in_create): use new.
+       (lto_data_in_delete): Use delete.
+       * tree-streamer-in.c (unpack_ts_block_value_fields,
+       unpack_ts_omp_clause_value_fields, streamer_read_tree_bitfields,
+       lto_input_ts_exp_tree_pointers): Update for cached location api.
+
 2015-03-26  Jan Hubicka  <hubicka@ucw.cz>
 
        PR ipa/65076