Author: hans Date: Thu Jul 30 11:15:22 2015 New Revision: 243647 URL: http://llvm.org/viewvc/llvm-project?rev=243647&view=rev Log: Merging r243485: ------------------------------------------------------------------------ r243485 | vkalintiris | 2015-07-28 14:43:31 -0700 (Tue, 28 Jul 2015) | 12 lines
[mips][FastISel] Fix call lowering by bailing out on "fastcc" calls. Summary: Currently, we support only the MIPS O32 ABI calling convention for call lowering. With this change we avoid using the O32 calling convetion for lowering calls marked as using the fast calling convention. Reviewers: dsanders Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D11515 ------------------------------------------------------------------------ Added: llvm/branches/release_37/test/CodeGen/Mips/Fast-ISel/fastcc-miss.ll - copied unchanged from r243485, llvm/trunk/test/CodeGen/Mips/Fast-ISel/fastcc-miss.ll Modified: llvm/branches/release_37/ (props changed) llvm/branches/release_37/lib/Target/Mips/MipsFastISel.cpp Propchange: llvm/branches/release_37/ ------------------------------------------------------------------------------ --- svn:mergeinfo (original) +++ svn:mergeinfo Thu Jul 30 11:15:22 2015 @@ -1,3 +1,3 @@ /llvm/branches/Apple/Pertwee:110850,110961 /llvm/branches/type-system-rewrite:133420-134817 -/llvm/trunk:155241,242236,242239,242281,242288,242296,242331,242341,242410,242412,242433-242434,242442,242543,242673,242680,242706,242721-242722,242733-242735,242742,242869,242919,242993,243001,243116,243263,243294,243361,243469,243500,243519,243531 +/llvm/trunk:155241,242236,242239,242281,242288,242296,242331,242341,242410,242412,242433-242434,242442,242543,242673,242680,242706,242721-242722,242733-242735,242742,242869,242919,242993,243001,243116,243263,243294,243361,243469,243485,243500,243519,243531 Modified: llvm/branches/release_37/lib/Target/Mips/MipsFastISel.cpp URL: http://llvm.org/viewvc/llvm-project/llvm/branches/release_37/lib/Target/Mips/MipsFastISel.cpp?rev=243647&r1=243646&r2=243647&view=diff ============================================================================== --- llvm/branches/release_37/lib/Target/Mips/MipsFastISel.cpp (original) +++ llvm/branches/release_37/lib/Target/Mips/MipsFastISel.cpp Thu Jul 30 11:15:22 2015 @@ -1245,6 +1245,10 @@ bool MipsFastISel::fastLowerCall(CallLow const Value *Callee = CLI.Callee; MCSymbol *Symbol = CLI.Symbol; + // Do not handle FastCC. + if (CC == CallingConv::Fast) + return false; + // Allow SelectionDAG isel to handle tail calls. if (IsTailCall) return false; @@ -1422,6 +1426,11 @@ bool MipsFastISel::selectRet(const Instr if (Ret->getNumOperands() > 0) { CallingConv::ID CC = F.getCallingConv(); + + // Do not handle FastCC. + if (CC == CallingConv::Fast) + return false; + SmallVector<ISD::OutputArg, 4> Outs; GetReturnInfo(F.getReturnType(), F.getAttributes(), Outs, TLI, DL); _______________________________________________ llvm-branch-commits mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/llvm-branch-commits
