| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | Remove the code for special-casing byval for fast-isel. SelectionDAG | Dan Gohman | 2010-05-01 | 2 | -21/+3 |
| | | | | | | | | handles argument lowering anyway, so there's no need for special casing here. llvm-svn: 102828 | ||||
| * | Re-disable kill flags, as there is more trouble. | Dan Gohman | 2010-05-01 | 1 | -0/+4 |
| | | | | | llvm-svn: 102826 | ||||
| * | Re-enable kill flags from SelectionDAGISel, with a fix: don't | Dan Gohman | 2010-05-01 | 1 | -5/+1 |
| | | | | | | | try to put a kill flag on a DBG_INFO instruction. llvm-svn: 102820 | ||||
| * | Fix a bug where debug info affected stack slot coloring. | Dale Johannesen | 2010-05-01 | 1 | -1/+2 |
| | | | | | | | | Seen in SingleSrc/Benchmarks/Misc/flops with TEST=optllcdbg. 7929951. llvm-svn: 102819 | ||||
| * | Fix whitespace. | Dan Gohman | 2010-05-01 | 1 | -1/+1 |
| | | | | | llvm-svn: 102817 | ||||
| * | Don't pass SDValues by non-const reference unless they may be | Dan Gohman | 2010-05-01 | 2 | -2/+3 |
| | | | | | | | modified. llvm-svn: 102816 | ||||
| * | Reorgnaize more switch code lowering to clean up some tricky | Dan Gohman | 2010-05-01 | 2 | -22/+22 |
| | | | | | | | | | | | | code, and to eliminate the need for the SelectionDAGBuilder state to be live during CodeGenAndEmitDAG calls. Call SDB->clear() before CodeGenAndEmitDAG calls instead of before it, and move the CurDAG->clear() out of SelectionDAGBuilder, which doesn't own the DAG, and into CodeGenAndEmitDAG. llvm-svn: 102814 | ||||
| * | Delete the EdgeMapping variable itself. | Dan Gohman | 2010-05-01 | 2 | -5/+0 |
| | | | | | llvm-svn: 102810 | ||||
| * | Get rid of the EdgeMapping map. Instead, just check for BasicBlock | Dan Gohman | 2010-05-01 | 8 | -35/+19 |
| | | | | | | | changes before doing phi lowering for switches. llvm-svn: 102809 | ||||
| * | EXTRACT_VECTOR_ELT of an INSERT_VECTOR_ELT may have the same index, but the | Bill Wendling | 2010-04-30 | 1 | -8/+13 |
| | | | | | | | | | indexes could be of a different value type. Or not even using the same SDNode for the constant (weird, I know). Compare the actual values instead of the pointers. llvm-svn: 102791 | ||||
| * | Remove this debug output. The MachineFunction will be printed once all of | Dan Gohman | 2010-04-30 | 1 | -3/+0 |
| | | | | | | | | instruction selection is done; it's confusing to see parts of it printed, while other parts are omitted, along the way. llvm-svn: 102771 | ||||
| * | The local register allocator has to spill dirty callee saved registers before a | Jakob Stoklund Olesen | 2010-04-30 | 1 | -6/+33 |
| | | | | | | | | | | | call that might throw. The landing pad assumes that all registers are in stack slots. We used to spill those dirty CSRs after the call, and the stack slots would be wrong when arriving at the landing pad. llvm-svn: 102770 | ||||
| * | Attach AT_APPLE_optimized attribute to optimized function's debug info. | Devang Patel | 2010-04-30 | 1 | -5/+8 |
| | | | | | llvm-svn: 102743 | ||||
| * | EmitDbgValue doesn't need its EdgeMapping argument. | Dan Gohman | 2010-04-30 | 3 | -12/+10 |
| | | | | | llvm-svn: 102742 | ||||
| * | Don't use floating point in SimpleRegisterCoalescing. | Jakob Stoklund Olesen | 2010-04-30 | 1 | -15/+10 |
| | | | | | | | Rounding differences causes tests to fail on Linux. llvm-svn: 102729 | ||||
| * | Apply a patch from Jan Sjodin to fix a compiler abort on vector | Dan Gohman | 2010-04-30 | 1 | -9/+24 |
| | | | | | | | | comparisons sign-extended to a different bitwidth than the comparison operands. llvm-svn: 102721 | ||||
| * | Temporarily disable SelectionDAG kill flags, which are causing trouble. | Dan Gohman | 2010-04-30 | 1 | -0/+4 |
| | | | | | llvm-svn: 102680 | ||||
| * | Set register kill flags on the SelectionDAG path, at least in the | Dan Gohman | 2010-04-30 | 1 | -1/+12 |
| | | | | | | | easy cases. llvm-svn: 102678 | ||||
| * | Reject really weird coalescer case when trying to merge identical subregisters | Jakob Stoklund Olesen | 2010-04-29 | 1 | -0/+7 |
| | | | | | | | | | | | | | | of different register classes. e.g. %reg1048:3<def> = EXTRACT_SUBREG %RAX<kill>, 3 Where %reg1048 is a GR32 register. This is not impossible to handle, but it is pretty hard and very rare. This should unbreak the dragonegg builder. llvm-svn: 102672 | ||||
| * | Fix typos in assertion strings. | Dan Gohman | 2010-04-29 | 1 | -2/+2 |
| | | | | | llvm-svn: 102666 | ||||
| * | Slightly verboser debug spew from coalescer | Jakob Stoklund Olesen | 2010-04-29 | 2 | -26/+25 |
| | | | | | llvm-svn: 102663 | ||||
| * | Refactor. | Devang Patel | 2010-04-29 | 1 | -4/+2 |
| | | | | | llvm-svn: 102661 | ||||
| * | Make naked functions work on PPC. | Dale Johannesen | 2010-04-29 | 1 | -0/+4 |
| | | | | | llvm-svn: 102657 | ||||
| * | Print variable scope name in DEBUG_VALUE comment. Useful in some cases. e.g. | Devang Patel | 2010-04-29 | 1 | -0/+2 |
| | | | | | | | | | | | ##DEBUG_VALUE: runOnMachineFunction:this <- RDI+0 ##DEBUG_VALUE: runOnMachineFunction:fn <- RSI+0 ##DEBUG_VALUE: DeadDefs <- undef ## SimpleRegisterCoalescing.cpp:2706 ##DEBUG_VALUE: getRegInfo:this <- [%rsp+$56]+$0 ##DEBUG_VALUE: getTarget:this <- [%rsp+$56]+$0 llvm-svn: 102655 | ||||
| * | Remove DBG_VALUE which reference dead stack slots. | Evan Cheng | 2010-04-29 | 1 | -2/+19 |
| | | | | | llvm-svn: 102654 | ||||
| * | DO not push DBG_VALUE machine instructions for inlined fuction arguments in ↵ | Devang Patel | 2010-04-29 | 1 | -0/+7 |
| | | | | | | | entry block. llvm-svn: 102653 | ||||
| * | Add comment. | Evan Cheng | 2010-04-29 | 1 | -0/+2 |
| | | | | | llvm-svn: 102606 | ||||
| * | Re-enable 102565 with fixes. | Evan Cheng | 2010-04-29 | 2 | -14/+8 |
| | | | | | llvm-svn: 102602 | ||||
| * | Temporarily disable my changes to unbreak the build. | Evan Cheng | 2010-04-29 | 2 | -0/+8 |
| | | | | | llvm-svn: 102590 | ||||
| * | Do not generate duplicate dbg_value instructions for function arguments. | Evan Cheng | 2010-04-29 | 2 | -9/+11 |
| | | | | | llvm-svn: 102585 | ||||
| * | Fix missing #include. | Dan Gohman | 2010-04-29 | 1 | -0/+1 |
| | | | | | llvm-svn: 102584 | ||||
| * | Avoid emitting a dbg_value machineinstr that's not going to be inserted into ↵ | Evan Cheng | 2010-04-29 | 2 | -2/+2 |
| | | | | | | | entry block. llvm-svn: 102581 | ||||
| * | Check Reg against zero. | Evan Cheng | 2010-04-29 | 2 | -1/+3 |
| | | | | | llvm-svn: 102573 | ||||
| * | - Really preserve dbg_value instructions when the register is spilled. | Evan Cheng | 2010-04-28 | 1 | -2/+3 |
| | | | | | | | - Also, update dbg_value is the value is being re-matted from a frame slot, e.g. fixed slots for arguments. llvm-svn: 102565 | ||||
| * | tidy up. | Devang Patel | 2010-04-28 | 1 | -8/+2 |
| | | | | | llvm-svn: 102558 | ||||
| * | Replace r102368 with code that's less fragile. This creates DBG_VALUE ↵ | Evan Cheng | 2010-04-28 | 6 | -33/+77 |
| | | | | | | | instructions for function arguments early and insert them after instruction selection is done. llvm-svn: 102554 | ||||
| * | Pretty print DBG_VALUE machine instructions. | Evan Cheng | 2010-04-28 | 1 | -1/+9 |
| | | | | | | | | | | Before: DBG_VALUE %RSI, 0, !-1; dbg:SimpleRegisterCoalescing.cpp:2707 Now: DBG_VALUE %RSI, 0, !"this"; dbg:SimpleRegisterCoalescing.cpp:2707 llvm-svn: 102518 | ||||
| * | Rework global alignment computation again. Now we do round up | Chris Lattner | 2010-04-28 | 1 | -19/+37 |
| | | | | | | | | | alignment of globals to the preferred alignment, but only when there is no section specified on the global (by far the common case). llvm-svn: 102515 | ||||
| * | While lowering dbg_declare, emit DBG_VALUE machine instruction if alloca ↵ | Devang Patel | 2010-04-28 | 1 | -11/+11 |
| | | | | | | | matching llvm.dbg.declare intrinsic is missing. llvm-svn: 102513 | ||||
| * | Recompute kill flags from live intervals after coalescing instead of trying to | Jakob Stoklund Olesen | 2010-04-28 | 2 | -49/+21 |
| | | | | | | | | | | | | update them. Computing kill flags is notoriously difficult, and the coalescer would get it wrong sometimes, and it would completely skip physical registers. Now we simply remove kill flags based on the live intervals after coalescing. This is a few percent slower, but now we get correct kill flags for physical registers after coalescing. llvm-svn: 102510 | ||||
| * | Try operation promotion only if regular dag combine and target-specific ones ↵ | Evan Cheng | 2010-04-28 | 1 | -15/+42 |
| | | | | | | | failed to do anything. llvm-svn: 102492 | ||||
| * | Emit debug info for byval parameters. | Devang Patel | 2010-04-28 | 2 | -4/+15 |
| | | | | | llvm-svn: 102486 | ||||
| * | further simplify EmitAlignment by eliminating the | Chris Lattner | 2010-04-28 | 1 | -5/+2 |
| | | | | | | | ForcedAlignBits argument, tweaking the single client of it. llvm-svn: 102484 | ||||
| * | remove a dead argument to EmitAlignment. | Chris Lattner | 2010-04-28 | 1 | -2/+1 |
| | | | | | llvm-svn: 102483 | ||||
| * | remove some default arguments to EmitAlignment. | Chris Lattner | 2010-04-28 | 2 | -8/+6 |
| | | | | | llvm-svn: 102482 | ||||
| * | Refactor. | Devang Patel | 2010-04-28 | 2 | -50/+87 |
| | | | | | llvm-svn: 102481 | ||||
| * | Use isReg(), isImm() and isFPImm(). | Devang Patel | 2010-04-27 | 1 | -9/+5 |
| | | | | | llvm-svn: 102470 | ||||
| * | Check operand type first. | Devang Patel | 2010-04-27 | 1 | -1/+2 |
| | | | | | llvm-svn: 102468 | ||||
| * | Ignore DBG_VALUE instructions that points to undef values. | Devang Patel | 2010-04-27 | 2 | -5/+5 |
| | | | | | llvm-svn: 102463 | ||||
| * | - When legal, promote a load to zextload rather than ext load. | Evan Cheng | 2010-04-27 | 1 | -6/+20 |
| | | | | | | | - Catch more further dag combine opportunities as result of operand promotion, e.g. (i32 anyext (i16 trunc (i32 x))) -> (i32 x) llvm-svn: 102455 | ||||

