openbsd-ports/devel/llvm/patches/patch-lib_Target_Mips_MipsTargetMachine_cpp
2022-03-10 00:04:05 +00:00

25 lines
729 B
Plaintext

Adapt the -mfix-loongson2f-btb workaround from as(1) to LLVM/clang.
Index: lib/Target/Mips/MipsTargetMachine.cpp
--- lib/Target/Mips/MipsTargetMachine.cpp.orig
+++ lib/Target/Mips/MipsTargetMachine.cpp
@@ -45,6 +45,8 @@ using namespace llvm;
#define DEBUG_TYPE "mips"
+extern cl::opt<bool> FixLoongson2FBTB;
+
extern "C" LLVM_EXTERNAL_VISIBILITY void LLVMInitializeMipsTarget() {
// Register the target.
RegisterTargetMachine<MipsebTargetMachine> X(getTheMipsTarget());
@@ -268,6 +270,9 @@ bool MipsPassConfig::addInstSelector() {
void MipsPassConfig::addPreRegAlloc() {
addPass(createMipsOptimizePICCallPass());
+
+ if (FixLoongson2FBTB)
+ addPass(createMipsLoongson2FBTBFix());
}
TargetTransformInfo