aboutsummaryrefslogtreecommitdiffstats
path: root/lib
Commit message (Collapse)AuthorAgeFilesLines
* Validate target data layout strings.Lang Hames2011-10-172-25/+94
| | | | | | | Invalid strings in asm files will result in parse errors. Invalid string literals passed to TargetData constructors will result in an assertion. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142288 91177308-0d34-0410-b5e6-96231b3b80d8
* When deleting a phi cycle after looking through copies, constrain the registerCameron Zwarich2011-10-171-1/+5
| | | | | | | | | to match its final use. With this change, all of test-suite compiles for Thumb2 with -verify-coalescing enabled. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142287 91177308-0d34-0410-b5e6-96231b3b80d8
* Use a SmallVector for intrinsic argument types.Benjamin Kramer2011-10-173-3/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142259 91177308-0d34-0410-b5e6-96231b3b80d8
* Don't renumber the blocks here. This could cause problems later on if anotherBill Wendling2011-10-171-3/+1
| | | | | | | pass renumbers the blocks again. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142258 91177308-0d34-0410-b5e6-96231b3b80d8
* Add support for the Objective-C personality function to the instructionBill Wendling2011-10-171-2/+5
| | | | | | | | | combining of the landingpad instruction. The ObjC personality function acts almost identically to the C++ personality function. In particular, it uses "null" as a "catch-all" value. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142256 91177308-0d34-0410-b5e6-96231b3b80d8
* Pseudoinstructions should not be less constrained than the instruction they areCameron Zwarich2011-10-171-6/+6
| | | | | | lowered to. This fixes a lot of verifier failures on the test suite. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142254 91177308-0d34-0410-b5e6-96231b3b80d8
* Tidy up organization.Jim Grosbach2011-10-171-8/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142248 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix handling of the From parameter in StringRef::find.Benjamin Kramer2011-10-171-2/+5
| | | | | | Enable bounds checking to catch this kind of bug earlier. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142247 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a call to EmitSjLjDispatchBlock.Bill Wendling2011-10-171-0/+8
| | | | | | | | Once the intrinsics are marked as having a custom inserter, it will call this method to emit the dispatch table into the machine function. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142245 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix improperly formed assert() call.Jim Grosbach2011-10-171-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142239 91177308-0d34-0410-b5e6-96231b3b80d8
* Object: Fix redundant name.Michael J. Spencer2011-10-173-5/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142238 91177308-0d34-0410-b5e6-96231b3b80d8
* Constraint register class with constrainRegClass() to CSE a virtual into ↵Evan Cheng2011-10-171-3/+26
| | | | | | another. rdar://10293289 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142234 91177308-0d34-0410-b5e6-96231b3b80d8
* Add definitions of conditional moves with 64-bit operands. Comment out code forAkira Hatanaka2011-10-173-75/+130
| | | | | | | | | expanding conditional moves, which is not needed since architectures that lack support for conditional moves have been removed. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142226 91177308-0d34-0410-b5e6-96231b3b80d8
* Revert change to function alignment b/c existing logic was fineHal Finkel2011-10-171-10/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142224 91177308-0d34-0410-b5e6-96231b3b80d8
* Removed set, but unused variables.Chad Rosier2011-10-172-12/+0
| | | | | | | Patch by Joe Abbey <jabbey@arxan.com>. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142223 91177308-0d34-0410-b5e6-96231b3b80d8
* Suppress partial retain+release elimination when there's aDan Gohman2011-10-171-2/+24
| | | | | | | | possibility that it will span multiple CFG diamonds/triangles which could have different controlling predicates. rdar://10282956 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142222 91177308-0d34-0410-b5e6-96231b3b80d8
* Correct over-zealous removal of hack.Bill Wendling2011-10-174-3/+18
| | | | | | | | Some code want to check that *any* call within a function has the 'returns twice' attribute, not just that the current function has one. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142221 91177308-0d34-0410-b5e6-96231b3b80d8
* Move class and instruction definitions for conditional moves to a seperate file.Akira Hatanaka2011-10-174-106/+112
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142220 91177308-0d34-0410-b5e6-96231b3b80d8
* Revert change made in r142205.Akira Hatanaka2011-10-171-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142217 91177308-0d34-0410-b5e6-96231b3b80d8
* Redefine count-leading 0s and 1s instructions.Akira Hatanaka2011-10-172-20/+17
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142216 91177308-0d34-0410-b5e6-96231b3b80d8
* Redefine mfhi/lo and mthi/lo instructions.Akira Hatanaka2011-10-172-35/+16
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142214 91177308-0d34-0410-b5e6-96231b3b80d8
* Now that we have the ReturnsTwice function attribute, this method isBill Wendling2011-10-174-48/+7
| | | | | | | | obsolete. Check the attribute instead. <rdar://problem/8031714> git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142212 91177308-0d34-0410-b5e6-96231b3b80d8
* Redefine multiply and divide instructions.Akira Hatanaka2011-10-172-25/+26
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142211 91177308-0d34-0410-b5e6-96231b3b80d8
* Add definition of a base class for logical shift/rotate instructions with twoAkira Hatanaka2011-10-172-20/+12
| | | | | | | | source registers and redefine 32-bit and 64-bit instructions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142210 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove >80-col line and unicodeHal Finkel2011-10-171-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142209 91177308-0d34-0410-b5e6-96231b3b80d8
* Add definition of a base class for logical shift/rotate immediate instructionsAkira Hatanaka2011-10-172-27/+33
| | | | | | | | and have 32-bit and 64-bit instructions derive from it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142207 91177308-0d34-0410-b5e6-96231b3b80d8
* Removed set, but unused variable.Chad Rosier2011-10-171-1/+0
| | | | | | | Patch by Joe Abbey <jabbey@arxan.com>. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142206 91177308-0d34-0410-b5e6-96231b3b80d8
* Add definition of immZExt5_64 and redefine immZExt5 as an ImmLeaf.Akira Hatanaka2011-10-173-9/+11
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142205 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix CMake build.Michael J. Spencer2011-10-172-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142204 91177308-0d34-0410-b5e6-96231b3b80d8
* It is safe to speculate load from GOT. This fixes performance regression ↵Devang Patel2011-10-171-1/+17
| | | | | | | | | caused by r141689. Radar 10281206. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142202 91177308-0d34-0410-b5e6-96231b3b80d8
* svn mv Target/ARM/ARMGlobalMerge.cpp Transforms/Scalar/GlobalMerge.cppDevang Patel2011-10-172-14/+22
| | | | | | | There is no reason to have simple IR level pass in lib/Target. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142200 91177308-0d34-0410-b5e6-96231b3b80d8
* Instructions for Book E PPC should be word aligned, set function alignment ↵Hal Finkel2011-10-171-3/+10
| | | | | | to reflect this git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142194 91177308-0d34-0410-b5e6-96231b3b80d8
* Don't use inline assembly in 64-bit Visual Studio. Unfortunately, this means ↵Craig Topper2011-10-172-24/+19
| | | | | | that cpuid leaf 7 can't be queried on versions of Visual Studio earlier than VS 2008 SP1. Fixes PR11147. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142177 91177308-0d34-0410-b5e6-96231b3b80d8
* Add comment explaining that the order of processing doesn't matter here.Bill Wendling2011-10-171-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142176 91177308-0d34-0410-b5e6-96231b3b80d8
* Add PPC 440 scheduler and some associated tests (new files)Hal Finkel2011-10-171-0/+568
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142171 91177308-0d34-0410-b5e6-96231b3b80d8
* Add PPC 440 scheduler and some associated testsHal Finkel2011-10-179-2/+53
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142170 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a routine to swap branch instruction operands, and update anyChandler Carruth2011-10-172-6/+24
| | | | | | | | | | | | profile metadata at the same time. Use it to preserve metadata attached to a branch when re-writing it in InstCombine. Add metadata to the canonicalize_branch InstCombine test, and check that it is tranformed correctly. Reviewed by Nick Lewycky! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142168 91177308-0d34-0410-b5e6-96231b3b80d8
* Delete a dead member. Dunno if this was ever used, but the current codeChandler Carruth2011-10-161-6/+3
| | | | | | | directly manipulates the weights inside of the BranchProbabilityInfo that is passed in. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142163 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a proper LLVM banner to this file.Chandler Carruth2011-10-161-0/+13
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142162 91177308-0d34-0410-b5e6-96231b3b80d8
* Enable element promotion type legalization by deafault.Nadav Rotem2011-10-161-1/+1
| | | | | | | | Changed tests which assumed that vectors are legalized by widening them. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142152 91177308-0d34-0410-b5e6-96231b3b80d8
* When looking for dependencies on the src pointer, scan the src pointer. ScanningNick Lewycky2011-10-161-12/+17
| | | | | | | on the memcpy call will pull up other unrelated stuff. Fixes PR11142. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142150 91177308-0d34-0410-b5e6-96231b3b80d8
* Add X86 PEXTR and PDEP instructions.Craig Topper2011-10-165-13/+42
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142141 91177308-0d34-0410-b5e6-96231b3b80d8
* Let printf do the formatting instead aligning strings ourselves.Benjamin Kramer2011-10-165-30/+24
| | | | | | While at it, merge some format strings. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142140 91177308-0d34-0410-b5e6-96231b3b80d8
* Twinify better.Benjamin Kramer2011-10-161-20/+15
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142139 91177308-0d34-0410-b5e6-96231b3b80d8
* Add AsmToken::getEndLoc and use it to add ranges to x86 asm register parsing.Benjamin Kramer2011-10-162-9/+18
| | | | | | | | <stdin>:1:12: error: register %rax is only available in 64-bit mode incl %rax ^~~~ git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142137 91177308-0d34-0410-b5e6-96231b3b80d8
* X86AsmParser: Synthesize EndLoc for tokens out of StartLoc + Length and ↵Benjamin Kramer2011-10-161-3/+4
| | | | | | | | | | print ranges for invalid operands. <stdin>:1:4: error: invalid instruction mnemonic 'abc' abc incl %edi ^~~ git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142135 91177308-0d34-0410-b5e6-96231b3b80d8
* PR11143: Save the old diagnostic handler and call it when munging ↵Benjamin Kramer2011-10-161-3/+15
| | | | | | | | diagnostics for #line directives. This reenables proper inline asm diagnostics in clang git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142132 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix a bug in LowerV2I64Splat, which generated a BUILD_VECTOR for which there wasNadav Rotem2011-10-161-3/+5
| | | | | | | | no pattern. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142130 91177308-0d34-0410-b5e6-96231b3b80d8
* Add X86 BZHI instruction as well as BMI2 feature detection.Craig Topper2011-10-167-50/+56
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142122 91177308-0d34-0410-b5e6-96231b3b80d8
* Add X86 INVPCID instruction. Add 32/64-bit predicates to INVEPT, INVVPID, ↵Craig Topper2011-10-162-12/+25
| | | | | | VMREAD, and VMWRITE to remove hack from X86RecognizableInstr. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142117 91177308-0d34-0410-b5e6-96231b3b80d8