[clang] [CIR] cir.call with scalar return type (PR #135552)

Bruno Cardoso Lopes via cfe-commits cfe-commits at lists.llvm.org
Mon Apr 14 11:13:03 PDT 2025


================
@@ -29,13 +32,29 @@ CIRGenCallee CIRGenCallee::prepareConcreteCallee(CIRGenFunction &cgf) const {
   return *this;
 }
 
-static const CIRGenFunctionInfo &arrangeFreeFunctionLikeCall(CIRGenTypes &cgt) {
+static const CIRGenFunctionInfo &
+arrangeFreeFunctionLikeCall(CIRGenTypes &cgt, CIRGenModule &cgm,
+                            const FunctionType *fnType) {
+  if (const auto *proto = dyn_cast<FunctionProtoType>(fnType)) {
+    if (proto->isVariadic())
+      cgm.errorNYI("call to variadic function");
+    if (proto->hasExtParameterInfos())
+      cgm.errorNYI("call to functions with extra parameter info");
+  } else if (isa<FunctionNoProtoType>(fnType)) {
----------------
bcardosolopes wrote:

Can you please take the extra steps and add the call for a skeleton of `CGM.getTargetCodeGenInfo().isNoProtoCallVariadic(args, ...`?

https://github.com/llvm/llvm-project/pull/135552


More information about the cfe-commits mailing list