[PATCH] D136320: [Assignment Tracking Analysis][1/*] Add analysis pass core

Orlando Cazalet-Hyams via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Dec 1 07:13:14 PST 2022


Orlando updated this revision to Diff 479276.
Orlando added a comment.

In improving test coverage in D136335 <https://reviews.llvm.org/D136335> I discovered a bug: the fragments that untagged stores affect were not added to the OverlapMap` (map of fragment to fragments that are contained within). This meant that fragments were not always correctly clobbered upon visiting an untagged store. I've fixed this by adding yet more analysis setup code to `buildOverlapMapAndRecordDeclares`. This function now also interprets untagged stores to add the fragments to the `OverlapMap` and populates `UntaggedStoreVars`, caching the assignment info (offset, size, base alloca, variable fragment) for lookup during the analysis.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D136320/new/

https://reviews.llvm.org/D136320

Files:
  llvm/include/llvm/CodeGen/AssignmentTrackingAnalysis.h
  llvm/include/llvm/InitializePasses.h
  llvm/lib/CodeGen/AssignmentTrackingAnalysis.cpp
  llvm/lib/CodeGen/CMakeLists.txt
  llvm/lib/CodeGen/CodeGen.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D136320.479276.patch
Type: text/x-patch
Size: 78269 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20221201/a61f53d1/attachment.bin>


More information about the llvm-commits mailing list