Auto-Vectorize Feature
Usage
Add
-f auto_vectorizeto the command line arguments
TODOs:
[ ] Configure loop and basic block vectorizer individually.
Warning
Auto vectorization is enables by default (if available) on the following optimization levels:
GCC:
-O2LLVM:
-O1
Configuration
auto_vectorize.enable: Allows to turn off ne auto-vectorization completely (Default:true)auto_vectorize.verbose: Print details about auto vectorization possibilities during compililation. Need to check the MLID stdout artifact or enablemlif.print_outputsto be effective (Default:false)
Compatibility
Only RISC-V targets is supported at the momemt
The supported MLIF toolchains are GCC and LLVM
A VLEN larger equals 128 is required for this feature
It seems like this currently needs a ELEN=64 and proper alignment (e.g.
tvmaot.alignment_bytes=8) for the backend data. TFLMI seems to break with this.