[clang] [llvm] [IR] Make dead_on_return attribute optionally sized (PR #171712)

Aiden Grossman via cfe-commits cfe-commits at lists.llvm.org
Sat Jan 10 23:16:25 PST 2026


================
@@ -60,6 +60,40 @@ enum class AllocFnKind : uint64_t {
   LLVM_MARK_AS_BITMASK_ENUM(/* LargestValue = */ Aligned)
 };
 
+class DeadOnReturnInfo {
+public:
+  DeadOnReturnInfo() : DeadBytes(std::nullopt) {}
+  DeadOnReturnInfo(uint64_t DeadOnReturnBytes) : DeadBytes(DeadOnReturnBytes) {}
+
+  uint64_t getNumberOfDeadBytes() {
+    assert(DeadBytes.has_value() &&
+           "This attribute does not specify a byte count. Did you forget to "
+           "check if the attribute covers all reachable memory?");
----------------
boomanaiden154 wrote:

Any reason to prefer the brevity? I think the longer message covering the likely error here would make development slightly easier.

https://github.com/llvm/llvm-project/pull/171712


More information about the cfe-commits mailing list