[StatepointLowering] Change AllocatedStackSlots to use SmallBitVector
authorSanjoy Das <sanjoy@playingwithpointers.com>
Fri, 19 Feb 2016 17:15:26 +0000 (17:15 +0000)
committerSanjoy Das <sanjoy@playingwithpointers.com>
Fri, 19 Feb 2016 17:15:26 +0000 (17:15 +0000)
commit171313c69a1d6e881cb28ecd8a549675c150e920
tree23c6e3ff31f325f12d472f705e57f02ee7d44729
parentd2db73ba59dcb66b7193fbcf5f1a42ab3bc5c003
[StatepointLowering] Change AllocatedStackSlots to use SmallBitVector

NFCI.  They key motivation here is that I'd like to use
SmallBitVector::all() in a later change.  Also, using a bit vector here
seemed better in general.

The only interesting change here is that in the failure case of
allocateStackSlot, we no longer (the equivalent of) push_back(true) to
AllocatedStackSlots.  As far as I can tell, this is fine, since we'd
never re-use those slots in the same StatepointLoweringState instance.

Technically there was no need to change the operator[] type accesses to
set() and test(), but I thought it'd be nice to make it obvious that
we're using something other than a std::vector like thing.

llvm-svn: 261337
llvm/lib/CodeGen/SelectionDAG/StatepointLowering.cpp
llvm/lib/CodeGen/SelectionDAG/StatepointLowering.h