[llvm] [AArch64][GISel] Support SVE with 128-bit min-size for G_LOAD and G_STORE (PR #92130)
via llvm-commits
llvm-commits at lists.llvm.org
Tue May 21 06:01:19 PDT 2024
================
@@ -26375,12 +26375,20 @@ bool AArch64TargetLowering::shouldLocalize(
return TargetLoweringBase::shouldLocalize(MI, TTI);
}
+static bool isScalableTySupported(const unsigned Op) {
+ return Op == Instruction::Load || Op == Instruction::Store;
+}
+
bool AArch64TargetLowering::fallBackToDAGISel(const Instruction &Inst) const {
- if (Inst.getType()->isScalableTy())
- return true;
+ const auto ScalableTySupported = isScalableTySupported(Inst.getOpcode());
+
+ // Fallback for scalable vectors
+ if (Inst.getType()->isScalableTy() && !ScalableTySupported) {
----------------
Him188 wrote:
Added option `aarch64-enable-sve-gisel` which is disabled by default, instead of `aarch64-disable-sve-gisel`, because I found other options are also "enable" like `aarch64-enable-logical-imm`
https://github.com/llvm/llvm-project/pull/92130
More information about the llvm-commits
mailing list