This is an archive of the discontinued LLVM Phabricator instance.

[Attributor] Collect memory accesses with their respective kind and location
ClosedPublic

Authored by jdoerfert on Jan 27 2020, 9:20 PM.

Details

Summary

In addition to a single bit per memory locations, e.g., globals and
arguments, we now collect more information about the actual accesses,
e.g., what instruction caused it, was it a read/write/read+write, and
what the underlying base pointer was. Follow up patches will make
explicit use of this.

Diff Detail

Event Timeline

jdoerfert created this revision.Jan 27 2020, 9:20 PM
Herald added a project: Restricted Project. · View Herald TranscriptJan 27 2020, 9:20 PM

Unit tests: unknown.

clang-tidy: fail. clang-tidy found 1 errors and 2 warnings. 0 of them are added as review comments below (why?).

clang-format: pass.

Build artifacts: diff.json, clang-tidy.txt, clang-format.patch, CMakeCache.txt, console-log.txt

Pre-merge checks is in beta. Report issue. Please join beta or enable it for your project.

jdoerfert updated this revision to Diff 243439.Feb 9 2020, 1:00 AM

more tests

jdoerfert updated this revision to Diff 243440.Feb 9 2020, 1:17 AM

Small fix

uenoku accepted this revision.Feb 14 2020, 6:27 PM

LGTM

llvm/lib/Transforms/IPO/Attributor.cpp
6222

Please insert null check for AI.I

This revision is now accepted and ready to land.Feb 14 2020, 6:27 PM
This revision was automatically updated to reflect the committed changes.