Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | - Remove calls to copyKillDeadInfo which is an N^2 function. Instead, ↵ | Evan Cheng | 2008-07-03 | 1 | -17/+23 | |
| | | | | | | | | propagate kill / dead markers as new instructions are constructed in foldMemoryOperand, convertToThressAddress, etc. - Also remove LiveVariables::instructionChanged, etc. Replace all calls with cheaper calls which update VarInfo kill list. llvm-svn: 53097 | |||||
* | Cosmetic changes. | Evan Cheng | 2008-06-19 | 1 | -3/+5 | |
| | | | | llvm-svn: 52479 | |||||
* | Change class' public PassInfo variables to by initialized with the | Dan Gohman | 2008-05-13 | 1 | -1/+1 | |
| | | | | | | | | | | | address of the PassInfo directly instead of calling getPassInfo. This eliminates a bunch of dynamic initializations of static data. Also, fold RegisterPassBase into PassInfo, make a bunch of its data members const, and rearrange some code to initialize data members in constructors instead of using setter member functions. llvm-svn: 51022 | |||||
* | Clean up the use of static and anonymous namespaces. This turned up | Dan Gohman | 2008-05-13 | 1 | -4/+4 | |
| | | | | | | | several things that were neither in an anonymous namespace nor static but not intended to be global. llvm-svn: 51017 | |||||
* | Constify isSourceDefinedByImplicitDef function. Otherwise, just formatting | Bill Wendling | 2008-05-12 | 1 | -45/+38 | |
| | | | | | | changes that don't change functionality. llvm-svn: 51004 | |||||
* | If all sources of a PHI node are defined by an implicit_def, just emit an ↵ | Evan Cheng | 2008-05-10 | 1 | -7/+11 | |
| | | | | | | implicit_def instead of a copy. llvm-svn: 50927 | |||||
* | If a PHI node has a single implicit_def source, replace it with an ↵ | Evan Cheng | 2008-04-11 | 1 | -5/+19 | |
| | | | | | | implicit_def instead of a copy. llvm-svn: 49543 | |||||
* | Undo PHI elimination copy placement patch. This causes coalescing ↵ | Evan Cheng | 2008-04-04 | 1 | -30/+1 | |
| | | | | | | (performace) issues. llvm-svn: 49198 | |||||
* | - PHI elimination also eliminates implicit_def that fits into a PHI node ↵ | Evan Cheng | 2008-04-03 | 1 | -42/+84 | |
| | | | | | | | | rather than copying it. - Be (slightly) smarter about where to place the copies. llvm-svn: 49165 | |||||
* | Remove #include<map> from LiveVariables.h. Not referenced. | Evan Cheng | 2008-04-02 | 1 | -1/+2 | |
| | | | | llvm-svn: 49099 | |||||
* | Refactor code. Remove duplicated functions that basically do the same thing as | Evan Cheng | 2008-03-05 | 1 | -1/+1 | |
| | | | | | | findRegisterUseOperandIdx, findRegisterDefOperandIndx. Fix some naming inconsistencies. llvm-svn: 47927 | |||||
* | Rename MRegisterInfo to TargetRegisterInfo. | Dan Gohman | 2008-02-10 | 1 | -1/+1 | |
| | | | | llvm-svn: 46930 | |||||
* | Remove DefInst from LiveVariables::VarInfo. Use the facilities on ↵ | Owen Anderson | 2008-01-15 | 1 | -4/+0 | |
| | | | | | | MachineRegisterInfo instead. llvm-svn: 46016 | |||||
* | Don't recalculate the loop info and loop dominators analyses if they're | Bill Wendling | 2008-01-04 | 1 | -0/+2 | |
| | | | | | | preserved. llvm-svn: 45596 | |||||
* | Move copyRegToReg from MRegisterInfo to TargetInstrInfo. This is part of the | Owen Anderson | 2007-12-31 | 1 | -3/+3 | |
| | | | | | | Machine-level API cleanup instigated by Chris. llvm-svn: 45470 | |||||
* | Rename SSARegMap -> MachineRegisterInfo in keeping with the idea | Chris Lattner | 2007-12-31 | 1 | -3/+3 | |
| | | | | | | | | | | | | | | that "machine" classes are used to represent the current state of the code being compiled. Given this expanded name, we can start moving other stuff into it. For now, move the UsedPhysRegs and LiveIn/LoveOuts vectors from MachineFunction into it. Update all the clients to match. This also reduces some needless #includes, such as MachineModuleInfo from MachineFunction. llvm-svn: 45467 | |||||
* | Add new shorter predicates for testing machine operands for various types: | Chris Lattner | 2007-12-30 | 1 | -7/+5 | |
| | | | | | | | | | | | | e.g. MO.isMBB() instead of MO.isMachineBasicBlock(). I don't plan on switching everything over, so new clients should just start using the shorter names. Remove old long accessors, switching everything over to use the short accessor: getMachineBasicBlock() -> getMBB(), getConstantPoolIndex() -> getIndex(), setMachineBasicBlock -> setMBB(), etc. llvm-svn: 45464 | |||||
* | Remove attribution from file headers, per discussion on llvmdev. | Chris Lattner | 2007-12-29 | 1 | -2/+2 | |
| | | | | llvm-svn: 45418 | |||||
* | Bring UsedBlocks back. StrongPHIElimination needs this information. | Owen Anderson | 2007-11-08 | 1 | -0/+3 | |
| | | | | llvm-svn: 43866 | |||||
* | Allow copyRegToReg to emit cross register classes copies. | Evan Cheng | 2007-09-26 | 1 | -2/+2 | |
| | | | | | | Tested with "make check"! llvm-svn: 42346 | |||||
* | Fix typo in comment. | Nick Lewycky | 2007-05-06 | 1 | -1/+1 | |
| | | | | llvm-svn: 36873 | |||||
* | Drop 'const' | Devang Patel | 2007-05-03 | 1 | -2/+2 | |
| | | | | llvm-svn: 36662 | |||||
* | Use 'static const char' instead of 'static const int'. | Devang Patel | 2007-05-02 | 1 | -2/+2 | |
| | | | | | | | Due to darwin gcc bug, one version of darwin linker coalesces static const int, which defauts PassID based pass identification. llvm-svn: 36652 | |||||
* | Do not use typeinfo to identify pass in pass manager. | Devang Patel | 2007-05-01 | 1 | -0/+4 | |
| | | | | llvm-svn: 36632 | |||||
* | VarInfo::UsedBlocks is no longer used. Remove. | Evan Cheng | 2007-04-18 | 1 | -3/+0 | |
| | | | | llvm-svn: 36250 | |||||
* | Increment use count of new virtuals created during PHI elimination. | Evan Cheng | 2007-04-18 | 1 | -0/+3 | |
| | | | | llvm-svn: 36233 | |||||
* | Keep UsedBlocks info accurate. | Evan Cheng | 2007-03-18 | 1 | -0/+3 | |
| | | | | llvm-svn: 35140 | |||||
* | rename DenseMap to IndexedMap. | Chris Lattner | 2007-02-01 | 1 | -1/+0 | |
| | | | | llvm-svn: 33749 | |||||
* | Eliminate static ctors from Statistics | Chris Lattner | 2006-12-19 | 1 | -3/+4 | |
| | | | | llvm-svn: 32698 | |||||
* | Detemplatize the Statistic class. The only type it is instantiated with | Chris Lattner | 2006-12-06 | 1 | -2/+2 | |
| | | | | | | is 'unsigned'. llvm-svn: 32279 | |||||
* | "Once more into the breach, dear friends, once more, or fill the wall up | Bill Wendling | 2006-09-28 | 1 | -26/+42 | |
| | | | | | | | | | | with our English dead." No! Really! Serious this time...It was how the vreg uses were being adjusted that was causing hte Olden tests to fail. I corrected this and the Olden and Regression tests all passed. llvm-svn: 30644 | |||||
* | re-re-revert this, back to the right revision. It currently breaks bisort/mst | Chris Lattner | 2006-09-28 | 1 | -44/+24 | |
| | | | | | | in olden among others. llvm-svn: 30637 | |||||
* | re-revert this patch, bisort and mst are still broken in Olden. | Chris Lattner | 2006-09-28 | 1 | -3/+3 | |
| | | | | llvm-svn: 30634 | |||||
* | Reapplying this patch. With the newest commits, the error in Olden/bisort | Bill Wendling | 2006-09-27 | 1 | -24/+44 | |
| | | | | | | has disappeared. llvm-svn: 30633 | |||||
* | Temporarily revert this. This breaks Olden/bisort on PPC | Chris Lattner | 2006-09-27 | 1 | -44/+24 | |
| | | | | llvm-svn: 30628 | |||||
* | PR878: Instead of calculating the vreg to PHI use count everytime we get | Bill Wendling | 2006-09-27 | 1 | -24/+44 | |
| | | | | | | | | a function, do it up front in linear time (going through all of the instructions once). We create a map out of them. Then it's no problem to use the information in it during elimination... llvm-svn: 30624 | |||||
* | s|llvm/Support/Visibility.h|llvm/Support/Compiler.h| | Chris Lattner | 2006-08-27 | 1 | -1/+1 | |
| | | | | llvm-svn: 29911 | |||||
* | Fix an obvious bug, noticed by inspection. No current targets trigger this. | Chris Lattner | 2006-08-12 | 1 | -3/+3 | |
| | | | | llvm-svn: 29648 | |||||
* | Reduce number of exported symbols | Andrew Lenharth | 2006-07-20 | 1 | -2/+2 | |
| | | | | llvm-svn: 29220 | |||||
* | Use hidden visibility to make symbols in an anonymous namespace get | Chris Lattner | 2006-06-28 | 1 | -1/+2 | |
| | | | | | | dropped. This shrinks libllvmgcc.dylib another 67K llvm-svn: 28975 | |||||
* | Add support for targets (like Alpha) that have terminator instructions which | Chris Lattner | 2006-01-04 | 1 | -5/+41 | |
| | | | | | | | | | use virtual registers. We now allow the first instruction in a block of terminators to use virtual registers, and update phi elimination to correctly update livevar when eliminating phi's. This fixes a problem on a testcase Andrew sent me. llvm-svn: 25083 | |||||
* | Add an assertion, update DefInst even though no one uses it (dangling pointers | Chris Lattner | 2006-01-04 | 1 | -0/+4 | |
| | | | | | | don't help anyone) llvm-svn: 25081 | |||||
* | clean up this code a bit, no functionality change | Chris Lattner | 2005-10-03 | 1 | -101/+116 | |
| | | | | llvm-svn: 23609 | |||||
* | Break the body of the loop out into a new method | Chris Lattner | 2005-10-03 | 1 | -144/+155 | |
| | | | | llvm-svn: 23606 | |||||
* | adjust to new live variables interface | Chris Lattner | 2005-08-23 | 1 | -11/+6 | |
| | | | | llvm-svn: 22992 | |||||
* | * Order #includes alphabetically | Misha Brukman | 2005-05-05 | 1 | -4/+1 | |
| | | | | | | * Remove commented-out debug printouts llvm-svn: 21707 | |||||
* | Convert tabs to spaces | Misha Brukman | 2005-04-22 | 1 | -2/+2 | |
| | | | | llvm-svn: 21439 | |||||
* | Remove trailing whitespace | Misha Brukman | 2005-04-21 | 1 | -14/+14 | |
| | | | | llvm-svn: 21420 | |||||
* | Changes For Bug 352 | Reid Spencer | 2004-09-01 | 1 | -2/+2 | |
| | | | | | | | | Move include/Config and include/Support into include/llvm/Config, include/llvm/ADT and include/llvm/Support. From here on out, all LLVM public header files must be under include/llvm/. llvm-svn: 16137 | |||||
* | Update live intervals more accurately for PHI elim. This slightly reduces | Chris Lattner | 2004-07-23 | 1 | -10/+6 | |
| | | | | | | the live intervals for some registers. llvm-svn: 15125 |