aboutsummaryrefslogtreecommitdiffstats
path: root/include
Commit message (Collapse)AuthorAgeFilesLines
* Optimize most common case by using single RetVal in ReturnInst.Devang Patel2008-02-261-0/+18
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47607 91177308-0d34-0410-b5e6-96231b3b80d8
* DetabifyBill Wendling2008-02-264-25/+25
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47597 91177308-0d34-0410-b5e6-96231b3b80d8
* Refactor inline asm constraint matching code out of SDIsel into TargetLowering.Evan Cheng2008-02-261-1/+90
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47587 91177308-0d34-0410-b5e6-96231b3b80d8
* Pass const vectors by reference.Devang Patel2008-02-261-4/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47577 91177308-0d34-0410-b5e6-96231b3b80d8
* Add missing include (for ptrdiff_t).Eli Friedman2008-02-251-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47576 91177308-0d34-0410-b5e6-96231b3b80d8
* Factor the assert for indexed loads/stores out of LoadSDNodeDan Gohman2008-02-251-8/+4
| | | | | | | and StoreSDNode into LSBaseSDNode. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47570 91177308-0d34-0410-b5e6-96231b3b80d8
* add an assertion to catch a null PATypeHolder, patch by Erick TryzelaarChris Lattner2008-02-251-1/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47563 91177308-0d34-0410-b5e6-96231b3b80d8
* Convert MaskedValueIsZero and all its users to use APInt. Also addDan Gohman2008-02-251-1/+5
| | | | | | | a SignBitIsZero function to simplify a common use case. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47561 91177308-0d34-0410-b5e6-96231b3b80d8
* add LSBaseSDNode::getOffset at Dan's request.Chris Lattner2008-02-251-0/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47558 91177308-0d34-0410-b5e6-96231b3b80d8
* prune #includes, fit in 80 cols.Chris Lattner2008-02-252-6/+7
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47556 91177308-0d34-0410-b5e6-96231b3b80d8
* make this self contained.Chris Lattner2008-02-251-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47555 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a new method to SDNode/SDOperand named getValueSizeInBitsDan Gohman2008-02-251-0/+12
| | | | | | | | that combines getValueType and MVT::getSizeInBits, since this occurrs frequently. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47552 91177308-0d34-0410-b5e6-96231b3b80d8
* Correctly determine whether a argument load can be folded into its uses.Evan Cheng2008-02-251-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47545 91177308-0d34-0410-b5e6-96231b3b80d8
* Some platforms use the same name for 32-bit and 64-bit registers (likeBill Wendling2008-02-241-0/+7
| | | | | | | | | | %r3 on PPC) in their ASM files. However, it's hard for humans to read during debugging. Adding a new field to the register data that lets you specify a different name to be printed than the one that goes into the ASM file -- %x3 instead of %r3, for instance. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47534 91177308-0d34-0410-b5e6-96231b3b80d8
* Merge current work back to tree to minimize diffs and drift. Major highlightsScott Michel2008-02-231-2/+13
| | | | | | | | | | | | | | | for CellSPU modifications: - SPUInstrInfo.td refactoring: "multiclass" really is _your_ friend. - Other improvements based on refactoring effort in SPUISelLowering.cpp, esp. in SPUISelLowering::PerformDAGCombine(), where zero amount shifts and rotates are now eliminiated, other scalar-to-vector-to-scalar silliness is also eliminated. - 64-bit operations are being implemented, _muldi3.c gcc runtime now compiles and generates the right code. More work still needs to be done. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47532 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove unnecessary "inline" keywords.Devang Patel2008-02-231-25/+21
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47516 91177308-0d34-0410-b5e6-96231b3b80d8
* Use dyn_cast instead of isa + cast.Devang Patel2008-02-231-1/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47511 91177308-0d34-0410-b5e6-96231b3b80d8
* Forgot this.Evan Cheng2008-02-231-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47510 91177308-0d34-0410-b5e6-96231b3b80d8
* To support multiple return values, now ret instruction supports multiple ↵Devang Patel2008-02-232-14/+9
| | | | | | operands instead of one aggregate operand. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47508 91177308-0d34-0410-b5e6-96231b3b80d8
* Split ParameterAttributes.h, putting the complicatedDale Johannesen2008-02-222-204/+229
| | | | | | | | | stuff into ParamAttrsList.h. Per feedback from ParamAttrs changes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47504 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove an invalid assertion now that there are implicit virtual register ↵Evan Cheng2008-02-221-2/+0
| | | | | | operands. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47493 91177308-0d34-0410-b5e6-96231b3b80d8
* Add StripDeadPrototypes pass.Devang Patel2008-02-221-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47488 91177308-0d34-0410-b5e6-96231b3b80d8
* Pass alignment on ByVal parameters, from FE, allDale Johannesen2008-02-225-1/+27
| | | | | | | | the way through. It is now used for codegen. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47484 91177308-0d34-0410-b5e6-96231b3b80d8
* Add smart refcounting pointer class to ADT back (known before as ↵Anton Korobeynikov2008-02-221-0/+264
| | | | | | IntrusiveSPtr.h). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47482 91177308-0d34-0410-b5e6-96231b3b80d8
* Unbreak build for VC2008. Patch by Argiris Kirtzidis!Anton Korobeynikov2008-02-221-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47480 91177308-0d34-0410-b5e6-96231b3b80d8
* Enable re-materialization of instructions which have virtual register ↵Evan Cheng2008-02-221-9/+25
| | | | | | | | | operands if the definition of the operand also reaches its uses. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47475 91177308-0d34-0410-b5e6-96231b3b80d8
* Read and write getresult.Devang Patel2008-02-221-1/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47471 91177308-0d34-0410-b5e6-96231b3b80d8
* minor cleanups to LSBaseSDNode.Chris Lattner2008-02-221-18/+17
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47469 91177308-0d34-0410-b5e6-96231b3b80d8
* Better names as per Evan's requestAndrew Lenharth2008-02-212-11/+12
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47435 91177308-0d34-0410-b5e6-96231b3b80d8
* Atomic op support. If any gcc test uses __sync builtins, it might start ↵Andrew Lenharth2008-02-214-4/+70
| | | | | | failing on archs that haven't implemented them yet git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47430 91177308-0d34-0410-b5e6-96231b3b80d8
* Add convenient helper to get suffix of the fileAnton Korobeynikov2008-02-201-0/+8
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47397 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove inline keywords from in-class function definitions, forDan Gohman2008-02-201-32/+32
| | | | | | | consistency. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47393 91177308-0d34-0410-b5e6-96231b3b80d8
* getresult type is the type of indexed aggregate elementDevang Patel2008-02-201-5/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47392 91177308-0d34-0410-b5e6-96231b3b80d8
* Specify GetResultInst index as an unsigned.Devang Patel2008-02-201-10/+11
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47390 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix typo. Add const version of getAggregateValue() accessor member function.Devang Patel2008-02-201-2/+7
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47386 91177308-0d34-0410-b5e6-96231b3b80d8
* Add explicit keywords.Dan Gohman2008-02-203-4/+6
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47382 91177308-0d34-0410-b5e6-96231b3b80d8
* Add an intersects method to APInt, to capture a common idiom.Dan Gohman2008-02-201-0/+6
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47379 91177308-0d34-0410-b5e6-96231b3b80d8
* Add 'sink' cmdline option. Patch by Mikhail Glushenkov!Anton Korobeynikov2008-02-201-1/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47377 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix newly-introduced 4.3 warningsAnton Korobeynikov2008-02-201-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47375 91177308-0d34-0410-b5e6-96231b3b80d8
* And final pack of warnings silencingAnton Korobeynikov2008-02-201-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47372 91177308-0d34-0410-b5e6-96231b3b80d8
* Update gcc 4.3 warnings fix patch with recent head changesAnton Korobeynikov2008-02-201-2/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47368 91177308-0d34-0410-b5e6-96231b3b80d8
* Unbreak build with gcc 4.3: provide missed includes and silence most ↵Anton Korobeynikov2008-02-209-11/+17
| | | | | | annoying warnings. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47367 91177308-0d34-0410-b5e6-96231b3b80d8
* Fixed typo.Bill Wendling2008-02-201-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47365 91177308-0d34-0410-b5e6-96231b3b80d8
* More constification of things. More comments added. No functionalityBill Wendling2008-02-201-3/+3
| | | | | | | changes. (Sorry for any formatting changes that creeped in.) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47362 91177308-0d34-0410-b5e6-96231b3b80d8
* Add 'umax' similar to 'smax' SCEV. Closes PR2003.Nick Lewycky2008-02-203-3/+35
| | | | | | | | | | | | | | | | Parse reversed smax and umax as smin and umin and express them with negative or binary-not SCEVs (which are really just subtract under the hood). Parse 'xor %x, -1' as (-1 - %x). Remove dead code (ConstantInt::get always returns a ConstantInt). Don't use getIntegerSCEV(-1, Ty). The first value is an int, then it gets passed into a uint64_t. Instead, create the -1 directly from ConstantInt::getAllOnesValue(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47360 91177308-0d34-0410-b5e6-96231b3b80d8
* Add some comments to Intrinsic::getDeclaration to clarify how toDan Gohman2008-02-201-0/+6
| | | | | | | get declarations for overloaded intrinsics. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47353 91177308-0d34-0410-b5e6-96231b3b80d8
* Add Alignment field to ParameterAttributes andDale Johannesen2008-02-191-0/+2
| | | | | | | | | treat more or less rationally in interface functions, subject to change. No functional change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47352 91177308-0d34-0410-b5e6-96231b3b80d8
* Add GetResultInst. First step for multiple return value support.Devang Patel2008-02-193-1/+54
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47348 91177308-0d34-0410-b5e6-96231b3b80d8
* Expand ParameterAttributes to 32 bits (in preparationDale Johannesen2008-02-194-32/+39
| | | | | | | | | for adding alignment info, not there yet). Clean up interfaces to reference ParameterAttributes consistently. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47342 91177308-0d34-0410-b5e6-96231b3b80d8
* remove the LowerSelect pass. The last client was the old Sparc backend, ↵Chris Lattner2008-02-192-10/+0
| | | | | | which is long dead by now. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47323 91177308-0d34-0410-b5e6-96231b3b80d8