[PATCH] D131562: [AArch64][SME] Document SME ABI implementation in LLVM
Sander de Smalen via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Sep 15 10:12:00 PDT 2022
sdesmalen added a comment.
In D131562#3787300 <https://reviews.llvm.org/D131562#3787300>, @efriedma wrote:
>> For the purpose of LLVM IR it is sufficient to support only a single vscale as long as the input IR is restricted to not pass/return (pointers to) scalable vectors between such functions and any streaming mode changes happen only on function-call boundaries.
>
> Sure, that makes sense: supporting multiple different scales within a function would be complicated.
>
> But you still need a LangRef change. Interprocedural optimizations need to know that "vscale" computed in the callee might be different from "vscale" computed in the caller. As a practical matter, it probably affects very few optimizations, but certain optimizations might need to be aware of it. (At the moment, this is most likely to be relevant for GEP constant expressions, since we don't really do interprocedural hoisting or sinking. But in theory it could also be relevant for calls to llvm.vscale.)
Thanks, I think that's fair enough, we can tone down the wording in the LangRef a bit.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D131562/new/
https://reviews.llvm.org/D131562
More information about the llvm-commits
mailing list