This is an archive of the discontinued LLVM Phabricator instance.

Allow specifying AA info when constructing certain libcalls
AcceptedPublic

Authored by yuyichao on Aug 29 2020, 7:46 AM.

Details

Summary

And maintain such info when simplifying libcalls. These info are already usable by TBAA.

Diff Detail

Event Timeline

yuyichao created this revision.Aug 29 2020, 7:46 AM
yuyichao requested review of this revision.Aug 29 2020, 7:46 AM

I'm currently running the existing tests to find regressions... I'll probably just add tbaa to most/all of the existing tests and it'll probably take a while...

yuyichao updated this revision to Diff 288811.Aug 29 2020, 2:57 PM

Propagate alias info to load and store instructions in additional to function calls.

Update formatting and add/update tests.

I guess this can't hurt, but how do you expect libcalls to acquire TBAA info in the first place? I don't think clang will generate it.

Other frontends could. I'm adding this because TBAA can already use this but right now if the frontend emits them, it can still be stripped out by instcombine.

vchuravy added a subscriber: Restricted Project.Nov 27 2020, 5:13 PM
sdesmalen accepted this revision.Nov 30 2020, 8:31 AM

Seems like a fair change to me when this TBAA information is available.

This revision is now accepted and ready to land.Nov 30 2020, 8:31 AM
yuyichao updated this revision to Diff 308455.Nov 30 2020, 12:44 PM

Rebased to fix test conflict. Tests passed locally.

lebedev.ri resigned from this revision.Jan 12 2023, 5:42 PM

This review seems to be stuck/dead, consider abandoning if no longer relevant.