Re: [llvm-commits] ConstantInt Patch #3

2007-02-26 Thread Chris Lattner
On Feb 26, 2007, at 3:15 PM, Chris Lattner wrote: > +return second == that.second && > +this->first.getBitWidth() == that.first.getBitWidth > () && > +this->first == that.first; > > If the 'second's match, how could the types not match. More coherently, you

Re: [llvm-commits] ConstantInt Patch #3

2007-02-26 Thread Chris Lattner
On Feb 26, 2007, at 3:09 PM, Reid Spencer wrote: > This one avoids collisions in the IntConstants map by using APInt > directly in the DenseMap. This was made possible by relaxing > APInt::operator= and using a small structure for the key type so > that we > can do operator== correctly for APInt

Re: [llvm-commits] ConstantInt Patch #3

2007-02-26 Thread Reid Spencer
One more time .. This one avoids collisions in the IntConstants map by using APInt directly in the DenseMap. This was made possible by relaxing APInt::operator= and using a small structure for the key type so that we can do operator== correctly for APInt (handling different bit widths). This pass

Re: [llvm-commits] ConstantInt Patch

2007-02-26 Thread Reid Spencer
Chris, Here is round two. This is a slightly larger patch that also includes the following changes: * APInt::getValue() -> getSExtValue() and getZExtValue() * const APInt& ConstantInt::getValue() const { return Val; } * ConstantInt::get(const Type*, const APInt&) * APInt c