From: Jakub Jelinek <jakub@redhat.com>
To: Richard Biener <rguenther@suse.de>, Jan Hubicka <jh@suse.cz>
Cc: gcc-patches@gcc.gnu.org
Subject: [PATCH] lto: Remove stream_input_location_now
Date: Fri, 4 Sep 2020 10:49:31 +0200 [thread overview]
Message-ID: <20200904084931.GU18149@tucnak> (raw)
Hi!
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.
Bootstrapped/regtested on x86_64-linux and i686-linux, and lto bootstrapped
on x86_64-linux, ok for trunk?
2020-09-03 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.
--- gcc/lto-streamer.h.jj 2020-09-03 20:10:13.753993705 +0200
+++ gcc/lto-streamer.h 2020-09-03 20:18:59.209362865 +0200
@@ -853,8 +853,6 @@ extern class data_in *lto_data_in_create
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, ...);
--- gcc/lto-streamer-in.c.jj 2020-09-03 20:10:13.751993734 +0200
+++ gcc/lto-streamer-in.c 2020-09-03 20:20:03.307432156 +0200
@@ -351,19 +351,6 @@ lto_input_location (location_t *loc, str
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 *
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 funct
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);
Jakub
next reply other threads:[~2020-09-04 8:49 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-09-04 8:49 Jakub Jelinek [this message]
2020-09-04 9:33 ` Richard Biener
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20200904084931.GU18149@tucnak \
--to=jakub@redhat.com \
--cc=gcc-patches@gcc.gnu.org \
--cc=jh@suse.cz \
--cc=rguenther@suse.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).