| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | Now that DeadMachineInstructionElim is basically working | Dan Gohman | 2008-09-23 | 1 | -6/+0 |
| | | | | | | | | correctly, it's not necessary to explicitly remove registers from their use-def lists. llvm-svn: 56509 | ||||
| * | Arrange for FastISel code to have access to the MachineModuleInfo | Dan Gohman | 2008-09-23 | 5 | -8/+18 |
| | | | | | | | object. This will be needed to support debug info. llvm-svn: 56508 | ||||
| * | Track local physical register liveness. This is not the most | Dan Gohman | 2008-09-23 | 1 | -3/+53 |
| | | | | | | | | efficient implementation possible, but it's pretty simple and good enough for the time being. llvm-svn: 56504 | ||||
| * | regenerate | Chris Lattner | 2008-09-23 | 3 | -1284/+1286 |
| | | | | | llvm-svn: 56502 | ||||
| * | allow inreg on the result of a function | Chris Lattner | 2008-09-23 | 1 | -0/+1 |
| | | | | | llvm-svn: 56501 | ||||
| * | Replace the LiveRegs SmallSet with a simple counter that keeps | Dan Gohman | 2008-09-23 | 2 | -23/+29 |
| | | | | | | | | track of the number of live registers, which is all the set was being used for. llvm-svn: 56498 | ||||
| * | Fix these enums' starting values to reflect the way that | Dan Gohman | 2008-09-23 | 9 | -9/+9 |
| | | | | | | | instruction opcodes are now numbered. No functionality change. llvm-svn: 56497 | ||||
| * | Delete an unused function. | Dan Gohman | 2008-09-23 | 1 | -10/+0 |
| | | | | | llvm-svn: 56495 | ||||
| * | Move the code for initializing the global base reg out of | Dan Gohman | 2008-09-23 | 3 | -29/+43 |
| | | | | | | | | X86ISelDAGToDAG.cpp and into X86InstrInfo.cpp. This will allow it to be reused by FastISel. llvm-svn: 56494 | ||||
| * | Rationalize the names of passes that print information: | Duncan Sands | 2008-09-23 | 3 | -6/+6 |
| | | | | | | | | | | | | | | | | | | -callgraph => print-callgraph -callscc => print-callgraph-sccs -cfgscc => print-cfg-sccs -externalfnconstants => print-externalfnconstants -print => print-function -print-alias-sets (no change) -print-callgraph => dot-callgraph -print-cfg => dot-cfg -print-cfg-only => dot-cfg-only -print-dom-info (no change) -printm => print-module -printusedtypes => print-used-types llvm-svn: 56487 | ||||
| * | Fix indendation. | Matthijs Kooijman | 2008-09-23 | 1 | -4/+4 |
| | | | | | llvm-svn: 56486 | ||||
| * | Add initial support for inserting last minute copies. | Owen Anderson | 2008-09-23 | 1 | -28/+53 |
| | | | | | llvm-svn: 56485 | ||||
| * | Support x86 specific inline asm modifier 'J'. | Evan Cheng | 2008-09-22 | 1 | -0/+8 |
| | | | | | llvm-svn: 56483 | ||||
| * | Fix the alignment of loads from constant pool entries when the | Dan Gohman | 2008-09-22 | 2 | -1/+7 |
| | | | | | | | | load address has an offset from the base of the constant pool entry. llvm-svn: 56479 | ||||
| * | Add hasNote() to check note associated with a function. | Devang Patel | 2008-09-22 | 8 | -22/+31 |
| | | | | | llvm-svn: 56477 | ||||
| * | Livestacks really does preserve everything. | Evan Cheng | 2008-09-22 | 1 | -2/+1 |
| | | | | | llvm-svn: 56476 | ||||
| * | Instead of setPreservesAll, just mark them preseving machine loop info and ↵ | Evan Cheng | 2008-09-22 | 7 | -7/+14 |
| | | | | | | | machine dominators. llvm-svn: 56475 | ||||
| * | Significant improvements to the logic for merging live intervals. This code ↵ | Owen Anderson | 2008-09-22 | 1 | -15/+53 |
| | | | | | | | | | | can't just use LI::MergeValueAsValue, as its behavior in the presence of overlapping ranges isn't what StrongPHIElimination wants. llvm-svn: 56472 | ||||
| * | Make log, log2, log10, exp, exp2 use Expand by | Dale Johannesen | 2008-09-22 | 8 | -71/+12 |
| | | | | | | | default. llvm-svn: 56471 | ||||
| * | Mark several codegen passes as preserving all analysis. | Evan Cheng | 2008-09-22 | 9 | -8/+31 |
| | | | | | llvm-svn: 56469 | ||||
| * | More refactoring. Yawn. | Dale Johannesen | 2008-09-22 | 1 | -126/+43 |
| | | | | | llvm-svn: 56468 | ||||
| * | Refactor FP intrinisic setup. Per review feedback. | Dale Johannesen | 2008-09-22 | 1 | -117/+28 |
| | | | | | llvm-svn: 56456 | ||||
| * | CMake build system: support for parallel builds. | Oscar Fuentes | 2008-09-22 | 2 | -1/+6 |
| | | | | | llvm-svn: 56453 | ||||
| * | Per review feedback: Only perform | Evan Cheng | 2008-09-22 | 1 | -39/+27 |
| | | | | | | | | (srl x, (trunc (and y, c))) -> (srl x, (and (trunc y), c)) etc. when both "trunc" and "and" have single uses. llvm-svn: 56452 | ||||
| * | Change the calling convention used when tail call optimization is enabled ↵ | Arnold Schwaighofer | 2008-09-22 | 3 | -22/+2 |
| | | | | | | | from CC_X86_32_TailCall to CC_X86_32_FastCC. llvm-svn: 56436 | ||||
| * | Initial support for the CMake build system. | Oscar Fuentes | 2008-09-22 | 25 | -0/+427 |
| | | | | | llvm-svn: 56419 | ||||
| * | Add helper function to get a 32-bit floating point constant. No ↵ | Bill Wendling | 2008-09-22 | 1 | -189/+106 |
| | | | | | | | functionality change. llvm-svn: 56418 | ||||
| * | Fold immediates into X86 shifts with fast isel. This generates: | Chris Lattner | 2008-09-21 | 1 | -15/+24 |
| | | | | | | | | | | | | | | sarl $3, %ecx instead of: movl $3, %ecx sarl %cl, %edx This shrinks fast isel 176.gcc by about 2000 instructions (.3%) llvm-svn: 56413 | ||||
| * | Factor out code into HandleVirtRegDef, for consistency with | Dan Gohman | 2008-09-21 | 1 | -13/+12 |
| | | | | | | | | Handle{Virt,Phys}Reg{Def,Use}. Remove a redundant check for register zero, and redundant checks for isPhysicalRegister. llvm-svn: 56412 | ||||
| * | Instead of building a list and sorting it just to find a maximum element, | Dan Gohman | 2008-09-21 | 1 | -26/+9 |
| | | | | | | | compute the maximum element directly. llvm-svn: 56411 | ||||
| * | Fetch the starting index of the block when assigning intervals. This gets ↵ | Owen Anderson | 2008-09-21 | 1 | -2/+2 |
| | | | | | | | | | live-in indices correct in the presence of things like EH labels. llvm-svn: 56410 | ||||
| * | don't print GlobalAddressSDNode's with an offset of zero as "foo0". | Chris Lattner | 2008-09-21 | 1 | -5/+6 |
| | | | | | llvm-svn: 56399 | ||||
| * | add a note | Chris Lattner | 2008-09-20 | 1 | -1/+32 |
| | | | | | llvm-svn: 56391 | ||||
| * | Implement review feedback from Devang: make use | Duncan Sands | 2008-09-20 | 1 | -26/+11 |
| | | | | | | | of mayReadFromMemory and mayWriteToMemory. llvm-svn: 56387 | ||||
| * | Teach coalescer about earlyclobber bits. | Dale Johannesen | 2008-09-20 | 2 | -2/+17 |
| | | | | | | | Check bits for preferred register. llvm-svn: 56384 | ||||
| * | Fix PR2808. When regalloc runs out of register, it spill a physical register ↵ | Evan Cheng | 2008-09-20 | 1 | -1/+4 |
| | | | | | | | around the live interval being allocated. Do not continue to try to spill another register, just grab the physical register and move on. llvm-svn: 56381 | ||||
| * | No need to print function stubs for Mac OS X 10.5 and up. Linker will handle it. | Evan Cheng | 2008-09-20 | 1 | -3/+10 |
| | | | | | llvm-svn: 56378 | ||||
| * | 80 column violation. | Evan Cheng | 2008-09-20 | 1 | -4/+8 |
| | | | | | llvm-svn: 56377 | ||||
| * | Fix a FastISel GlobalVariable CSE bug. | Dan Gohman | 2008-09-19 | 1 | -2/+4 |
| | | | | | llvm-svn: 56376 | ||||
| * | Continue after removing the current MI. | Evan Cheng | 2008-09-19 | 1 | -0/+1 |
| | | | | | llvm-svn: 56372 | ||||
| * | Refactor X86SelectConstAddr, folding it into X86SelectAddress. This | Dan Gohman | 2008-09-19 | 2 | -101/+81 |
| | | | | | | | | results in better code for globals. Also, unbreak the local CSE for GlobalValue stub loads. llvm-svn: 56371 | ||||
| * | Make earlyclobber stuff work when virtual regs | Dale Johannesen | 2008-09-19 | 1 | -8/+26 |
| | | | | | | | have previously been assigned conflicting physreg. llvm-svn: 56364 | ||||
| * | Re-materalized definition instructions may be dead. Whack them. | Evan Cheng | 2008-09-19 | 2 | -7/+33 |
| | | | | | llvm-svn: 56352 | ||||
| * | backing out my last commit, it was not intended to go on the trunk | Gabor Greif | 2008-09-19 | 3 | -510/+11 |
| | | | | | llvm-svn: 56349 | ||||
| * | first shot at removing Use::Val | Gabor Greif | 2008-09-19 | 3 | -11/+510 |
| | | | | | | | untested, Use::swap() is definitely not done yet llvm-svn: 56348 | ||||
| * | Remove the MarkModRef pass (use AddReadAttrs instead). | Duncan Sands | 2008-09-19 | 1 | -69/+0 |
| | | | | | | | | | Unfortunately this means removing one regression test of GlobalsModRef because I couldn't work out how to perform it without MarkModRef. llvm-svn: 56342 | ||||
| * | Add a new pass AddReadAttrs which works out which functions | Duncan Sands | 2008-09-19 | 1 | -0/+135 |
| | | | | | | | | | | can get the readnone/readonly attributes, and gives them it. The plan is to remove markmodref (which did the same thing by querying GlobalsModRef) and delete the analogous functionality from GlobalsModRef. llvm-svn: 56341 | ||||
| * | Remove AsmThatEarlyClobber etc. from LiveIntervalAnalysis | Dale Johannesen | 2008-09-19 | 3 | -73/+79 |
| | | | | | | | | and redo as linked list walk. Logic moved into RA. Per review feedback. llvm-svn: 56326 | ||||
| * | splitLoop does not handle split condition EQ. | Devang Patel | 2008-09-18 | 1 | -0/+6 |
| | | | | | | | Fixes PR 2805 llvm-svn: 56321 | ||||
| * | Address-mode folding for X86FastISel. It's pretty basic, but it | Dan Gohman | 2008-09-18 | 1 | -18/+95 |
| | | | | | | | | | catches a fair number of common cases. Note that this currently causes Fast-ISel to leave behind lots of dead instructions. Those will be dealt with in subsequent commits. llvm-svn: 56320 | ||||

