On Tue, Aug 26, 2014 at 10:15 AM, David Malcolm <dmalc...@redhat.com> wrote:
> On Mon, 2014-08-25 at 08:25 -0600, Jeff Law wrote:
>> On 08/19/14 15:35, David Malcolm wrote:
>> > On Tue, 2014-08-19 at 13:57 -0700, Richard Henderson wrote:
>> >> On 08/06/2014 10:23 AM, David Malcolm wrote:
>> >>> diff --git a/gcc/cfgrtl.c b/gcc/cfgrtl.c
>> >>> index 59d633d..5e42a97 100644
>> >>> --- a/gcc/cfgrtl.c
>> >>> +++ b/gcc/cfgrtl.c
>> >>> @@ -1604,6 +1604,7 @@ force_nonfallthru_and_redirect (edge e, 
>> >>> basic_block target, rtx jump_label)
>> >>>
>> >>>     if (EDGE_COUNT (e->src->succs) >= 2 || abnormal_edge_flags || 
>> >>> asm_goto_edge)
>> >>>       {
>> >>> +      rtx_insn *note;
>> >>>         gcov_type count = e->count;
>> >>>         int probability = e->probability;
>> >>>         /* Create the new structures.  */
>> >>
>> >> A new variable with no uses?
>> >
>> > This one is quite ugly: the pre-existing code has two locals named
>> > "note", both of type rtx, with one shadowing the other.  This patch
>> > introduces a third, within the scope where the name "note" is used for
>> > insns.  In the other scopes the two other "note" variables are used for
>> > find_reg_note.  In each case, the name "note" is written to before use.
>> >
>> > So in my defense, the existing code already had shadowing of locals...
>> > but I guess that's not much of a defense, and it would be better to
>> > introduce a different name, and rename the uses in the appropriate
>> > scope.
>> If it's reasonable to do this now, then please do so.  Else make it a
>> follow-up item.  I guess we should have had a list of follow-up items :-)
>>
>> jeff
>
> Attached is a revised version of #225, with the following changes:
>
> * fix for the above: avoid introducing a new shadow name "note" within
> force_nonfallthru_and_redirect by introducing a new local rtx_insn *
> "new_head" and renaming "note" to it in the appropriate places.
>
> * changed an as_a<> to a safe_as_a<> within
> function.c:thread_prologue_and_epilogue_insns to fix a segfault seen
> during an earlier bootstrap
>
> Successfully bootstrapped on x86_64 (Fedora 20), on top of the rest of
> the patches leading up to it (including the revised ones for #220-#221
> that rth recently approved).
>
> OK for trunk?
> Dave

One of your changes caused:

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62300

-- 
H.J.

Reply via email to