On Wed, 2007-05-16 at 13:30 -0700, Chris Lattner wrote:
> > Fix a bug in the "fromString" method where radix 2,8 and 16 values
> > were
> > not being generated correctly because the shl operator does not
> > mutate its
> > object but returns a new value. Also, make the distinction between
> >
> Fix a bug in the "fromString" method where radix 2,8 and 16 values
> were
> not being generated correctly because the shl operator does not
> mutate its
> object but returns a new value. Also, make the distinction between
> radix
> 16 and the others more clear.
FWIW, I find this part of th
On May 13, 2007, at 4:57 PM, Reid Spencer wrote:
> On Sun, 2007-05-13 at 16:49 -0700, Chris Lattner wrote:
>> On May 13, 2007, at 4:45 PM, Reid Spencer wrote:
>>
>>> +APInt APInt::rotl(uint32_t rotateAmt) const {
>>> + // Don't get too fancy, just use existing shift/or facilities
>>> + APInt hi
On Sun, 2007-05-13 at 16:49 -0700, Chris Lattner wrote:
> On May 13, 2007, at 4:45 PM, Reid Spencer wrote:
>
> > +APInt APInt::rotl(uint32_t rotateAmt) const {
> > + // Don't get too fancy, just use existing shift/or facilities
> > + APInt hi(*this);
> > + APInt lo(*this);
> > + hi.shl(rotateA
On May 13, 2007, at 4:45 PM, Reid Spencer wrote:
> +APInt APInt::rotl(uint32_t rotateAmt) const {
> + // Don't get too fancy, just use existing shift/or facilities
> + APInt hi(*this);
> + APInt lo(*this);
> + hi.shl(rotateAmt);
> + lo.lshr(BitWidth - rotateAmt);
> + return hi | lo;
> +}
>
On Mon, 2007-03-12 at 12:48 -0500, Zhou Sheng wrote:
>
> Changes in directory llvm/lib/Support:
>
> APInt.cpp updated: 1.69 -> 1.70
> ---
> Log message:
>
> For APInt::z/sext(width), if width == BitWidth, just return *this.
Sheng, this is incorrect. It is not legal to use sext/zext with a bit
w
> + // Use a fast table for some small values. This also gets rid of
> some
> + // rounding errors in libc sqrt for small values.
> + if (magnitude <= 5) {
Please use a real table, not a switch, for this. It will be smaller
(codesize) and faster.
-Chris
> / Clean up the memory we allocated.
> - delete [] U;
> - delete [] V;
> - delete [] Q;
> - delete [] R;
> + if (U != &SPACE[0]) {
> +delete [] U;
> +delete [] V;
> +delete [] Q;
> +delete [] R;
> + }
> }
Please just use SmallVector instead of explicitly doing it
yourself
On Feb 20, 2007, at 11:13 AM, Evan Cheng wrote:
> Hi Reid,
> This breaks the build for me.
>
> $ make ENABLE_OPTIMIZED=1 -j2
> make[1]: Nothing to be done for `all'.
> llvm[1]: Compiling Annotation.cpp for Release build
> llvm[1]: Compiling APInt.cpp for Release build
> APInt.cpp:841: error: floati
Hi Reid,
This breaks the build for me.
$ make ENABLE_OPTIMIZED=1 -j2
make[1]: Nothing to be done for `all'.
llvm[1]: Compiling Annotation.cpp for Release build
llvm[1]: Compiling APInt.cpp for Release build
APInt.cpp:841: error: floating constant exceeds range of 'float'
APInt.cpp:843: error: flo
> + #include "llvm/ADT/APInt.h"
> + #include "llvm/DerivedTypes.h"
> + #include "llvm/Support/MathExtras.h"
> + #include
strings.h is not portable. Please use , and memcpy/memset/
etc instead of bzero and friends. I've #ifdef'd this file out
temporarily until this is resolved.
> + #include
11 matches
Mail list logo