aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/CodeGen/CodeGenModule.cpp
diff options
context:
space:
mode:
authorLuke Lau <luke@igalia.com>2025-01-30 23:45:24 +0800
committerGitHub <noreply@github.com>2025-01-30 23:45:24 +0800
commiteb7e19998dd119ed391bd7f6882c393a712d571c (patch)
tree1404ca2d712a6867118ee2f07ef1b776460cee0b /clang/lib/CodeGen/CodeGenModule.cpp
parent83a1fe866640ac60c735a1427c41169067d31e05 (diff)
downloadllvm-eb7e19998dd119ed391bd7f6882c393a712d571c.zip
llvm-eb7e19998dd119ed391bd7f6882c393a712d571c.tar.gz
llvm-eb7e19998dd119ed391bd7f6882c393a712d571c.tar.bz2
[RISCV][VLOPT] Allow users that are passthrus if tail elements aren't demanded (#124066)
The motivation for this to allow reducing the vl when a user is a ternary pseudo, where the third operand is tied and also acts as a passthru. When checking the users of an instruction, we currently bail if the user is used as a passthru because all of its elements past vl will be used for the tail. We can allow passthru users if we know the tail of their result isn't used, which we will have computed beforehand after #124530 It's worth noting that this is all irrelevant of the tail policy, because tail agnostic still ends up using the passthru. I've checked that SPEC CPU 2017 + llvm-test-suite pass with this (on qemu with rvv_ta_all_1s=true) Fixes #123760
Diffstat (limited to 'clang/lib/CodeGen/CodeGenModule.cpp')
0 files changed, 0 insertions, 0 deletions