summaryrefslogtreecommitdiffstats
path: root/llvm/lib
Commit message (Collapse)AuthorAgeFilesLines
* When reusing an existing PHI node in a loop, be even moreDan Gohman2010-02-161-11/+39
| | | | | | strict about the requirements. llvm-svn: 96301
* Put repeated empty pattern into the AQI instruction class.Bob Wilson2010-02-151-49/+19
| | | | | | | We could almost use a multiclass for the signed/unsigned instructions, but there are only 6 of them so I guess it's not worth it. llvm-svn: 96297
* Fix a memory leak. Patch by Nicolas Geoffray.Evan Cheng2010-02-151-0/+1
| | | | llvm-svn: 96295
* More handling of DBG_VALUE.Dale Johannesen2010-02-151-4/+26
| | | | llvm-svn: 96294
* Add missed entry to cmake build list fileAnton Korobeynikov2010-02-151-0/+1
| | | | llvm-svn: 96292
* Use ttype encoding consistentlyAnton Korobeynikov2010-02-151-1/+1
| | | | llvm-svn: 96290
* Fix a silly darwin-only typo introduced during merge.Anton Korobeynikov2010-02-151-7/+6
| | | | llvm-svn: 96289
* Move TLOF implementations to libCodegen to resolve layering violation.Anton Korobeynikov2010-02-1516-857/+889
| | | | llvm-svn: 96288
* It turns out that we emitted completely wrong common EH frame since the ↵Anton Korobeynikov2010-02-151-7/+9
| | | | | | early beginning! The "z" CIE augmentation mark indicates that there is an extra word containing the size of augmentation section. However, even for frames w/o any augmentation data we emitted size uleb! (this is the case of "unwinding through C code"). Thus frame moves information was emitterd completely wrong. llvm-svn: 96287
* Add suffix for stubs, so we won't have name clashes with private symbols.Anton Korobeynikov2010-02-151-0/+1
| | | | llvm-svn: 96286
* Preliminary patch to improve dwarf EH generation - Hooks to return ↵Anton Korobeynikov2010-02-1514-246/+411
| | | | | | Personality / FDE / LSDA / TType encoding depending on target / options (e.g. code model / relocation model) - MCIzation of Dwarf EH printer to use encoding information - Stub generation for ELF target (needed for indirect references) - Some other small changes here and there llvm-svn: 96285
* Teach the verifier to check the condition on a branch and ensure that it hasNick Lewycky2010-02-151-0/+9
| | | | | | 'i1' type. llvm-svn: 96282
* Fix PR6300.Jakob Stoklund Olesen2010-02-151-3/+2
| | | | | | | A virtual register can be used before it is defined in the same MBB if the MBB is part of a loop. Teach the implicit-def pass about this case. llvm-svn: 96279
* Fix crash in VerifyType when checking Contexts. Because there may not be aNick Lewycky2010-02-151-8/+14
| | | | | | | Module (we were called with verifyFunction and an unowned Function) we can't rely on Mod->getContext(). llvm-svn: 96275
* Don't try to materialize a function that isn't materializable anyways. ThisNick Lewycky2010-02-151-3/+5
| | | | | | fixes a crash using FPM on a Function that isn't owned by a Module. llvm-svn: 96273
* A function with no Module owner isn't materializable. This fixes F->dump() forNick Lewycky2010-02-151-2/+2
| | | | | | functions not embedded within modules. llvm-svn: 96272
* Simplify.Daniel Dunbar2010-02-151-23/+4
| | | | llvm-svn: 96269
* revert r96241. It breaks two regression tests, isn't documented,Chris Lattner2010-02-151-70/+8
| | | | | | and the testcase needs improvement. llvm-svn: 96265
* fix PR6305 by handling BlockAddress in a helper functionChris Lattner2010-02-151-0/+11
| | | | | | called by jump threading. llvm-svn: 96263
* Split SelectionDAGISel::IsLegalAndProfitableToFold toEvan Cheng2010-02-156-30/+50
| | | | | | | | IsLegalToFold and IsProfitableToFold. The generic version of the later simply checks whether the folding candidate has a single use. This allows the target isel routines more flexibility in deciding whether folding makes sense. The specific case we are interested in is folding constant pool loads with multiple uses. llvm-svn: 96255
* Add support for emitting non-temporal stores for DAGs markedDavid Greene2010-02-151-8/+70
| | | | | | non-temporal. llvm-svn: 96241
* Add non-temporal flags and remove an assumption of default arguments.David Greene2010-02-1510-174/+295
| | | | llvm-svn: 96240
* Remove an assumption of default arguments. This is in anticipation of aDavid Greene2010-02-151-2/+3
| | | | | | change to SelectionDAG build APIs. llvm-svn: 96239
* Remove an assumption of default arguments. This is in anticipation of aDavid Greene2010-02-151-3/+5
| | | | | | change to SelectionDAG build APIs. llvm-svn: 96238
* Remove an assumption of default arguments. This is in anticipation of aDavid Greene2010-02-151-18/+31
| | | | | | change to SelectionDAG build APIs. llvm-svn: 96237
* Remove an assumption of default arguments. This is in anticipation of aDavid Greene2010-02-151-41/+79
| | | | | | change to SelectionDAG build APIs. llvm-svn: 96236
* Remove an assumption of default arguments. This is in anticipation of aDavid Greene2010-02-151-2/+2
| | | | | | change to SelectionDAG build APIs. llvm-svn: 96235
* Remove an assumption of default arguments. This is in anticipation of aDavid Greene2010-02-151-5/+7
| | | | | | change to SelectionDAG build APIs. llvm-svn: 96234
* Remove an assumption of default arguments. This is in anticipation of aDavid Greene2010-02-151-8/+15
| | | | | | change to SelectionDAG build APIs. llvm-svn: 96233
* Remove an assumption of default arguments. This is in anticipation of aDavid Greene2010-02-152-9/+14
| | | | | | change to SelectionDAG build APIs. llvm-svn: 96232
* Remove an assumption of default arguments. This is in anticipation of aDavid Greene2010-02-151-2/+3
| | | | | | change to SelectionDAG build APIs. llvm-svn: 96231
* Remove an assumption of default arguments. This is in anticipation of aDavid Greene2010-02-151-28/+49
| | | | | | change to SelectionDAG build APIs. llvm-svn: 96230
* Remove an assumption of default arguments. This is in anticipation of aDavid Greene2010-02-151-16/+27
| | | | | | change to SelectionDAG build APIs. llvm-svn: 96229
* Remove an assumption of default arguments. This is in anticipation of aDavid Greene2010-02-151-58/+83
| | | | | | change to SelectionDAG build APIs. llvm-svn: 96228
* Remove an assumption of default arguments. This is in anticipation of aDavid Greene2010-02-151-13/+25
| | | | | | change to SelectionDAG build APIs. llvm-svn: 96227
* Add non-temporal flags to MachineMemOperand.David Greene2010-02-151-2/+3
| | | | llvm-svn: 96226
* Uniformize the names of type predicates: rather than having isFloatTy andDuncan Sands2010-02-1547-348/+352
| | | | | | isInteger, we now have isFloatTy and isIntegerTy. Requested by Chris! llvm-svn: 96223
* Fix changes from r75027Andrew Lenharth2010-02-151-4/+3
| | | | llvm-svn: 96220
* When testing whether a given SCEV depends on a temporary symbolicDan Gohman2010-02-151-1/+1
| | | | | | | | name, test whether the SCEV itself is that temporary symbolic name, in addition to checking whether the symbolic name appears as a possibly-indirect operand. llvm-svn: 96216
* no need to add the instruction count anymore.Chris Lattner2010-02-151-1/+1
| | | | llvm-svn: 96212
* enhance raw_svector_ostream::write_impl to work with unbuffered streams,Chris Lattner2010-02-151-6/+12
| | | | | | which may call write_impl on things that are not the usual buffer. llvm-svn: 96209
* make PadToColumn return the stream so you can use:Chris Lattner2010-02-151-1/+2
| | | | | | OS.PadToColumn(42) << "foo"; llvm-svn: 96208
* Ignore DBG_VALUE in a couple more places.Dale Johannesen2010-02-151-1/+4
| | | | llvm-svn: 96207
* When restoring a saved insert location, check to see if the savedDan Gohman2010-02-151-4/+12
| | | | | | | insert location has become an "inserted" instruction since the time it was saved. If so, advance to the first non-"inserted" instruction. llvm-svn: 96203
* mark "addr" as having type "iPTR", eliminating some type comparisonsChris Lattner2010-02-141-1/+1
| | | | | | in hte generated dag isel fil. llvm-svn: 96193
* Fix whitespace.Dan Gohman2010-02-141-1/+1
| | | | llvm-svn: 96179
* Fix a comment.Dan Gohman2010-02-141-1/+1
| | | | llvm-svn: 96178
* When complicated expressions are broken down into subexpressionsDan Gohman2010-02-141-2/+8
| | | | | | | | | | with multiplication by constants distributed through, occasionally those subexpressions can include both x and -x. For now, if this condition is discovered within LSR, just prune such cases away, as they won't be profitable. This fixes a "zero allocated in a base register" assertion failure. llvm-svn: 96177
* fixes to pagesel/banksel inserter.Sanjiv Gupta2010-02-141-13/+92
| | | | | | | 1. restore these across direct/indirect calls. 2. restore pagesel for any macros with gotos. llvm-svn: 96175
* Forgot to commit the headerAnton Korobeynikov2010-02-141-5/+0
| | | | llvm-svn: 96174
OpenPOWER on IntegriCloud