[clang] [CIR] Lower calls to trivial copy constructor to cir::CopyOp (PR #168281)

Andy Kaylor via cfe-commits cfe-commits at lists.llvm.org
Mon Nov 24 10:10:50 PST 2025


================
@@ -3,8 +3,9 @@
 
 struct Flub {
   int a = 123;
-  // CIR: @_ZN4FlubC1ERKS_(%arg0: !cir.ptr<!rec_Flub> loc({{.*}}), %arg1: !cir.ptr<!rec_Flub> loc({{.*}})) special_member<#cir.cxx_ctor<!rec_Flub, copy, trivial true>>
-  // CIR: @_ZN4FlubC2EOS_(%arg0: !cir.ptr<!rec_Flub> loc({{.*}}), %arg1: !cir.ptr<!rec_Flub> loc({{.*}})) special_member<#cir.cxx_ctor<!rec_Flub, move, trivial true>
+  // COM: Trivial copy constructors/assignments are replaced with cir.copy
----------------
andykaylor wrote:

```suggestion
  // Trivial copy constructors/assignments are replaced with cir.copy
```
The `COM:` prefix makes this look like a check.

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


More information about the cfe-commits mailing list