- c90f51c Teach MachineLICM and MachineSink how to clear kill flags conservatively by Dan Gohman · 16 years ago
- 011207a When MachineLICM is hoisting a physical register after regalloc, make sure the by Jakob Stoklund Olesen · 16 years ago
- 5fdb57c Postra machine licm must add registers defined by loop invariants to *all* of by Evan Cheng · 16 years ago
- 87585d7 Fast path implicit_def check. by Evan Cheng · 16 years ago
- cce672c Avoid variable shadowing. by Evan Cheng · 16 years ago
- 89e7479 Expand postra machine licm's capability a little more. If an instruction's register operands are all loop invariants, then it's safe to hoist it. by Evan Cheng · 16 years ago
- 0a2aff2 Teach postra machine licm to hoist more obvious invariants, e.g. instructions with no source operands. by Evan Cheng · 16 years ago
- 9d2d053 Eliminate MachineBasicBlock::const_livein_iterator and make by Dan Gohman · 16 years ago
- d0b5c6c Plug trivial leak. by Benjamin Kramer · 16 years ago
- 87f8207 Delete this obsolete comment. by Dan Gohman · 16 years ago
- 058b9f0 Make post regalloc machine licm functional. It now passes all of MultiSource. by Evan Cheng · 16 years ago
- 5ed6792 Add comments for missed opportunities. by Evan Cheng · 16 years ago
- fcbcc0b Fix typo. by Evan Cheng · 16 years ago
- 6ea5949 Post regalloc LICM. Work in progress. by Evan Cheng · 16 years ago
- e9c46c2 - Change MachineInstr::isIdenticalTo to take a new option that determines whether it should skip checking defs or at least virtual register defs. This subsumes part of the TargetInstrInfo::isIdentical functionality. by Evan Cheng · 16 years ago
- 34021b7 Don't try to replace physical registers when doing CSE. by Dan Gohman · 16 years ago
- 6fb6a59 Don't unconditionally suppress hoisting of instructions with implicit by Dan Gohman · 16 years ago
- b06015a move target-independent opcodes out of TargetInstrInfo by Chris Lattner · 16 years ago
- 55cf95c by David Greene · 16 years ago
- 18fa568 Add Loop contains utility methods for testing whether a loop by Dan Gohman · 16 years ago
- 73f9a9e Enable hoisting load from constant memories. by Evan Cheng · 16 years ago
- b39a9fd Add option -licm-const-load to hoist all loads from constant memory. by Evan Cheng · 16 years ago
- 2bbeaa8 Add MachineBasicBlock::getName, and use it in place of getBasicBlock()->getName. by Jakob Stoklund Olesen · 16 years ago
- 0229536 Fix comment. by Evan Cheng · 16 years ago
- 7ff8319 - Add TargetInstrInfo::isIdentical(). It's similar to MachineInstr::isIdentical by Evan Cheng · 16 years ago
- 921152f Code refactoring. by Evan Cheng · 16 years ago
- f42b5af Re-apply 85799. It turns out my code isn't buggy. by Evan Cheng · 16 years ago
- a8a58ef Revert 85799 for now. It might be breaking llvm-gcc driver. by Evan Cheng · 16 years ago
- 2729543 Initilize the machine LICM CSE map upon the first time an instruction is hoisted to by Evan Cheng · 16 years ago
- 49fa51d Fix MachineLICM to use the correct virtual register class when by Dan Gohman · 16 years ago
- 104f57c Refactor the code for unfolding a load into a separate function. by Dan Gohman · 16 years ago
- 57780df Simplify this code: if the unfolded load can't be hoisted, just delete by Dan Gohman · 16 years ago
- 1b44f10 Teach MachineLICM to unfold loads from constant memory from by Dan Gohman · 16 years ago
- 974e12b Remove includes of Support/Compiler.h that are no longer needed after the by Nick Lewycky · 16 years ago
- 02d5f77 Remove VISIBILITY_HIDDEN from class/struct found inside anonymous namespaces. by Nick Lewycky · 16 years ago
- 87b02d5 Factor out LiveIntervalAnalysis' code to determine whether an instruction by Dan Gohman · 16 years ago
- e19c181 isTriviallyReMaterializable checks the by Dan Gohman · 16 years ago
- 7ddb844 Give Dan and my recent changes, machine LICM is now code size neutral. by Evan Cheng · 16 years ago
- ccd4545 Fix a logic error that caused non-rematable loop invariants loads to be licm'ed out of loop. by Evan Cheng · 16 years ago
- be8137b Replace TargetInstrInfo::isInvariantLoad and its target-specific by Dan Gohman · 16 years ago
- 2f5bdcb Don't hoist or sink instructions with physreg uses if the physreg is by Dan Gohman · 16 years ago
- e30d63f Unbreak MachineLICM for instructions that reference RIP on x86-64 too. by Dan Gohman · 16 years ago
- 8781b35 Convert DOUT to DEBUG(errs()...). by Bill Wendling · 16 years ago
- 7c50c9b Tidy #includes. by Dan Gohman · 16 years ago
- 0dd5e1e More migration to raw_ostream, the water has dried up around the iostream hole. by Daniel Dunbar · 16 years ago
- 8d0b4d4 MachineLICM CSE should match destination register classes; avoid hoisting implicit_def's. by Evan Cheng · 17 years ago
- 9d8bfbf Machine LICM increases register pressure and it almost always increase code size. For now, disable it for optimizing for size. by Evan Cheng · 17 years ago
- 399660c Teach machine licm to CSE hoisted instructions. by Evan Cheng · 17 years ago
- 4ded601 Don't call isInvariantLoad twice. by Evan Cheng · 17 years ago
- 1d9f7ac Don't bother hoisting out a "cheap" instruction if all of its uses are PHIs. LICM "cheap" instructions are not particularly beneficial to start with. This will just end up making the copies harder to coalesce. by Evan Cheng · 17 years ago
- 0649abd For now, only hoist re-materilizable instructions. LICM will increase register pressure. We want to avoid spilling more instructions if it's possible. by Evan Cheng · 17 years ago
- 79618d1 Simplify the MachineLICM pass by having it only traverse outer by Dan Gohman · 17 years ago
- 906152a Tidy up #includes, deleting a bunch of unnecessary #includes. by Dan Gohman · 17 years ago
- 072e52f Use isTerminator() instead of isBranch()||isReturn() in by Dan Gohman · 17 years ago
- 83682a9 Give MachineLICM a name, for -time-passes etc. by Dan Gohman · 17 years ago
- 0d1e9a8 Switch the MachineOperand accessors back to the short names like by Dan Gohman · 17 years ago
- a79db30 Tidy up several unbeseeming casts from pointer to intptr_t. by Dan Gohman · 17 years ago
- 58bb4f1 Cosmetic changes to Machine LICM. No functionality change. by Bill Wendling · 17 years ago
- cd01e89 Don't hoist instructions that define a physical register. by Bill Wendling · 17 years ago
- cf596eb Don't hoist instructions that have implicit uses or defines. Before, it was by Bill Wendling · 17 years ago
- ecf3443 Prevent option name conflict. by Bill Wendling · 17 years ago
- d78c400 Clean up the use of static and anonymous namespaces. This turned up by Dan Gohman · 18 years ago
- 2930845 Revert the previous commit. Go ahead and hoist rematerializable instructions. by Bill Wendling · 18 years ago
- 70613b8 One real change - don't hoist something that's trivially rematerializable. It's by Bill Wendling · 18 years ago
- 2823eae Minor cleanup. No functionality change. by Bill Wendling · 18 years ago
- d7a258d Rename PrintableName to Name. by Bill Wendling · 18 years ago
- c24ea4f Change "Name" to "AsmName" in the target register info. Gee, a refactoring tool by Bill Wendling · 18 years ago
- 3a4be0f Rename MRegisterInfo to TargetRegisterInfo. by Dan Gohman · 18 years ago
- c8226f3 Simplify the side effect stuff a bit more and make licm/sinking by Chris Lattner · 18 years ago
- 03ad885 rename TargetInstrDescriptor -> TargetInstrDesc. by Chris Lattner · 18 years ago
- a98c679 Rename MachineInstr::getInstrDescriptor -> getDesc(), which reflects by Chris Lattner · 18 years ago
- 3bf5603 Add that this preserves some analyses. by Bill Wendling · 18 years ago
- 66470d0 Move option to enable machine LICM into LLVMTargetMachine.cpp. by Bill Wendling · 18 years ago
- d865697 Call the parent's getAnalysisUsage. by Bill Wendling · 18 years ago
- b5c1d9b remove dead #includes and reorder the rest. by Chris Lattner · 18 years ago
- 0ba4184 Use the correct MachineRegisterInfo object. by Bill Wendling · 18 years ago
- f0b3778 Remove dead code. by Bill Wendling · 18 years ago
- 5da1945 Use the new architecture to get the containing machine basic block for a machine by Bill Wendling · 18 years ago
- f3ebc3f Remove attribution from file headers, per discussion on llvmdev. by Chris Lattner · 18 years ago
- 65c001e Updated comments to reflect what "side effects" means in this situation. by Bill Wendling · 18 years ago
- 166f746 Add debugging info. Use the newly created "hasUnmodelledSideEffects" method. by Bill Wendling · 18 years ago
- 38236ef Need to grow the indexed map. Added debug statements. by Bill Wendling · 18 years ago
- 642e15a Simplify slightly. by Bill Wendling · 18 years ago
- b678ae7 Blark! How in the world did this work without this?! by Bill Wendling · 18 years ago
- 7717a8a - Update the virtual reg to machine instruction map when hoisting. by Bill Wendling · 18 years ago
- 5143d89 Checking for "zero operands" during the "CanHoistInst()" method isn't necessary by Bill Wendling · 18 years ago
- 3f19dfe7 Reverting 44702. It wasn't correct to rename them. by Bill Wendling · 18 years ago
- 2b07d8c Renaming: by Bill Wendling · 18 years ago
- 4375173 Incorporated comments from Evan and Chris: by Bill Wendling · 18 years ago
- fb706bc Initial commit of the machine code LICM pass. It successfully hoists this: by Bill Wendling · 18 years ago