[llvm-dev] Schedule pass for a subtarget?

Eric Christopher via llvm-dev llvm-dev at lists.llvm.org
Sat Feb 20 22:20:44 PST 2016


This is fine. There are other passes in aarch64 you can use as examples.

On Sat, Feb 20, 2016, 9:34 PM Adam Nemet <anemet at apple.com> wrote:

> [resending to correct llvm-dev address]
>
> Hi,
>
> I’d like to start enabling the loop data prefetch pass for Cyclone (an
> ARM64 subtarget).  AFAICT, you can’t really add passes specifically to a
> subtarget but only to a target.  This makes sense because in the new world,
> you could have different subtargets per function.  I just want to make sure
> my understanding is correct.
>
> My plan is to add the pass for the target and then exit the pass early
> based on a TTI hook (getPrefetchDistance is not set).
>
> Currently, PowerPC gets around this problem by checking the vendor part of
> the triple to decide whether the pass should be added.  Obviously there is
> no guarantee that there is a one-to-one mapping between vendor and
> subtarget.
>
> Please let me know if there is more preferred way of doing this.
>
> Thanks,
> Adam
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20160221/6759af6a/attachment.html>


More information about the llvm-dev mailing list