summaryrefslogtreecommitdiffstats
path: root/llvm
Commit message (Collapse)AuthorAgeFilesLines
* Added tail call optimization to the x86 back end. It can beArnold Schwaighofer2007-10-1116-65/+928
| | | | | | | | | | | enabled by passing -tailcallopt to llc. The optimization is performed if the following conditions are satisfied: * caller/callee are fastcc * elf/pic is disabled OR elf/pic enabled + callee is in module + callee has visibility protected or hidden llvm-svn: 42870
* Adding myselfArnold Schwaighofer2007-10-111-0/+4
| | | | llvm-svn: 42869
* Next PPC long double bits. First cut at constants.Dale Johannesen2007-10-1110-18/+196
| | | | | | | | | No compile-time support for constant operations yet, just format transformations. Make readers and writers work. Split constants into 2 doubles in Legalize. llvm-svn: 42865
* Lower memcpy if it makes sense.Devang Patel2007-10-112-0/+64
| | | | llvm-svn: 42864
* make bitvector &= do the right thing if vectors have mismatched length.Chris Lattner2007-10-111-2/+11
| | | | llvm-svn: 42860
* Add a new use_iterator::atEnd() method, which allows us to shrinkChris Lattner2007-10-112-6/+8
| | | | | | pred_iterator down to a single ivar. llvm-svn: 42859
* Added iterators to ImmutableSet.Ted Kremenek2007-10-111-3/+24
| | | | llvm-svn: 42851
* Added some doxygen comments to ImmutableSet.Ted Kremenek2007-10-101-1/+18
| | | | llvm-svn: 42850
* Removed uninformative assertions that catch problems that willTed Kremenek2007-10-101-22/+5
| | | | | | fire anyway at runtime due to a NULL dereference. llvm-svn: 42848
* Removed "height" of an AVL tree node from its Profile. This isTed Kremenek2007-10-101-7/+4
| | | | | | | implicitly captured by using the addresses of its children in the profile. llvm-svn: 42847
* Removed spurious forward declaration to a structure that will no longer be used.Ted Kremenek2007-10-101-1/+0
| | | | llvm-svn: 42839
* Added some doxygen comments to a few methods of ImutAVLTree.Ted Kremenek2007-10-101-2/+41
| | | | llvm-svn: 42837
* Updated VC++ build system.Hartmut Kaiser2007-10-107-111/+290
| | | | llvm-svn: 42835
* Added preliminary support for iterators in ImutAVLTree.Ted Kremenek2007-10-101-4/+218
| | | | | | Implemented ImutAVLTree::isEqual. llvm-svn: 42833
* Fix CodeGen/Generic/BasicInstrs.llx on sparc by marking divremChris Lattner2007-10-101-1/+3
| | | | | | illegal. Thanks to gabor for pointing this out! llvm-svn: 42832
* Renamed internal method "Create" of ImutAVLTree to "CreateNode".Ted Kremenek2007-10-101-13/+14
| | | | llvm-svn: 42825
* Correct swapped arguments to getConstant.Duncan Sands2007-10-101-1/+1
| | | | llvm-svn: 42824
* Fix 80-column violationsBill Wendling2007-10-101-29/+29
| | | | llvm-svn: 42823
* Next PPC long double bits: ppcf128->i32 conversion.Dale Johannesen2007-10-107-3/+207
| | | | | | | Surprisingly complicated. Adds getTargetNode for 2 outputs, no inputs (missing). llvm-svn: 42822
* Bad choice of variable name.Evan Cheng2007-10-101-2/+2
| | | | llvm-svn: 42821
* Fix an extremely stupid bug that prevented first round of coalescing ↵Evan Cheng2007-10-091-1/+2
| | | | | | (physical registers only) from happening. llvm-svn: 42820
* Modified XCode project to contain...Ted Kremenek2007-10-091-0/+7
| | | | | | | | ADT/DenseSet.h ADT/ImmutableMap.h ADT/ImmutableSet.h llvm-svn: 42816
* Add new MemoryBuffer::getMemBufferCopy method.Chris Lattner2007-10-092-2/+21
| | | | llvm-svn: 42815
* Fix indentation.Devang Patel2007-10-091-6/+6
| | | | llvm-svn: 42814
* Added implementation of immutable (functional) maps and sets, asTed Kremenek2007-10-092-0/+771
| | | | | | | | | | | implemented on top of a functional AVL tree. The AVL balancing code is inspired by the OCaml implementation of Map, which also uses a functional AVL tree. Documentation is currently limited and cleanups are planned, but this code compiles and has been tested. llvm-svn: 42813
* Do not walk invalid iterator.Devang Patel2007-10-091-2/+2
| | | | llvm-svn: 42812
* Add LLVMFoldingBuilderDevang Patel2007-10-091-3/+215
| | | | llvm-svn: 42806
* Remove an unnecessary friend declaration.Dan Gohman2007-10-091-1/+0
| | | | llvm-svn: 42805
* update prototype, fixing build errorChris Lattner2007-10-091-1/+1
| | | | llvm-svn: 42789
* Pass argc by value, not by reference, since it isn't modified.Dan Gohman2007-10-092-2/+2
| | | | llvm-svn: 42788
* LowerIntegerDivOrRem no longer exists.Dan Gohman2007-10-091-1/+0
| | | | llvm-svn: 42787
* Fix grammar in a comment.Dan Gohman2007-10-091-3/+3
| | | | llvm-svn: 42786
* This is done.Dan Gohman2007-10-091-30/+0
| | | | llvm-svn: 42785
* These two tests now require only two multiply instructions,Dan Gohman2007-10-092-0/+28
| | | | | | instead of four. llvm-svn: 42784
* Under 64-bit mode use LEA64_32r instead of LEA64r to save a byte.Evan Cheng2007-10-091-6/+13
| | | | llvm-svn: 42783
* Fix problems where DenseMap used operator!= instead of correctly Chris Lattner2007-10-091-10/+15
| | | | | | calling the traits implementation of isEqual. llvm-svn: 42782
* Change a #include into a forward declarationChris Lattner2007-10-092-1/+2
| | | | llvm-svn: 42781
* Position Independent Code (PIC) support [3]Bruno Cardoso Lopes2007-10-093-20/+51
| | | | llvm-svn: 42780
* Position Independent Code (PIC) support [2]Bruno Cardoso Lopes2007-10-093-10/+32
| | | | | | | | | | - Added a function to hold the stack location where GP must be stored during LowerCALL - AsmPrinter now emits directives based on relocation type - PIC_ set to default relocation type (same as GCC) llvm-svn: 42779
* Position Independent Code (PIC) support [1]Bruno Cardoso Lopes2007-10-092-18/+44
| | | | | | | - Modified instruction format to handle pseudo instructions - Added LoadAddr SDNode to load symbols. llvm-svn: 42778
* Update test.Evan Cheng2007-10-081-41/+40
| | | | llvm-svn: 42775
* Bug fix. X86 was emitting redundant setcc and test instructions before a ↵Evan Cheng2007-10-081-20/+13
| | | | | | conditional move. llvm-svn: 42774
* Call getFunctionNumber() instead of referencing FunctionNumber directly,Dan Gohman2007-10-081-1/+1
| | | | | | for consistency. llvm-svn: 42769
* Mark the prefetch intrinsic as IntrWriteArgMem, instead of theDan Gohman2007-10-081-1/+5
| | | | | | | default of IntrWriteMem, to at least indicate that it doesn't "capture" the argument pointer. llvm-svn: 42768
* These two tests now require only three multiply instructions,Dan Gohman2007-10-082-0/+12
| | | | | | instead of four. llvm-svn: 42765
* Various improvements to the documentation, contributed byChris Lattner2007-10-081-23/+62
| | | | | | Joshua Haberman! llvm-svn: 42763
* Migrate X86 and ARM from using X86ISD::{,I}DIV and ARMISD::MULHILO{U,S} toDan Gohman2007-10-088-222/+273
| | | | | | | | use ISD::{S,U}DIVREM and ISD::{S,U}MUL_HIO. Move the lowering code associated with these operators into target-independent in LegalizeDAG.cpp and TargetLowering.cpp. llvm-svn: 42762
* Allow x86 compare to be commutable by default.Evan Cheng2007-10-081-9/+0
| | | | llvm-svn: 42761
* C and Objective Caml bindings for PHINode::addIncoming etc.Gordon Henriksen2007-10-086-22/+139
| | | | llvm-svn: 42760
* DAGCombiner support for UDIVREM/SDIVREM and UMUL_LOHI/SMUL_LOHI. Dan Gohman2007-10-081-17/+137
| | | | | | | | | Check if one of the two results unneeded so see if a simpler operator could bs used. Also check to see if each of the two computations could be simplified if they were split into separate operators. Factor out the code that calls visit() so that it can be used for this purpose. llvm-svn: 42759
OpenPOWER on IntegriCloud