This is an archive of the discontinued LLVM Phabricator instance.

[TargetInstrInfo] Add the isCandidateForCallSiteEntry()
AbandonedPublic

Authored by djtodoro on Feb 6 2020, 4:30 AM.

Details

Reviewers
vsk
aprantl
dstenb
Summary

Define the isCandidateForCallSiteEntry() that should define instructions that are candidates for the call site info.
Override the virtual method for the x86, ARM and AARCH64 targets.

Diff Detail

Event Timeline

djtodoro created this revision.Feb 6 2020, 4:30 AM
vsk added a comment.Feb 6 2020, 1:22 PM

Hey @djtodoro, thanks for doing this. This patch takes a whitelisting approach, and might be tricky to test. I'm also not sure how to check that it is exhaustively correct.

I had in mind (what seems to me to be) a simpler/generic blacklisting approach. I hope you don't mind, I implemented the alternative in https://reviews.llvm.org/D74159. I believe the rest of your patches in this stack could be rebased on D74159 easily.

djtodoro abandoned this revision.Feb 7 2020, 2:30 AM

Sounds good to me, if the D74159 defines all the instructions we want to avoid.