diff options
author | Kewen Lin <linkw@linux.ibm.com> | 2021-09-20 21:00:04 -0500 |
---|---|---|
committer | Kewen Lin <linkw@linux.ibm.com> | 2021-09-20 21:00:04 -0500 |
commit | 63c6446f77b9001d26f973114450d790749f282b (patch) | |
tree | ebe9cea0659455a0ba329d436b1d6f0f9a022076 | |
parent | 56c24f18cce0da6405c5071b838844447fa81ac8 (diff) |
ipa-fnsummary: Remove inconsistent bp_pack_value
There is one inconsistent bit-field streaming out and in.
On the side of streaming in:
bp_pack_value (&bp, info->inlinable, 1);
bp_pack_value (&bp, false, 1);
bp_pack_value (&bp, info->fp_expressions, 1);
while on the side of the streaming out:
info->inlinable = bp_unpack_value (&bp, 1);
info->fp_expressions = bp_unpack_value (&bp, 1)
The removal of Cilk Plus support r8-4956 missed to remove
the streaming out of the bit, instead just change the value
for streaming out to be always false.
By hacking fp_expression_p to always return true, I can see
it reads the wrong fp_expressions value (false) out in wpa.
gcc/ChangeLog:
* ipa-fnsummary.c (ipa_fn_summary_write): Remove inconsistent
bitfield stream out.
-rw-r--r-- | gcc/ipa-fnsummary.c | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/gcc/ipa-fnsummary.c b/gcc/ipa-fnsummary.c index 2470937460f..31199919405 100644 --- a/gcc/ipa-fnsummary.c +++ b/gcc/ipa-fnsummary.c @@ -4652,7 +4652,6 @@ ipa_fn_summary_write (void) info->time.stream_out (ob); bp = bitpack_create (ob->main_stream); bp_pack_value (&bp, info->inlinable, 1); - bp_pack_value (&bp, false, 1); bp_pack_value (&bp, info->fp_expressions, 1); streamer_write_bitpack (&bp); streamer_write_uhwi (ob, vec_safe_length (info->conds)); |