Skip to content
  • Simon Peyton Jones's avatar
    Refine exprOkForSpeculation · 5a9a1738
    Simon Peyton Jones authored
    This patch implements two related changes, both inspired by
    the discussion on Trac #13027, comment:23:
    
    * exprOkForSpeculation (op# a1 .. an), where op# is a primop,
      now skips over arguments ai of lifted type.  See the comments
      at Note [Primops with lifted arguments] in CoreUtils.
    
      There is no need to treat dataToTag# specially any more.
    
    * dataToTag# is now treated as a can-fail primop.  See
      Note [dataToTag#] in primops.txt.pp
    
    I don't expect this to have a visible effect on anything, but
    it's much more solid than before.
    5a9a1738