projects
/
oota-llvm.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Add an unwind_to field to basic blocks, making them Users instead of Values.
[oota-llvm.git]
/
include
/
llvm
/
ADT
/
BitVector.h
diff --git
a/include/llvm/ADT/BitVector.h
b/include/llvm/ADT/BitVector.h
index 927cfa9f7869ab83645e78d1ed85cc8c4a1eb95b..a3a8920186468ebf5f48044752fa0dde6ad4d4bd 100644
(file)
--- a/
include/llvm/ADT/BitVector.h
+++ b/
include/llvm/ADT/BitVector.h
@@
-2,8
+2,8
@@
//
// The LLVM Compiler Infrastructure
//
//
// The LLVM Compiler Infrastructure
//
-// This file
was developed by Evan Cheng and is distributed under
-//
the University of Illinois Open Source
License. See LICENSE.TXT for details.
+// This file
is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
//
//===----------------------------------------------------------------------===//
//
//
//===----------------------------------------------------------------------===//
//
@@
-16,8
+16,9
@@
#include "llvm/Support/MathExtras.h"
#include <algorithm>
#include "llvm/Support/MathExtras.h"
#include <algorithm>
-#include <cstdlib>
#include <cassert>
#include <cassert>
+#include <cstdlib>
+#include <cstring>
namespace llvm {
namespace llvm {
@@
-245,10
+246,12
@@
public:
// Indexing.
reference operator[](unsigned Idx) {
// Indexing.
reference operator[](unsigned Idx) {
+ assert (Idx < Size && "Out-of-bounds Bit access.");
return reference(*this, Idx);
}
bool operator[](unsigned Idx) const {
return reference(*this, Idx);
}
bool operator[](unsigned Idx) const {
+ assert (Idx < Size && "Out-of-bounds Bit access.");
BitWord Mask = 1L << (Idx % BITWORD_SIZE);
return (Bits[Idx / BITWORD_SIZE] & Mask) != 0;
}
BitWord Mask = 1L << (Idx % BITWORD_SIZE);
return (Bits[Idx / BITWORD_SIZE] & Mask) != 0;
}
@@
-375,6
+378,8
@@
private:
// Destroy the old bits.
delete[] Bits;
Bits = NewBits;
// Destroy the old bits.
delete[] Bits;
Bits = NewBits;
+
+ clear_unused_bits();
}
void init_words(BitWord *B, unsigned NumWords, bool t) {
}
void init_words(BitWord *B, unsigned NumWords, bool t) {