[PATCH] D24039: Fixed spill stack objects are mutable

Philip Reames via llvm-commits llvm-commits at lists.llvm.org
Tue Aug 30 16:02:31 PDT 2016

reames added a comment.

In https://reviews.llvm.org/D24039#529495, @kparzysz wrote:

> What documentation are you referring to?

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);

I also confirmed that the register allocator (via VirtRegMap::createSpillSlot) does use this interface.

> Second of all, the rest of your comment sounds strange given my description of the problem.  It is exactly that optimizations taking advantage of the "immutable" flag should not be taking place, given that these slots are not immutable.

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.



More information about the llvm-commits mailing list