| Commit message (Collapse) | Author | Age | Files | Lines | ||
|---|---|---|---|---|---|---|
| ... | ||||||
| * | Missed a check. | Evan Cheng | 2008-06-19 | 1 | -1/+1 | |
| | | | | | llvm-svn: 52487 | |||||
| * | Fix a bug with <8 x i16> shuffle lowering on X86 where parts of the | Eli Friedman | 2008-06-19 | 1 | -2/+0 | |
| | | | | | | | | | | | shuffle could be skipped. The check is invalid because the loop index i doesn't correspond to the element actually inserted. The correct check is already done a few lines earlier, for whether the element is already in the right spot, so this shouldn't have any effect on the codegen for code that was already correct. llvm-svn: 52486 | |||||
| * | Revert my last patch, which was causing regression test failures. | Owen Anderson | 2008-06-19 | 1 | -78/+69 | |
| | | | | | llvm-svn: 52485 | |||||
| * | Coalesce copy from one register class to a sub register class. e.g. ↵ | Evan Cheng | 2008-06-19 | 2 | -25/+98 | |
| | | | | | | | X86::MOV16to16_. llvm-svn: 52480 | |||||
| * | Cosmetic changes. | Evan Cheng | 2008-06-19 | 1 | -3/+5 | |
| | | | | | llvm-svn: 52479 | |||||
| * | Unneeded include's. | Evan Cheng | 2008-06-19 | 2 | -2/+0 | |
| | | | | | llvm-svn: 52478 | |||||
| * | Minor spiller tweak to unfavor reload into load/store instructions. | Evan Cheng | 2008-06-19 | 1 | -4/+8 | |
| | | | | | llvm-svn: 52477 | |||||
| * | Insert empty slots into the instruction numbering in live intervals, so that ↵ | Owen Anderson | 2008-06-19 | 1 | -69/+78 | |
| | | | | | | | | | we can more easily add new instructions. llvm-svn: 52475 | |||||
| * | Add support for extractvalue and insertvalue instructions in GVN. | Owen Anderson | 2008-06-18 | 1 | -1/+63 | |
| | | | | | llvm-svn: 52472 | |||||
| * | Add local PRE to GVN. This only operates in cases where it would not ↵ | Owen Anderson | 2008-06-18 | 1 | -30/+168 | |
| | | | | | | | | | increase code size, namely when the instantiated expression would only need to be created in one predecessor. llvm-svn: 52471 | |||||
| * | Fix the source line debug information for the Windows platform. | Argyrios Kyrtzidis | 2008-06-18 | 1 | -5/+88 | |
| | | | | | | | | According to DWARF-2 specification, the line information is provided through an offset in the .debug_line section. Replace the label reference that is used with a section offset. llvm-svn: 52468 | |||||
| * | Fix the regressions on sext-misc.ll my patch yesterday caused. | Chris Lattner | 2008-06-18 | 1 | -0/+1 | |
| | | | | | llvm-svn: 52466 | |||||
| * | Revert r52459, which was causing an infinite loop or massive slowdown on ↵ | Owen Anderson | 2008-06-18 | 1 | -469/+369 | |
| | | | | | | | | | MultiSource/Applications/SPASS, and possibly others as well. Please reapply once this is fixed. llvm-svn: 52465 | |||||
| * | Move SCEVExpander::visitAddExpr out-of-line. | Dan Gohman | 2008-06-18 | 1 | -0/+10 | |
| | | | | | llvm-svn: 52464 | |||||
| * | Move LSR's private isZero function to a public SCEV member | Dan Gohman | 2008-06-18 | 3 | -27/+20 | |
| | | | | | | | function, and make use of it in several places. llvm-svn: 52463 | |||||
| * | Rewrite the DeadArgumentElimination pass, to use a more explicit tracking of | Matthijs Kooijman | 2008-06-18 | 1 | -369/+469 | |
| | | | | | | | | | | | | | | dependencies between return values and/or arguments. Also make the handling of arguments and return values the same. The pass now looks properly inside returned structs, but only at the first level (ie, not inside nested structs). Also add a testcase for testing various variations of (multiple) dead rerturn values. llvm-svn: 52459 | |||||
| * | Reapply r52397 (make IPConstProp promote returned arguments), but fixed this | Matthijs Kooijman | 2008-06-18 | 1 | -3/+18 | |
| | | | | | | | | | time. Sorry for the trouble! This time, also add a testcase, which I should have done in the first place... llvm-svn: 52455 | |||||
| * | XOR32rr, etc. are not AsCheapAsMove, but MOV32ri, etc. are. | Evan Cheng | 2008-06-18 | 1 | -4/+3 | |
| | | | | | llvm-svn: 52454 | |||||
| * | Reapply r52396, it was unrelated to the breakage (that was caused by r52397, my | Matthijs Kooijman | 2008-06-18 | 1 | -53/+76 | |
| | | | | | | | commit after this). llvm-svn: 52453 | |||||
| * | Complete support for two-address pass rematerialization. Now *almost* always ↵ | Evan Cheng | 2008-06-18 | 1 | -49/+128 | |
| | | | | | | | a win. llvm-svn: 52452 | |||||
| * | Cosmetic. | Evan Cheng | 2008-06-18 | 1 | -1/+1 | |
| | | | | | llvm-svn: 52450 | |||||
| * | implement some simple bswap optimizations, rdar://5992453 | Chris Lattner | 2008-06-18 | 1 | -122/+168 | |
| | | | | | llvm-svn: 52442 | |||||
| * | make truncate/sext elimination capable of changing phi's. This | Chris Lattner | 2008-06-18 | 1 | -5/+35 | |
| | | | | | | | implements rdar://6013816 and the testcase in Transforms/InstCombine/sext-misc.ll. llvm-svn: 52440 | |||||
| * | Unbreak DECLARE isel in pic mode. | Evan Cheng | 2008-06-18 | 1 | -3/+7 | |
| | | | | | llvm-svn: 52439 | |||||
| * | Preserve dominance frontier while trivially unswitching loop. | Devang Patel | 2008-06-18 | 1 | -0/+17 | |
| | | | | | llvm-svn: 52438 | |||||
| * | Auto-upgrade code for multiple-value return statements. This code | Dan Gohman | 2008-06-17 | 1 | -0/+24 | |
| | | | | | | | isn't actually called yet. llvm-svn: 52435 | |||||
| * | In InsertValueInst's copy ctor, actually copy the operands. | Dan Gohman | 2008-06-17 | 1 | -0/+2 | |
| | | | | | llvm-svn: 52434 | |||||
| * | We don't want to find dependencies within the same block in this case. It ↵ | Owen Anderson | 2008-06-17 | 1 | -1/+1 | |
| | | | | | | | | | leads to incorrect results because we're detecting something at or after the call we're querying on. llvm-svn: 52433 | |||||
| * | Implement the ExtractValueInst::getIndexedType that accepts one | Dan Gohman | 2008-06-17 | 1 | -0/+6 | |
| | | | | | | | index value. llvm-svn: 52432 | |||||
| * | Live-through live interval is [mbb start, mbb end+1]. | Evan Cheng | 2008-06-17 | 1 | -1/+1 | |
| | | | | | llvm-svn: 52431 | |||||
| * | When extending a liveinterval by commuting, don't throw away the live ranges ↵ | Evan Cheng | 2008-06-17 | 1 | -2/+13 | |
| | | | | | | | that are not affected. llvm-svn: 52430 | |||||
| * | Consistently set "Buckets[NumBuckets] = reinterpret_cast<void*>(-1)" ↵ | Ted Kremenek | 2008-06-17 | 1 | -1/+1 | |
| | | | | | | | throughout FoldingSet.cpp. llvm-svn: 52425 | |||||
| * | Add an insertBefore method for attaching previously unattached instructions, | Owen Anderson | 2008-06-17 | 1 | -0/+6 | |
| | | | | | | | such as those created by clone(), to a basic block. llvm-svn: 52424 | |||||
| * | It's not safe to remove SUBREG_TO_REG that looks like identity copies, e.g. ↵ | Evan Cheng | 2008-06-17 | 1 | -11/+6 | |
| | | | | | | | movl %eax, %eax on x86-64 actually does a zero-extend. llvm-svn: 52421 | |||||
| * | Add one more 'magic' define :) | Anton Korobeynikov | 2008-06-17 | 1 | -1/+2 | |
| | | | | | llvm-svn: 52420 | |||||
| * | Unbreak non-PPC builds | Anton Korobeynikov | 2008-06-17 | 1 | -4/+5 | |
| | | | | | llvm-svn: 52419 | |||||
| * | Provide generic hooks for icache invalidation. Add PPC implementation. | Anton Korobeynikov | 2008-06-17 | 4 | -29/+11 | |
| | | | | | | | Patch by Gary Benson! llvm-svn: 52418 | |||||
| * | revert recent patch which is causing widespread breakage. | Chris Lattner | 2008-06-17 | 1 | -85/+53 | |
| | | | | | llvm-svn: 52415 | |||||
| * | Don't forget to initialize SymbolSearchingDisabled. | Evan Cheng | 2008-06-17 | 1 | -0/+1 | |
| | | | | | llvm-svn: 52414 | |||||
| * | Fix typo that changed the logic to something wrong. | Duncan Sands | 2008-06-17 | 1 | -1/+1 | |
| | | | | | | | Spotted by Nick Lewycky. llvm-svn: 52411 | |||||
| * | Split type expansion into ExpandInteger and ExpandFloat | Duncan Sands | 2008-06-17 | 7 | -1500/+1611 | |
| | | | | | | | | | rather than bundling them together. Rename FloatToInt to PromoteFloat (better, if not perfect). Reorganize files by types rather than by operations. llvm-svn: 52408 | |||||
| * | Learn IPConstProp to propagate arguments that are directly returned. Strictly | Matthijs Kooijman | 2008-06-17 | 1 | -2/+11 | |
| | | | | | | | | | speaking these are not constant values. However, when a function always returns one of its arguments, then from the point of view of each caller the return value is constant (or at least a known value) and can be replaced. llvm-svn: 52397 | |||||
| * | Learn IPConstProp to look at individual return values and propagate them | Matthijs Kooijman | 2008-06-17 | 1 | -53/+76 | |
| | | | | | | | | | | | | individually. Also learn IPConstProp how returning first class aggregates work, in addition to old style multiple return instructions. Modify the return-constants testscase to confirm this behaviour. llvm-svn: 52396 | |||||
| * | Use a SmallVector instead of an array, since auto_ptr doesn't handle arrays | Matthijs Kooijman | 2008-06-17 | 1 | -11/+8 | |
| | | | | | | | properly. llvm-svn: 52390 | |||||
| * | add a new -enable-value-prop flag for llcbeta, that enables propagation | Chris Lattner | 2008-06-17 | 1 | -12/+132 | |
| | | | | | | | | | | | | of value info (sign/zero ext info) from one MBB to another. This doesn't handle much right now because of two limitations: 1) only handles zext/sext, not random bit propagation (no assert exists for this) 2) doesn't handle phis. llvm-svn: 52383 | |||||
| * | Fix spelling. | Duncan Sands | 2008-06-17 | 1 | -1/+1 | |
| | | | | | llvm-svn: 52381 | |||||
| * | Rather than avoiding to wrap ISD::DECLARE GV operand in X86ISD::Wrapper, ↵ | Evan Cheng | 2008-06-17 | 2 | -3/+22 | |
| | | | | | | | simply handle it at dagisel time with x86 specific isel code. llvm-svn: 52377 | |||||
| * | Add a missing ~ (dtor became ctor) which caused crashes on a bunch of stuff. | Chris Lattner | 2008-06-16 | 1 | -2/+5 | |
| | | | | | llvm-svn: 52374 | |||||
| * | Do not issue identity copies. | Evan Cheng | 2008-06-16 | 1 | -13/+22 | |
| | | | | | llvm-svn: 52373 | |||||
| * | Refine the change in r52258 for avoiding use-before-def conditions | Dan Gohman | 2008-06-16 | 1 | -9/+12 | |
| | | | | | | | | | | when changing the stride of a comparison so that it's slightly more precise, by having it scan the instruction list to determine if there is a use of the condition after the point where the condition will be inserted. llvm-svn: 52371 | |||||

