[PATCH] D52441: [CodeGen] Update min-legal-vector width based on function argument and return types

Eric Christopher via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Tue Oct 23 17:20:41 PDT 2018


echristo accepted this revision.
echristo added a comment.
This revision is now accepted and ready to land.

In https://reviews.llvm.org/D52441#1271545, @rnk wrote:

> In https://reviews.llvm.org/D52441#1258317, @craig.topper wrote:
>
> > Address Reid's comments. Add a comment with a list of all things that currently effect the vector width attribute emitted in IR.
> >
> > For inlining, we update the caller's attribute during merging to ensure it is at least as large as the callee that is being inlined. This is required for always_inline of the intrinsics. We probably want a way to limit inlining, but that would effect the inlining decision. If the decision has been made to inline we have to take the max.
> >
> > For LTO I don't have an answer. What do we do for things like target features and cpu today?
>
>
> I think your comments about the behavior w.r.t. inlining are enough to describe what happens during LTO. I don't want to speak for Eric, but I think you've answered his questions.


Yes, it'll be the same. As a note, the inlining widening must happen after the check for subtarget features.

Otherwise we talked about this at the conference and LGTM.


https://reviews.llvm.org/D52441





More information about the cfe-commits mailing list