[cfe-commits] [llvm-commits] [PATCH 4/5] Extend replaceAllUsesWith() on a BasicBlock.
John McCall
rjmccall at apple.com
Thu Jun 16 11:44:31 PDT 2011
On Jun 16, 2011, at 7:02 AM, Jay Foad wrote:
> On 16 June 2011 12:09, Jay Foad <jay.foad at gmail.com> wrote:
>> Extend replaceAllUsesWith() on a BasicBlock to also update any phi
>> nodes in the block's successors. This mimics what would have happened
>> when PHINodes were proper Users of their incoming blocks. (Note that
>> this only works if OldBB->replaceAllUsesWith(NewBB) is called when
>> OldBB still has a terminator instruction, so it still has some
>> successors.)
>>
>> This has only been split out from the previous patch for ease of review.
>> They will be committed together to keep things bisectable.
>> ---
>> include/llvm/BasicBlock.h | 4 ++++
>> lib/Transforms/Scalar/LoopUnswitch.cpp | 8 ++++----
>> lib/Transforms/Utils/BasicBlockUtils.cpp | 6 +++---
>> lib/Transforms/Utils/CloneFunction.cpp | 6 +++---
>> lib/Transforms/Utils/InlineFunction.cpp | 10 +++++-----
>> lib/Transforms/Utils/Local.cpp | 8 ++++----
>> lib/Transforms/Utils/LoopUnroll.cpp | 6 +++---
>> lib/VMCore/BasicBlock.cpp | 16 ++++++++++++++++
>> lib/VMCore/Value.cpp | 3 +++
>> 9 files changed, 45 insertions(+), 22 deletions(-)
>
> I forgot that this part also requires a small change in Clang, attached.
The Clang part is okay with me.
John.
More information about the cfe-commits
mailing list