diff options
Diffstat (limited to 'lib/CodeGen/PseudoSourceValue.cpp')
-rw-r--r-- | lib/CodeGen/PseudoSourceValue.cpp | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/lib/CodeGen/PseudoSourceValue.cpp b/lib/CodeGen/PseudoSourceValue.cpp index 00c5d46d21..e74479e7a1 100644 --- a/lib/CodeGen/PseudoSourceValue.cpp +++ b/lib/CodeGen/PseudoSourceValue.cpp @@ -52,29 +52,31 @@ void PseudoSourceValue::printCustom(raw_ostream &O) const { } namespace { - /// FixedStackPseudoSourceValue - A specialized PseudoSourceValue - /// for holding FixedStack values, which must include a frame + /// StackObjectPseudoSourceValue - A specialized PseudoSourceValue + /// for holding StackObject values, which must include a frame /// index. - class VISIBILITY_HIDDEN FixedStackPseudoSourceValue + class VISIBILITY_HIDDEN StackObjectPseudoSourceValue : public PseudoSourceValue { const int FI; public: - explicit FixedStackPseudoSourceValue(int fi) : FI(fi) {} + explicit StackObjectPseudoSourceValue(int fi) : FI(fi) {} virtual bool isConstant(const MachineFrameInfo *MFI) const; virtual void printCustom(raw_ostream &OS) const { - OS << "FixedStack" << FI; + if (FI < 0) + OS << "Fixed"; + OS << "StackObject" << FI; } }; } static ManagedStatic<std::map<int, const PseudoSourceValue *> > FSValues; -const PseudoSourceValue *PseudoSourceValue::getFixedStack(int FI) { +const PseudoSourceValue *PseudoSourceValue::getStackObject(int FI) { const PseudoSourceValue *&V = (*FSValues)[FI]; if (!V) - V = new FixedStackPseudoSourceValue(FI); + V = new StackObjectPseudoSourceValue(FI); return V; } @@ -89,6 +91,7 @@ bool PseudoSourceValue::isConstant(const MachineFrameInfo *) const { return false; } -bool FixedStackPseudoSourceValue::isConstant(const MachineFrameInfo *MFI) const{ +bool +StackObjectPseudoSourceValue::isConstant(const MachineFrameInfo *MFI) const { return MFI && MFI->isImmutableObjectIndex(FI); } |