| Commit message (Collapse) | Author | Age | Files | Lines | ||
|---|---|---|---|---|---|---|
| ... | ||||||
| * | Pre-regalloc tale duplication. Work in progress. | Evan Cheng | 2009-12-07 | 2 | -91/+231 | |
| | | | | | llvm-svn: 90759 | |||||
| * | If BB is empty, insert PHI before end() instead of front(). | Evan Cheng | 2009-12-07 | 1 | -3/+6 | |
| | | | | | llvm-svn: 90744 | |||||
| * | Truncate the arguments of llvm.frameaddress / llvm.returnaddress intrinsics ↵ | Anton Korobeynikov | 2009-12-07 | 2 | -1/+13 | |
| | | | | | | | from i32 to platform's largest native type llvm-svn: 90741 | |||||
| * | Remove old DBG_LABEL code. | Dan Gohman | 2009-12-05 | 1 | -8/+0 | |
| | | | | | llvm-svn: 90669 | |||||
| * | Remove the unused DisableLegalizeTypes option and related code. | Dan Gohman | 2009-12-05 | 2 | -52/+47 | |
| | | | | | llvm-svn: 90668 | |||||
| * | Temporarily revert r90502. It was causing the llvm-gcc bootstrap on PPC to fail. | Bill Wendling | 2009-12-05 | 2 | -95/+51 | |
| | | | | | llvm-svn: 90653 | |||||
| * | Don't print a space before the : between the file name and line number. | Dan Gohman | 2009-12-05 | 1 | -2/+2 | |
| | | | | | | | And separate the directory and file name with a '/'. llvm-svn: 90641 | |||||
| * | Print newlines after printing labels for debug info, so that the output | Dan Gohman | 2009-12-05 | 2 | -0/+2 | |
| | | | | | | | isn't cluttered with things like "Llabel47:Llabel48: movq (%rsi), %xmm3" llvm-svn: 90638 | |||||
| * | Don't blindly set the debug location for PHI node copies. | Dan Gohman | 2009-12-05 | 1 | -3/+3 | |
| | | | | | llvm-svn: 90637 | |||||
| * | Make TargetSelectInstruction protected and called from FastISel.cpp | Dan Gohman | 2009-12-05 | 2 | -7/+9 | |
| | | | | | | | instead of SelectionDAGISel.cpp. llvm-svn: 90636 | |||||
| * | Remove the target hook TargetInstrInfo::BlockHasNoFallThrough in favor of | Dan Gohman | 2009-12-05 | 2 | -10/+1 | |
| | | | | | | | | MachineBasicBlock::canFallThrough(), which is target-independent and more thorough. llvm-svn: 90634 | |||||
| * | Simplify this code: don't call AnalyzeBranch before doing simpler checks. | Dan Gohman | 2009-12-05 | 1 | -13/+13 | |
| | | | | | llvm-svn: 90633 | |||||
| * | The debug information for an LLVM Instruction applies to that Instruction | Dan Gohman | 2009-12-05 | 1 | -33/+57 | |
| | | | | | | | | and that Instruction only. Implement this by setting the "current debug position" back to Unknown after processing each instruction. llvm-svn: 90632 | |||||
| * | Fix this code to use DIScope instead of DICompileUnit, as in r90181. | Dan Gohman | 2009-12-05 | 1 | -8/+9 | |
| | | | | | | | | Don't print "SrcLine"; just print the filename and line number, which is obvious enough and more informative. llvm-svn: 90631 | |||||
| * | Don't print the debug directory; it's often long and uninteresting. Omit | Dan Gohman | 2009-12-05 | 1 | -2/+7 | |
| | | | | | | | | the column number if it is not known. Handle the case of a missing filename better. llvm-svn: 90630 | |||||
| * | Print a space between the comment character and the text. | Dan Gohman | 2009-12-04 | 1 | -4/+6 | |
| | | | | | llvm-svn: 90621 | |||||
| * | In TAG_subrange_type, uppder bound is zero indexed. | Devang Patel | 2009-12-04 | 1 | -2/+1 | |
| | | | | | llvm-svn: 90617 | |||||
| * | Use new interfaces to print spill size. | David Greene | 2009-12-04 | 1 | -6/+9 | |
| | | | | | llvm-svn: 90611 | |||||
| * | Handle recursive PHI's. | Evan Cheng | 2009-12-04 | 1 | -18/+18 | |
| | | | | | llvm-svn: 90575 | |||||
| * | Add a pre-regalloc tail duplication pass. | Evan Cheng | 2009-12-04 | 2 | -99/+226 | |
| | | | | | llvm-svn: 90567 | |||||
| * | Don't try to be cute with undef optimization here. Let ProcessImplicitDefs ↵ | Evan Cheng | 2009-12-04 | 1 | -27/+17 | |
| | | | | | | | handle it. llvm-svn: 90566 | |||||
| * | Add note about a subtle bug in this code. Does not effect the main | Duncan Sands | 2009-12-04 | 1 | -0/+6 | |
| | | | | | | | architectures that LLVM targets, because they don't use this code. llvm-svn: 90564 | |||||
| * | Also attempt trivial coalescing for live intervals that end in a copy. | Jakob Stoklund Olesen | 2009-12-04 | 2 | -51/+95 | |
| | | | | | | | | | | | | | | The coalescer is supposed to clean these up, but when setting up parameters for a function call, there may be copies to physregs. If the defining instruction has been LICM'ed far away, the coalescer won't touch it. The register allocation hint does not always work - when the register allocator is backtracking, it clears the hints. This patch takes care of a few more cases that r90163 missed. llvm-svn: 90502 | |||||
| * | - If the reaching definition is an undef and the use is a PHI, add the ↵ | Evan Cheng | 2009-12-04 | 1 | -11/+15 | |
| | | | | | | | | | implicit_def to the end of the source block. - When reaching value is replaced with another, update the cache as well. llvm-svn: 90501 | |||||
| * | Insert composite type DIE into the map before processing type fields. This ↵ | Devang Patel | 2009-12-03 | 1 | -1/+1 | |
| | | | | | | | allows fields to find their context DIE from the map. llvm-svn: 90498 | |||||
| * | Handle undef values properly. | Evan Cheng | 2009-12-03 | 1 | -15/+38 | |
| | | | | | llvm-svn: 90489 | |||||
| * | Watch out for PHI instruction with no source operands. | Evan Cheng | 2009-12-03 | 1 | -0/+2 | |
| | | | | | llvm-svn: 90488 | |||||
| * | Fix ExpandShiftWithUnknownAmountBit, which was completely bogus. | Duncan Sands | 2009-12-03 | 1 | -37/+38 | |
| | | | | | | | | | | | | | Pointed out by Javier Martinez (who also provided a patch). Since this logic is not used on (for example) x86, I guess nobody noticed. Tested by generating SHL, SRL, SRA on various choices of i64 for all possible shift amounts, and comparing with gcc. Since I did this on x86-32, I had to force the use of ExpandShiftWithUnknownAmountBit. What I'm saying here is that I don't have a testcase I can add to the repository. llvm-svn: 90482 | |||||
| * | Clean up some loop logic. | Jakob Stoklund Olesen | 2009-12-03 | 1 | -14/+6 | |
| | | | | | llvm-svn: 90481 | |||||
| * | Add support to emit debug info for virtual functions and virtual base classes. | Devang Patel | 2009-12-03 | 2 | -3/+33 | |
| | | | | | llvm-svn: 90474 | |||||
| * | Teach tail duplication to update SSA form. Work in progress. | Evan Cheng | 2009-12-03 | 1 | -3/+134 | |
| | | | | | llvm-svn: 90432 | |||||
| * | Don't pull vector sext through both hands of a logical operation, since ↵ | Nate Begeman | 2009-12-03 | 1 | -2/+8 | |
| | | | | | | | | | | doing so prevents the fusion of vector sext and setcc into vsetcc. Add a testcase for the above transformation. Fix a bogus use of APInt noticed while tracking this down. llvm-svn: 90423 | |||||
| * | Don't call getValueType() on a null SDValue | Jakob Stoklund Olesen | 2009-12-03 | 1 | -1/+2 | |
| | | | | | llvm-svn: 90415 | |||||
| * | Fill out codegen SSA updater. It's not yet tested. | Evan Cheng | 2009-12-03 | 2 | -8/+243 | |
| | | | | | llvm-svn: 90395 | |||||
| * | Don't hang on to pointers or references after vector::push_back. | Jakob Stoklund Olesen | 2009-12-03 | 1 | -6/+3 | |
| | | | | | | | | The MO reference to a MachineOperand can be invalidated by MachineInstr::addOperand. Don't even use it for debugging. llvm-svn: 90381 | |||||
| * | Emit method definition DIE at module level (even for methods with inlined ↵ | Devang Patel | 2009-12-03 | 2 | -28/+90 | |
| | | | | | | | functino body at soure level) so that the debugger can invoke it. This fixes many test failures in gdb test suite. llvm-svn: 90375 | |||||
| * | improve portability to avoid conflicting with std::next in c++'0x. | Chris Lattner | 2009-12-03 | 20 | -64/+70 | |
| | | | | | | | Patch by Howard Hinnant! llvm-svn: 90365 | |||||
| * | Fix CMake makefiles | Douglas Gregor | 2009-12-02 | 1 | -0/+1 | |
| | | | | | llvm-svn: 90354 | |||||
| * | Skeleton for MachineInstr level SSA updater. | Evan Cheng | 2009-12-02 | 1 | -0/+108 | |
| | | | | | llvm-svn: 90353 | |||||
| * | Add MaxStackAlignment.cpp to CMake | Jim Grosbach | 2009-12-02 | 1 | -0/+1 | |
| | | | | | llvm-svn: 90337 | |||||
| * | Factor the stack alignment calculations out into a target independent pass. | Jim Grosbach | 2009-12-02 | 1 | -0/+70 | |
| | | | | | | | No functionality change. llvm-svn: 90336 | |||||
| * | Don't count PHI instructions toward the limit for tail duplicating a block. | Bob Wilson | 2009-12-02 | 1 | -4/+6 | |
| | | | | | llvm-svn: 90326 | |||||
| * | Clarify that DIEString does not keep a copy of the string. | Devang Patel | 2009-12-02 | 2 | -3/+3 | |
| | | | | | llvm-svn: 90318 | |||||
| * | Reuse existing subprogram DIE. | Devang Patel | 2009-12-01 | 1 | -2/+7 | |
| | | | | | llvm-svn: 90281 | |||||
| * | Fix PR5391: support early clobber physical register def tied with a use (ewwww) | Evan Cheng | 2009-12-01 | 2 | -4/+12 | |
| | | | | | | | | | - A valno should be set HasRedefByEC if there is an early clobber def in the middle of its live ranges. It should not be set if the def of the valno is defined by an early clobber. - If a physical register def is tied to an use and it's an early clobber, it just means the HasRedefByEC is set since it's still one continuous live range. - Add a couple of missing checks for HasRedefByEC in the coalescer. In general, it should not coalesce a vr with a physical register if the physical register has a early clobber def somewhere. This is overly conservative but that's the price for using such a nasty inline asm "feature". llvm-svn: 90269 | |||||
| * | Add edge source labels to SelectionDAG graphs, now that the graph printing | Dan Gohman | 2009-12-01 | 1 | -0/+5 | |
| | | | | | | | | framework omits differentiated edge sources in the case where the labels are empty strings. llvm-svn: 90254 | |||||
| * | Minor cleanups. | Dan Gohman | 2009-12-01 | 1 | -9/+9 | |
| | | | | | llvm-svn: 90253 | |||||
| * | Trim an unnecessary #include. | Dan Gohman | 2009-12-01 | 1 | -1/+0 | |
| | | | | | llvm-svn: 90252 | |||||
| * | Clear function specific containers while processing end of a function, even ↵ | Devang Patel | 2009-12-01 | 1 | -9/+7 | |
| | | | | | | | if DW_TAG_subprogram for current function is not found. llvm-svn: 90247 | |||||
| * | Move PHIElimination::isLiveOut method to LiveVariables. | Jakob Stoklund Olesen | 2009-12-01 | 3 | -54/+47 | |
| | | | | | | | | | We want LiveVariables clients to use methods rather than accessing the getVarInfo data structure directly. That way it will be possible to change the LiveVariables representation. llvm-svn: 90240 | |||||

