summaryrefslogtreecommitdiffstats
path: root/llvm/lib
Commit message (Collapse)AuthorAgeFilesLines
...
* Update DebugInfoFinder to match recent debug info encoding changes.Devang Patel2011-10-171-3/+24
| | | | llvm-svn: 142295
* Now Igor, throw the switch...give my creation life!Bill Wendling2011-10-174-4/+9
| | | | | | | | | | | | | | | | | Use the custom inserter for the ARM setjmp intrinsics. Instead of creating the SjLj dispatch table in IR, where it frequently violates serveral assumptions -- in particular assumptions made by the landingpad instruction about what can branch to a landing pad and what cannot. Performing this in the back-end allows us to violate these assumptions without the IR getting angry at us. It also allows us to perform a small optimization. We can shove the address of the dispatch's basic block into the function context and not have to add code around the setjmp to check for the return value and jump to the dispatch. Neat, huh? <rdar://problem/10116753> llvm-svn: 142294
* ARM NEON "vmov.i8" immediate assembly parsing and encoding.Jim Grosbach2011-10-172-3/+45
| | | | | | | | NEON immediates are "interesting". Start of the work to handle parsing them in an 'as' compatible manner. Getting the matcher to play nicely with these and the floating point immediates from VFP is an extra fun wrinkle. llvm-svn: 142293
* 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. llvm-svn: 142288
* 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. llvm-svn: 142287
* Use a SmallVector for intrinsic argument types.Benjamin Kramer2011-10-173-3/+3
| | | | llvm-svn: 142259
* Don't renumber the blocks here. This could cause problems later on if anotherBill Wendling2011-10-171-3/+1
| | | | | | pass renumbers the blocks again. llvm-svn: 142258
* 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. llvm-svn: 142256
* 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. llvm-svn: 142254
* Tidy up organization.Jim Grosbach2011-10-171-8/+4
| | | | llvm-svn: 142248
* 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. llvm-svn: 142247
* 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. llvm-svn: 142245
* Fix improperly formed assert() call.Jim Grosbach2011-10-171-1/+1
| | | | llvm-svn: 142239
* Object: Fix redundant name.Michael J. Spencer2011-10-173-5/+5
| | | | llvm-svn: 142238
* Constraint register class with constrainRegClass() to CSE a virtual into ↵Evan Cheng2011-10-171-3/+26
| | | | | | another. rdar://10293289 llvm-svn: 142234
* 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. llvm-svn: 142226
* Revert change to function alignment b/c existing logic was fineHal Finkel2011-10-171-10/+3
| | | | llvm-svn: 142224
* Removed set, but unused variables.Chad Rosier2011-10-172-12/+0
| | | | | | Patch by Joe Abbey <jabbey@arxan.com>. llvm-svn: 142223
* 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 llvm-svn: 142222
* 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. llvm-svn: 142221
* Move class and instruction definitions for conditional moves to a seperate file.Akira Hatanaka2011-10-174-106/+112
| | | | llvm-svn: 142220
* Revert change made in r142205.Akira Hatanaka2011-10-171-2/+2
| | | | llvm-svn: 142217
* Redefine count-leading 0s and 1s instructions.Akira Hatanaka2011-10-172-20/+17
| | | | llvm-svn: 142216
* Redefine mfhi/lo and mthi/lo instructions.Akira Hatanaka2011-10-172-35/+16
| | | | llvm-svn: 142214
* Now that we have the ReturnsTwice function attribute, this method isBill Wendling2011-10-174-48/+7
| | | | | | | obsolete. Check the attribute instead. <rdar://problem/8031714> llvm-svn: 142212
* Redefine multiply and divide instructions.Akira Hatanaka2011-10-172-25/+26
| | | | llvm-svn: 142211
* 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. llvm-svn: 142210
* Remove >80-col line and unicodeHal Finkel2011-10-171-2/+2
| | | | llvm-svn: 142209
* 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. llvm-svn: 142207
* Removed set, but unused variable.Chad Rosier2011-10-171-1/+0
| | | | | | Patch by Joe Abbey <jabbey@arxan.com>. llvm-svn: 142206
* Add definition of immZExt5_64 and redefine immZExt5 as an ImmLeaf.Akira Hatanaka2011-10-173-9/+11
| | | | llvm-svn: 142205
* Fix CMake build.Michael J. Spencer2011-10-172-1/+1
| | | | llvm-svn: 142204
* It is safe to speculate load from GOT. This fixes performance regression ↵Devang Patel2011-10-171-1/+17
| | | | | | | | caused by r141689. Radar 10281206. llvm-svn: 142202
* 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. llvm-svn: 142200
* Instructions for Book E PPC should be word aligned, set function alignment ↵Hal Finkel2011-10-171-3/+10
| | | | | | to reflect this llvm-svn: 142194
* 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. llvm-svn: 142177
* Add comment explaining that the order of processing doesn't matter here.Bill Wendling2011-10-171-0/+1
| | | | llvm-svn: 142176
* Add PPC 440 scheduler and some associated tests (new files)Hal Finkel2011-10-171-0/+568
| | | | llvm-svn: 142171
* Add PPC 440 scheduler and some associated testsHal Finkel2011-10-179-2/+53
| | | | llvm-svn: 142170
* 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! llvm-svn: 142168
* 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. llvm-svn: 142163
* Add a proper LLVM banner to this file.Chandler Carruth2011-10-161-0/+13
| | | | llvm-svn: 142162
* Enable element promotion type legalization by deafault.Nadav Rotem2011-10-161-1/+1
| | | | | | Changed tests which assumed that vectors are legalized by widening them. llvm-svn: 142152
* 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. llvm-svn: 142150
* Add X86 PEXTR and PDEP instructions.Craig Topper2011-10-165-13/+42
| | | | llvm-svn: 142141
* Let printf do the formatting instead aligning strings ourselves.Benjamin Kramer2011-10-165-30/+24
| | | | | | While at it, merge some format strings. llvm-svn: 142140
* Twinify better.Benjamin Kramer2011-10-161-20/+15
| | | | llvm-svn: 142139
* 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 ^~~~ llvm-svn: 142137
* 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 ^~~ llvm-svn: 142135
* 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 llvm-svn: 142132
OpenPOWER on IntegriCloud