aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
diff options
context:
space:
mode:
authorAlex Bradbury <asb@lowrisc.org>2018-01-10 21:05:07 +0000
committerAlex Bradbury <asb@lowrisc.org>2018-01-10 21:05:07 +0000
commit315cd3ace4e7c93e41525a7c4a81b6b07a193bb8 (patch)
treed00ca136f2886a267422377622f210f621362ef3 /llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
parent725ad0eee052b1de23296dadc1eabfe6741c4742 (diff)
downloadllvm-315cd3ace4e7c93e41525a7c4a81b6b07a193bb8.zip
llvm-315cd3ace4e7c93e41525a7c4a81b6b07a193bb8.tar.gz
llvm-315cd3ace4e7c93e41525a7c4a81b6b07a193bb8.tar.bz2
[RISCV] Implement support for the BranchRelaxation pass
Branch relaxation is needed to support branch displacements that overflow the instruction's immediate field. Differential Revision: https://reviews.llvm.org/D40830 llvm-svn: 322224
Diffstat (limited to 'llvm/lib/Target/RISCV/RISCVTargetMachine.cpp')
-rw-r--r--llvm/lib/Target/RISCV/RISCVTargetMachine.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/llvm/lib/Target/RISCV/RISCVTargetMachine.cpp b/llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
index e12168b..e75fb3b 100644
--- a/llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
+++ b/llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
@@ -75,6 +75,7 @@ public:
}
bool addInstSelector() override;
+ void addPreEmitPass() override;
};
}
@@ -87,3 +88,5 @@ bool RISCVPassConfig::addInstSelector() {
return false;
}
+
+void RISCVPassConfig::addPreEmitPass() { addPass(&BranchRelaxationPassID); }