- Feb 28, 2007
-
-
Reid Spencer authored
llvm-svn: 34703
-
Reid Spencer authored
llvm-svn: 34702
-
Evan Cheng authored
llvm-svn: 34701
-
- Feb 27, 2007
-
-
Evan Cheng authored
llvm-svn: 34700
-
Chris Lattner authored
llvm-svn: 34699
-
Evan Cheng authored
llvm-svn: 34698
-
Reid Spencer authored
the bit width of negative numbers by computing the minimum bit width for a negative value. E.g. 0x1800000000000000 could be just 0x8000000000000000 llvm-svn: 34695
-
Evan Cheng authored
llvm-svn: 34694
-
Evan Cheng authored
llvm-svn: 34692
-
Evan Cheng authored
llvm-svn: 34691
-
Evan Cheng authored
llvm-svn: 34690
-
Chris Lattner authored
llvm-svn: 34685
-
Chris Lattner authored
llvm-svn: 34684
-
Reid Spencer authored
llvm-svn: 34681
-
Reid Spencer authored
1. Add unsigned and signed versions of methods so a "bool" argument doesn't need to be passed in. 2. Make the various getMin/getMax functions all be inline since they are so simple. 3. Simplify sdiv and srem code. llvm-svn: 34680
-
Reid Spencer authored
llvm-svn: 34678
-
Reid Spencer authored
Implement review feedback: 1. Use new APInt::RoundDoubleToAPInt interface to specify the bit width so that we don't have to truncate or extend in constant folding. 2. Fix a pasteo in SDiv that prevented a check for overflow. 3. Fix the shift operators: undef happens when the shift amount is equal to the bitwidth. llvm-svn: 34677
-
Reid Spencer authored
2. Change RoundDoubleToAPInt to take a bit width parameter. Use that parameter to limit the bit width of the result. llvm-svn: 34673
-
Chris Lattner authored
llvm-svn: 34670
-
Devang Patel authored
llvm-svn: 34669
-
Nicolas Geoffray authored
llvm-svn: 34668
-
Nicolas Geoffray authored
llvm-svn: 34667
-
Jim Laskey authored
llvm-svn: 34666
-
Reid Spencer authored
llvm-svn: 34664
-
Reid Spencer authored
widths > 64 bits. llvm-svn: 34663
-
Reid Spencer authored
llvm-svn: 34662
-
Chris Lattner authored
llvm-svn: 34661
-
Reid Spencer authored
Implement constant folding via APInt instead of uint64_t. llvm-svn: 34660
-
Chris Lattner authored
llvm-svn: 34659
-
Chris Lattner authored
llvm-svn: 34658
-
Chris Lattner authored
lowering uses. llvm-svn: 34657
-
Chris Lattner authored
llvm-svn: 34656
-
Chris Lattner authored
llvm-svn: 34655
-
Chris Lattner authored
'clients', etc, and adding CCValAssign instead. llvm-svn: 34654
-
Chris Lattner authored
lib/Analysis/ConstantFolding. llvm-svn: 34653
-
Evan Cheng authored
to infinite loop: PPCMachineFunctionInfo.h updated: 1.2 -> 1.3 PPCRegisterInfo.cpp updated: 1.110 -> 1.111 PPCRegisterInfo.h updated: 1.28 -> 1.29 llvm-svn: 34652
-
Evan Cheng authored
forward() should not increment internal iterator. Its client may insert instruction between now and next forward() call. llvm-svn: 34649
-
Reid Spencer authored
llvm-svn: 34648
-
Reid Spencer authored
Implement the first step towards arbitrary precision integer support in LLVM. The APInt class provides arbitrary precision arithmetic and value representation. This patch changes ConstantInt to use APInt as its value representation without supporting bit widths > 64 yet. That change will come after ConstantFolding handles bit widths > 64 bits. llvm-svn: 34647
-
Reid Spencer authored
2. Rewrite operator=(const APInt& RHS) to allow the RHS to be a different bit width than the LHS. This makes it possible to use APInt as the key of a DenseMap, as needed for the IntConstants map in Constants.cpp 3. Fix operator=(uint64_t) to clear unused bits in case the client assigns a value that has more bits than the APInt allows. 4. Assert that bit widths are equal in operator== 5. Revise getHashValue() to put the bit width in the low order six bits. This should help to make i1 0, i2 0, ... i64 0 all distinct in the IntConstants DenseMap. llvm-svn: 34646
-