[llvm-branch-commits] [llvm] [mlir] [mlir][LLVM] add argument and result attributes to llvm.call (PR #123177)
Tobias Gysi via llvm-branch-commits
llvm-branch-commits at lists.llvm.org
Sat Feb 1 11:41:29 PST 2025
================
@@ -265,6 +265,27 @@ convertOperationImpl(Operation &opInst, llvm::IRBuilderBase &builder,
if (callOp.getWillReturnAttr())
call->addFnAttr(llvm::Attribute::WillReturn);
+ if (ArrayAttr argAttrsArray = callOp.getArgAttrsAttr())
+ for (auto [argIdx, argAttrsAttr] : llvm::enumerate(argAttrsArray)) {
+ if (auto argAttrs = llvm::cast<DictionaryAttr>(argAttrsAttr)) {
+ FailureOr<llvm::AttrBuilder> attrBuilder =
+ moduleTranslation.convertParameterAttrs(callOp, argIdx, argAttrs);
+ if (failed(attrBuilder))
+ return failure();
+ call->addParamAttrs(argIdx, *attrBuilder);
+ }
+ }
+
+ ArrayAttr resAttrsArray = callOp.getResAttrsAttr();
+ if (resAttrsArray && resAttrsArray.size() == 1)
+ if (auto resAttrs = llvm::cast<DictionaryAttr>(resAttrsArray[0])) {
----------------
gysit wrote:
```suggestion
if (resAttrsArray && resAttrsArray.size() == 1) {
if (auto resAttrs = llvm::cast<DictionaryAttr>(resAttrsArray[0])) {
```
nit: missing braces
https://github.com/llvm/llvm-project/pull/123177
More information about the llvm-branch-commits
mailing list