mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-02-22 13:29:44 +00:00
Simplify CCState's use of register aliases.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121806 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
597faa8f1f
commit
eb7464ebda
@ -51,11 +51,9 @@ void CCState::HandleByVal(unsigned ValNo, MVT ValVT,
|
|||||||
|
|
||||||
/// MarkAllocated - Mark a register and all of its aliases as allocated.
|
/// MarkAllocated - Mark a register and all of its aliases as allocated.
|
||||||
void CCState::MarkAllocated(unsigned Reg) {
|
void CCState::MarkAllocated(unsigned Reg) {
|
||||||
UsedRegs[Reg/32] |= 1 << (Reg&31);
|
for (const unsigned *Alias = TRI.getOverlaps(Reg);
|
||||||
|
unsigned Reg = *Alias; ++Alias)
|
||||||
if (const unsigned *RegAliases = TRI.getAliasSet(Reg))
|
UsedRegs[Reg/32] |= 1 << (Reg&31);
|
||||||
for (; (Reg = *RegAliases); ++RegAliases)
|
|
||||||
UsedRegs[Reg/32] |= 1 << (Reg&31);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// AnalyzeFormalArguments - Analyze an array of argument values,
|
/// AnalyzeFormalArguments - Analyze an array of argument values,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user