Remove BitVector binops.

These operators were crazy slow, calling malloc to return a temporary
result. At the same time, they look very innocent when used in code.

If you need temporary BitVectors to compute your thing, create them
explicitly, and use the inplace logical operators. This makes the high
cost explicit in the code.

llvm-svn: 156767
This commit is contained in:
Jakob Stoklund Olesen 2012-05-14 15:37:25 +00:00
parent 572c5b2a44
commit 76680e9b4e
1 changed files with 0 additions and 18 deletions

View File

@ -482,24 +482,6 @@ private:
}
};
inline BitVector operator&(const BitVector &LHS, const BitVector &RHS) {
BitVector Result(LHS);
Result &= RHS;
return Result;
}
inline BitVector operator|(const BitVector &LHS, const BitVector &RHS) {
BitVector Result(LHS);
Result |= RHS;
return Result;
}
inline BitVector operator^(const BitVector &LHS, const BitVector &RHS) {
BitVector Result(LHS);
Result ^= RHS;
return Result;
}
} // End llvm namespace
namespace std {