Adapt the -mfix-loongson2f-btb workaround from as(1) to LLVM/clang. Index: lib/Target/Mips/Mips.h --- lib/Target/Mips/Mips.h.orig +++ lib/Target/Mips/Mips.h @@ -38,6 +38,7 @@ namespace llvm { FunctionPass *createMicroMipsSizeReducePass(); FunctionPass *createMipsExpandPseudoPass(); FunctionPass *createMipsPreLegalizeCombiner(); + FunctionPass *createMipsLoongson2FBTBFix(); InstructionSelector *createMipsInstructionSelector(const MipsTargetMachine &, MipsSubtarget &, @@ -47,6 +48,7 @@ namespace llvm { void initializeMipsBranchExpansionPass(PassRegistry &); void initializeMicroMipsSizeReducePass(PassRegistry &); void initializeMipsPreLegalizerCombinerPass(PassRegistry&); + void initializeMipsLoongson2FBTBFixPass(PassRegistry &); } // end namespace llvm; #endif