[PATCH] D109170: [Attributor][WIP] Look through allocated heap memory

Johannes Doerfert via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Sep 2 09:55:50 PDT 2021


jdoerfert created this revision.
Herald added subscribers: ormris, okura, kuter, uenoku, bollu, hiraditya.
Herald added a reviewer: uenoku.
Herald added a reviewer: homerdin.
jdoerfert requested review of this revision.
Herald added a reviewer: sstefan1.
Herald added a reviewer: baziotis.
Herald added a project: LLVM.

AAPointerInfo, and thereby other places, can look already through
internal global and stack memory. This patch enables them to look
through heap memory returned by functions with a `noalias` return.

In the future we can look through `noalias` arguments as well but that
will require AAIsDead to learn that such memory can be inspected by the
caller later on. We also need teach AAPointerInfo about dominance to
actually deal with memory that might not be `null` or `undef`
initialized. D106397 <https://reviews.llvm.org/D106397> is a first step in that direction already.

NOTE: Tests are missing!


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D109170

Files:
  llvm/include/llvm/Transforms/IPO/Attributor.h
  llvm/lib/Transforms/IPO/Attributor.cpp
  llvm/lib/Transforms/IPO/AttributorAttributes.cpp
  llvm/test/Transforms/Attributor/heap_to_stack_gpu.ll
  llvm/test/Transforms/Attributor/memory_locations.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D109170.370311.patch
Type: text/x-patch
Size: 9758 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210902/e5c837ea/attachment.bin>


More information about the llvm-commits mailing list