| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | Fix a post-RA scheduling dependency bug. | Dan Gohman | 2009-01-30 | 1 | -11/+90 |
| | | | | | | | | | | | | | | | | If a MachineInstr doesn't have a memoperand but has an opcode that is known to load or store, assume its memory reference may alias *anything*, including stack slots which the compiler completely controls. To partially compensate for this, teach the ScheduleDAG building code to do basic getUnderlyingValue analysis. This greatly reduces the number of instructions that require restrictive dependencies. This code will need to be revisited when we start doing real alias analysis, but it should suffice for now. llvm-svn: 63370 | ||||
| * | Propagate debug loc info for MUL. | Bill Wendling | 2009-01-30 | 1 | -16/+21 |
| | | | | | llvm-svn: 63369 | ||||
| * | Propagate debug loc info in SUB. | Bill Wendling | 2009-01-30 | 1 | -7/+8 |
| | | | | | llvm-svn: 63368 | ||||
| * | Propagate debug loc info in ADDC and ADDE. | Bill Wendling | 2009-01-30 | 1 | -11/+13 |
| | | | | | llvm-svn: 63367 | ||||
| * | Propagate debug loc info in DAG combine's "ADD". | Bill Wendling | 2009-01-30 | 1 | -20/+18 |
| | | | | | llvm-svn: 63366 | ||||
| * | - Propagate debug loc info in combineSelectAndUse(). | Bill Wendling | 2009-01-30 | 1 | -16/+23 |
| | | | | | | | | - Modify ReassociateOps so that the resulting SDValue is what the comment claims it is. llvm-svn: 63365 | ||||
| * | Propagate debug info when building SelectionDAG. | Dale Johannesen | 2009-01-30 | 1 | -399/+519 |
| | | | | | llvm-svn: 63359 | ||||
| * | Remove dead code, again. | Devang Patel | 2009-01-30 | 1 | -14/+0 |
| | | | | | llvm-svn: 63358 | ||||
| * | Remove dead code. | Devang Patel | 2009-01-30 | 1 | -10/+0 |
| | | | | | llvm-svn: 63357 | ||||
| * | Add DW_AT_declaration for class methods. | Devang Patel | 2009-01-30 | 1 | -2/+5 |
| | | | | | llvm-svn: 63356 | ||||
| * | Propagate debug location info for the token factor. | Bill Wendling | 2009-01-30 | 1 | -5/+5 |
| | | | | | llvm-svn: 63355 | ||||
| * | Add DebugLoc propagation to some of the methods in DAG combiner. | Bill Wendling | 2009-01-30 | 1 | -27/+34 |
| | | | | | llvm-svn: 63350 | ||||
| * | Correct the algorithms for choosing spill and restore points so that we ↵ | Owen Anderson | 2009-01-29 | 1 | -2/+23 |
| | | | | | | | | | don't try to insert loads/stores between call frame setup and the actual call. This fixes the last known failure for the pre-alloc-splitter. llvm-svn: 63339 | ||||
| * | Explicitly add PseudoSourceValue information when lowering | Dan Gohman | 2009-01-29 | 1 | -10/+11 |
| | | | | | | | BUILD_VECTOR and conversions to stack operations. llvm-svn: 63333 | ||||
| * | Make a few things const, fix some comments, and simplify | Dan Gohman | 2009-01-29 | 1 | -16/+8 |
| | | | | | | | some assertions. llvm-svn: 63328 | ||||
| * | Local register allocator shouldn't assume only the entry and landing pad ↵ | Evan Cheng | 2009-01-29 | 1 | -16/+13 |
| | | | | | | | basic blocks have live-ins. llvm-svn: 63323 | ||||
| * | Fix two typos that Duncan spotted in a comment. | Dan Gohman | 2009-01-29 | 1 | -1/+1 |
| | | | | | llvm-svn: 63312 | ||||
| * | In the case of an extractelement on an insertelement value, | Dan Gohman | 2009-01-29 | 1 | -1/+5 |
| | | | | | | | | the element indices may be equal if either one is not a constant. llvm-svn: 63311 | ||||
| * | Revert r63273. This was already implemented by Dale. There's no need for my | Bill Wendling | 2009-01-29 | 1 | -72/+101 |
| | | | | | | | change. llvm-svn: 63301 | ||||
| * | Fix an issue where restores could be inserted after a terminator instruction, | Owen Anderson | 2009-01-29 | 1 | -4/+12 |
| | | | | | | | | | and an iterator invalidation issue. FreeBench/pifft no longer miscompiles with these fixes! llvm-svn: 63293 | ||||
| * | Comments are good. :-) | Owen Anderson | 2009-01-29 | 1 | -3/+30 |
| | | | | | llvm-svn: 63276 | ||||
| * | Add support for aggressive load-use-store folding. This takes care of the | Owen Anderson | 2009-01-29 | 1 | -19/+85 |
| | | | | | | | vast majority of code size regressions introduced by pre-alloc-splitting. llvm-svn: 63274 | ||||
| * | - Add DebugLoc to getTargetNode(). | Bill Wendling | 2009-01-29 | 1 | -101/+72 |
| | | | | | | | | | | - Modify TableGen to add the DebugLoc when calling getTargetNode. (The light-weight wrappers are only temporary. The non-DebugLoc version will be removed once the whole debug info stuff is finished with.) llvm-svn: 63273 | ||||
| * | Exit with nice warnings when register allocator run out of registers. | Evan Cheng | 2009-01-29 | 3 | -41/+88 |
| | | | | | llvm-svn: 63267 | ||||
| * | Make x86's BT instruction matching more thorough, and add some | Dan Gohman | 2009-01-29 | 2 | -20/+73 |
| | | | | | | | | | | dagcombines that help it match in several more cases. Add several more cases to test/CodeGen/X86/bt.ll. This doesn't yet include matching for BT with an immediate operand, it just covers more register+register cases. llvm-svn: 63266 | ||||
| * | A slight compile time optimization. If the caller knows there isn't a free ↵ | Evan Cheng | 2009-01-29 | 1 | -6/+6 |
| | | | | | | | register getReg() should not call getFreeReg(). llvm-svn: 63263 | ||||
| * | Add DebugLoc-sensitive versions of many node creation | Dale Johannesen | 2009-01-29 | 1 | -0/+458 |
| | | | | | | | functions. Currently omitted: memcpy, memmove, memset. llvm-svn: 63259 | ||||
| * | Fix comment about removeRange. | Evan Cheng | 2009-01-29 | 1 | -1/+1 |
| | | | | | llvm-svn: 63255 | ||||
| * | Add DebugLoc to the getNode() methods. | Bill Wendling | 2009-01-28 | 1 | -41/+134 |
| | | | | | llvm-svn: 63245 | ||||
| * | Add DebugLoc-aware constructors for SDNode derived | Dale Johannesen | 2009-01-28 | 1 | -0/+23 |
| | | | | | | | | classes (those that reasonably have a DebugLoc associated with them). llvm-svn: 63236 | ||||
| * | Do not forget to derived type while constructing an array type. | Devang Patel | 2009-01-28 | 1 | -0/+2 |
| | | | | | llvm-svn: 63233 | ||||
| * | Fixed extract element when the result needs to be promoted and the input ↵ | Mon P Wang | 2009-01-28 | 1 | -0/+2 |
| | | | | | | | widened. llvm-svn: 63217 | ||||
| * | Make isOperationLegal do what its name suggests, and introduce a | Dan Gohman | 2009-01-28 | 5 | -55/+62 |
| | | | | | | | | | | | | | | | | new isOperationLegalOrCustom, which does what isOperationLegal previously did. Update a bunch of callers to use isOperationLegalOrCustom instead of isOperationLegal. In some case it wasn't obvious which behavior is desired; when in doubt I changed then to isOperationLegalOrCustom as that preserves their previous behavior. This is for the second half of PR3376. llvm-svn: 63212 | ||||
| * | Formatting. | Duncan Sands | 2009-01-28 | 1 | -8/+5 |
| | | | | | llvm-svn: 63199 | ||||
| * | Rename getAnalysisToUpdate to getAnalysisIfAvailable. | Duncan Sands | 2009-01-28 | 10 | -14/+14 |
| | | | | | llvm-svn: 63198 | ||||
| * | Use ValueType::bitsLT to simplify some code. | Dan Gohman | 2009-01-28 | 2 | -2/+2 |
| | | | | | llvm-svn: 63170 | ||||
| * | Use ZERO_EXTEND instead of ANY_EXTEND when promoting | Dan Gohman | 2009-01-28 | 2 | -2/+2 |
| | | | | | | | | shift amounts, to avoid implicitly assuming that target architectures will ignore the high bits. llvm-svn: 63169 | ||||
| * | Add type DIE into appropriate context DIE. | Devang Patel | 2009-01-27 | 1 | -3/+17 |
| | | | | | llvm-svn: 63154 | ||||
| * | Add a DebugLoc field and some simple accessors. | Dale Johannesen | 2009-01-27 | 1 | -7/+46 |
| | | | | | llvm-svn: 63152 | ||||
| * | Refine DebugLoc per review comments. | Evan Cheng | 2009-01-27 | 1 | -6/+7 |
| | | | | | llvm-svn: 63132 | ||||
| * | Add an assertion to the form of SelectionDAG::getConstant that takes | Dan Gohman | 2009-01-27 | 3 | -7/+13 |
| | | | | | | | | | a uint64_t to verify that the value is in range for the given type, to help catch accidental overflow. Fix a few places that relied on getConstant implicitly truncating the value. llvm-svn: 63128 | ||||
| * | Delete redundant return statements. | Dan Gohman | 2009-01-27 | 1 | -7/+0 |
| | | | | | llvm-svn: 63120 | ||||
| * | Make the pre-split-limit option more useful by using a per-function counter. | Owen Anderson | 2009-01-27 | 1 | -1/+7 |
| | | | | | llvm-svn: 63091 | ||||
| * | Assorted debug info fixes. | Devang Patel | 2009-01-27 | 1 | -17/+19 |
| | | | | | | | | | - DW_AT_bit_size is only suitable for bitfields. - Encode source location info for derived types. - Source location and type size info is not useful for subroutine_type (info is included in respective DISubprogram) and array_type. llvm-svn: 63077 | ||||
| * | No need to keep size of DebugLocations vector separately. | Evan Cheng | 2009-01-26 | 1 | -2/+3 |
| | | | | | llvm-svn: 63070 | ||||
| * | Make the Dwarf macro information section optional; CellSPU's assembler | Scott Michel | 2009-01-26 | 1 | -5/+9 |
| | | | | | | | | doesn't support it. The default is set to 'true', so this should not impact any other target backends. llvm-svn: 63058 | ||||
| * | Reapply r63025 and r63026, with fixes for the failing testcases. | Owen Anderson | 2009-01-26 | 1 | -356/+13 |
| | | | | | llvm-svn: 63049 | ||||
| * | Fix PR3393, which amounts to a bug in the expensive | Duncan Sands | 2009-01-26 | 2 | -16/+37 |
| | | | | | | | | | | checking logic. Rather than make the checking more complicated, I've tweaked some logic to make things conform to how the checking thought things ought to be, since this results in a simpler "mental model". llvm-svn: 63048 | ||||
| * | Also revert r63206 | Bill Wendling | 2009-01-26 | 1 | -0/+321 |
| | | | | | llvm-svn: 63041 | ||||
| * | Temporarily revert r63025 until the testsuite failures can be fixed. | Bill Wendling | 2009-01-26 | 1 | -12/+34 |
| | | | | | llvm-svn: 63040 | ||||

