[Mlir-commits] [clang] [mlir] [CIR] Implement 'noreturn' attribute for functions/calls. (PR #177978)
Erich Keane
llvmlistbot at llvm.org
Tue Jan 27 11:00:33 PST 2026
================
@@ -2036,6 +2041,7 @@ void CIRToLLVMFuncOpLowering::lowerFuncAttributes(
attr.getName() == func.getDsoLocalAttrName() ||
attr.getName() == func.getInlineKindAttrName() ||
attr.getName() == func.getSideEffectAttrName() ||
+ attr.getName() == CIRDialect::getNoReturnAttrName() ||
----------------
erichkeane wrote:
Hmm.... I agree this is a little awkward in a few ways unfortunately. IMO, LLVM-IR seems to be leaning towards most attributes being added/encoded, at least as much as is in LLVM as these 'builtin' attributes. So I think their balance for that makes sense.
As far as here, `noreturn` is a bit on the border. It is one that I don't expect to emit very often/regularly, and I would like us to find a pretty reasonable balance there at one point. IF we find ourselves looking noreturn up a lot, I'd be completely in agreement/favor of 'promoting' it though.
I think the extra-attrs is a bit of a waste when that functionality is already sorta built in to MLIR, as it is here.
https://github.com/llvm/llvm-project/pull/177978
More information about the Mlir-commits
mailing list