[LoopUnroll] Use IRBuilder to create branch instructions.
authorAlexey Samsonov <vonosmas@gmail.com>
Thu, 11 Jun 2015 18:25:44 +0000 (18:25 +0000)
committerAlexey Samsonov <vonosmas@gmail.com>
Thu, 11 Jun 2015 18:25:44 +0000 (18:25 +0000)
commit7356846f65b17760b5ef70e5e05ffed83366990f
tree21abdec010ba63601c3a63a4e6c6a85c64084ff3
parent29edabcc443580e596e7345079b2ce7e13448332
[LoopUnroll] Use IRBuilder to create branch instructions.

Use IRBuilder::Create(Cond)?Br instead of constructing instructions
manually with BranchInst::Create(). It's consistent with other
uses of IRBuilder in this pass, and has an additional important
benefit:

Using IRBuilder will ensure that new branch instruction will get
the same debug location as original terminator instruction it will
eventually replace.

For now I'm not adding a testcase, as currently original terminator
instruction also lack debug location due to missing debug location
propagation in BasicBlock::splitBasicBlock. That is, the testcase
will accompany the fix for the latter I'm going to mail soon.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@239550 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Transforms/Utils/LoopUnrollRuntime.cpp