| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | 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 | ||||
| * | 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 | ||||
| * | Ignore DBG_VALUE instructions that points to undef values. | Devang Patel | 2010-04-27 | 1 | -5/+0 |
| | | | | | 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 | ||||
| * | 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 | ||||
| * | 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 | ||||
| * | 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 | ||||
| * | - Move TargetLowering::EmitTargetCodeForFrameDebugValue to TargetInstrInfo ↵ | Evan Cheng | 2010-04-26 | 3 | -16/+18 |
| | | | | | | | | | 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 | ||||
| * | 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 | ||||
| * | Sink SelectionDAGBuilder's HandlePHINodesInSuccessorBlocks down | Dan Gohman | 2010-04-22 | 3 | -15/+7 |
| | | | | | | | into SelectionDAGBuilder itself. llvm-svn: 102128 | ||||
| * | 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 | ||||
| * | Add more const qualifiers on TargetMachine and friends. | Dan Gohman | 2010-04-21 | 2 | -2/+3 |
| | | | | | llvm-svn: 101977 | ||||
| * | Move several SelectionDAG-independent utility functions out of the | Dan Gohman | 2010-04-21 | 3 | -310/+2 |
| | | | | | | | SelectionDAG directory and into a new Analysis.cpp file. llvm-svn: 101975 | ||||
| * | Add another variant of this test which found a place where | Dan Gohman | 2010-04-21 | 1 | -1/+2 |
| | | | | | | | | CodeGen's ComputeMaskedBits was being over-conservative when computing bits for an ADD. llvm-svn: 101963 | ||||
| * | Because of the EMMS problem, right now we have to support | Dale Johannesen | 2010-04-20 | 1 | -1/+1 |
| | | | | | | | | | | | | user-defined operations that use MMX register types, but the compiler shouldn't generate them on its own. This adds a Synthesizable abstraction to represent this, and changes the vector widening computation so it won't produce MMX types. (The motivation is to remove noise from the ABI compatibility part of the gcc test suite, which has some breakage right now.) llvm-svn: 101951 | ||||
| * | Sink the CopyToExportRegsIfNeeded calls out of SelectionDAGISel | Dan Gohman | 2010-04-20 | 2 | -6/+3 |
| | | | | | | | | | into SelectionDAGBuilder. This avoids a separate pass over the instructions, and has the side effect of providing debug location information to the copy. llvm-svn: 101906 | ||||
| * | Don't send PHI nodes down to SelectionDAGBuilder of FastISel, since | Dan Gohman | 2010-04-20 | 4 | -6/+10 |
| | | | | | | | they end up doing nothing. llvm-svn: 101904 | ||||
| * | Sink this use_empty() check into isUsedOutsideOfDefiningBlock. | Dan Gohman | 2010-04-20 | 1 | -1/+2 |
| | | | | | llvm-svn: 101902 | ||||
| * | If a PHI node somehow has debug info, propogate it to the MachineInstr PHI. | Dan Gohman | 2010-04-20 | 1 | -1/+1 |
| | | | | | llvm-svn: 101901 | ||||
| * | Don't iterate through the whole block just to find the PHI nodes. | Dan Gohman | 2010-04-20 | 1 | -6/+3 |
| | | | | | llvm-svn: 101900 | ||||
| * | Delete a redundant return statement. | Dan Gohman | 2010-04-20 | 1 | -1/+0 |
| | | | | | llvm-svn: 101860 | ||||
| * | The visitXOR method can return the same SDNode. If so, we don't want to delete | Bill Wendling | 2010-04-20 | 1 | -1/+1 |
| | | | | | | | it as it's not dead. llvm-svn: 101855 | ||||
| * | Remove this debug output; it isn't that useful, and it's incomplete | Dan Gohman | 2010-04-20 | 1 | -2/+0 |
| | | | | | | | in the case where a basic block is split. llvm-svn: 101850 | ||||
| * | Sink DebugLoc handling out of SelectionDAGISel into FastISel and | Dan Gohman | 2010-04-20 | 4 | -39/+15 |
| | | | | | | | SelectionDAGBuilder, where it doesn't have to be as complicated. llvm-svn: 101848 | ||||
| * | Remove MachineFunction's DefaultDebugLoc member, and make DwarfDebug.cpp | Dan Gohman | 2010-04-20 | 1 | -5/+0 |
| | | | | | | | responsible for figuring out what that's supposed to be on its own. llvm-svn: 101844 | ||||
| * | Reapply the removal of SelectionDAGISel's BB, with a fix for the case | Dan Gohman | 2010-04-20 | 1 | -17/+21 |
| | | | | | | | | where multiple blocks are emitted; functions which do this need to return the new BB so that their callers can stay current. llvm-svn: 101843 | ||||
| * | Revert 101825, which is causing trouble. | Dan Gohman | 2010-04-19 | 1 | -15/+14 |
| | | | | | llvm-svn: 101832 | ||||
| * | Eliminate SelectionDAGISel's "current block" member. Just pass it as | Dan Gohman | 2010-04-19 | 1 | -14/+15 |
| | | | | | | | an argument to things that need it. llvm-svn: 101825 | ||||
| * | Eliminate the CurMBB member from SelectionDAGBuilder. For places that | Dan Gohman | 2010-04-19 | 3 | -84/+106 |
| | | | | | | | | need it, just pass around the parent block of the current instruction explicitly. llvm-svn: 101822 | ||||
| * | More progress on promoting i16 operations to i32 for x86. Work in progress. | Evan Cheng | 2010-04-19 | 1 | -9/+118 |
| | | | | | llvm-svn: 101808 | ||||
| * | Give SelectionDAG a TargetMachine too, rather than having it | Dan Gohman | 2010-04-19 | 2 | -7/+3 |
| | | | | | | | fetch one from the MachineFunction. llvm-svn: 101807 | ||||
| * | More 80 col violation. | Evan Cheng | 2010-04-19 | 1 | -2/+4 |
| | | | | | llvm-svn: 101806 | ||||
| * | Code that needs a TargetMachine should have access to one directly, rather | Dan Gohman | 2010-04-19 | 4 | -13/+13 |
| | | | | | | | than just getting one through a TargetLowering. llvm-svn: 101802 | ||||
| * | Move isInTailCallPosition out of SelectionDAGBuilder, as it isn't | Dan Gohman | 2010-04-19 | 3 | -86/+95 |
| | | | | | | | SelectionDAG-specific. llvm-svn: 101801 | ||||
| * | Fix -Wcast-qual warnings. | Dan Gohman | 2010-04-17 | 1 | -2/+2 |
| | | | | | llvm-svn: 101655 | ||||
| * | Delete now-unnecessary const_casts. | Dan Gohman | 2010-04-17 | 2 | -8/+8 |
| | | | | | llvm-svn: 101637 | ||||
| * | Use const qualifiers with TargetLowering. This eliminates several | Dan Gohman | 2010-04-17 | 9 | -15/+18 |
| | | | | | | | | | | | | | | const_casts, and it reinforces the design of the Target classes being immutable. SelectionDAGISel::IsLegalToFold is now a static member function, because PIC16 uses it in an unconventional way. There is more room for API cleanup here. And PIC16's AsmPrinter no longer uses TargetLowering. llvm-svn: 101635 | ||||
| * | More work to allow dag combiner to promote 16-bit ops to 32-bit. | Evan Cheng | 2010-04-17 | 3 | -44/+123 |
| | | | | | llvm-svn: 101621 | ||||
| * | Another 80 col violation. | Evan Cheng | 2010-04-17 | 1 | -1/+2 |
| | | | | | llvm-svn: 101620 | ||||
| * | Revert 101465, it broke internal OpenGL testing. | Eric Christopher | 2010-04-16 | 2 | -138/+139 |
| | | | | | | | | Probably the best way to know that all getOperand() calls have been handled is to replace that API instead of updating. llvm-svn: 101579 | ||||
| * | (i32 sext_in_reg (i32 aext (i16 x)), i16) -> (i32 sext x). No known test ↵ | Evan Cheng | 2010-04-16 | 1 | -1/+2 |
| | | | | | | | case until -promote-16bit is enabled. llvm-svn: 101551 | ||||

