[PATCH] D119252: [AArch64][SVE] Fix selection failure during lowering of shuffle_vector
Paul Walker via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Feb 8 08:40:57 PST 2022
paulwalker-arm added inline comments.
================
Comment at: llvm/lib/Target/AArch64/AArch64ISelLowering.cpp:9732
+ // Can't handle cases where vector size is greater than 128-bit
+ if (Extract.getOperand(0).getValueSizeInBits() > 128)
+ return false;
----------------
david-arm wrote:
> You're introducing a new TypeSize -> uint64_t implicit typecast here. Can you use this instead?
>
> if (Extract.getOperand(0).getValueSizeInBits().getFixedSizeInBits() > 128)
Looking at the following code can this be tightened to `if (!V.getOperand(0).getValueType().is128BitVector())`? It's only used post type legalisation so I think there's no other type that would be acceptable by this point.
================
Comment at: llvm/test/CodeGen/AArch64/sve-shuffle-crash.ll:3
+
+target triple = "aarch64-unknown-linux-gnu"
+
----------------
Not really against this file but there already exists `sve-fixed-length-shuffles.ll` for a similar "ensure the compiler doesn't crash on this shuffle" test and so perhaps this test can be added to that file?
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D119252/new/
https://reviews.llvm.org/D119252
More information about the llvm-commits
mailing list