Fixed spill stack objects are mutable

Differential Revision: https://reviews.llvm.org/D24039

llvm-svn: 280244
This commit is contained in:
Krzysztof Parzyszek
2016-08-31 13:52:17 +00:00
parent 0509876f3f
commit 64488118bf
3 changed files with 74 additions and 4 deletions

View File

@@ -642,11 +642,11 @@ int MachineFrameInfo::CreateFixedObject(uint64_t Size, int64_t SPOffset,
/// Create a spill slot at a fixed location on the stack.
/// Returns an index with a negative value.
int MachineFrameInfo::CreateFixedSpillStackObject(uint64_t Size,
int64_t SPOffset) {
int64_t SPOffset,
bool Immutable) {
unsigned Align = MinAlign(SPOffset, ForcedRealign ? 1 : StackAlignment);
Align = clampStackAlignment(!StackRealignable, Align, StackAlignment);
Objects.insert(Objects.begin(), StackObject(Size, Align, SPOffset,
/*Immutable*/ true,
Objects.insert(Objects.begin(), StackObject(Size, Align, SPOffset, Immutable,
/*isSS*/ true,
/*Alloca*/ nullptr,
/*isAliased*/ false));