summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/Mips/Mips.h
diff options
context:
space:
mode:
authorAleksandar Beserminji <Aleksandar.Beserminji@mips.com>2018-05-21 10:20:02 +0000
committerAleksandar Beserminji <Aleksandar.Beserminji@mips.com>2018-05-21 10:20:02 +0000
commitde7be5e46f9eb3433fab194897859291e3dbc98f (patch)
tree07ff1d0e3e834115e6eb817f15430b5e21d4e8da /llvm/lib/Target/Mips/Mips.h
parentbecc204633c2f4b67df1a2f8892116777be8c575 (diff)
downloadbcm5719-llvm-de7be5e46f9eb3433fab194897859291e3dbc98f.tar.gz
bcm5719-llvm-de7be5e46f9eb3433fab194897859291e3dbc98f.zip
[mips] Merge MipsLongBranch and MipsHazardSchedule passes
MipsLongBranchPass and MipsHazardSchedule passes are joined to one pass because of mutual conflict. When MipsHazardSchedule inserts 'nop's, it potentially breaks some jumps, so they have to be expanded to long branches. When some branch is expanded to long branch, it potentially creates a hazard situation, which should be fixed by adding nops. New pass is called MipsBranchExpansion, it combines these two passes, and runs them alternately until one of them reports no changes were made. Differential Revision: https://reviews.llvm.org/D46641 llvm-svn: 332834
Diffstat (limited to 'llvm/lib/Target/Mips/Mips.h')
-rw-r--r--llvm/lib/Target/Mips/Mips.h5
1 files changed, 2 insertions, 3 deletions
diff --git a/llvm/lib/Target/Mips/Mips.h b/llvm/lib/Target/Mips/Mips.h
index 641eecef9c4..51d7ed7137d 100644
--- a/llvm/lib/Target/Mips/Mips.h
+++ b/llvm/lib/Target/Mips/Mips.h
@@ -33,8 +33,7 @@ namespace llvm {
FunctionPass *createMipsModuleISelDagPass();
FunctionPass *createMipsOptimizePICCallPass();
FunctionPass *createMipsDelaySlotFillerPass();
- FunctionPass *createMipsHazardSchedule();
- FunctionPass *createMipsLongBranchPass();
+ FunctionPass *createMipsBranchExpansion();
FunctionPass *createMipsConstantIslandPass();
FunctionPass *createMicroMipsSizeReductionPass();
@@ -43,7 +42,7 @@ namespace llvm {
MipsRegisterBankInfo &);
void initializeMipsDelaySlotFillerPass(PassRegistry &);
- void initializeMipsLongBranchPass(PassRegistry &);
+ void initializeMipsBranchExpansionPass(PassRegistry &);
} // end namespace llvm;
#endif
OpenPOWER on IntegriCloud