diff options
author | Fraser Cormack <fraser@codeplay.com> | 2021-02-19 15:54:40 +0000 |
---|---|---|
committer | Fraser Cormack <fraser@codeplay.com> | 2021-02-20 14:47:51 +0000 |
commit | 9aa20caee6b47ac601602c674749fb6c1d2179cf (patch) | |
tree | d222567a25eb7342ad84f3cfdf9e585432eb3683 /llvm/lib/Transforms/Utils/ModuleUtils.cpp | |
parent | 4550fdff2b2eec15143fac536e41ce967e522a3a (diff) | |
download | llvm-9aa20caee6b47ac601602c674749fb6c1d2179cf.zip llvm-9aa20caee6b47ac601602c674749fb6c1d2179cf.tar.gz llvm-9aa20caee6b47ac601602c674749fb6c1d2179cf.tar.bz2 |
[RISCV] Improve register allocation around vector masks
With vector mask registers only allocatable to V0 (VMV0Regs) it is
relatively simple to generate code which uses multiple masks and naively
requires spilling.
This patch aims to improve codegen in such cases by telling LLVM it can
use VRRegs to hold masks. This will prevent spilling in many cases by
having LLVM copy to an available VR register.
Reviewed By: craig.topper
Differential Revision: https://reviews.llvm.org/D97055
Diffstat (limited to 'llvm/lib/Transforms/Utils/ModuleUtils.cpp')
0 files changed, 0 insertions, 0 deletions