mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-01-01 00:33:09 +00:00
Make AllocState an enum.
Move the stringifying method for that enum into class AllocInfo. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9616 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
74fa84fcef
commit
82c5eb7bc8
@ -26,10 +26,12 @@
|
||||
struct AllocInfo {
|
||||
unsigned Instruction;
|
||||
unsigned Operand;
|
||||
unsigned AllocState;
|
||||
enum AllocStateTy { NotAllocated = 0, Allocated, Spilled };
|
||||
AllocStateTy AllocState;
|
||||
int Placement;
|
||||
|
||||
AllocInfo (unsigned Instruction_, unsigned Operand_,
|
||||
unsigned AllocState_, int Placement_) :
|
||||
AllocStateTy AllocState_, int Placement_) :
|
||||
Instruction (Instruction_), Operand (Operand_),
|
||||
AllocState (AllocState_), Placement (Placement_) { }
|
||||
|
||||
@ -65,6 +67,14 @@ struct AllocInfo {
|
||||
return (X.AllocState == AllocState) && (X.Placement == Placement);
|
||||
}
|
||||
bool operator!= (const AllocInfo &X) const { return !(*this == X); }
|
||||
|
||||
/// Returns a human-readable string representation of the AllocState member.
|
||||
///
|
||||
const std::string allocStateToString () const {
|
||||
static const char *AllocStateNames[] =
|
||||
{ "NotAllocated", "Allocated", "Spilled" };
|
||||
return std::string (AllocStateNames[AllocState]);
|
||||
}
|
||||
};
|
||||
|
||||
#endif // ALLOCINFO_H
|
||||
|
@ -26,10 +26,12 @@
|
||||
struct AllocInfo {
|
||||
unsigned Instruction;
|
||||
unsigned Operand;
|
||||
unsigned AllocState;
|
||||
enum AllocStateTy { NotAllocated = 0, Allocated, Spilled };
|
||||
AllocStateTy AllocState;
|
||||
int Placement;
|
||||
|
||||
AllocInfo (unsigned Instruction_, unsigned Operand_,
|
||||
unsigned AllocState_, int Placement_) :
|
||||
AllocStateTy AllocState_, int Placement_) :
|
||||
Instruction (Instruction_), Operand (Operand_),
|
||||
AllocState (AllocState_), Placement (Placement_) { }
|
||||
|
||||
@ -65,6 +67,14 @@ struct AllocInfo {
|
||||
return (X.AllocState == AllocState) && (X.Placement == Placement);
|
||||
}
|
||||
bool operator!= (const AllocInfo &X) const { return !(*this == X); }
|
||||
|
||||
/// Returns a human-readable string representation of the AllocState member.
|
||||
///
|
||||
const std::string allocStateToString () const {
|
||||
static const char *AllocStateNames[] =
|
||||
{ "NotAllocated", "Allocated", "Spilled" };
|
||||
return std::string (AllocStateNames[AllocState]);
|
||||
}
|
||||
};
|
||||
|
||||
#endif // ALLOCINFO_H
|
||||
|
Loading…
Reference in New Issue
Block a user