1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
|
==================== Tidy Core ====================
Result size of Tidy Core
= {terms: 65, types: 35, coercions: 0, joins: 0/0}
-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
T4908.$trModule4 :: Addr#
[GblId,
Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 20 0}]
T4908.$trModule4 = "main"#
-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
T4908.$trModule3 :: TrName
[GblId,
Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 10}]
T4908.$trModule3 = GHC.Types.TrNameS T4908.$trModule4
-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
T4908.$trModule2 :: Addr#
[GblId,
Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 30 0}]
T4908.$trModule2 = "T4908"#
-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
T4908.$trModule1 :: TrName
[GblId,
Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 10}]
T4908.$trModule1 = GHC.Types.TrNameS T4908.$trModule2
-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
T4908.$trModule :: Module
[GblId,
Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 10}]
T4908.$trModule
= GHC.Types.Module T4908.$trModule3 T4908.$trModule1
Rec {
-- RHS size: {terms: 19, types: 5, coercions: 0, joins: 0/0}
T4908.f_$s$wf [Occ=LoopBreaker] :: Int -> Int# -> Int# -> (# #)
[GblId, Arity=3, Str=<A><ML><1L>, Unf=OtherCon []]
T4908.f_$s$wf
= \ (sc :: Int) (sc1 :: Int#) (sc2 :: Int#) ->
case sc2 of ds {
__DEFAULT ->
case sc1 of ds1 {
__DEFAULT -> T4908.f_$s$wf sc ds1 (-# ds 1#);
0# -> GHC.Prim.(##)
};
0# -> GHC.Prim.(##)
}
end Rec }
-- RHS size: {terms: 30, types: 16, coercions: 0, joins: 0/0}
f [InlPrag=[2]] :: Int -> (Int, Int) -> Bool
[GblId,
Arity=2,
Str=<1P(1L)><MP(A,MP(ML))>,
Cpr=2,
Unf=Unf{Src=InlineStable, TopLvl=True, Value=True, ConLike=True,
WorkFree=True, Expandable=True,
Guidance=ALWAYS_IF(arity=2,unsat_ok=True,boring_ok=False)
Tmpl= \ (ds [Occ=Once1!] :: Int) (x [Occ=Once1!] :: (Int, Int)) ->
case ds of { I# ww [Occ=Once1!] ->
case ww of ds1 [Occ=Once1] {
__DEFAULT ->
case x of { (a [Occ=Once1], b [Occ=Once1!]) ->
case b of { I# ds2 [Occ=Once1!] ->
case ds2 of ds3 [Occ=Once1] {
__DEFAULT ->
case T4908.f_$s$wf a ds3 (-# ds1 1#) of { (# #) ->
GHC.Types.True
};
0# -> GHC.Types.True
}
}
};
0# -> GHC.Types.True
}
}}]
f = \ (ds :: Int) (x :: (Int, Int)) ->
case ds of { I# ww ->
case ww of ds1 {
__DEFAULT ->
case x of { (a, b) ->
case b of { I# ds2 ->
case ds2 of ds3 {
__DEFAULT ->
case T4908.f_$s$wf a ds3 (-# ds1 1#) of { (# #) ->
GHC.Types.True
};
0# -> GHC.Types.True
}
}
};
0# -> GHC.Types.True
}
}
|