Fix reload1.c warning for some targets
Jeff Law
law@redhat.com
Wed Aug 12 17:17:00 GMT 2015
On 08/05/2015 08:18 AM, Richard Sandiford wrote:
> Building some targets results in a warning about orig_dup[i] potentially
> being used uninitialised. I think the warning is fair, since it isn't
> obvious that the reog_data-based loop bound remains unchanged between:
>
> for (i = 0; i < recog_data.n_dups; i++)
> orig_dup[i] = *recog_data.dup_loc[i];
>
> and:
>
> for (i = 0; i < recog_data.n_dups; i++)
> *recog_data.dup_loc[i] = orig_dup[i];
>
> Tested on x86_64-linux-gnu. OK to install?
>
> Thanks,
> Richard
>
> gcc/
> * reload1.c (elimination_costs_in_insn): Make it obvious to the
> compiler that the n_dups and n_operands loop bounds are invariant.
So thinking more about this, I think the best way forward is to:
1. Create a new BZ with the false positive extracted from c#4.
2. Install your patch and close 55035.
I'll take care of #1, you can handle #2.
jeff
More information about the Gcc-patches
mailing list