[PATCH] D127905: [MTE] [HWASan] Support diamond lifetimes.

Florian Mayer via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Jun 15 15:37:15 PDT 2022


fmayer created this revision.
Herald added a subscriber: hiraditya.
Herald added a project: All.
fmayer updated this revision to Diff 437363.
fmayer added a comment.
fmayer updated this revision to Diff 437371.
fmayer published this revision for review.
fmayer added a reviewer: eugenis.
Herald added a project: LLVM.
Herald added a subscriber: llvm-commits.

style


fmayer added a comment.

format


We were overly conservative and required a ret statement to be dominated
completely be a single lifetime.end marker. This is quite restrictive
and leads to two problems:

- limits coverage of use-after-scope, as we degenerate to use-after-return;
- increases stack usage in programs, as we have to remove all lifetime markers if we degenerate to use-after-return, which prevents reuse of stack slots by the stack coloring algorithm.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D127905

Files:
  llvm/lib/Transforms/Utils/MemoryTaggingSupport.cpp
  llvm/test/CodeGen/AArch64/stack-tagging-split-lifetime.ll
  llvm/test/Instrumentation/HWAddressSanitizer/use-after-scope.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D127905.437371.patch
Type: text/x-patch
Size: 24868 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20220615/ed1c087d/attachment.bin>


More information about the llvm-commits mailing list