From 01dd6df5f363a9c3bfedc9d9ac52923daa55426d Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Fri, 19 May 2006 21:34:04 +0000 Subject: [PATCH] CSRet allows varargs llvm-svn: 28409 --- llvm/lib/Target/X86/X86ISelLowering.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/llvm/lib/Target/X86/X86ISelLowering.cpp b/llvm/lib/Target/X86/X86ISelLowering.cpp index 849b8d5eae9f..78600804f688 100644 --- a/llvm/lib/Target/X86/X86ISelLowering.cpp +++ b/llvm/lib/Target/X86/X86ISelLowering.cpp @@ -380,8 +380,9 @@ X86TargetLowering::LowerCallTo(SDOperand Chain, const Type *RetTy, bool isTailCall, SDOperand Callee, ArgListTy &Args, SelectionDAG &DAG) { - assert((!isVarArg || CallingConv == CallingConv::C) && - "Only C takes varargs!"); + assert((!isVarArg || CallingConv == CallingConv::C || + CallingConv == CallingConv::CSRet) && + "Only CCC/CSRet takes varargs!"); // If the callee is a GlobalAddress node (quite common, every direct call is) // turn it into a TargetGlobalAddress node so that legalize doesn't hack it.