[llvm] 002adab - [AArch64][SVE] Change pattern generation code to fix -Wimplicit-fallthrough after D71483
Fangrui Song via llvm-commits
llvm-commits at lists.llvm.org
Mon Dec 16 15:09:18 PST 2019
Author: Fangrui Song
Date: 2019-12-16T15:09:05-08:00
New Revision: 002adabb3a251a81ef304353eefb1bf96ec388f6
URL: https://github.com/llvm/llvm-project/commit/002adabb3a251a81ef304353eefb1bf96ec388f6
DIFF: https://github.com/llvm/llvm-project/commit/002adabb3a251a81ef304353eefb1bf96ec388f6.diff
LOG: [AArch64][SVE] Change pattern generation code to fix -Wimplicit-fallthrough after D71483
Added:
Modified:
llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
Removed:
################################################################################
diff --git a/llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp b/llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
index e138c2dc8601..f40652f4fbbc 100644
--- a/llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
+++ b/llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
@@ -2867,16 +2867,23 @@ bool AArch64DAGToDAGISel::SelectSVELogicalImm(SDValue N, MVT VT, SDValue &Imm) {
switch (VT.SimpleTy) {
case MVT::i8:
ImmVal &= 0xFF;
- ImmVal |= (ImmVal << 8);
+ ImmVal |= ImmVal << 8;
+ ImmVal |= ImmVal << 16;
+ ImmVal |= ImmVal << 32;
+ break;
case MVT::i16:
ImmVal &= 0xFFFF;
- ImmVal |= (ImmVal << 16);
+ ImmVal |= ImmVal << 16;
+ ImmVal |= ImmVal << 32;
+ break;
case MVT::i32:
ImmVal &= 0xFFFFFFFF;
- ImmVal |= (ImmVal << 32);
+ ImmVal |= ImmVal << 32;
break;
- default:
+ case MVT::i64:
break;
+ default:
+ llvm_unreachable("Unexpected type");
}
uint64_t encoding;
More information about the llvm-commits
mailing list