summaryrefslogtreecommitdiff
path: root/testsuite/tests/arityanal/should_compile/T18793.stderr
blob: 39ce9b9a54a7ee42fe80f6c6976a15ae0bbb15b8 (plain)
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

==================== Tidy Core ====================
Result size of Tidy Core = {terms: 64, types: 40, coercions: 0, joins: 0/0}

-- RHS size: {terms: 17, types: 7, coercions: 0, joins: 0/0}
stuff [InlPrag=NOINLINE] :: Int -> [Int]
[GblId, Arity=1, Str=<1L>, Unf=OtherCon []]
stuff = \ (i :: Int) -> case i of i1 { GHC.Types.I# ipv -> GHC.Types.: @Int i1 (GHC.Types.: @Int (GHC.Types.I# (GHC.Prim.+# ipv 1#)) (GHC.Types.: @Int (GHC.Types.I# (GHC.Prim.+# ipv 2#)) (GHC.Types.[] @Int))) }

Rec {
-- RHS size: {terms: 23, types: 11, coercions: 0, joins: 0/0}
T18793.$wgo1 [InlPrag=[2], Occ=LoopBreaker] :: [Int] -> GHC.Prim.Int# -> GHC.Prim.Int#
[GblId, Arity=2, Str=<1L><L>, Unf=OtherCon []]
T18793.$wgo1
  = \ (ds :: [Int]) (ww :: GHC.Prim.Int#) ->
      case ds of {
        [] -> ww;
        : y ys ->
          case y of { GHC.Types.I# x ->
          case GHC.Prim.># x 42# of {
            __DEFAULT -> T18793.$wgo1 ys ww;
            1# -> T18793.$wgo1 ys (GHC.Prim.negateInt# ww)
          }
          }
      }
end Rec }

-- RHS size: {terms: 12, types: 6, coercions: 0, joins: 0/0}
T18793.f_go1 [InlPrag=[2]] :: [Int] -> Int -> Int
[GblId,
 Arity=2,
 Str=<1L><1!L>,
 Cpr=1,
 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]) (eta [Occ=Once1!] :: Int) -> case eta of { GHC.Types.I# ww [Occ=Once1] -> case T18793.$wgo1 ds ww of ww1 [Occ=Once1] { __DEFAULT -> GHC.Types.I# ww1 } }}]
T18793.f_go1 = \ (ds :: [Int]) (eta :: Int) -> case eta of { GHC.Types.I# ww -> case T18793.$wgo1 ds ww of ww1 { __DEFAULT -> GHC.Types.I# ww1 } }

-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
T18793.f2 :: Int
[GblId, Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True, WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 10}]
T18793.f2 = GHC.Types.I# 1#

-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
T18793.f1 :: [Int]
[GblId, Unf=Unf{Src=<vanilla>, TopLvl=True, Value=False, ConLike=False, WorkFree=False, Expandable=False, Guidance=IF_ARGS [] 20 0}]
T18793.f1 = stuff T18793.f2

-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
f :: Int -> Int
[GblId, Arity=1, Str=<1!L>, Cpr=1, Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True, WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 20 60}]
f = T18793.f_go1 T18793.f1