adams381 wrote:

Closing this in favor of a series of smaller, focused PRs per @andykaylor's 
review feedback to implement one ArgKind at a time.

The foundation (test target + pass skeleton + Direct / Extend / 
Direct-with-coercion) lands in the parent #192119 split:

- #195725 — `[mlir][ABI]` Test target + classification injection helper.
- #195737 — `[CIR]` `CallConvLowering` pass + Direct/Ignore ABI rewriting.
- #195745 — `[CIR]` Extend (signext/zeroext) handling.
- #195879 — `[CIR]` Direct coerce-in-registers + `cir.reinterpret_cast` op + 
Andy's five inline fixes.

Subsequent PRs cover the ArgKinds this PR introduced, one at a time:

- PR D (upcoming): Indirect return (sret).
- PR E (upcoming): Indirect byval argument.
- PR F (upcoming): Expand / struct flattening.

The C++ unit tests from this PR are ported to `cir-opt`-driven `.cir` tests in 
the corresponding new PRs (audit table in #195737's description).


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

Reply via email to