From 7887e3a39844ddfdf8e55dab6ed207ea3fbcb9fa Mon Sep 17 00:00:00 2001 From: Erich Keane Date: Fri, 6 Feb 2026 08:33:40 -0800 Subject: [PATCH] [NFC] Change the FuncOp 'UnitAttr's to not be an 'optional'. (#180209) It appears that these all became `Optional` thanks to a series of copy/paste errors going back years. CallOp doesn't have this 'feature', and a "UnitAttr' should be enough as it is effectively already a true/false value as it is. So this patch removes the optional here to simplify the implementation, and changes no tests, as the interface is identical anyway. --- mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td | 34 ++++++--------------- 1 file changed, 10 insertions(+), 24 deletions(-) diff --git a/mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td b/mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td index 0cdad9ab6045..47233d426d69 100644 --- a/mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td +++ b/mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td @@ -1963,7 +1963,7 @@ def LLVM_LLVMFuncOp : LLVM_Op<"func", [ UnitAttr:$dso_local, DefaultValuedAttr:$CConv, OptionalAttr:$comdat, - OptionalAttr:$convergent, + UnitAttr:$convergent, OptionalAttr:$personality, OptionalAttr:$garbageCollector, OptionalAttr:$passthrough, @@ -1972,15 +1972,10 @@ def LLVM_LLVMFuncOp : LLVM_Op<"func", [ OptionalAttr:$function_entry_count, OptionalAttr:$memory_effects, DefaultValuedAttr:$visibility_, - OptionalAttr:$arm_streaming, - OptionalAttr:$arm_locally_streaming, - OptionalAttr:$arm_streaming_compatible, - OptionalAttr:$arm_new_za, - OptionalAttr:$arm_in_za, - OptionalAttr:$arm_out_za, - OptionalAttr:$arm_inout_za, - OptionalAttr:$arm_preserves_za, - OptionalAttr:$section, + UnitAttr:$arm_streaming, UnitAttr:$arm_locally_streaming, + UnitAttr:$arm_streaming_compatible, UnitAttr:$arm_new_za, + UnitAttr:$arm_in_za, UnitAttr:$arm_out_za, UnitAttr:$arm_inout_za, + UnitAttr:$arm_preserves_za, OptionalAttr:$section, OptionalAttr:$unnamed_addr, OptionalAttr:$alignment, OptionalAttr:$vscale_range, @@ -1997,20 +1992,11 @@ def LLVM_LLVMFuncOp : LLVM_Op<"func", [ OptionalAttr:$fp_contract, OptionalAttr:$instrument_function_entry, OptionalAttr:$instrument_function_exit, - OptionalAttr:$no_inline, - OptionalAttr:$always_inline, - OptionalAttr:$inline_hint, - OptionalAttr:$no_unwind, - OptionalAttr:$will_return, - OptionalAttr:$noreturn, - OptionalAttr:$optimize_none, - OptionalAttr:$returns_twice, - OptionalAttr:$hot, - OptionalAttr:$cold, - OptionalAttr:$noduplicate, - OptionalAttr:$no_caller_saved_registers, - OptionalAttr:$nocallback, - OptionalAttr:$modular_format, + UnitAttr:$no_inline, UnitAttr:$always_inline, UnitAttr:$inline_hint, + UnitAttr:$no_unwind, UnitAttr:$will_return, UnitAttr:$noreturn, + UnitAttr:$optimize_none, UnitAttr:$returns_twice, UnitAttr:$hot, + UnitAttr:$cold, UnitAttr:$noduplicate, UnitAttr:$no_caller_saved_registers, + UnitAttr:$nocallback, OptionalAttr:$modular_format, OptionalAttr:$nobuiltins, OptionalAttr:$allocsize, OptionalAttr:$optsize,