https://github.com/adams381 created 
https://github.com/llvm/llvm-project/pull/218275

Following #216396, seven more tests carried `-fno-clangir-call-conv-lowering` 
with a TODO waiting on parameters of an empty or tag class.  
`coro-exceptions.cpp` also named a bare-variadic declaration with no named 
parameter.  #214742 lowers all seven now, so the opt-out and its TODO go and 
the tests exercise the pass.

No CHECK line moves, so the IR these tests already pinned is what the pass 
produces.


>From 207308ba3f1577b3a976a24a4aa9cdddfcc09fa9 Mon Sep 17 00:00:00 2001
From: Adam Smith <[email protected]>
Date: Sun, 23 Aug 2026 11:52:35 -0700
Subject: [PATCH] [CIR] Drop the callconv opt-out from seven more CIR tests

Following #216396, seven more tests carried `-fno-clangir-call-conv-lowering`
with a TODO waiting on parameters of an empty or tag class.
`coro-exceptions.cpp` also named a bare-variadic declaration with no named
parameter.  #214742 lowers all seven now, so the opt-out and its TODO go and
the tests exercise the pass.

No CHECK line moves, so the IR these tests already pinned is what the pass
produces.

Assisted-by: Cursor / claude-opus-5
---
 clang/test/CIR/CodeGen/cxx23-explicit-object-member.cpp | 6 ++----
 clang/test/CIR/CodeGen/cxx2b-static-call-operator.cpp   | 6 ++----
 clang/test/CIR/CodeGen/forrange.cpp                     | 4 +---
 clang/test/CIR/CodeGen/mem-expr-fn.cpp                  | 6 ++----
 clang/test/CIR/CodeGen/non-odr-use-const-bool.cpp       | 6 ++----
 clang/test/CIR/CodeGenCoroutines/coro-exceptions.cpp    | 5 +----
 clang/test/CIR/CodeGenOpenACC/routine-bind.cpp          | 4 +---
 7 files changed, 11 insertions(+), 26 deletions(-)

diff --git a/clang/test/CIR/CodeGen/cxx23-explicit-object-member.cpp 
b/clang/test/CIR/CodeGen/cxx23-explicit-object-member.cpp
index a62337d857b7b..fd07b9729f31f 100644
--- a/clang/test/CIR/CodeGen/cxx23-explicit-object-member.cpp
+++ b/clang/test/CIR/CodeGen/cxx23-explicit-object-member.cpp
@@ -1,8 +1,6 @@
-// TODO(cir): drop -fno-clangir-call-conv-lowering once CallConvLowering
-// supports parameters of an empty or tag class.
-// RUN: %clang_cc1 -std=c++23 -triple x86_64-unknown-linux-gnu -fclangir 
-fno-clangir-call-conv-lowering -emit-cir %s -o %t.cir
+// RUN: %clang_cc1 -std=c++23 -triple x86_64-unknown-linux-gnu -fclangir 
-emit-cir %s -o %t.cir
 // RUN: FileCheck --input-file=%t.cir %s --check-prefix=CIR
-// RUN: %clang_cc1 -std=c++23 -triple x86_64-unknown-linux-gnu -fclangir 
-fno-clangir-call-conv-lowering -emit-llvm %s -o %t-cir.ll
+// RUN: %clang_cc1 -std=c++23 -triple x86_64-unknown-linux-gnu -fclangir 
-emit-llvm %s -o %t-cir.ll
 // RUN: FileCheck --input-file=%t-cir.ll %s --check-prefix=LLVM
 // RUN: %clang_cc1 -std=c++23 -triple x86_64-unknown-linux-gnu -emit-llvm %s 
-o %t.ll
 // RUN: FileCheck --input-file=%t.ll %s --check-prefix=LLVM
diff --git a/clang/test/CIR/CodeGen/cxx2b-static-call-operator.cpp 
b/clang/test/CIR/CodeGen/cxx2b-static-call-operator.cpp
index 9732ca1510c5d..61d404646f85f 100644
--- a/clang/test/CIR/CodeGen/cxx2b-static-call-operator.cpp
+++ b/clang/test/CIR/CodeGen/cxx2b-static-call-operator.cpp
@@ -1,8 +1,6 @@
-// TODO(cir): drop -fno-clangir-call-conv-lowering once CallConvLowering
-// supports parameters of an empty or tag class.
-// RUN: %clang_cc1 -std=c++23 -triple x86_64-unknown-linux-gnu -fclangir 
-fno-clangir-call-conv-lowering -emit-cir %s -o %t.cir
+// RUN: %clang_cc1 -std=c++23 -triple x86_64-unknown-linux-gnu -fclangir 
-emit-cir %s -o %t.cir
 // RUN: FileCheck --input-file=%t.cir %s --check-prefix=CIR
-// RUN: %clang_cc1 -std=c++23 -triple x86_64-unknown-linux-gnu -fclangir 
-fno-clangir-call-conv-lowering -emit-llvm %s -o %t-cir.ll
+// RUN: %clang_cc1 -std=c++23 -triple x86_64-unknown-linux-gnu -fclangir 
-emit-llvm %s -o %t-cir.ll
 // RUN: FileCheck --input-file=%t-cir.ll %s --check-prefix=LLVM
 // RUN: %clang_cc1 -std=c++23 -triple x86_64-unknown-linux-gnu -emit-llvm %s 
-o %t.ll
 // RUN: FileCheck --input-file=%t.ll %s --check-prefix=LLVM
diff --git a/clang/test/CIR/CodeGen/forrange.cpp 
b/clang/test/CIR/CodeGen/forrange.cpp
index c0fa3490b3ae8..ecd8ef70dec5a 100644
--- a/clang/test/CIR/CodeGen/forrange.cpp
+++ b/clang/test/CIR/CodeGen/forrange.cpp
@@ -1,6 +1,4 @@
-// TODO(cir): drop -fno-clangir-call-conv-lowering once CallConvLowering
-// supports parameters of an empty or tag class.
-// RUN: %clang_cc1 -std=c++17 -triple x86_64-unknown-linux-gnu -fclangir 
-fno-clangir-call-conv-lowering -emit-cir %s -o %t.cir
+// RUN: %clang_cc1 -std=c++17 -triple x86_64-unknown-linux-gnu -fclangir 
-emit-cir %s -o %t.cir
 // RUN: FileCheck --input-file=%t.cir %s --check-prefix=CIR
 
 struct Element {};
diff --git a/clang/test/CIR/CodeGen/mem-expr-fn.cpp 
b/clang/test/CIR/CodeGen/mem-expr-fn.cpp
index a2461e4e1bd72..00a33383f60d6 100644
--- a/clang/test/CIR/CodeGen/mem-expr-fn.cpp
+++ b/clang/test/CIR/CodeGen/mem-expr-fn.cpp
@@ -1,8 +1,6 @@
-// TODO(cir): drop -fno-clangir-call-conv-lowering once CallConvLowering
-// supports parameters of an empty or tag class.
-// RUN: %clang_cc1 -triple x86_64-unknown-linux-gnu -Wno-unused-value 
-fclangir -fno-clangir-call-conv-lowering -emit-cir %s -o %t.cir
+// RUN: %clang_cc1 -triple x86_64-unknown-linux-gnu -Wno-unused-value 
-fclangir -emit-cir %s -o %t.cir
 // RUN: FileCheck --input-file=%t.cir %s -check-prefix=CIR
-// RUN: %clang_cc1 -triple x86_64-unknown-linux-gnu -Wno-unused-value 
-fclangir -fno-clangir-call-conv-lowering -emit-llvm %s -o %t-cir.ll
+// RUN: %clang_cc1 -triple x86_64-unknown-linux-gnu -Wno-unused-value 
-fclangir -emit-llvm %s -o %t-cir.ll
 // RUN: FileCheck --input-file=%t-cir.ll %s -check-prefix=LLVM
 // RUN: %clang_cc1 -triple x86_64-unknown-linux-gnu -Wno-unused-value 
-emit-llvm %s -o %t.ll
 // RUN: FileCheck --input-file=%t.ll %s -check-prefix=LLVM
diff --git a/clang/test/CIR/CodeGen/non-odr-use-const-bool.cpp 
b/clang/test/CIR/CodeGen/non-odr-use-const-bool.cpp
index dfce6b85937b8..34ba4162205c5 100644
--- a/clang/test/CIR/CodeGen/non-odr-use-const-bool.cpp
+++ b/clang/test/CIR/CodeGen/non-odr-use-const-bool.cpp
@@ -1,8 +1,6 @@
-// TODO(cir): drop -fno-clangir-call-conv-lowering once CallConvLowering
-// supports parameters of an empty or tag class.
-// RUN: %clang_cc1 -triple x86_64-unknown-linux-gnu -fclangir 
-fno-clangir-call-conv-lowering -emit-cir %s -o %t.cir
+// RUN: %clang_cc1 -triple x86_64-unknown-linux-gnu -fclangir -emit-cir %s -o 
%t.cir
 // RUN: FileCheck --check-prefix=CIR --input-file=%t.cir %s
-// RUN: %clang_cc1 -triple x86_64-unknown-linux-gnu -fclangir 
-fno-clangir-call-conv-lowering -emit-llvm %s -o %t-cir.ll
+// RUN: %clang_cc1 -triple x86_64-unknown-linux-gnu -fclangir -emit-llvm %s -o 
%t-cir.ll
 // RUN: FileCheck --check-prefix=LLVM --input-file=%t-cir.ll %s
 // RUN: %clang_cc1 -triple x86_64-unknown-linux-gnu -emit-llvm %s -o %t.ll
 // RUN: FileCheck --check-prefix=OGCG --input-file=%t.ll %s
diff --git a/clang/test/CIR/CodeGenCoroutines/coro-exceptions.cpp 
b/clang/test/CIR/CodeGenCoroutines/coro-exceptions.cpp
index 3887a0b10783f..5edae916f8f9f 100644
--- a/clang/test/CIR/CodeGenCoroutines/coro-exceptions.cpp
+++ b/clang/test/CIR/CodeGenCoroutines/coro-exceptions.cpp
@@ -1,7 +1,4 @@
-// TODO(cir): drop -fno-clangir-call-conv-lowering once CallConvLowering
-// supports parameters of an empty or tag class and a bare-variadic
-// declaration with no named parameter.
-// RUN: %clang_cc1 -std=c++20 -triple x86_64-unknown-linux-gnu 
-fcxx-exceptions -fexceptions -fclangir -fno-clangir-call-conv-lowering 
-emit-cir %s -o %t.cir
+// RUN: %clang_cc1 -std=c++20 -triple x86_64-unknown-linux-gnu 
-fcxx-exceptions -fexceptions -fclangir -emit-cir %s -o %t.cir
 // RUN: FileCheck --input-file=%t.cir %s -check-prefix=CIR
 
 // FIXME: we currently don't have flatten-cfg for coroutines or lower to 
LLVM-IR
diff --git a/clang/test/CIR/CodeGenOpenACC/routine-bind.cpp 
b/clang/test/CIR/CodeGenOpenACC/routine-bind.cpp
index 6a2f1f3eec0aa..f91f5f5eefa7f 100644
--- a/clang/test/CIR/CodeGenOpenACC/routine-bind.cpp
+++ b/clang/test/CIR/CodeGenOpenACC/routine-bind.cpp
@@ -1,6 +1,4 @@
-// TODO(cir): drop -fno-clangir-call-conv-lowering once CallConvLowering
-// supports parameters of an empty or tag class.
-// RUN: %clang_cc1 -fopenacc -Wno-openacc-self-if-potential-conflict -emit-cir 
-fclangir -fno-clangir-call-conv-lowering %s -o - | FileCheck %s
+// RUN: %clang_cc1 -fopenacc -Wno-openacc-self-if-potential-conflict -emit-cir 
-fclangir %s -o - | FileCheck %s
 // FIXME: We should run this against Windows mangling as well at one point.
 
 #pragma acc routine seq bind("BIND1")

_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to