diff options
author | Michael Maitland <michaeltmaitland@gmail.com> | 2024-12-06 14:07:27 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-12-06 14:07:27 -0500 |
commit | 84efad0b471543003c0724c85f158f66fccfdc0f (patch) | |
tree | e5bf8a37d890a404f6f647b4dc594ed6ffa57411 /clang/lib/CodeGen/BackendUtil.cpp | |
parent | 1d95825d4d168a17a4f27401dec3f2977a59a70e (diff) | |
download | llvm-84efad0b471543003c0724c85f158f66fccfdc0f.zip llvm-84efad0b471543003c0724c85f158f66fccfdc0f.tar.gz llvm-84efad0b471543003c0724c85f158f66fccfdc0f.tar.bz2 |
[RISCV][MRI] Account for fixed registers when determining callee saved regs (#115756)
This fixes
https://discourse.llvm.org/t/fixed-register-being-spill-and-restored-in-clang/83058.
We need to do it in `MachineRegisterInfo::getCalleeSavedRegs` instead of
`RISCVRegisterInfo::getCalleeSavedRegs` since the MF argument of
`TargetRegisterInfo:::getCalleeSavedRegs` is `const`, so we can't call
`MF->getRegInfo().disableCalleeSavedRegister` there.
So to put it in `MachineRegisterInfo::getCalleeSavedRegs`, we move
`isRegisterReservedByUser` into `TargetSubtargetInfo`.
Diffstat (limited to 'clang/lib/CodeGen/BackendUtil.cpp')
0 files changed, 0 insertions, 0 deletions