summaryrefslogtreecommitdiffstats
path: root/llvm/lib
Commit message (Collapse)AuthorAgeFilesLines
...
* Make sure not to break eh_return.Evan Cheng2007-07-171-9/+10
| | | | llvm-svn: 39978
* Update.Evan Cheng2007-07-171-3/+1
| | | | llvm-svn: 39977
* Missed the case where alloca is used but the stack size (not including ↵Evan Cheng2007-07-171-17/+17
| | | | | | callee-saved portion) is zero. Thanks Dan. llvm-svn: 39974
* detect invalid combination of sret and byvalRafael Espindola2007-07-171-0/+4
| | | | llvm-svn: 39971
* Use push / pop for prologues and epilogues.Evan Cheng2007-07-173-89/+152
| | | | llvm-svn: 39967
* no email addrs in file headersChris Lattner2007-07-174-12/+8
| | | | llvm-svn: 39962
* Unbreak the build by putting calls to free into the implementation file andReid Spencer2007-07-171-0/+7
| | | | | | having that implementation file #include <cstdlib>. llvm-svn: 39952
* Take advantage of undefined behavior if the source program tries to GEPOwen Anderson2007-07-161-11/+4
| | | | | | beyond the end of an alloca to make FastDSE faster and more aggressive. llvm-svn: 39945
* Add support for walking up memory def chains, which enables finding many moreOwen Anderson2007-07-162-31/+60
| | | | | | dead stores on 400.perlbench. llvm-svn: 39929
* Use realloc() to (potentially) resize the contents of SmallPtrSet in place.Owen Anderson2007-07-161-10/+9
| | | | llvm-svn: 39926
* Return Undef if the block has no dominator. This was required to allowReid Spencer2007-07-161-0/+4
| | | | | | | | llvm-gcc build to succeed. Without this change it fails in libstdc++ compilation. This causes no regressions in dejagnu tests. However, someone who knows this code better might want to review it. llvm-svn: 39924
* Use ConstantFoldFP for folding all unary floating-point operations which mayDan Gohman2007-07-161-20/+25
| | | | | | | | | have an error, and refector out the code for binary operators into ConstantFoldBinaryFP and use it for all binary floating-point operations which may have an error. These functions still rely exclusively on errno to detect errors though. llvm-svn: 39923
* Fix comments about vectors to use the current wording.Dan Gohman2007-07-169-23/+23
| | | | llvm-svn: 39921
* Repair a regression in Transforms/InstCombine/mul.ll that Reid noticed.Chris Lattner2007-07-161-0/+13
| | | | llvm-svn: 39896
* Start adding and cleaning up comments.Nick Lewycky2007-07-161-4/+12
| | | | llvm-svn: 39894
* Handle decrementing loops properly. Fixes PR1533.Nick Lewycky2007-07-161-15/+13
| | | | | | | | Always pass the constant as the second parameter to HowManyLessThans. Remove obsolete "isSigned" parameter. llvm-svn: 39893
* Implement shift-simplify.ll:test[45].Chris Lattner2007-07-151-11/+23
| | | | | | | | | | | First teach instcombine that sign bit checks only demand the sign bit, this allows simplify demanded bits to hack on expressions better. Second, teach instcombine that ashr is useless if only the sign bit is demanded. llvm-svn: 39880
* Implement shift-simplify.ll:test3, turning:Chris Lattner2007-07-151-103/+116
| | | | | | | | (X << 31) <s 0 --> (X&1) != 0 This happens dozens of times in the CFE. llvm-svn: 39879
* Clarify the language. Pointed out by Duncan Sands.Nick Lewycky2007-07-141-2/+4
| | | | llvm-svn: 39857
* Fix the build. Patch from Holger Schurig.Nick Lewycky2007-07-141-1/+2
| | | | llvm-svn: 39856
* Long live the exception handling!Anton Korobeynikov2007-07-1421-33/+225
| | | | | | | | | | | | | | | This patch fills the last necessary bits to enable exceptions handling in LLVM. Currently only on x86-32/linux. In fact, this patch adds necessary intrinsics (and their lowering) which represent really weird target-specific gcc builtins used inside unwinder. After corresponding llvm-gcc patch will land (easy) exceptions should be more or less workable. However, exceptions handling support should not be thought as 'finished': I expect many small and not so small glitches everywhere. llvm-svn: 39855
* Use maximal intersection algorithm exclusively. Fixes miscompile bug.Nick Lewycky2007-07-141-11/+11
| | | | llvm-svn: 39852
* Add alternate ConstantRange intersection algorithm.Nick Lewycky2007-07-141-0/+81
| | | | llvm-svn: 39851
* Make LCSSA a loop pass.Devang Patel2007-07-131-21/+11
| | | | llvm-svn: 39844
* Fix for PR1540: Specify F0, F1 are sub-registers of D0, etc.Evan Cheng2007-07-131-2/+2
| | | | llvm-svn: 39843
* Handle GEPs with all-zero indices in the same way we handle pointer-pointer ↵Owen Anderson2007-07-131-3/+12
| | | | | | | | bitcasts. Also, fix a potentia infinite loop. This brings FastDSE to parity with old DSE on 175.vpr. llvm-svn: 39839
* Disable claims to preserve analysis until open issues are resolved.Devang Patel2007-07-132-10/+0
| | | | llvm-svn: 39834
* Fix the comment for LegalizeOp to more accurately reflect what it does.Dan Gohman2007-07-131-3/+4
| | | | llvm-svn: 39827
* Don't call SimplifyVBinOp for non-vector operations, following earlier reviewDan Gohman2007-07-131-25/+49
| | | | | | feedback. This theoretically makes the common (scalar) case more efficient. llvm-svn: 39823
* Be more aggressive in removing dead stores, and in removing instructions ↵Owen Anderson2007-07-131-8/+24
| | | | | | | | trivially dead after DSE. This drastically improves the effect of FastDSE on kimwitu++. llvm-svn: 39819
* Modify previous patch per review comments.Dale Johannesen2007-07-132-3/+5
| | | | llvm-svn: 39817
* Skeleton of post-RA scheduler; doesn't do anything yet.Dale Johannesen2007-07-138-7/+94
| | | | | | | Change name of -sched option and DEBUG_TYPE to pre-RA-sched; adjust testcases. llvm-svn: 39816
* Fix CodeGen/Generic/print-arith-fp.ll on sparc (PR1551)Chris Lattner2007-07-131-0/+2
| | | | llvm-svn: 39813
* Reimplement removing stores to allocas at the end of a function. This ↵Owen Anderson2007-07-121-0/+160
| | | | | | should be safe now. llvm-svn: 39790
* Make the condition-checking for free with non-trivial dependencies more correct.Owen Anderson2007-07-121-7/+19
| | | | llvm-svn: 39789
* Remove the end-block handling code. It was unsafe, and making it safe would ↵Owen Anderson2007-07-121-55/+0
| | | | | | have resulted in falling back to the slow DSE case. I need to think some more about the right way to handle this. llvm-svn: 39788
* ARM: make branch folder remove unconditional branchesDale Johannesen2007-07-122-7/+15
| | | | | | | | following jump tables that it earlier inserted. This would be OK on other targets but is needed for correctness only on ARM (constant islands needs to find jump tables). llvm-svn: 39782
* The type ids making up a filter are unsigned, andDuncan Sands2007-07-121-2/+2
| | | | | | | should be output as unsigned values. Checked against gcc. llvm-svn: 39775
* checked in as obvious,Gabor Greif2007-07-121-1/+0
| | | | | | thanks Benoit Boissinot! llvm-svn: 39774
* another missed SSE optimizationChris Lattner2007-07-121-0/+29
| | | | llvm-svn: 39772
* Let MemoryDependenceAnalysis take care of updating AliasAnalysis.Owen Anderson2007-07-122-5/+2
| | | | llvm-svn: 39769
* Preserve analysis info.Devang Patel2007-07-111-20/+136
| | | | llvm-svn: 39767
* Added support for Mips specific GAS directivesBruno Cardoso Lopes2007-07-112-20/+159
| | | | | | | Fixed print immediate Fixed Identation on MipsISelDAGToDAG.cpp llvm-svn: 39764
* Added support for framepointerBruno Cardoso Lopes2007-07-111-28/+162
| | | | | | | Prologue/Epilogue support fp,ra save/restore and use the stack frame the right way! llvm-svn: 39763
* Handle the case where an entire structure is freed, and its dependency is a ↵Owen Anderson2007-07-111-42/+101
| | | | | | | | | | store to a field within that structure. Also, refactor the runOnBasicBlock() function, splitting some of the special cases into separate functions. llvm-svn: 39762
* Now that stack is represented the right way, LOA starts at 0Bruno Cardoso Lopes2007-07-111-6/+7
| | | | llvm-svn: 39761
* Fixed AddLiveOut issuesBruno Cardoso Lopes2007-07-111-42/+72
| | | | | | FI's created the write way to represent Mips stack llvm-svn: 39760
* Removed unused immediate PatLeaf, fixed lui instructionBruno Cardoso Lopes2007-07-111-12/+13
| | | | llvm-svn: 39759
* Added MipsMachineFunction class, to hold Mips dinamic stack info when ↵Bruno Cardoso Lopes2007-07-111-0/+54
| | | | | | inserting Prologue/Epilog llvm-svn: 39758
* Add support for eliminate stores to stack-allocated memory locations at the endOwen Anderson2007-07-111-1/+45
| | | | | | of a function. llvm-svn: 39754
OpenPOWER on IntegriCloud