diff options
author | Luke Lau <luke@igalia.com> | 2025-01-29 12:39:38 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-01-29 12:39:38 +0800 |
commit | 8675cd3facc063673c47ed585bd4b7013119fe1f (patch) | |
tree | dd20abe76671d959326158aceff88d30351b0645 /llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp | |
parent | cdced8e5bc422a28b42d1bdfb74629cc720a4dfe (diff) | |
download | llvm-8675cd3facc063673c47ed585bd4b7013119fe1f.zip llvm-8675cd3facc063673c47ed585bd4b7013119fe1f.tar.gz llvm-8675cd3facc063673c47ed585bd4b7013119fe1f.tar.bz2 |
[RISCV][VLOPT] Compute demanded VLs up front (#124530)
This replaces the worklist by instead computing what VL is demanded by
each instruction's users first, which is done via checkUsers.
The demanded VLs are stored in a DenseMap, and then we can just do a
single forward pass of tryReduceVL where we check if a candidate's
demanded VL is less than its VLOp.
This means the pass should now be linear in complexity, and allows us to
relax the restriction on tied operands in more easily as in #124066.
Diffstat (limited to 'llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp')
0 files changed, 0 insertions, 0 deletions