aboutsummaryrefslogtreecommitdiff
path: root/llvm/unittests/Support/MathExtrasTest.cpp
diff options
context:
space:
mode:
authorCullen Rhodes <cullen.rhodes@arm.com>2024-07-09 09:06:25 +0100
committerGitHub <noreply@github.com>2024-07-09 09:06:25 +0100
commit1e7d6d345518de0738eb5b2eb71addd499fea0fb (patch)
tree2c27f57330bd7302fb46962db95b86d78e262aff /llvm/unittests/Support/MathExtrasTest.cpp
parentefc5a6aa82081aaa002f90baa21fc16655af0729 (diff)
downloadllvm-1e7d6d345518de0738eb5b2eb71addd499fea0fb.zip
llvm-1e7d6d345518de0738eb5b2eb71addd499fea0fb.tar.gz
llvm-1e7d6d345518de0738eb5b2eb71addd499fea0fb.tar.bz2
[mlir][vector] Propagate scalability to gather/scatter ptrs vector (#97584)
In convert-vector-to-llvm the first operand (vector of pointers holding all memory addresses to read) to the masked.gather (and scatter) intrinsic has a fixed vector type. This may result in intrinsics where the scalable flag has been dropped: ``` %0 = llvm.intr.masked.gather %1, %2, %3 {alignment = 4 : i32} : (!llvm.vec<4 x ptr>, vector<[4]xi1>, vector<[4]xi32>) -> vector<[4]xi32> ``` Fortunately the operand is overloaded on the result type so we end up with the correct IR when lowering to LLVM, but this is still incorrect. This patch fixes it by propagating scalability.
Diffstat (limited to 'llvm/unittests/Support/MathExtrasTest.cpp')
0 files changed, 0 insertions, 0 deletions