[PATCH] D64095: SVFS implementation according to RFC: Interface user provided vector functions with the vectorizer.

Sumedh Arani via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Aug 6 11:07:21 PDT 2019


aranisumedh marked 15 inline comments as done.
aranisumedh added inline comments.


================
Comment at: llvm/include/llvm/Analysis/SearchVectorFunctionSystem.h:120
+
+struct SVFS {
+  Module *M;
----------------
a.elovikov wrote:
> jdoerfert wrote:
> > Doxygen class comment.
> This is marked as done but I don't see the doxygen comment...
That is because it was a part of the last diff. Hence, the lines get moved. The getter and setters are pretty straightforward. Do I still add a doxygen comment for the same?


================
Comment at: llvm/include/llvm/Analysis/SearchVectorFunctionSystem.h:96
+
+  void setLinearStepOrPos(int s) { LinearStepOrPos = s; }
+
----------------
aranisumedh wrote:
> a.elovikov wrote:
> > Do we really need the setter? Why once created param description could change?
> No. I don't think the parameters can change. I can change the implementation so as to avoid using the setter function.
The current implementation allows me to handle corner cases better. This setter function is used to set the `LinearStepOrPos` for the first time. 



================
Comment at: llvm/include/llvm/Analysis/SearchVectorFunctionSystem.h:100
+
+  static ParameterKind convertToParameterKind(StringRef kind) {
+    ParameterKind ParamKind = StringSwitch<ParameterKind>(kind)
----------------
sdesmalen wrote:
> is this not specific to the AArch64 Vector ABI?
No. IIRC, this is in agreement with other vendors too. 


================
Comment at: llvm/include/llvm/Analysis/SearchVectorFunctionSystem.h:153
+  // Uses a vector as this table will not have a large entries
+  SmallVector<VectorRecord, 8> RecordTable;
+
----------------
sdesmalen wrote:
> Do we want to expose RecordTable?
Making it private.


Repository:
  rL LLVM

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

https://reviews.llvm.org/D64095





More information about the llvm-commits mailing list