This is an archive of the discontinued LLVM Phabricator instance.

[Transforms] Propagate TBAA info in SROA
ClosedPublic

Authored by kosarev on Dec 24 2017, 3:39 AM.

Details

Summary

Now that we have the new TBAA metadata format that is capable of representing accesses to aggregates, we can propagate TBAA access tags from memory setting and transferring intrinsics to load and store instructions and vice versa.

Since SROA produces lots of new loads and stores on optimized builds, this change significantly decreases the share of undecorated memory accesses on such builds.

Diff Detail

Repository
rL LLVM

Event Timeline

kosarev created this revision.Dec 24 2017, 3:39 AM
asl added a subscriber: asl.Dec 24 2017, 4:49 AM
kosarev updated this revision to Diff 133602.Feb 9 2018, 6:17 AM

Rebased.

asl added a comment.Feb 14 2018, 10:09 AM

The patch looks trivial enough to be committed. Ivan, does it depend on some other patches? Or it could be committed as-is?

The patch can be applied as is; no dependencies on other patches.

This revision is now accepted and ready to land.Feb 15 2018, 10:15 AM
This revision was automatically updated to reflect the committed changes.