Skip to content
Snippets Groups Projects
Forked from Glasgow Haskell Compiler / GHC
Source project has a limited visibility.
  • Simon Peyton Jones's avatar
    55e4870d
    Fix Trac #5658: strict bindings not floated in · 55e4870d
    Simon Peyton Jones authored
    Two changes here
    
    * The main change here is to enhance the FloatIn pass so that it can
      float case-bindings inwards.  In particular the case bindings for
      array indexing.
    
    * Also change the code in Simplify, to allow a case on array
      indexing (ie can_fail is true) to be discarded altogether if its
      results are unused.
    
    Lots of new comments in PrimOp about can_fail and has_side_effects
    
    Some refactoring to share the FloatBind data structure between
    FloatIn and FloatOut
    55e4870d
    History
    Fix Trac #5658: strict bindings not floated in
    Simon Peyton Jones authored
    Two changes here
    
    * The main change here is to enhance the FloatIn pass so that it can
      float case-bindings inwards.  In particular the case bindings for
      array indexing.
    
    * Also change the code in Simplify, to allow a case on array
      indexing (ie can_fail is true) to be discarded altogether if its
      results are unused.
    
    Lots of new comments in PrimOp about can_fail and has_side_effects
    
    Some refactoring to share the FloatBind data structure between
    FloatIn and FloatOut
Code owners
Assign users and groups as approvers for specific file changes. Learn more.