mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-07-03 11:24:18 +00:00
Switch all register list clients to the new MC*Iterator interface.
No functional change intended. Sorry for the churn. The iterator classes are supposed to help avoid giant commits like this one in the future. The TableGen-produced register lists are getting quite large, and it may be necessary to change the table representation. This makes it possible to do so without changing all clients (again). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157854 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@ -50,9 +50,8 @@ void RegisterClassInfo::runOnMachineFunction(const MachineFunction &mf) {
|
||||
CSRNum.clear();
|
||||
CSRNum.resize(TRI->getNumRegs(), 0);
|
||||
for (unsigned N = 0; unsigned Reg = CSR[N]; ++N)
|
||||
for (const uint16_t *AS = TRI->getOverlaps(Reg);
|
||||
unsigned Alias = *AS; ++AS)
|
||||
CSRNum[Alias] = N + 1; // 0 means no CSR, 1 means CalleeSaved[0], ...
|
||||
for (MCRegAliasIterator AI(Reg, TRI, true); AI.isValid(); ++AI)
|
||||
CSRNum[*AI] = N + 1; // 0 means no CSR, 1 means CalleeSaved[0], ...
|
||||
Update = true;
|
||||
}
|
||||
CalleeSaved = CSR;
|
||||
|
Reference in New Issue
Block a user