summaryrefslogtreecommitdiffstats
path: root/llvm/lib
Commit message (Collapse)AuthorAgeFilesLines
* Next PPC long double bits. First cut at constants.Dale Johannesen2007-10-119-16/+184
| | | | | | | | | 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-111-0/+46
| | | | llvm-svn: 42864
* 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
* Correct swapped arguments to getConstant.Duncan Sands2007-10-101-1/+1
| | | | llvm-svn: 42824
* Next PPC long double bits: ppcf128->i32 conversion.Dale Johannesen2007-10-106-3/+205
| | | | | | | 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
* Add new MemoryBuffer::getMemBufferCopy method.Chris Lattner2007-10-091-2/+15
| | | | llvm-svn: 42815
* Do not walk invalid iterator.Devang Patel2007-10-091-2/+2
| | | | llvm-svn: 42812
* Pass argc by value, not by reference, since it isn't modified.Dan Gohman2007-10-091-1/+1
| | | | 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
* Under 64-bit mode use LEA64_32r instead of LEA64r to save a byte.Evan Cheng2007-10-091-6/+13
| | | | llvm-svn: 42783
* Change a #include into a forward declarationChris Lattner2007-10-091-0/+1
| | | | 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
* 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
* 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-081-1/+21
| | | | 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
* Remove debugging printf to get build going on x86-64.Evan Cheng2007-10-081-2/+0
| | | | llvm-svn: 42757
* When we start enabling SMUL_LOHI/UMUL_LOHI or SDIVREM/UDIVREM inDan Gohman2007-10-081-0/+14
| | | | | | target-indepenent lowering, don't use them on PowerPC. llvm-svn: 42755
* Add convenience overloads of SelectionDAG::getNode that take a SDVTListDan Gohman2007-10-081-0/+36
| | | | | | and individual SDOperand operands. llvm-svn: 42753
* Move the space in overview output for commands out of each of theDan Gohman2007-10-081-1/+1
| | | | | | commands and into the common code. llvm-svn: 42752
* Simplify getIntPtrType, allowing it to work for arbitrary pointer sizes.Dan Gohman2007-10-081-6/+1
| | | | llvm-svn: 42751
* Use correct parentheses with the '&& "..."' idiom in an assert.Dan Gohman2007-10-081-2/+2
| | | | llvm-svn: 42750
* In -debug mode, dump SelectionDAGs both before and after theDan Gohman2007-10-081-1/+7
| | | | | | optimization passes. llvm-svn: 42749
* Add explicit keywords.Dan Gohman2007-10-081-5/+7
| | | | llvm-svn: 42747
* Use APInt::tcExtract. It's cleaner, and works :)Neil Booth2007-10-081-19/+14
| | | | llvm-svn: 42746
* Add a new function tcExtract for extracting a bignum from anNeil Booth2007-10-081-34/+76
| | | | | | | | | | | | | arbitrary range of bits embedded in the middle of another bignum. This kind of operation is desirable in many cases of software floating point, e.g. converting bignum integers to floating point numbers of fixed precision (you want to extract the precision most significant bits). Elsewhere, add an assertion, and exit the shift functions early if the shift count is zero. llvm-svn: 42745
* Begin the process of allowing DomTree on MBB's. Step One: template ↵Owen Anderson2007-10-081-16/+0
| | | | | | DomTreeNode by making it a typedef of a templated DomTreeNodeBase. llvm-svn: 42743
* Kill cycle of an live range is always the last use index + 1.Evan Cheng2007-10-081-1/+1
| | | | llvm-svn: 42742
* C and Objective Caml bindings for getFunction and getNamedGlobal. Also enhancedGordon Henriksen2007-10-081-0/+8
| | | | | | | the Objective Caml 'declare_*' functions to behave more or less like getOrInsertFunction. llvm-svn: 42740
* disable this entirely: it is causing use of invalidated iterators and ↵Chris Lattner2007-10-071-0/+2
| | | | | | infinite looping. llvm-svn: 42739
* Fix many regressions on x86 by avoiding dereferencing the end iterator.Chris Lattner2007-10-071-35/+38
| | | | llvm-svn: 42738
* C and Objective Caml bindings for GlobalVariable::isConstant.Gordon Henriksen2007-10-071-0/+11
| | | | llvm-svn: 42736
* Add back convertFromSignExtendedInteger.Neil Booth2007-10-071-0/+30
| | | | llvm-svn: 42735
* Now that convertFromUnsignedParts has a sane, constant interface,Neil Booth2007-10-071-5/+1
| | | | | | | convertFromZeroExtendedInteger can be simplified as it doesn't need to make a copy of the source bignum. llvm-svn: 42734
* Reimplement convertFromUnsignedInteger so it is passed a const bignum.Neil Booth2007-10-071-18/+29
| | | | | | | | | It used to modify its argument in-place. This interface is saner and the implementation more efficient. It will be needed for decimal->binary conversion. llvm-svn: 42733
* convertFromInteger, as originally written, expected sign-extendedNeil Booth2007-10-075-10/+12
| | | | | | | | input. APInt unfortunately zero-extends signed integers, so Dale modified the function to expect zero-extended input. Make this assumption explicit in the function name. llvm-svn: 42732
* combineLostFractions does not need to be a member functionNeil Booth2007-10-071-16/+15
| | | | llvm-svn: 42729
* C and Objective Caml bindings for PATypeHolder.Gordon Henriksen2007-10-071-0/+18
| | | | llvm-svn: 42713
* Bindings for the verifier.Gordon Henriksen2007-10-062-2/+40
| | | | llvm-svn: 42707
* Oops, I really wanted to commit this part also :)Anton Korobeynikov2007-10-061-2/+27
| | | | llvm-svn: 42700
* Move merge code into new helper function.Anton Korobeynikov2007-10-061-43/+34
| | | | llvm-svn: 42699
* Adopting a uniform naming convention for type constructors in bindings.Gordon Henriksen2007-10-061-10/+10
| | | | llvm-svn: 42698
OpenPOWER on IntegriCloud