[PATCH] D123284: [ArgPromotion][Attributor] Update min-legal-vector-width when do promotion

Phoebe Wang via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Apr 19 02:42:56 PDT 2022


pengfei added a comment.

In D123284#3458298 <https://reviews.llvm.org/D123284#3458298>, @nikic wrote:

> I'm still having a hard time understanding what the intended semantics of this attribute are -- my best guess from this patch is that "min-legal-vector-width" is actually supposed to be a "max-legal-vector-width", which is why we need to increase it during promotion?
>
> Before we start doing any code changes, I think we need a LangRef patch that specifies the precise semantics and requirements of this attribute.

Although it's bit against common sense, the "min" is the correct word here. It means the minimum legal vector requirments to backend. For example, a 128 bits vector only requires legality for 128 bits register, but backend are free to have the ability to provide 256 bits and more.
The "min-legal-vector-width" is the maximum type in function arguments because all arguments are supposed to be legal. Otherwise, we may have compatibility issue.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D123284/new/

https://reviews.llvm.org/D123284



More information about the llvm-commits mailing list