> At least, the only spot that used to mention df_link in compare-elim.c was:
>   struct df_link *ref_chain;
>   ref_chain = DF_REF_CHAIN (use);
>   if (!ref_chain || !ref_chain->ref
> 
>       || !DF_REF_INSN_INFO (ref_chain->ref) || ref_chain->next != NULL)
> 
>     return false;
> 
>   rtx_insn *def_insn = DF_REF_INSN (ref_chain->ref);
> and
>   df_chain_add_problem (DF_UD_CHAIN + DF_DU_CHAIN);
> that ensured it is computed, but the former is replaced with the patch by
>   rtx_insn *def_insn = cmp->in_a_setter;
> which is computed during the bb walking using the last_setter array
> and the latter is dropped.

Then why does the patch not remove the df_chain_add_problem call itself?

-- 
Eric Botcazou

Reply via email to