Do not do tail-call optimization if target is mips16.
llvm-svn: 167039
diff --git a/llvm/lib/Target/Mips/MipsISelLowering.cpp b/llvm/lib/Target/Mips/MipsISelLowering.cpp
index b485b5e..4479c48 100644
--- a/llvm/lib/Target/Mips/MipsISelLowering.cpp
+++ b/llvm/lib/Target/Mips/MipsISelLowering.cpp
@@ -2665,6 +2665,10 @@
if (!EnableMipsTailCalls)
return false;
+ // No tail call optimization for mips16.
+ if (Subtarget->inMips16Mode())
+ return false;
+
if (MipsCCInfo.hasByValArg() || IsVarArg)
return false;