aboutsummaryrefslogtreecommitdiff
path: root/clang/test/Modules/codegen-nodep.test
diff options
context:
space:
mode:
authorMel Chen <mel.chen@sifive.com>2025-07-25 17:53:08 +0800
committerGitHub <noreply@github.com>2025-07-25 17:53:08 +0800
commitee3a7714b7a69ac9aae4b79f4c67adc38bc6876b (patch)
tree8f720aaf21a5b02263f6b9537ec3e82cba810b75 /clang/test/Modules/codegen-nodep.test
parent1640d51bf876685783b89f91668ca5b91ede22f4 (diff)
downloadllvm-main.zip
llvm-main.tar.gz
llvm-main.tar.bz2
[RISCV][TTI] Enable masked interleave access for scalable vector (#149981)HEADmain
Now that support for masked loads/stores of interleave groups has landed, we can enable the loop vectorizer to generate masked interleave access where applicable. This improves vectorization in several ways: * Internal predication support: This enables interleave group vectorization for loops with internal control flow predication, provided all members of the group share the same predicate. Gaps in interleave groups are still not efficiently handled by masking, so masking for gaps remains disabled for now. * Tail folding: This allows tail folding of loops with interleave groups by using masking. Without this, vectorized loops with interleaves would fall back to using separate gather/scatter accesses, which can be significantly less efficient. * Scalable vector support: Currently, only scalable vector types are supported for masked interleave lowering. Fixed-length vector support will be enabled in the future. As interleave access is not yet supported with tail folding by EVL, that functionality is temporarily disabled. We are going to create another patch to support it. Co-authored-by: Philip Reames <preames@rivosinc.com> --------- Co-authored-by: Philip Reames <preames@rivosinc.com>
Diffstat (limited to 'clang/test/Modules/codegen-nodep.test')
0 files changed, 0 insertions, 0 deletions