[clang] [CIR] Upstream cir.call with scalar arguments (PR #136810)
Henrich Lauko via cfe-commits
cfe-commits at lists.llvm.org
Thu Apr 24 06:54:48 PDT 2025
================
@@ -21,9 +21,24 @@ let cppNamespace = "::cir" in {
// The CIRCallOpInterface must be used instead of CallOpInterface when looking
// at arguments and other bits of CallOp. This creates a level of abstraction
// that's useful for handling indirect calls and other details.
- def CIRCallOpInterface : OpInterface<"CIRCallOpInterface", []> {
+ def CIRCallOpInterface : OpInterface<"CIRCallOpInterface", [CallOpInterface]> {
// Currently we don't have any methods defined in CIRCallOpInterface. We'll
// add more methods as the upstreaming proceeds.
+ let methods = [
+ InterfaceMethod<"", "mlir::Operation::operand_iterator",
+ "arg_operand_begin", (ins)>,
+ InterfaceMethod<"", "mlir::Operation::operand_iterator",
+ "arg_operand_end", (ins)>,
----------------
xlauko wrote:
@bcardosolopes any reason why this is part of interface and not just normal method on ops as is in `func::CallOp`?
Interface methods and methods in generally should not use snake_case, but camelCase.
Though it is unfortunately named using a snake_case in other mlir dialects.
https://github.com/llvm/llvm-project/pull/136810
More information about the cfe-commits
mailing list