- Feb 22, 2007
-
-
Jim Laskey authored
llvm-svn: 34494
-
Jim Laskey authored
llvm-svn: 34493
-
Jim Laskey authored
llvm-svn: 34492
-
Jim Laskey authored
llvm-svn: 34491
-
Andrew Lenharth authored
llvm-svn: 34490
-
Jim Laskey authored
llvm-svn: 34488
-
Devang Patel authored
llvm-svn: 34487
-
Chris Lattner authored
llvm-svn: 34486
-
Reid Spencer authored
extract the value, not the number of words implied by the active bits. This fixes numerous, but not all divide bugs. llvm-svn: 34484
-
Reid Spencer authored
word size. This fixes all reads of uninitialized data (buffer over read) and makes APInt.cpp memory clean, per valgrind. The only remaining problem is division in a few cases. llvm-svn: 34483
-
- Feb 21, 2007
-
-
Jim Laskey authored
llvm-svn: 34482
-
Jim Laskey authored
llvm-svn: 34481
-
Jim Laskey authored
llvm-svn: 34480
-
Jim Laskey authored
llvm-svn: 34479
-
Jim Laskey authored
llvm-svn: 34478
-
Jim Laskey authored
llvm-svn: 34477
-
Jim Laskey authored
llvm-svn: 34476
-
Jim Laskey authored
llvm-svn: 34475
-
Jim Laskey authored
llvm-svn: 34474
-
Jim Laskey authored
llvm-svn: 34473
-
Jim Laskey authored
llvm-svn: 34472
-
Jim Laskey authored
llvm-svn: 34471
-
Evan Cheng authored
Add implicit uses of EBX to calls to ensure liveintervalanalysis does not treat the GOT in EBX move as dead upon definition. This should fix PR1207. llvm-svn: 34470
-
Devang Patel authored
llvm-svn: 34469
-
Reid Spencer authored
reads, and reduce the number of temporary APInt instances we construct. llvm-svn: 34467
-
Chris Lattner authored
fixes PR1208. llvm-svn: 34466
-
Reid Spencer authored
llvm-svn: 34465
-
Reid Spencer authored
llvm-svn: 34464
-
Reid Spencer authored
2. Change 0 initialization of union to larger component so all is zeroed. 3. Fix the borrow logic in subtraction so it works for > 128 bits. 4. Rewrite fromString to use a simpler but correct algorithm and also to not set the bit width contrary to the user's request. 5. Optimize toString a bit by making it only do one Knuth divide per iteration instead of two. With these changes, all arithmetic passes (verified by pari/GP) up to 1024 bits except for certain division cases. llvm-svn: 34463
-
Devang Patel authored
llvm-svn: 34462
-
Evan Cheng authored
llvm-svn: 34461
-
Evan Cheng authored
llvm-svn: 34460
-
Reid Spencer authored
Fix toString to correctly return "0" for zero valued APInts over 128 bits. llvm-svn: 34459
-
Reid Spencer authored
functions more. llvm-svn: 34458
-
- Feb 20, 2007
-
-
Evan Cheng authored
llvm-svn: 34457
-
Dan Gohman authored
llvm-svn: 34456
-
Reid Spencer authored
Attempt #3 for getting a portable INFINITY value. llvm-svn: 34454
-
Reid Spencer authored
constants (avoids warnings). llvm-svn: 34452
-
Reid Spencer authored
1. Ensure pVal is set to 0 in each constructor. 2. Fix roundToDouble to make correct calculations and not read beyond the end of allocated memory. 3. Implement Knuth's "classical algorithm" for division from scratch and eliminate buffer overflows and uninitialized mememory reads. Document it properly too. 4. Implement a wrapper function for KnuthDiv which handles the 64-bit to 32-bit conversion and back. It also implement short division for the n == 1 case that Knuth's algorithm can't handle. 5. Simplify the logic of udiv and urem a little, make them exit early, and have them use the "divide" wrapper function to perform the division or remainder operation. 6. Move the toString function to the end of the file, closer to where the division functions are located. Note: division is still broken for some > 64 bit values, but at least it doesn't crash any more. llvm-svn: 34449
-
Reid Spencer authored
llvm-svn: 34448
-