[clang] [CIR] Drop the stale callconv opt-out from two CIR tests (PR #225180)

Adam Smith via cfe-commits cfe-commits at lists.llvm.org
Mon Sep 21 12:59:35 PDT 2026


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

`bitfields.cpp` was waiting on padded, packed and over-aligned record shapes.  `uncopyable-args.cpp` was waiting on parameters of an empty or tag class.  Both files now compile and check clean with the pass running, so the `-fno-clangir-call-conv-lowering` opt-out and its TODO header are removed and the tests exercise the pass as written.  Neither file changes a CHECK directive.

Assisted-by: Cursor / claude-opus-5


>From 66bc926424a9dc79890cfec145b1adf12daf741e Mon Sep 17 00:00:00 2001
From: Adam Smith <adams at nvidia.com>
Date: Mon, 21 Sep 2026 12:53:45 -0700
Subject: [PATCH] [CIR] Drop the stale callconv opt-out from two CIR tests

`bitfields.cpp` was waiting on padded, packed and over-aligned record
shapes.  `uncopyable-args.cpp` was waiting on parameters of an empty or
tag class.  Both files now compile and check clean with the pass
running, so the `-fno-clangir-call-conv-lowering` opt-out and its TODO
header are removed and the tests exercise the pass as written.  Neither
file changes a CHECK directive.

Assisted-by: Cursor / claude-opus-5
---
 clang/test/CIR/CodeGen/bitfields.cpp          | 6 ++----
 clang/test/CIR/CodeGenCXX/uncopyable-args.cpp | 6 ++----
 2 files changed, 4 insertions(+), 8 deletions(-)

diff --git a/clang/test/CIR/CodeGen/bitfields.cpp b/clang/test/CIR/CodeGen/bitfields.cpp
index 94f1f25262b9ed..8bbc5aa5b8effb 100644
--- a/clang/test/CIR/CodeGen/bitfields.cpp
+++ b/clang/test/CIR/CodeGen/bitfields.cpp
@@ -1,8 +1,6 @@
-// TODO(cir): drop -fno-clangir-call-conv-lowering once CallConvLowering
-// supports padded, packed, and over-aligned record shapes.
-// 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
-// RUN: %clang_cc1 -std=c++17 -triple x86_64-unknown-linux-gnu -fclangir -fno-clangir-call-conv-lowering -emit-llvm %s -o %t-cir.ll
+// RUN: %clang_cc1 -std=c++17 -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++17 -triple x86_64-unknown-linux-gnu -emit-llvm %s -o %t.ll
 // RUN: FileCheck --input-file=%t.ll %s --check-prefix=OGCG
diff --git a/clang/test/CIR/CodeGenCXX/uncopyable-args.cpp b/clang/test/CIR/CodeGenCXX/uncopyable-args.cpp
index 7aa17c17d17eba..7a8835ee4af5c0 100644
--- a/clang/test/CIR/CodeGenCXX/uncopyable-args.cpp
+++ b/clang/test/CIR/CodeGenCXX/uncopyable-args.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++11 -triple x86_64-unknown-unknown -fclangir -fno-clangir-call-conv-lowering -emit-cir %s -o %t.cir
+// RUN: %clang_cc1 -std=c++11 -triple x86_64-unknown-unknown -fclangir -emit-cir %s -o %t.cir
 // RUN: FileCheck --check-prefix=CIR --input-file=%t.cir %s
-// RUN: %clang_cc1 -std=c++11 -triple x86_64-unknown-unknown -fclangir -fno-clangir-call-conv-lowering -emit-llvm %s -o %t-cir.ll
+// RUN: %clang_cc1 -std=c++11 -triple x86_64-unknown-unknown -fclangir -emit-llvm %s -o %t-cir.ll
 // RUN: FileCheck --check-prefix=LLVM --input-file=%t-cir.ll %s
 // RUN: %clang_cc1 -std=c++11 -triple x86_64-unknown-unknown -emit-llvm %s -o %t.ll
 // RUN: FileCheck --check-prefix=OGCG --input-file=%t.ll %s



More information about the cfe-commits mailing list