summaryrefslogtreecommitdiff
path: root/compiler/cmm/CmmContFlowOpt.hs
Commit message (Expand)AuthorAgeFilesLines
* Add two CmmSwitch optimizations.Andreas Klebinger2019-07-131-1/+8
* Replace most occurences of foldl with foldl'.klebinger.andreas@gmx.at2018-08-211-1/+0
* Check if both branches of an Cmm if have the same target.klebinger.andreas@gmx.at2018-06-071-4/+9
* Hoopl: improve postorder calculationMichal Terepeta2018-03-191-5/+4
* cmm/: Avoid using lazy left foldsMichal Terepeta2018-03-061-1/+2
* Hoopl.Collections: change right folds to strict left foldsMichal Terepeta2018-02-021-3/+3
* Handle the likely:True case in CmmContFlowOptklebinger.andreas@gmx.at2018-01-261-13/+32
* A bunch of typofixesGabor Greif2017-09-261-1/+1
* compiler: introduce custom "GhcPrelude" PreludeHerbert Valerio Riedel2017-09-191-1/+2
* nativeGen: A few strictness fixesBen Gamari2017-09-141-2/+3
* Hoopl: remove dependency on Hoopl packageMichal Terepeta2017-06-231-1/+4
* Use lengthIs and friends in more placesRyan Scott2017-06-021-1/+2
* BlockId: remove BlockMap and BlockSet synonymsMichal Terepeta2016-12-081-10/+10
* Remove most functions from cmm/BlockIdMichal Terepeta2016-11-291-1/+1
* LLVM generate llvm.expect for conditional branchesAlex Biehl2016-11-171-5/+10
* Annotate CmmBranch with an optional likely targetSimon Marlow2015-09-231-11/+18
* Refactor the story around switches (#10137)Joachim Breitner2015-03-301-1/+2
* Tick scopesPeter Wortmann2014-12-161-4/+8
* Simplify Control Flow Optimisations Cmm passJan Stolarek2014-02-011-31/+12
* Squash some spelling issuesGabor Greif2014-01-261-1/+1
* When removing unreachable code, remove unreachable info tables tooSimon Peyton Jones2013-11-221-9/+22
* Remove unnecessary check in CmmContFlowOptJan Stolarek2013-10-241-8/+6
* Improve control flow optimisation algorithmJan Stolarek2013-10-181-164/+271
* Comments about control-flow optimisationSimon Peyton Jones2013-10-181-8/+9
* Remove unnecessary warnings suppressions, fixes ticket #7756; thanks monoidal...Edward Z. Yang2013-03-091-2/+1
* Remove OldCmm, convert backends to consume new CmmSimon Marlow2012-11-121-9/+36
* Attach global register liveness info to Cmm procedures.Geoffrey Mainland2012-10-301-1/+1
* Produce new-style Cmm from the Cmm parserSimon Marlow2012-10-081-5/+7
* a couple of small optimisationsSimon Marlow2012-08-091-7/+6
* finish a commentSimon Marlow2012-08-061-2/+3
* Don't shortcut call-returns when not splitting proc pointsSimon Marlow2012-08-021-9/+45
* bug fix for control-flow optimisationSimon Marlow2012-07-301-1/+6
* no need to removeUnreachableBlocksSimon Marlow2012-07-301-2/+2
* New codegen: do not split proc-points when using the NCGSimon Marlow2012-07-301-9/+23
* Don't duplicate arbitrary CmmCallsSimon Marlow2012-07-091-3/+7
* Track liveness of GlobalRegs in the new code generatorSimon Marlow2012-07-091-1/+1
* Remove "fuel", adapt to Hoopl changes, fix warningsSimon Marlow2012-07-051-1/+1
* New stack layout algorithmSimon Marlow2012-02-081-1/+1
* Small improvement to control-flow optimisationSimon Marlow2012-02-031-4/+15
* SnapshotSimon Marlow2012-01-171-24/+23
* More codegen refactoring with simonpjSimon Marlow2011-12-191-141/+120
* disable a debug traceSimon Marlow2011-08-251-1/+2
* rewrite branchChainElim; other refactoring in CmmContFlowOptSimon Marlow2011-08-251-132/+140
* Renaming onlySimon Peyton Jones2011-08-251-3/+3
* Snapshot of codegen refactoring to share with simonpjSimon Marlow2011-08-251-9/+4
* Merge in new code generator branch.Simon Marlow2011-01-241-134/+128
* Comments and Cmm notessimonpj@microsoft.com2009-09-111-0/+1
* Remove GHC's haskell98 dependencyIan Lynagh2009-07-241-1/+1
* Buggy optimizations caused function-call return to share the function's entry...dias@eecs.tufts.edu2009-03-311-25/+50
* A few bug fixes; some improvements spurred by paper writingdias@eecs.harvard.edu2009-03-031-29/+24