summaryrefslogtreecommitdiffstats
path: root/llvm/lib
Commit message (Collapse)AuthorAgeFilesLines
* Function attributes have index ~0, not 0Kenneth Uildriks2010-02-161-2/+2
| | | | llvm-svn: 96370
* Fix pr6111: Avoid using the LR register for the target address of an indirectBob Wilson2010-02-162-4/+13
| | | | | | | | branch in ARM v4 code, since it gets clobbered by the return address before it is used. Instead of adding a new register class containing all the GPRs except LR, just use the existing tGPR class. llvm-svn: 96360
* Introduce isOpaqueTy and use it rather than isa<OpaqueType>. Also, move someDuncan Sands2010-02-169-22/+22
| | | | | | methods to try to have the type predicates be more logically positioned. llvm-svn: 96349
* There are two ways of checking for a given type, for example isa<PointerType>(T)Duncan Sands2010-02-1666-576/+576
| | | | | | | and T->isPointerTy(). Convert most instances of the first form to the second form. Requested by Chris. llvm-svn: 96344
* Minor warning fixes (semicolons, newline at EOF).Benjamin Kramer2010-02-162-3/+3
| | | | llvm-svn: 96343
* mark all the generated node predicates 'const'.Chris Lattner2010-02-161-1/+1
| | | | llvm-svn: 96337
* make pcrel immediate values relative to the start of the field,Chris Lattner2010-02-161-3/+13
| | | | | | not the end of the field, fixing rdar://7651978 llvm-svn: 96330
* The code section for an ISR has a specific address.Sanjiv Gupta2010-02-164-4/+23
| | | | | | Currently, whether a function is ISR or not is encoded in the section attribute for that function. llvm-svn: 96322
* Handle DBG_VALUE mixed with labels when doing PHIDale Johannesen2010-02-161-1/+18
| | | | | | | elimination. Before a DBG_VALUE could affect codegen. The solution here is imperfect and not final. llvm-svn: 96318
* Drop support for the InReg attribute on the ppc backend. This was used byRafael Espindola2010-02-161-16/+1
| | | | | | | llvm-gcc but has been replaced with pad argument which don't need any special backend support. llvm-svn: 96312
* Split the main for-each-use loop again, this time for GenerateTruncates,Dan Gohman2010-02-161-1/+4
| | | | | | | as it also peeks at which registers are being used by other uses. This makes LSR less sensitive to use-list order. llvm-svn: 96308
* Reapply 96294; now that I've gotten around to lookingDale Johannesen2010-02-161-4/+26
| | | | | | | at older buildbot messages, I see the failure predates this patch. llvm-svn: 96307
* Apply patch from http://llvm.org/bugs/attachment.cgi?id=4136 now that PR5004 isBill Wendling2010-02-161-1/+5
| | | | | | finished. llvm-svn: 96304
* Something broke. Hard to believe it was this patchDale Johannesen2010-02-161-26/+4
| | | | | | | but it's harder to believe it's the other candidate, so reverting. Temporarily I hope. llvm-svn: 96303
* 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
OpenPOWER on IntegriCloud