aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Transforms/Scalar/LoopUnswitch.cpp
AgeCommit message (Expand)AuthorFilesLines
2016-09-03Cleanup : Use metadata preserving API for branch creationXinliang David Li1-9/+4
2016-08-23Possible fix of test failures on win bots Xinliang David Li1-3/+3
2016-08-23[Profile] refactor meta data copying/swapping codeXinliang David Li1-37/+8
2016-08-17Replace "fallthrough" comments with LLVM_FALLTHROUGHJustin Bogner1-1/+1
2016-08-16Preserve the assumption cache more oftenDavid Majnemer1-6/+7
2016-06-26Apply clang-tidy's modernize-loop-convert to most of lib/Transforms.Benjamin Kramer1-10/+8
2016-06-26[LoopUnswitch] Unswitch on conditions feeding into guardsSanjoy Das1-7/+33
2016-06-25[LoopUnswitch] Avoid exponential behaviorSanjoy Das1-4/+22
2016-06-10Disable MSan-hostile loop unswitching.Evgeniy Stepanov1-0/+18
2016-05-03[LoopUnroll] Unroll loops which have exit blocks to EH padsDavid Majnemer1-0/+5
2016-04-22Re-commit optimization bisect support (r267022) without new pass manager supp...Andrew Kaylor1-1/+1
2016-04-22Revert "Initial implementation of optimization bisect support."Vedant Kumar1-1/+1
2016-04-21Initial implementation of optimization bisect support.Andrew Kaylor1-1/+1
2016-04-07IR: RF_IgnoreMissingValues => RF_IgnoreMissingLocals, NFCDuncan P. N. Exon Smith1-1/+1
2016-02-19[LPM] Factor all of the loop analysis usage updates into a common helperChandler Carruth1-14/+4
2015-10-22LoopPass: Simplify the API for adding a new loop. NFCJustin Bogner1-5/+4
2015-10-14[LoopUnswitch] Correct misleading comments.Chen Li1-2/+1
2015-10-13Scalar: Remove remaining ilist iterator implicit conversionsDuncan P. N. Exon Smith1-9/+11
2015-10-09Generalize convergent check to handle invokes as well as calls.Owen Anderson1-4/+4
2015-10-09Teach LoopUnswitch not to perform non-trivial unswitching on loops containing...Owen Anderson1-0/+14
2015-09-29[LoopUnswitch] Add block frequency analysis to recognize hot/cold regionsChen Li1-0/+48
2015-09-22[LoopUnswitch] Require DominatorTree info.Michael Zolotukhin1-11/+7
2015-09-21Fix UB: can't bind a reference to nullptr (NFC)Mehdi Amini1-1/+1
2015-09-10Add GlobalsAA as preserved to a bunch of transformsJames Molloy1-0/+2
2015-08-17[PM] Port ScalarEvolution to the new pass manager.Chandler Carruth1-3/+3
2015-08-13[LoopUnswitch] Check OptimizeForSize before traversing over all basic blocks ...Chen Li1-7/+6
2015-08-11don't repeat function names in comments; NFCSanjay Patel1-39/+34
2015-08-11fix 80-cols; NFCSanjay Patel1-19/+22
2015-08-05[LoopUnswitch] Preserve make.implicit metadata for unswitched conditionsChen Li1-0/+1
2015-08-04wrap OptSize and MinSize attributes for easier and consistent access (NFCI)Sanjay Patel1-0/+1
2015-07-25[LoopUnswitch] Improve loop unswitch pass to find trivial unswitch conditions...Chen Li1-20/+60
2015-07-22[PM/AA] Remove all of the dead AliasAnalysis pointers being threadedChandler Carruth1-2/+1
2015-07-22[LoopUnswitch] Code refactoring to separate trivial loop unswitch and non-tri...Chen Li1-96/+112
2015-07-15[LoopUnswitch] Add an else clause to IsTrivialUnswitchCondition() when checki...Chen Li1-1/+2
2015-06-23This change fixes three bugs in loop unswitching. This change causes an 81% s...Mark Heffernan1-40/+65
2015-06-23Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC)Alexander Kornienko1-1/+1
2015-06-23Fix PR13851: Preserve metadata for the unswitched branchWeiming Zhao1-20/+67
2015-06-19Fixed/added namespace ending comments using clang-tidy. NFCAlexander Kornienko1-1/+1
2015-03-10DataLayout is mandatory, update the API to reflect it with references.Mehdi Amini1-1/+3
2015-02-14Transforms: Canonicalize access to function attributes, NFCDuncan P. N. Exon Smith1-3/+1
2015-02-01[multiversion] Thread a function argument through all the callers of theChandler Carruth1-1/+2
2015-01-31[PM] Change the core design of the TTI analysis to use a polymorphicChandler Carruth1-4/+5
2015-01-28Teach SplitBlockPredecessors how to handle landingpad blocks.Philip Reames1-10/+3
2015-01-19[PM] Replace the Pass argument to SplitEdge with specific analyses usedChandler Carruth1-3/+3
2015-01-19[PM] Cleanup a dead option to critical edge splitting that I noticedChandler Carruth1-3/+1
2015-01-19[PM] Remove the Pass argument from all of the critical edge splittingChandler Carruth1-2/+5
2015-01-19[PM] Lift the analyses into the interface forChandler Carruth1-1/+2
2015-01-18[PM] Pull the analyses used for another utility routine into its APIChandler Carruth1-1/+3
2015-01-18[PM] Sink the specific analyses preserved by SplitBlock into itsChandler Carruth1-1/+1
2015-01-18[PM] Now that LoopInfo isn't in the Pass type hierarchy, it is muchChandler Carruth1-3/+3