summaryrefslogtreecommitdiffstats
path: root/llvm/include
Commit message (Collapse)AuthorAgeFilesLines
* 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 llvm-svn: 47430
* Add convenient helper to get suffix of the fileAnton Korobeynikov2008-02-201-0/+8
| | | | llvm-svn: 47397
* Remove inline keywords from in-class function definitions, forDan Gohman2008-02-201-32/+32
| | | | | | consistency. llvm-svn: 47393
* getresult type is the type of indexed aggregate elementDevang Patel2008-02-201-5/+0
| | | | llvm-svn: 47392
* Specify GetResultInst index as an unsigned.Devang Patel2008-02-201-10/+11
| | | | llvm-svn: 47390
* Fix typo. Add const version of getAggregateValue() accessor member function.Devang Patel2008-02-201-2/+7
| | | | llvm-svn: 47386
* Add explicit keywords.Dan Gohman2008-02-203-4/+6
| | | | llvm-svn: 47382
* Add an intersects method to APInt, to capture a common idiom.Dan Gohman2008-02-201-0/+6
| | | | llvm-svn: 47379
* Add 'sink' cmdline option. Patch by Mikhail Glushenkov!Anton Korobeynikov2008-02-201-1/+2
| | | | llvm-svn: 47377
* Fix newly-introduced 4.3 warningsAnton Korobeynikov2008-02-201-1/+1
| | | | llvm-svn: 47375
* And final pack of warnings silencingAnton Korobeynikov2008-02-201-0/+1
| | | | llvm-svn: 47372
* Update gcc 4.3 warnings fix patch with recent head changesAnton Korobeynikov2008-02-201-2/+0
| | | | llvm-svn: 47368
* Unbreak build with gcc 4.3: provide missed includes and silence most ↵Anton Korobeynikov2008-02-209-11/+17
| | | | | | annoying warnings. llvm-svn: 47367
* Fixed typo.Bill Wendling2008-02-201-1/+1
| | | | llvm-svn: 47365
* More constification of things. More comments added. No functionalityBill Wendling2008-02-201-3/+3
| | | | | | changes. (Sorry for any formatting changes that creeped in.) llvm-svn: 47362
* 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(). llvm-svn: 47360
* Add some comments to Intrinsic::getDeclaration to clarify how toDan Gohman2008-02-201-0/+6
| | | | | | get declarations for overloaded intrinsics. llvm-svn: 47353
* 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. llvm-svn: 47352
* Add GetResultInst. First step for multiple return value support.Devang Patel2008-02-193-1/+54
| | | | llvm-svn: 47348
* 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. llvm-svn: 47342
* remove the LowerSelect pass. The last client was the old Sparc backend, ↵Chris Lattner2008-02-192-10/+0
| | | | | | which is long dead by now. llvm-svn: 47323
* remove the lower packed pass. It can never work and even the parts that Chris Lattner2008-02-192-8/+0
| | | | | | | could work don't work fully. This fixes PR1705. Oh yeah, we don't have packed types anymore either ;-) llvm-svn: 47322
* - When DAG combiner is folding a bit convert into a BUILD_VECTOR, it should ↵Evan Cheng2008-02-181-0/+5
| | | | | | | | check if it's essentially a SCALAR_TO_VECTOR. Avoid turning (v8i16) <10, u, u, u> to <10, 0, u, u, u, u, u, u>. Instead, simply convert it to a SCALAR_TO_VECTOR of the proper type. - X86 now normalize SCALAR_TO_VECTOR to (BIT_CONVERT (v4i32 SCALAR_TO_VECTOR)). Get rid of X86ISD::S2VEC. llvm-svn: 47290
* Simplify caller updating using a CallSite, asDuncan Sands2008-02-181-0/+1
| | | | | | | | requested by Chris. While there, do the same for an existing function committed by someone called "lattner" :) llvm-svn: 47273
* New helper function getMBBFromIndex() that given an index in any instruction ↵Roman Levenstein2008-02-181-0/+30
| | | | | | of an MBB returns a pointer the MBB. Reviewed by Evan. llvm-svn: 47267
* Add support for setting parameters to CallSite.Owen Anderson2008-02-181-0/+9
| | | | llvm-svn: 47249
* Add a predicate to Argument to check for the StructRet attribute.Owen Anderson2008-02-171-0/+4
| | | | llvm-svn: 47248
* llvm.memory.barrier, and impl for x86 and alphaAndrew Lenharth2008-02-162-0/+13
| | | | llvm-svn: 47204
* Rename CountMemOperands to ComputeMemOperandsEnd to reflect whatDan Gohman2008-02-161-5/+6
| | | | | | | it actually does. Simplify CountOperands a little by reusing ComputeMemOperandsEnd. And reword some comments for both. llvm-svn: 47198
* Make tblgen a little smarter about constants smaller than i32. Currently,Scott Michel2008-02-151-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | tblgen will complain if a sign-extended constant does not fit into a data type smaller than i32, e.g., i16. This causes a problem when certain hex constants are used, such as 0xff for byte masks or immediate xor values. tblgen will try the sign-extended value first and, if the sign extended value would overflow, it tries to see if the unsigned value will fit. Consequently, a software developer can now safely incant: (XORHIr16 R16C:$rA, 0xffff) which is somewhat clearer and more informative than incanting: (XORHIr16 R16C:$rA, (i16 -1)) even if the two are bitwise equivalent. Tblgen also outputs the 64-bit unsigned constant in the generated ISel code when getTargetConstant() is invoked. llvm-svn: 47188
* - Removing the infamous r2rMap_ and rep() method. Now the coalescer will updateEvan Cheng2008-02-152-12/+29
| | | | | | | register defs and uses after each successful coalescing. - Also removed a number of hacks and fixed some subtle kill information bugs. llvm-svn: 47167
* Added CommuteChangesDestination(). This returns true if commuting the specifiedEvan Cheng2008-02-151-0/+10
| | | | | | machine instr will change its definition register. llvm-svn: 47166
* Change MemOperand's size and offset to be 64-bit.Dan Gohman2008-02-151-5/+6
| | | | llvm-svn: 47151
* In TargetLowering::LowerCallTo, don't assert thatDuncan Sands2008-02-141-2/+2
| | | | | | | | | | | | | | | | | the return value is zero-extended if it isn't sign-extended. It may also be any-extended. Also, if a floating point value was returned in a larger floating point type, pass 1 as the second operand to FP_ROUND, which tells it that all the precision is in the original type. I think this is right but I could be wrong. Finally, when doing libcalls, set isZExt on a parameter if it is "unsigned". Currently isSExt is set when signed, and nothing is set otherwise. This should be right for all calls to standard library routines. llvm-svn: 47122
* Change how FP immediates are handled. Nate Begeman2008-02-141-0/+1
| | | | | | | | | | | | | | 1) ConstantFP is now expand by default 2) ConstantFP is not turned into TargetConstantFP during Legalize if it is legal. This allows ConstantFP to be handled like Constant, allowing for targets that can encode FP immediates as MachineOperands. As a bonus, fix up Itanium FP constants, which now correctly match, and match more constants! Hooray. llvm-svn: 47121
* Support a new type of MachineOperand, MO_FPImmediate, used for holdingNate Begeman2008-02-141-0/+15
| | | | | | FP Immediates, crazily enough llvm-svn: 47117
* Nuke dead commentNate Begeman2008-02-141-2/+0
| | | | llvm-svn: 47114
* Fix a typo in a comment.Dan Gohman2008-02-131-1/+1
| | | | llvm-svn: 47097
* Simplify some logic in ComputeMaskedBits. And change ComputeMaskedBitsDan Gohman2008-02-132-2/+2
| | | | | | to pass the mask APInt by value, not by reference. llvm-svn: 47096
* Rename APInt's isPositive to isNonNegative, to reflect what itDan Gohman2008-02-131-6/+7
| | | | | | actually does. llvm-svn: 47090
* Add countTrailingOnes member functions to APInt.Dan Gohman2008-02-131-2/+12
| | | | llvm-svn: 47086
* Fix a typo in a comment.Dan Gohman2008-02-131-1/+1
| | | | llvm-svn: 47085
* Add count{Leading,Trailing}Ones_{32,64} functions with simple implementations.Dan Gohman2008-02-131-0/+32
| | | | llvm-svn: 47084
* Enable exception handling int JITNicolas Geoffray2008-02-133-0/+105
| | | | llvm-svn: 47079
* Remove use of ltdlDevang Patel2008-02-131-3/+0
| | | | llvm-svn: 47065
* Simplify.Evan Cheng2008-02-131-8/+8
| | | | llvm-svn: 47059
* Initial support for copy elimination by commuting its definition MI.Evan Cheng2008-02-131-0/+14
| | | | | | | | | | | | | | | | | | | | | PR1877. A3 = op A2 B0<kill> ... B1 = A3 <- this copy ... = op A3 <- more uses ==> B2 = op B0 A2<kill> ... B1 = B2 <- now an identify copy ... = op B2 <- more uses This speeds up FreeBench/neural by 29%, Olden/bh by 12%, oopack_v1p8 by 53%. llvm-svn: 47046
* - Added removeValNo() to remove all live ranges of a particular value#.Evan Cheng2008-02-131-9/+7
| | | | | | - removeRange() can now update value# information. llvm-svn: 47044
* Added debugging routine dumpUses.Evan Cheng2008-02-131-6/+10
| | | | llvm-svn: 47042
* Convert SelectionDAG::ComputeMaskedBits to use APInt instead of uint64_t.Dan Gohman2008-02-132-3/+9
| | | | | | | Add an overload that supports the uint64_t interface for use by clients that haven't been updated yet. llvm-svn: 47039
OpenPOWER on IntegriCloud