aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/ProfileData/Coverage/CoverageMapping.cpp
diff options
context:
space:
mode:
authorLuke Lau <luke@igalia.com>2024-02-13 20:27:56 +0800
committerLuke Lau <luke@igalia.com>2024-02-13 20:40:31 +0800
commit208edf7672cd2e84ae5da4df423adccd752ee1f1 (patch)
tree8a5cf602accbbcf0e64509a660b9b5a18c4c0cc2 /llvm/lib/ProfileData/Coverage/CoverageMapping.cpp
parent990896a591b0b042cdf552900b92016ed253970d (diff)
downloadllvm-208edf7672cd2e84ae5da4df423adccd752ee1f1.zip
llvm-208edf7672cd2e84ae5da4df423adccd752ee1f1.tar.gz
llvm-208edf7672cd2e84ae5da4df423adccd752ee1f1.tar.bz2
[RISCV] Fix assertion in lowerEXTRACT_SUBVECTOR
This fixes a crash when lowering an extract_subvector like: t0:v1i64 = extract_subvector t1:v2i64, 1 Whilst we never need a vslidedown with M1 on scalable vector types, we might need to do it for v1i64/v1f64, since the smallest container type for it is nxv1i64/nxv1f64. The lowering code is still correct for this case, but the assertion was too strict. The actual invariant we're relying on is that ContainerSubVecVT's LMUL <= M1, not < M1. Hence why we handled v2i32 fine, because its container type was nxv1i32 and MF2.
Diffstat (limited to 'llvm/lib/ProfileData/Coverage/CoverageMapping.cpp')
0 files changed, 0 insertions, 0 deletions