aboutsummaryrefslogtreecommitdiff
path: root/lib
AgeCommit message (Collapse)Author
2005-06-20because some functions just use va_start and pass things to vfprintfAndrew Lenharth
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22269 91177308-0d34-0410-b5e6-96231b3b80d8
2005-06-20the correct fix was to fix AliasAnalysis.getModRefInfoAndrew Lenharth
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22268 91177308-0d34-0410-b5e6-96231b3b80d8
2005-06-20prevent GCSE from forwarding stores to loads around vaarg. This is uggly, ↵Andrew Lenharth
and I am trying to fix the AliasInfo, as it should catch the problem instead. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22266 91177308-0d34-0410-b5e6-96231b3b80d8
2005-06-20prevent va_arg from being hoisted from a loopAndrew Lenharth
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22265 91177308-0d34-0410-b5e6-96231b3b80d8
2005-06-19prevent DCE of vaarg intrinsics. This should take care of most regressionsAndrew Lenharth
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22263 91177308-0d34-0410-b5e6-96231b3b80d8
2005-06-19va_end fixAndrew Lenharth
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22262 91177308-0d34-0410-b5e6-96231b3b80d8
2005-06-19so this doesn't crash when run. It is hard to tell if things are right ↵Andrew Lenharth
enough to work correctly with all the TmpInstructions running around git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22261 91177308-0d34-0410-b5e6-96231b3b80d8
2005-06-19add a check for the mixing of vaarg and vanext with va_argAndrew Lenharth
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22260 91177308-0d34-0410-b5e6-96231b3b80d8
2005-06-18OK, at least get rid of old stuff, and mark what needs to be fixed for V9Andrew Lenharth
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22255 91177308-0d34-0410-b5e6-96231b3b80d8
2005-06-18core changes for varargsAndrew Lenharth
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22254 91177308-0d34-0410-b5e6-96231b3b80d8
2005-06-18Fix a problem with the strcmp optimization checking the wrong string andReid Spencer
not casting to the correct type. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22250 91177308-0d34-0410-b5e6-96231b3b80d8
2005-06-18Clean up some uninitialized variables and missing return statements thatReid Spencer
GCC 4.0.0 compiler (sometimes incorrectly) warns about under release build. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22249 91177308-0d34-0410-b5e6-96231b3b80d8
2005-06-17A start at a Sparc V8 Pattern ISel. Anyone want to implement the callingAndrew Lenharth
convention? ;) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22247 91177308-0d34-0410-b5e6-96231b3b80d8
2005-06-17silence incredibly braindead GCC 4 warningChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22246 91177308-0d34-0410-b5e6-96231b3b80d8
2005-06-17silence a bogus warningChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22245 91177308-0d34-0410-b5e6-96231b3b80d8
2005-06-17Removed IIIi specific changes. This should be fixed to add floating point ↵Tanya Lattner
deps for the IIi. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22243 91177308-0d34-0410-b5e6-96231b3b80d8
2005-06-17Special dep graph for SMS for superblocks.Tanya Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22242 91177308-0d34-0410-b5e6-96231b3b80d8
2005-06-17Special versions of the dep graph and scheduled for SMS for superblocks.Tanya Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22241 91177308-0d34-0410-b5e6-96231b3b80d8
2005-06-17Added statistic to count number of spills.Tanya Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22240 91177308-0d34-0410-b5e6-96231b3b80d8
2005-06-17Numerous bug fixes and the completed modschedSB algorithm (minor bugs still ↵Tanya Lattner
exist for course). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22239 91177308-0d34-0410-b5e6-96231b3b80d8
2005-06-17Added SMS for superblocks as an option (experimental)Tanya Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22238 91177308-0d34-0410-b5e6-96231b3b80d8
2005-06-17This is not true: (X != 13 | X < 15) -> X < 15Chris Lattner
It is actually always true. This fixes PR586 and Transforms/InstCombine/2005-06-16-SetCCOrSetCCMiscompile.ll git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22236 91177308-0d34-0410-b5e6-96231b3b80d8
2005-06-17Don't crash when dealing with INTMIN. This fixes PR585 andChris Lattner
Transforms/InstCombine/2005-06-16-RangeCrash.ll git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22234 91177308-0d34-0410-b5e6-96231b3b80d8
2005-06-17Don't crash on: X = phi (X, X).Chris Lattner
This fixes PR584 and Transforms/SimplifyCFG/2005-06-16-PHICrash.ll git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22232 91177308-0d34-0410-b5e6-96231b3b80d8
2005-06-17avoid constructing out of range shift amounts.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22230 91177308-0d34-0410-b5e6-96231b3b80d8
2005-06-16Fix bug 537 test 2, which checks to make sure that we fold A+(B-A) -> B forNate Begeman
integer types. Add a couple checks to not perform these kinds of transform on floating point values. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22228 91177308-0d34-0410-b5e6-96231b3b80d8
2005-06-16Fix PR583 and testcase Transforms/InstCombine/2005-06-15-DivSelectCrash.llChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22227 91177308-0d34-0410-b5e6-96231b3b80d8
2005-06-16Fix PR571, removing code that does just the WRONG thing :)Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22225 91177308-0d34-0410-b5e6-96231b3b80d8
2005-06-16Fix a bug in my previous patch. Do not get the shift amount type (whichChris Lattner
is always ubyte, get the type being shifted). This unbreaks espresso git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22224 91177308-0d34-0410-b5e6-96231b3b80d8
2005-06-15Fix PR575, patch provided by John Mellor-Crummey. Thanks!Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22223 91177308-0d34-0410-b5e6-96231b3b80d8
2005-06-15Fix PR582. The rewriter can move casts around, which invalidated theChris Lattner
BB iterator. This fixes Transforms/IndVarsSimplify/2005-06-15-InstMoveCrash.ll git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22221 91177308-0d34-0410-b5e6-96231b3b80d8
2005-06-15Do not promote globals only used by main to locals if there are constantexprsChris Lattner
or other uses hanging off of them. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22219 91177308-0d34-0410-b5e6-96231b3b80d8
2005-06-15Fix PR577 and testcase InstCombine/2005-06-15-ShiftSetCCCrash.ll.Chris Lattner
Do not perform undefined out of range shifts. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22217 91177308-0d34-0410-b5e6-96231b3b80d8
2005-06-15Put the hack back in that removes features, causes regressions to fail, butReid Spencer
allows test programs to succeed. Actual fix for this is forthcoming. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22213 91177308-0d34-0410-b5e6-96231b3b80d8
2005-06-15Commit fix for generating conditional branch pseudo instructions thatNate Begeman
avoids dereferencing the end() iterator when selecting the fallthrough block. This requires an ilist change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22212 91177308-0d34-0410-b5e6-96231b3b80d8
2005-06-14Commit a small improvement that is already in the x86 and ia64 backends toNate Begeman
not generate unnecessary register copies. This improves compile time by 2-5% depending on the test. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22210 91177308-0d34-0410-b5e6-96231b3b80d8
2005-06-13Unbreak several InstCombine regression checks introduced by a hack toReid Spencer
fix the bzip2 test. A better hack is needed. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22209 91177308-0d34-0410-b5e6-96231b3b80d8
2005-06-12When compiled with GCC 4.0, a latent bug was exposed where both SparcV9Nate Begeman
and the target independant register allocator were both using a class named 'LiveRange'. This lead to the target independant code calling code in the SparcV9 backend, which crashed. Fixed by renaming SparcV9's LiveRange to V9LiveRange. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22208 91177308-0d34-0410-b5e6-96231b3b80d8
2005-06-12Fix a memory smasher caught by Mac OS X's debug malloc library. We wereNate Begeman
incorrectly using an iterator after it was invalid. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22207 91177308-0d34-0410-b5e6-96231b3b80d8
2005-06-09Fix a 64-bit problem, passing (int)0 through ... instead of (void*)0Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22206 91177308-0d34-0410-b5e6-96231b3b80d8
2005-06-09Fix a problem on 64-bit targets where we passed (int)0 through ... instead ofChris Lattner
(void*)0. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22205 91177308-0d34-0410-b5e6-96231b3b80d8
2005-06-08fix BranchCC with a setCC with an arg of 0Andrew Lenharth
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22203 91177308-0d34-0410-b5e6-96231b3b80d8
2005-06-08For PR572:Reid Spencer
Undefine the PPC symbol which is defined by Linux/PPC (erroneously) so it doesn't pollute the user namespace and clash with our namespace declarations. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22202 91177308-0d34-0410-b5e6-96231b3b80d8
2005-06-08Handle some more real world cases of rlwimi. These don't come up thatNate Begeman
regularly in "normal" code, but for things like software graphics, they make a big difference. For the following code: unsigned short Trans16Bit(unsigned srcA,unsigned srcB,unsigned alpha) { unsigned tmpA,tmpB,mixed; tmpA = ((srcA & 0x03E0) << 15) | (srcA & 0x7C1F); tmpB = ((srcB & 0x03E0) << 15) | (srcB & 0x7C1F); mixed = (tmpA * alpha) + (tmpB * (32 - alpha)); return ((mixed >> 5) & 0x7C1F) | ((mixed >> 20) & 0x03E0); } We now generate: _Trans16Bit: .LBB_Trans16Bit_0: ; entry andi. r2, r4, 31775 rlwimi r2, r4, 15, 7, 11 subfic r4, r5, 32 mullw r2, r2, r4 andi. r4, r3, 31775 rlwimi r4, r3, 15, 7, 11 mullw r3, r4, r5 add r2, r2, r3 srwi r3, r2, 5 andi. r3, r3, 31775 rlwimi r3, r2, 12, 22, 26 blr Instead of: _Trans16Bit: .LBB_Trans16Bit_0: ; entry slwi r2, r4, 15 rlwinm r2, r2, 0, 7, 11 andi. r4, r4, 31775 or r2, r2, r4 subfic r4, r5, 32 mullw r2, r2, r4 slwi r4, r3, 15 rlwinm r4, r4, 0, 7, 11 andi. r3, r3, 31775 or r3, r4, r3 mullw r3, r3, r5 add r2, r2, r3 srwi r3, r2, 5 andi. r3, r3, 31775 srwi r2, r2, 20 rlwimi r3, r2, 0, 22, 26 blr git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22201 91177308-0d34-0410-b5e6-96231b3b80d8
2005-06-08Fix lli linking on Mac OS X 10.4.1 for Intel.Nate Begeman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22200 91177308-0d34-0410-b5e6-96231b3b80d8
2005-06-08Remove code for conversion from old style va_args. Preparing the way forAndrew Lenharth
returning to the old style :) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22199 91177308-0d34-0410-b5e6-96231b3b80d8
2005-06-06Fix spelling of `correlate'Misha Brukman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22196 91177308-0d34-0410-b5e6-96231b3b80d8
2005-06-06allow marking of loads and stores in the instruction stream with enough ↵Andrew Lenharth
information to reconstruct the Value* if it existed git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22195 91177308-0d34-0410-b5e6-96231b3b80d8
2005-06-06hide basic block labels. The utility of these for debuging is long since passedAndrew Lenharth
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22194 91177308-0d34-0410-b5e6-96231b3b80d8
2005-06-06* Replace block of commented-out lines with #if 0Misha Brukman
* Remove warning "control reaches end of non-void function" git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22193 91177308-0d34-0410-b5e6-96231b3b80d8