[all-commits] [llvm/llvm-project] 1f2c37: [AArch64][SVE] Implement isVScaleKnownToBeAPowerOfTwo
David Green via All-commits
all-commits at lists.llvm.org
Tue Jan 17 07:49:42 PST 2023
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 1f2c37afbe69d048bc518363454ae073f588066e
https://github.com/llvm/llvm-project/commit/1f2c37afbe69d048bc518363454ae073f588066e
Author: David Green <david.green at arm.com>
Date: 2023-01-17 (Tue, 17 Jan 2023)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.h
M llvm/test/CodeGen/AArch64/vscale-power-of-two.ll
Log Message:
-----------
[AArch64][SVE] Implement isVScaleKnownToBeAPowerOfTwo
According to https://developer.arm.com/documentation/102105/ia-00/?lang=en
> Arm is making a retrospective change to the SVE architecture to remove
> the capability of selecting a non-power-of-two vector length in
> non-Streaming SVE as well as in Streaming SVE mode. Specific updates as
> a result of this change will be communicated in due course.
This patch implements the isVScaleKnownToBeAPowerOfTwo method to teach
DAG Combines that VScale will be known to be a power of 2, which helps
reduce or simplify some expressions (notably the udiv in vector trip
count expressions).
Differential Revision: https://reviews.llvm.org/D141486
More information about the All-commits
mailing list