
#14672: Make likelyhood of branches/conditions available throughout the compiler. -------------------------------------+------------------------------------- Reporter: AndreasK | Owner: (none) Type: task | Status: new Priority: normal | Milestone: Component: Compiler | Version: 8.2.2 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: None/Unknown | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Phab:D4316 Wiki Page: | Phab:D4324 Phab:D4327 -------------------------------------+------------------------------------- Comment (by AndreasK): [https://phabricator.haskell.org/D4327 D4327] will add likeliness Information at the STG stage. Some of the next tasks to improve on this: * Take more advantage of this in the backend. - Allow the cmm parser to process likely information in switch statements. - Build switches in a manner that the most likely path is the fastest one. - Use this information for code layout optimization. - Add hints to more cmm code used within GHC. - Investigate other use cases. * Find a good way for users to provide this information. - Bikeshedding: Syntax, Semantics etc. for HsSyn - How to represent und use this in the core Pipeline - Simon M recommended using ticks for this. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/14672#comment:7 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler