| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | 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 | ||||
| * | Identify when a lexical scope is split in to multiple instruction ranges. ↵ | Devang Patel | 2010-04-27 | 2 | -214/+350 |
| | | | | | | | | | Emit such ranges using DW_AT_ranges. This patch fixes bug (PR6894) introduced by previous version of this patch. llvm-svn: 102454 | ||||
| * | Do not count kill, implicit_def instructions as printed instructions. | Evan Cheng | 2010-04-27 | 1 | -4/+4 |
| | | | | | llvm-svn: 102453 | ||||
| * | round zero-byte .zerofill directives up to 1 byte. This | Chris Lattner | 2010-04-27 | 1 | -0/+2 |
| | | | | | | | | should fix some "g++.dg-struct-layout-1" failures, rdar://7886017 llvm-svn: 102421 | ||||
| * | Revert a small part of 102372; this fixes at least one | Dale Johannesen | 2010-04-27 | 1 | -0/+5 |
| | | | | | | | | | of the dbg testsuite regressions. I don't think this is really the right fix; this change exposed an existing problem upstream somewhere. llvm-svn: 102410 | ||||
| * | add a comment in verbose-asm mode indicating why a noop is being generated. | Chris Lattner | 2010-04-26 | 1 | -2/+3 |
| | | | | | llvm-svn: 102401 | ||||
| * | on darwin empty functions need to codegen into something of non-zero length, | Chris Lattner | 2010-04-26 | 1 | -3/+9 |
| | | | | | | | | | | | | otherwise labels get incorrectly merged. We handled this by emitting a ".byte 0", but this isn't correct on thumb/arm targets where the text segment needs to be a multiple of 2/4 bytes. Handle this by emitting a noop. This is more gross than it should be because arm/ppc are not fully mc'ized yet. This fixes rdar://7908505 llvm-svn: 102400 | ||||
| * | Avoid adding a null MD node operand, which crashes with "-debug" when trying | Bob Wilson | 2010-04-26 | 1 | -1/+2 |
| | | | | | | | to print the operand. llvm-svn: 102395 | ||||
| * | Use DW_AT_entry_pc instead of DW_AT_low_pc/DW_AT_high_pc pair. This ↵ | Devang Patel | 2010-04-26 | 1 | -3/+3 |
| | | | | | | | simplifies debug range entries. llvm-svn: 102394 | ||||
| * | Remove crufty comments. | Dale Johannesen | 2010-04-26 | 1 | -5/+0 |
| | | | | | llvm-svn: 102380 | ||||
| * | Add DBG_VALUE handling for byval parameters; this | Dale Johannesen | 2010-04-26 | 3 | -27/+84 |
| | | | | | | | | produces a comment on targets that support it, but the Dwarf writer is not hooked up yet. llvm-svn: 102372 | ||||
| * | Insert dbg_value instructions for function entry block liveins (i.e. ↵ | Evan Cheng | 2010-04-26 | 1 | -1/+30 |
| | | | | | | | function arguments). llvm-svn: 102368 | ||||
| * | fix PR6921 a different way. Intead of increasing the | Chris Lattner | 2010-04-26 | 1 | -1/+9 |
| | | | | | | | | | alignment of globals with a specified alignment, we fix common variables to obey their alignment. Add a comment explaining why this behavior is important. llvm-svn: 102365 | ||||
| * | Re-enable 102323 with fix: do not update dbg_value's with incorrect frame ↵ | Evan Cheng | 2010-04-26 | 1 | -20/+17 |
| | | | | | | | indices when the live interval are being re-materialized. llvm-svn: 102361 | ||||
| * | Revert r102300/102301, which serious broke objc apps. | Chris Lattner | 2010-04-26 | 1 | -3/+3 |
| | | | | | llvm-svn: 102359 | ||||
| * | Update MachineSSAUpdater with the same changes I made for the IR-level | Bob Wilson | 2010-04-26 | 1 | -122/+428 |
| | | | | | | | | SSAUpdater. I'm going to try to refactor this to share most of the code between them. llvm-svn: 102353 | ||||
| * | Temporary disable spiller modifying dbg_value. It's breaking build. | Evan Cheng | 2010-04-26 | 1 | -0/+5 |
| | | | | | llvm-svn: 102327 | ||||
| * | - Move TargetLowering::EmitTargetCodeForFrameDebugValue to TargetInstrInfo ↵ | Evan Cheng | 2010-04-26 | 4 | -19/+35 |
| | | | | | | | | | and rename it to emitFrameIndexDebugValue. - Teach spiller to modify DBG_VALUE instructions to reference spill slots. llvm-svn: 102323 | ||||
| * | Stop abusing EmitInstrWithCustomInserter for target-dependent | Dale Johannesen | 2010-04-25 | 1 | -9/+8 |
| | | | | | | | | | form of DEBUG_VALUE, as it doesn't have reasonable default behavior for unsupported targets. Add a new hook instead. No functional change. llvm-svn: 102320 | ||||
| * | Add comment re byval args. Doesn't actually work this way yet. | Dale Johannesen | 2010-04-25 | 1 | -1/+3 |
| | | | | | | | xs llvm-svn: 102316 | ||||
| * | Fix PR6921: globals were not getting correctly rounded up to their | Chris Lattner | 2010-04-25 | 1 | -3/+3 |
| | | | | | | | | preferred alignment unless they were common or some other special case. llvm-svn: 102300 | ||||
| * | When a load operand is promoted to an extload, replace other uses with uses ↵ | Evan Cheng | 2010-04-24 | 1 | -30/+67 |
| | | | | | | | of extload result truncated. llvm-svn: 102236 | ||||
| * | Apply a fix for a vector setcc dagcombine from Jan Sjodin. No | Dan Gohman | 2010-04-24 | 1 | -1/+2 |
| | | | | | | | testcase yet, as the testcase now fails downstream. llvm-svn: 102228 | ||||
| * | Code refactoring. | Evan Cheng | 2010-04-23 | 1 | -11/+12 |
| | | | | | llvm-svn: 102202 | ||||
| * | Move FastISel's HandlePHINodesInSuccessorBlocks call down into FastISel | Dan Gohman | 2010-04-23 | 2 | -14/+6 |
| | | | | | | | itself too. llvm-svn: 102176 | ||||
| * | Revert 102135, 102129, 102127, 102106, 102104, 102102, 102012, 102004, | Dan Gohman | 2010-04-23 | 2 | -375/+211 |
| | | | | | | | | because 102004 causes codegen to emit invalid assembly on at least x86_64-unknown-gnu-linux. llvm-svn: 102155 | ||||
| * | Add comment. | Devang Patel | 2010-04-22 | 1 | -0/+5 |
| | | | | | llvm-svn: 102129 | ||||
| * | Sink SelectionDAGBuilder's HandlePHINodesInSuccessorBlocks down | Dan Gohman | 2010-04-22 | 3 | -15/+7 |
| | | | | | | | into SelectionDAGBuilder itself. llvm-svn: 102128 | ||||
| * | Adjust debug range offsets for isWeakForLinker() functions. | Devang Patel | 2010-04-22 | 2 | -6/+29 |
| | | | | | llvm-svn: 102127 | ||||
| * | Move HandlePHINodesInSuccessorBlocks functions out of SelectionDAGISel | Dan Gohman | 2010-04-22 | 4 | -81/+86 |
| | | | | | | | and into SelectionDAGBuilder and FastISel. llvm-svn: 102123 | ||||
| * | - It's not safe to promote rotates (at least not trivially). | Evan Cheng | 2010-04-22 | 1 | -25/+46 |
| | | | | | | | - Some code refactoring. llvm-svn: 102111 | ||||
| * | Fix a comment. | Dan Gohman | 2010-04-22 | 1 | -1/+1 |
| | | | | | llvm-svn: 102110 | ||||
| * | Move PHINodesToUpdate out of SelectionDAGBuilder and into | Dan Gohman | 2010-04-22 | 4 | -36/+44 |
| | | | | | | | | | | FunctionLoweringInfo, as it isn't SelectionDAG-specific. This isn't completely natural, as PHI node state is not per-function but rather per-basic-block, however there's currently no other convenient per-basic-block state to group it with. llvm-svn: 102109 | ||||
| * | Rename InsnAfterLabelMap and InsnBeforeLabelMap. | Devang Patel | 2010-04-22 | 2 | -14/+14 |
| | | | | | llvm-svn: 102106 | ||||
| * | Keep track of MCSymbol used to mark beginning of a function. | Devang Patel | 2010-04-22 | 2 | -3/+6 |
| | | | | | llvm-svn: 102104 | ||||
| * | At this point Start and End are not null. | Devang Patel | 2010-04-22 | 1 | -5/+2 |
| | | | | | llvm-svn: 102102 | ||||
| * | Run LiveVariables instead of computing liveness locally in -regalloc=fast. | Jakob Stoklund Olesen | 2010-04-21 | 1 | -177/+2 |
| | | | | | | | | | | | | This actually makes everything slower, but the plan is to have isel add <kill> flags the way it is already adding <dead> flags. Then LiveVariables can be removed again. When ignoring the time spent in LiveVariables, -regalloc=fast is now twice as fast as -regalloc=local. llvm-svn: 102034 | ||||

