[PATCH] D24039: Fixed spill stack objects are mutable

Krzysztof Parzyszek via llvm-commits llvm-commits at lists.llvm.org
Tue Aug 30 16:15:16 PDT 2016

kparzysz added a comment.

In https://reviews.llvm.org/D24039#529742, @reames wrote:

> In the same header:
>  /// Create a new statically sized stack object that represents a spill slot,
>   /// returning a nonnegative identifier to represent it.
>   int CreateSpillStackObject(uint64_t Size, unsigned Alignment);

That same header has

  /// Create a spill slot at a fixed location on the stack.
  /// Returns an index with a negative value.
  int CreateFixedSpillStackObject(uint64_t Size, int64_t SPOffset);

> My point is that while *spill slots* are clearly not immutable, there are other stack slots created by the same interface you modified which are.  Disabling optimization of those slots is clearly not okay.

Spill slot is a stack slot that is not aliased to anything else.  Fixed spill slot is a spill slot with a specified offset (i.e. its position in the frame is fixed).



More information about the llvm-commits mailing list