aboutsummaryrefslogtreecommitdiff
path: root/lib/CodeGen/BranchFolding.cpp
AgeCommit message (Expand)Author
2007-05-10Do not generate branches to entry block. This fixes several test suiteDale Johannesen
2007-05-10Make tail merging handle many more cases (all it can, I think).Dale Johannesen
2007-05-07Handle some non-exit blocks in tail merging.Dale Johannesen
2007-05-03Drop 'const'Devang Patel
2007-05-02Use 'static const char' instead of 'static const int'.Devang Patel
2007-05-01Do not use typeinfo to identify pass in pass manager.Devang Patel
2007-04-30Fix PR1228 and CodeGen/Generic/2007-04-30-LandingPadBranchFolding.llChris Lattner
2007-03-20maintain LiveIn when splitting blocks (register scavenging needs it)Dale Johannesen
2007-02-22Remove isAccessable.Jim Laskey
2007-02-21Make branch folding behave in the presence of landing pads.Jim Laskey
2007-02-17Fixes PR 1200Dale Johannesen
2007-01-26Change the MachineDebugInfo to MachineModuleInfo to better reflect usageJim Laskey
2007-01-26Make LABEL a builtin opcode.Jim Laskey
2006-12-19Eliminate static ctors from StatisticsChris Lattner
2006-12-06Detemplatize the Statistic class. The only type it is instantiated withChris Lattner
2006-11-18Don't transform in another bad case: if the block is empty, it should beChris Lattner
2006-11-18Fix another case we *don't* want to do this xform.Chris Lattner
2006-11-18make the previous change more aggressive, moving any block with no fallthrough.Chris Lattner
2006-11-18Minor code layout tweak: if we have something like this:Chris Lattner
2006-11-08optimize single MBB loops better. In particular, produce:Chris Lattner
2006-11-05Unbreak VC++ build.Jeff Cohen
2006-11-02For PR786:Reid Spencer
2006-11-01give branch folding a simple heuristic to decide which block to split so thatChris Lattner
2006-11-01make tail merging more aggressive. If two blocks share a common tail, but theChris Lattner
2006-11-01enable branch folding with an optionChris Lattner
2006-10-29Make CanFallThrough more intelligent (so it can handle blocks with (e.g.) noChris Lattner
2006-10-28Teach branch folding to fold identical jump tables together and to deleteChris Lattner
2006-10-28improve deletion of blocks that just contain branches by knowing thatChris Lattner
2006-10-25simplify codeChris Lattner
2006-10-25turn off tail merging for nowChris Lattner
2006-10-24move single basic blocks that are neither fallen into nor fall out of intoChris Lattner
2006-10-23Enable tail merging by default.Chris Lattner
2006-10-23More complete solution to deleting blocks and debug info.Jim Laskey
2006-10-21don't break infinite loopsChris Lattner
2006-10-21Use branch reversal to do stuff like this:Chris Lattner
2006-10-21Transform code like:Chris Lattner
2006-10-21Three changes:Chris Lattner
2006-10-21Add an experimental cross-jumping implementation.Chris Lattner
2006-10-17Teach the branch folder to update debug info if it removes blocks with lineChris Lattner
2006-10-17Enable deleting branches to successor blocks. With the previous patches,Chris Lattner
2006-10-17Reenable this pass, fixing the bugs in it.Chris Lattner
2006-10-14disable this pass for now, it's causing issuesChris Lattner
2006-10-14falling off the end of a function is ok with an unreachable instruction.Chris Lattner
2006-10-13disable some objectionable code, maybe we can bring this pass to lifeChris Lattner
2005-04-21Remove trailing whitespaceMisha Brukman
2004-09-01Changes For Bug 352Reid Spencer
2004-08-01Dereferencing end() is bad.Chris Lattner
2004-07-31Make OptimizeBlock take a MachineFunction::iterator instead of aAlkis Evlogimenos
2004-07-31Next on a pointer increments the pointer, not an iteratorChris Lattner
2004-07-31Use next() helper to make code more readable. UseAlkis Evlogimenos