| Commit message (Collapse) | Author | Age | Files | Lines | ||
|---|---|---|---|---|---|---|
| ... | ||||||
| * | Add support for trampolines on the XCore. | Richard Osborne | 2011-02-02 | 4 | -1/+72 | |
| | | | | | llvm-svn: 124722 | |||||
| * | Remove NoVendor and NoOS, added in commit 123990, from Triple. While it | Duncan Sands | 2011-02-02 | 1 | -25/+5 | |
| | | | | | | | | | | may be useful to understand "none", this is not the place for it. Tweak the fix to Normalize while there: the fix added in 123990 works correctly, but I like this way better. Finally, now that Triple understands some non-trivial environment values, teach the unittests about them. llvm-svn: 124720 | |||||
| * | Remove wasteful caching. This isn't needed for correctness because any function | Nick Lewycky | 2011-02-02 | 1 | -23/+2 | |
| | | | | | | | | | that might have changed been affected by a merge elsewhere will have been removed from the function set, and it isn't needed for performance because we call grow() ahead of time to prevent reallocations. llvm-svn: 124717 | |||||
| * | Conservatively, clear optional flags, such as nsw, when performing | Dan Gohman | 2011-02-02 | 1 | -0/+15 | |
| | | | | | | | | reassociation. No testcase, because I wasn't able to create a testcase which actually demonstrates a problem. llvm-svn: 124713 | |||||
| * | Fix reassociate to clear optional flags, such as nsw. | Dan Gohman | 2011-02-02 | 1 | -0/+16 | |
| | | | | | llvm-svn: 124712 | |||||
| * | Fixed a bug in the disassembler where the mandatory 0x66 | Sean Callanan | 2011-02-02 | 1 | -0/+1 | |
| | | | | | | | | | prefix would be misinterpreted in some cases on 32-bit x86 platforms. Thanks to Olivier Meurant for identifying the bug. llvm-svn: 124709 | |||||
| * | Given a pair of floating point load and store, if there are no other uses of | Evan Cheng | 2011-02-02 | 3 | -2/+74 | |
| | | | | | | | | | | | | | | | | | | | | the load, then it may be legal to transform the load and store to integer load and store of the same width. This is done if the target specified the transformation as profitable. e.g. On arm, this can transform: vldr.32 s0, [] vstr.32 s0, [] to ldr r12, [] str r12, [] rdar://8944252 llvm-svn: 124708 | |||||
| * | PR9081: Split up LDM instruction with deprecated use of both LR and PC. | Bob Wilson | 2011-02-01 | 1 | -2/+3 | |
| | | | | | | | | This is completely untested but pretty straightforward, so hopefully I got it right. llvm-svn: 124694 | |||||
| * | Take Bill Wendling's suggestion for structuring a couple of asserts. | Matt Beaumont-Gay | 2011-02-01 | 1 | -6/+6 | |
| | | | | | llvm-svn: 124688 | |||||
| * | Fix imm printing for logical instructions. | Anton Korobeynikov | 2011-02-01 | 3 | -24/+45 | |
| | | | | | | | Patch by Brian G. Lucas! llvm-svn: 124679 | |||||
| * | Make SwitchInst::removeCase() more efficient. | Jay Foad | 2011-02-01 | 1 | -8/+4 | |
| | | | | | llvm-svn: 124659 | |||||
| * | Add a m_Undef pattern for convenience. This is so that code that uses | Duncan Sands | 2011-02-01 | 1 | -16/+16 | |
| | | | | | | | | pattern matching can also pattern match undef, creating a more uniform style. llvm-svn: 124657 | |||||
| * | Add a m_SignBit pattern for convenience. | Duncan Sands | 2011-02-01 | 1 | -3/+1 | |
| | | | | | llvm-svn: 124656 | |||||
| * | Have m_One also match constant vectors for which every element is 1. | Duncan Sands | 2011-02-01 | 2 | -7/+1 | |
| | | | | | llvm-svn: 124655 | |||||
| * | Test commit - fix a double 'should' in a comment. | Carl Norum | 2011-02-01 | 1 | -1/+1 | |
| | | | | | llvm-svn: 124652 | |||||
| * | Correctly merge available_externally and regular definitions when they have | Rafael Espindola | 2011-02-01 | 1 | -2/+4 | |
| | | | | | | | different visibilities. llvm-svn: 124650 | |||||
| * | Fix bogus assert condition noticed by Csaba Raduly. | Evan Cheng | 2011-02-01 | 1 | -2/+2 | |
| | | | | | llvm-svn: 124645 | |||||
| * | Reapply 124275 since the Dragonegg failure was unreproducible. | Eric Christopher | 2011-02-01 | 1 | -82/+85 | |
| | | | | | llvm-svn: 124641 | |||||
| * | Patches to build EFI with Clang/LLVM. By Carl Norum. | Evan Cheng | 2011-02-01 | 7 | -16/+39 | |
| | | | | | llvm-svn: 124639 | |||||
| * | Keep track of incoming argument's location while emitting LiveIns. | Devang Patel | 2011-01-31 | 10 | -29/+47 | |
| | | | | | llvm-svn: 124611 | |||||
| * | Enumerate .code16/32/64 instead of checking .code prefix. This | Roman Divacky | 2011-01-31 | 1 | -1/+1 | |
| | | | | | | | unbreaks some ARM tests. llvm-svn: 124608 | |||||
| * | Error on all .code* directives instead of just .code16 as they | Roman Divacky | 2011-01-31 | 1 | -2/+2 | |
| | | | | | | | all lead to a silent miscompilation of code. llvm-svn: 124603 | |||||
| * | Fix vector sign extend to put the source and destination types in the | David Greene | 2011-01-31 | 1 | -3/+3 | |
| | | | | | | | correct places. llvm-svn: 124601 | |||||
| * | add a note, progress unblocked by PR8575 being fixed. | Chris Lattner | 2011-01-31 | 1 | -0/+48 | |
| | | | | | llvm-svn: 124599 | |||||
| * | Fix bug where ReduceLoadWidth was creating illegal ZEXTLOAD instructions. | Richard Osborne | 2011-01-31 | 1 | -2/+2 | |
| | | | | | llvm-svn: 124587 | |||||
| * | Save a mapping between original and cloned constpool entries. | Anton Korobeynikov | 2011-01-30 | 2 | -0/+25 | |
| | | | | | llvm-svn: 124570 | |||||
| * | Clarify the LSDASection NULL check | Anton Korobeynikov | 2011-01-30 | 1 | -0/+2 | |
| | | | | | llvm-svn: 124569 | |||||
| * | Recognize and simplify | Anders Carlsson | 2011-01-30 | 1 | -1/+11 | |
| | | | | | | | | (A+B) == A -> B == 0 A == (A+B) -> B == 0 llvm-svn: 124567 | |||||
| * | Respect the -tail-dup-size command line option even when optimizing for size. | Jakob Stoklund Olesen | 2011-01-30 | 1 | -1/+2 | |
| | | | | | | | | This is similar to the -unroll-threshold option. There should be no change in behavior when -tail-dup-size is not explicit on the llc command line. llvm-svn: 124564 | |||||
| * | Commit 124487 broke 254.gap. See if disabling the part that might be triggered | Duncan Sands | 2011-01-30 | 1 | -5/+5 | |
| | | | | | | | by PR9088 fixes things. llvm-svn: 124561 | |||||
| * | Transform (X/Y)*Y into X if the division is exact. Instcombine already ↵ | Duncan Sands | 2011-01-30 | 1 | -0/+9 | |
| | | | | | | | | | | | | | knows how to do this and more, but would only do it if X/Y had only one use. Spotted as the most common missed simplification in SPEC by my auto-simplifier, now that it knows about nuw/nsw/exact flags. This removes a bunch of multiplications from 447.dealII and 483.xalancbmk. It also removes a lot from tramp3d-v4, which results in much more inlining. llvm-svn: 124560 | |||||
| * | Teach DAGCombine to fold fold (sra (trunc (sr x, c1)), c2) -> (trunc (sra x, ↵ | Benjamin Kramer | 2011-01-30 | 2 | -21/+23 | |
| | | | | | | | | | | | | | | | | | | | c1+c2) when c1 equals the amount of bits that are truncated off. This happens all the time when a smul is promoted to a larger type. On x86-64 we now compile "int test(int x) { return x/10; }" into movslq %edi, %rax imulq $1717986919, %rax, %rax movq %rax, %rcx shrq $63, %rcx sarq $34, %rax <- used to be "shrq $32, %rax; sarl $2, %eax" addl %ecx, %eax This fires 96 times in gcc.c on x86-64. llvm-svn: 124559 | |||||
| * | Fix 'fcmp one' constant folding. Noticed by inspection. | Nick Lewycky | 2011-01-30 | 1 | -1/+1 | |
| | | | | | llvm-svn: 124557 | |||||
| * | Fix some formatting and upgrade comments from llvm 1.x to 2.x syntax. | Nick Lewycky | 2011-01-30 | 1 | -6/+6 | |
| | | | | | llvm-svn: 124556 | |||||
| * | Add the select optimization recently added to instcombine to constant folding. | Nick Lewycky | 2011-01-29 | 1 | -0/+12 | |
| | | | | | | | | This is the one where one of the branches of the select is another select on the same condition. llvm-svn: 124547 | |||||
| * | Unbreak the MSVC build. | Francois Pichet | 2011-01-29 | 1 | -0/+1 | |
| | | | | | | | The DEBUG() call at line 606 demands to see raw_ostream's definition. I have no idea why this seems to only break MSVC. llvm-svn: 124545 | |||||
| * | Fix comment. | Nick Lewycky | 2011-01-29 | 1 | -1/+1 | |
| | | | | | llvm-svn: 124544 | |||||
| * | Call SimplifyFDivInst() in InstCombiner::visitFDiv(). | Frits van Bommel | 2011-01-29 | 2 | -0/+10 | |
| | | | | | llvm-svn: 124535 | |||||
| * | Move InstCombine's knowledge of fdiv to SimplifyInstruction(). | Frits van Bommel | 2011-01-29 | 3 | -17/+24 | |
| | | | | | llvm-svn: 124534 | |||||
| * | Fix typo: should have been testing that X was odd, not V. | Duncan Sands | 2011-01-29 | 1 | -3/+3 | |
| | | | | | llvm-svn: 124533 | |||||
| * | Add the missing sub identity "A-(A-B) -> B" to DAGCombine. | Benjamin Kramer | 2011-01-29 | 1 | -0/+3 | |
| | | | | | | | | | This happens e.g. for code like "X - X%10" where we lower the modulo operation to a series of multiplies and shifts that are then subtracted from X, leading to this missed optimization. llvm-svn: 124532 | |||||
| * | Add a test for TCE return duplication. | Evan Cheng | 2011-01-29 | 1 | -0/+2 | |
| | | | | | llvm-svn: 124527 | |||||
| * | Re-apply r124518 with fix. Watch out for invalidated iterator. | Evan Cheng | 2011-01-29 | 4 | -44/+150 | |
| | | | | | llvm-svn: 124526 | |||||
| * | Revert r124518. It broke Linux self-host. | Evan Cheng | 2011-01-29 | 4 | -147/+44 | |
| | | | | | llvm-svn: 124522 | |||||
| * | Re-commit r124462 with fixes. Tail recursion elim will now dup ret into ↵ | Evan Cheng | 2011-01-29 | 4 | -44/+147 | |
| | | | | | | | unconditional predecessor to enable TCE on demand. llvm-svn: 124518 | |||||
| * | Implementation of path profiling. | Andrew Trick | 2011-01-29 | 12 | -20/+2624 | |
| | | | | | | | | | | | Modified patch by Adam Preuss. This builds on the existing framework for block tracing, edge profiling and optimal edge profiling. See -help-hidden for new flags. For documentation, see the technical report "Implementation of Path Profiling..." in llvm.org/pubs. llvm-svn: 124515 | |||||
| * | Error on .code16 instead of producing wrong (32bit) code. | Roman Divacky | 2011-01-28 | 1 | -0/+3 | |
| | | | | | llvm-svn: 124498 | |||||
| * | This dyn_cast should be a cast. Pointed out by Frits van Bommel. | Duncan Sands | 2011-01-28 | 1 | -1/+1 | |
| | | | | | llvm-svn: 124497 | |||||
| * | Thread divisions over selects and phis. This doesn't fire much and has ↵ | Duncan Sands | 2011-01-28 | 1 | -9/+19 | |
| | | | | | | | | | basically zero effect on the testsuite (it improves two Ada testcases). llvm-svn: 124496 | |||||
| * | PR9030: Fix disassembly of ARM "mov pc, lr" instruction. | Bob Wilson | 2011-01-28 | 1 | -2/+2 | |
| | | | | | | | Patch by Jyun-Yan You. llvm-svn: 124492 | |||||

