Objects.push_back(StackObject(Size, Alignment, 0, false, isSS));
int Index = (int)Objects.size()-NumFixedObjects-1;
assert(Index >= 0 && "Bad frame index!");
- if (SpillObjects.size() <= static_cast<unsigned>(Index))
- SpillObjects.resize(Index+1);
- SpillObjects[Index] = false;
return Index;
}
int CreateSpillStackObject(uint64_t Size, unsigned Alignment) {
CreateStackObject(Size, Alignment, true);
int Index = (int)Objects.size()-NumFixedObjects-1;
- if (SpillObjects.size() <= static_cast<unsigned>(Index))
- SpillObjects.resize(Index+1);
- SpillObjects[Index] = true;
return Index;
}
return (int)Objects.size()-NumFixedObjects-1;
}
- /// isSpillObject - Return whether the index refers to a spill slot.
- ///
- bool isSpillObject(int Index) const {
- // Negative indices can't be spill slots.
- if (Index < 0) return false;
- assert(static_cast<unsigned>(Index) < SpillObjects.size() &&
- "Invalid frame index!");
- return SpillObjects[Index];
- }
-
/// getCalleeSavedInfo - Returns a reference to call saved info vector for the
/// current function.
const std::vector<CalleeSavedInfo> &getCalleeSavedInfo() const {