[all-commits] [llvm/llvm-project] 618096: [flang]Pass to add vscale range attribute (#68103)
Mats Petersson via All-commits
all-commits at lists.llvm.org
Thu Oct 5 03:06:14 PDT 2023
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 6180964a01f67ed322da4ba2b2a3e6cc6c2cc760
https://github.com/llvm/llvm-project/commit/6180964a01f67ed322da4ba2b2a3e6cc6c2cc760
Author: Mats Petersson <mats.petersson at arm.com>
Date: 2023-10-05 (Thu, 05 Oct 2023)
Changed paths:
M flang/include/flang/Optimizer/Transforms/Passes.h
M flang/include/flang/Optimizer/Transforms/Passes.td
M flang/include/flang/Tools/CLOptions.inc
M flang/include/flang/Tools/CrossToolHelpers.h
M flang/lib/Frontend/FrontendActions.cpp
M flang/lib/Optimizer/Transforms/CMakeLists.txt
A flang/lib/Optimizer/Transforms/VScaleAttr.cpp
A flang/test/Lower/Arm/arm-sve-vector-bits-vscale-range.f90
Log Message:
-----------
[flang]Pass to add vscale range attribute (#68103)
Add vscale range attirbute for the Scalable Vector Extension (SVE) if
provided on the command-line (options in a previous commit)
If no command-line option is provided, if the target-feature of SVE is
specified and the architecture is AArch64, it defualts to 128-2048. in
other words a vscale-min of 1, vscale-max of 16.
A pass is used to add the atribute to all functions. The vectorizer will
use this attribute to generate the SVE instruction to match the range
specified. The attribute is harmless if there is no vectorizable
operations in the function.
More information about the All-commits
mailing list