Matthias Braun
fe82f4a18b
BranchRelaxation: Recompute live-ins when splitting a block
...
Factors out and reuses live-in computation code from BranchFolding.
Differential Revision: https://reviews.llvm.org/D27558
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@290013 91177308-0d34-0410-b5e6-96231b3b80d8
2016-12-16 23:55:37 +00:00
Matt Arsenault
0a892bb4c2
BranchRelaxation: Fix computing indirect branch block size
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@285828 91177308-0d34-0410-b5e6-96231b3b80d8
2016-11-02 16:18:29 +00:00
Matt Arsenault
287bdc4459
BranchRelaxation: Expand unconditional branches first
...
It's likely if a conditional branch needs to be expanded, the following
unconditional branch will also need expansion. By expanding the
unconditional branch first, the conditional branch can be simply
inverted to jump over the inserted indirect branch block. If the
conditional branch is expanded first, it results in an additional
branch.
This avoids test regressions in future commits.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@285722 91177308-0d34-0410-b5e6-96231b3b80d8
2016-11-01 18:34:00 +00:00
Matt Arsenault
14cd5a9fd8
BranchRelaxation: Unique live ins when creating block
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@284018 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-12 15:32:04 +00:00
Matt Arsenault
ecc6c2b633
BranchRelaxation: Support expanding unconditional branches
...
AMDGPU needs to expand unconditional branches in a new
block with an indirect branch.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@283464 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-06 16:20:41 +00:00
Matt Arsenault
38b9b4748d
BranchRelaxation: Account for function alignment
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@283462 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-06 16:00:58 +00:00
Matt Arsenault
c205b62417
Move AArch64BranchRelaxation to generic code
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@283459 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-06 15:38:53 +00:00