summaryrefslogtreecommitdiff
path: root/lib/CodeGen/BranchFolding.h
diff options
context:
space:
mode:
authorBob Wilson <bob.wilson@apple.com>2009-11-26 00:32:21 +0000
committerBob Wilson <bob.wilson@apple.com>2009-11-26 00:32:21 +0000
commit15acadde5f87703da5f36721a19c09a7e3f97f53 (patch)
tree379bad402a664a687cd94163cc84caa3f2438f41 /lib/CodeGen/BranchFolding.h
parent36ccdd49f50535b74ce4d54561e426907629270a (diff)
downloadllvm-15acadde5f87703da5f36721a19c09a7e3f97f53.tar.gz
llvm-15acadde5f87703da5f36721a19c09a7e3f97f53.tar.bz2
llvm-15acadde5f87703da5f36721a19c09a7e3f97f53.tar.xz
Split tail duplication into a separate pass. This is needed to avoid
running tail duplication when doing branch folding for if-conversion, and we also want to be able to run tail duplication earlier to fix some reg alloc problems. Move the CanFallThrough function from BranchFolding to MachineBasicBlock so that it can be shared by TailDuplication. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89904 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/BranchFolding.h')
-rw-r--r--lib/CodeGen/BranchFolding.h8
1 files changed, 0 insertions, 8 deletions
diff --git a/lib/CodeGen/BranchFolding.h b/lib/CodeGen/BranchFolding.h
index 4920755c22..b087395640 100644
--- a/lib/CodeGen/BranchFolding.h
+++ b/lib/CodeGen/BranchFolding.h
@@ -105,18 +105,10 @@ namespace llvm {
unsigned CreateCommonTailOnlyBlock(MachineBasicBlock *&PredBB,
unsigned maxCommonTailLength);
- bool TailDuplicateBlocks(MachineFunction &MF);
- bool TailDuplicate(MachineBasicBlock *TailBB, MachineFunction &MF);
-
bool OptimizeBranches(MachineFunction &MF);
bool OptimizeBlock(MachineBasicBlock *MBB);
void RemoveDeadBlock(MachineBasicBlock *MBB);
bool OptimizeImpDefsBlock(MachineBasicBlock *MBB);
-
- bool CanFallThrough(MachineBasicBlock *CurBB);
- bool CanFallThrough(MachineBasicBlock *CurBB, bool BranchUnAnalyzable,
- MachineBasicBlock *TBB, MachineBasicBlock *FBB,
- const SmallVectorImpl<MachineOperand> &Cond);
};
}