
#11731: Simplifier: Inlining trivial let can lose sharing
-------------------------------------+-------------------------------------
Reporter: nomeata | Owner:
Type: bug | Status: new
Priority: normal | Milestone:
Component: Compiler | Version: 8.1
Resolution: | Keywords:
Operating System: Unknown/Multiple | Architecture:
| Unknown/Multiple
Type of failure: None/Unknown | Test Case:
Blocked By: | Blocking:
Related Tickets: | Differential Rev(s):
Wiki Page: |
-------------------------------------+-------------------------------------
Comment (by nomeata):
Hmm. Not so easy. Given that problematic code, i.e.
{{{
$s$wwwMe_s49K :: Int -> Int -> GHC.Prim.Int# -> (# Int, Int #)
[LclId, Arity=3, Str=DmdType ]
$s$wwwMe_s49K =
\ (sc_s49I :: Int) (sc_s49J :: Int) (sc_s49H :: GHC.Prim.Int#) ->
case sc_s49H of ds_X1WV {
__DEFAULT -> $wwwMe_s48A (GHC.Prim.-# ds_X1WV 1#) lvl_s1Z6;
0# ->
case foo @ Int @ Int (sc_s49I, sc_s49J)
of _ [Occ=Dead] { GHC.Types.I# ipv_s1XV [Dmd=