[llvm-commits] [llvm] r167912 - in /llvm/trunk: lib/CodeGen/SelectionDAG/DAGCombiner.cpp test/CodeGen/X86/pr14333.ll
Evan Cheng
evan.cheng at apple.com
Sun Nov 25 11:52:15 PST 2012
I'm fine with including this in 3.2.
Evan
On Nov 20, 2012, at 8:22 AM, Rafael Espíndola <rafael.espindola at gmail.com> wrote:
> So, is this ok for 3.2?
>
> On 14 November 2012 09:37, Rafael Espíndola <rafael.espindola at gmail.com> wrote:
>>> On 14/11/12 14:09, Rafael Espíndola wrote:
>>>>
>>>> Can we include this in 3.2?
>>>
>>>
>>> maybe RAUW itself should loop like this? After all, who expects a RAUW to
>>> leave
>>> uses around?
>>
>> Not sure, the implementation has this comment:
>>
>> // Iterate over all the existing uses of From. New uses will be added
>> // to the beginning of the use list, which we avoid visiting.
>> // This specifically avoids visiting uses of From that arise while the
>> // replacement is happening, because any such uses would be the result
>> // of CSE: If an existing node looks like From after one of its operands
>> // is replaced by To, we don't want to replace of all its users with To
>> // too. See PR3018 for more info.
>>
>> The problem is that some of the uses introduced by CSE might not have
>> the same properties that caused the caller to decide to replace all
>> (existing) uses. Maybe replaceAllUsesWith should be
>> replaceAllExistingUsesWith and replaceAllUsesWith would include this
>> loop?
>>
>>> Ciao, Duncan.
>>
>> Cheers,
>> Rafael
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
More information about the llvm-commits
mailing list