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
