[PATCH] D145259: [ASAN] Initial support memory checks on scalable vector typed allocas

Philip Reames via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Mar 3 11:07:56 PST 2023


reames created this revision.
reames added reviewers: jrtc27, kito-cheng, abrachet, craig.topper.
Herald added subscribers: Enna1, bollu, hiraditya, mcrosier.
Herald added a project: All.
reames requested review of this revision.
Herald added a subscriber: alextsao1999.
Herald added a project: LLVM.

This patch adjusts the memory instrumentation to account for scalable vector types in allocas.  Note that we don't allow scalable vector globals, so we don't need to update that codepath.

A couple points.

First, this simply disables the optimization for scalable allocas.  We can revisit this in the future, but it requires a bit of plumbing to get scalable object sizes through the visitor to be useful.

Second, I am simply disabling stack poisoning for scalable vector allocas.  This is mostly for staging the change as I can't write a working test for memory instrumentation without doing so.  I don't think it's unreasonable to do on it's own basis as without the bailout, we crash the compiler.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D145259

Files:
  llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
  llvm/test/Instrumentation/AddressSanitizer/vector-load-store.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D145259.502193.patch
Type: text/x-patch
Size: 12356 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20230303/4baf0e1a/attachment.bin>


More information about the llvm-commits mailing list