Ticket #14222: T14221.dump-simpl

File T14221.dump-simpl, 11.2 KB (added by bgamari, 2 years ago)

Simplified Core from example given in ticket description

Line 
1
2==================== Tidy Core ====================
32017-09-14 16:58:37.530555869 UTC
4
5Result size of Tidy Core
6  = {terms: 433, types: 61, coercions: 0, joins: 3/10}
7
8-- RHS size: {terms: 409, types: 45, coercions: 0, joins: 3/10}
9T14221.$wisNumeric
10  :: GHC.Prim.ByteArray# -> GHC.Prim.Int# -> GHC.Prim.Int# -> Bool
11T14221.$wisNumeric
12  = \ (ww_s2F9 :: GHC.Prim.ByteArray#)
13      (ww1_s2Fa :: GHC.Prim.Int#)
14      (ww2_s2Fb :: GHC.Prim.Int#) ->
15      let {
16        end_a2xw :: GHC.Prim.Int#
17        end_a2xw = GHC.Prim.+# ww1_s2Fa ww2_s2Fb } in
18      join {
19        $j_s2CE :: Bool
20        $j_s2CE
21          = joinrec {
22              $wloop_any_s2ES :: GHC.Prim.Int# -> Bool
23              $wloop_any_s2ES (ww3_s2EQ :: GHC.Prim.Int#)
24                = case GHC.Prim.>=# ww3_s2EQ end_a2xw of {
25                    __DEFAULT ->
26                      case GHC.Prim.indexWord16Array# ww_s2F9 ww3_s2EQ of r#_a2xH
27                      { __DEFAULT ->
28                      case GHC.Prim.geWord# r#_a2xH 55296## of {
29                        __DEFAULT ->
30                          let {
31                            x_s2D8 :: GHC.Prim.Char#
32                            x_s2D8 = GHC.Prim.chr# (GHC.Prim.word2Int# r#_a2xH) } in
33                          case GHC.Prim.leChar# '0'# x_s2D8 of {
34                            __DEFAULT -> jump $wloop_any_s2ES (GHC.Prim.+# ww3_s2EQ 1#);
35                            1# ->
36                              case GHC.Prim.leChar# x_s2D8 '9'# of {
37                                __DEFAULT -> jump $wloop_any_s2ES (GHC.Prim.+# ww3_s2EQ 1#);
38                                1# -> GHC.Types.True
39                              }
40                          };
41                        1# ->
42                          case GHC.Prim.leWord# r#_a2xH 56319## of {
43                            __DEFAULT ->
44                              let {
45                                x_s2Dd :: GHC.Prim.Char#
46                                x_s2Dd = GHC.Prim.chr# (GHC.Prim.word2Int# r#_a2xH) } in
47                              case GHC.Prim.leChar# '0'# x_s2Dd of {
48                                __DEFAULT -> jump $wloop_any_s2ES (GHC.Prim.+# ww3_s2EQ 1#);
49                                1# ->
50                                  case GHC.Prim.leChar# x_s2Dd '9'# of {
51                                    __DEFAULT -> jump $wloop_any_s2ES (GHC.Prim.+# ww3_s2EQ 1#);
52                                    1# -> GHC.Types.True
53                                  }
54                              };
55                            1# ->
56                              case GHC.Prim.indexWord16Array# ww_s2F9 (GHC.Prim.+# ww3_s2EQ 1#)
57                              of r#1_a2xK
58                              { __DEFAULT ->
59                              let {
60                                x_s2Di :: GHC.Prim.Char#
61                                x_s2Di
62                                  = GHC.Prim.chr#
63                                      (GHC.Prim.+#
64                                         (GHC.Prim.+#
65                                            (GHC.Prim.uncheckedIShiftL#
66                                               (GHC.Prim.-# (GHC.Prim.word2Int# r#_a2xH) 55296#)
67                                               10#)
68                                            (GHC.Prim.-# (GHC.Prim.word2Int# r#1_a2xK) 56320#))
69                                         65536#) } in
70                              case GHC.Prim.leChar# '0'# x_s2Di of {
71                                __DEFAULT -> jump $wloop_any_s2ES (GHC.Prim.+# ww3_s2EQ 2#);
72                                1# ->
73                                  case GHC.Prim.leChar# x_s2Di '9'# of {
74                                    __DEFAULT -> jump $wloop_any_s2ES (GHC.Prim.+# ww3_s2EQ 2#);
75                                    1# -> GHC.Types.True
76                                  }
77                              }
78                              }
79                          }
80                      }
81                      };
82                    1# -> GHC.Types.False
83                  }; } in
84            jump $wloop_any_s2ES ww1_s2Fa } in
85      joinrec {
86        $wloop_all_s2F5 :: GHC.Prim.Int# -> Bool
87        $wloop_all_s2F5 (ww3_s2F3 :: GHC.Prim.Int#)
88          = case GHC.Prim.>=# ww3_s2F3 end_a2xw of {
89              __DEFAULT ->
90                case GHC.Prim.indexWord16Array# ww_s2F9 ww3_s2F3 of r#_a2xH
91                { __DEFAULT ->
92                case GHC.Prim.geWord# r#_a2xH 55296## of {
93                  __DEFAULT ->
94                    let {
95                      ww4_X2Fy :: GHC.Prim.Char#
96                      ww4_X2Fy = GHC.Prim.chr# (GHC.Prim.word2Int# r#_a2xH) } in
97                    case GHC.Prim.leChar# '0'# ww4_X2Fy of {
98                      __DEFAULT ->
99                        case ww4_X2Fy of {
100                          __DEFAULT -> GHC.Types.False;
101                          '+'# -> jump $wloop_all_s2F5 (GHC.Prim.+# ww3_s2F3 1#);
102                          '-'# -> jump $wloop_all_s2F5 (GHC.Prim.+# ww3_s2F3 1#);
103                          '.'# -> jump $wloop_all_s2F5 (GHC.Prim.+# ww3_s2F3 1#);
104                          'E'# -> jump $wloop_all_s2F5 (GHC.Prim.+# ww3_s2F3 1#);
105                          'e'# -> jump $wloop_all_s2F5 (GHC.Prim.+# ww3_s2F3 1#)
106                        };
107                      1# ->
108                        case GHC.Prim.leChar# ww4_X2Fy '9'# of {
109                          __DEFAULT ->
110                            case ww4_X2Fy of {
111                              __DEFAULT -> GHC.Types.False;
112                              '+'# -> jump $wloop_all_s2F5 (GHC.Prim.+# ww3_s2F3 1#);
113                              '-'# -> jump $wloop_all_s2F5 (GHC.Prim.+# ww3_s2F3 1#);
114                              '.'# -> jump $wloop_all_s2F5 (GHC.Prim.+# ww3_s2F3 1#);
115                              'E'# -> jump $wloop_all_s2F5 (GHC.Prim.+# ww3_s2F3 1#);
116                              'e'# -> jump $wloop_all_s2F5 (GHC.Prim.+# ww3_s2F3 1#)
117                            };
118                          1# -> jump $wloop_all_s2F5 (GHC.Prim.+# ww3_s2F3 1#)
119                        }
120                    };
121                  1# ->
122                    case GHC.Prim.leWord# r#_a2xH 56319## of {
123                      __DEFAULT ->
124                        let {
125                          ww4_X2FB :: GHC.Prim.Char#
126                          ww4_X2FB = GHC.Prim.chr# (GHC.Prim.word2Int# r#_a2xH) } in
127                        case GHC.Prim.leChar# '0'# ww4_X2FB of {
128                          __DEFAULT ->
129                            case ww4_X2FB of {
130                              __DEFAULT -> GHC.Types.False;
131                              '+'# -> jump $wloop_all_s2F5 (GHC.Prim.+# ww3_s2F3 1#);
132                              '-'# -> jump $wloop_all_s2F5 (GHC.Prim.+# ww3_s2F3 1#);
133                              '.'# -> jump $wloop_all_s2F5 (GHC.Prim.+# ww3_s2F3 1#);
134                              'E'# -> jump $wloop_all_s2F5 (GHC.Prim.+# ww3_s2F3 1#);
135                              'e'# -> jump $wloop_all_s2F5 (GHC.Prim.+# ww3_s2F3 1#)
136                            };
137                          1# ->
138                            case GHC.Prim.leChar# ww4_X2FB '9'# of {
139                              __DEFAULT ->
140                                case ww4_X2FB of {
141                                  __DEFAULT -> GHC.Types.False;
142                                  '+'# -> jump $wloop_all_s2F5 (GHC.Prim.+# ww3_s2F3 1#);
143                                  '-'# -> jump $wloop_all_s2F5 (GHC.Prim.+# ww3_s2F3 1#);
144                                  '.'# -> jump $wloop_all_s2F5 (GHC.Prim.+# ww3_s2F3 1#);
145                                  'E'# -> jump $wloop_all_s2F5 (GHC.Prim.+# ww3_s2F3 1#);
146                                  'e'# -> jump $wloop_all_s2F5 (GHC.Prim.+# ww3_s2F3 1#)
147                                };
148                              1# -> jump $wloop_all_s2F5 (GHC.Prim.+# ww3_s2F3 1#)
149                            }
150                        };
151                      1# ->
152                        case GHC.Prim.indexWord16Array# ww_s2F9 (GHC.Prim.+# ww3_s2F3 1#)
153                        of r#1_a2xK
154                        { __DEFAULT ->
155                        let {
156                          ww4_X2FE :: GHC.Prim.Char#
157                          ww4_X2FE
158                            = GHC.Prim.chr#
159                                (GHC.Prim.+#
160                                   (GHC.Prim.+#
161                                      (GHC.Prim.uncheckedIShiftL#
162                                         (GHC.Prim.-# (GHC.Prim.word2Int# r#_a2xH) 55296#) 10#)
163                                      (GHC.Prim.-# (GHC.Prim.word2Int# r#1_a2xK) 56320#))
164                                   65536#) } in
165                        case GHC.Prim.leChar# '0'# ww4_X2FE of {
166                          __DEFAULT ->
167                            case ww4_X2FE of {
168                              __DEFAULT -> GHC.Types.False;
169                              '+'# -> jump $wloop_all_s2F5 (GHC.Prim.+# ww3_s2F3 2#);
170                              '-'# -> jump $wloop_all_s2F5 (GHC.Prim.+# ww3_s2F3 2#);
171                              '.'# -> jump $wloop_all_s2F5 (GHC.Prim.+# ww3_s2F3 2#);
172                              'E'# -> jump $wloop_all_s2F5 (GHC.Prim.+# ww3_s2F3 2#);
173                              'e'# -> jump $wloop_all_s2F5 (GHC.Prim.+# ww3_s2F3 2#)
174                            };
175                          1# ->
176                            case GHC.Prim.leChar# ww4_X2FE '9'# of {
177                              __DEFAULT ->
178                                case ww4_X2FE of {
179                                  __DEFAULT -> GHC.Types.False;
180                                  '+'# -> jump $wloop_all_s2F5 (GHC.Prim.+# ww3_s2F3 2#);
181                                  '-'# -> jump $wloop_all_s2F5 (GHC.Prim.+# ww3_s2F3 2#);
182                                  '.'# -> jump $wloop_all_s2F5 (GHC.Prim.+# ww3_s2F3 2#);
183                                  'E'# -> jump $wloop_all_s2F5 (GHC.Prim.+# ww3_s2F3 2#);
184                                  'e'# -> jump $wloop_all_s2F5 (GHC.Prim.+# ww3_s2F3 2#)
185                                };
186                              1# -> jump $wloop_all_s2F5 (GHC.Prim.+# ww3_s2F3 2#)
187                            }
188                        }
189                        }
190                    }
191                }
192                };
193              1# -> jump $j_s2CE
194            }; } in
195      jump $wloop_all_s2F5 ww1_s2Fa
196
197-- RHS size: {terms: 8, types: 5, coercions: 0, joins: 0/0}
198isNumeric :: Text -> Bool
199isNumeric
200  = \ (w_s2F6 :: Text) ->
201      case w_s2F6 of
202      { Data.Text.Internal.Text ww1_s2F9 ww2_s2Fa ww3_s2Fb ->
203      T14221.$wisNumeric ww1_s2F9 ww2_s2Fa ww3_s2Fb
204      }
205
206-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
207T14221.$trModule4 :: GHC.Prim.Addr#
208T14221.$trModule4 = "main"#
209
210-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
211T14221.$trModule3 :: GHC.Types.TrName
212T14221.$trModule3 = GHC.Types.TrNameS T14221.$trModule4
213
214-- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0}
215T14221.$trModule2 :: GHC.Prim.Addr#
216T14221.$trModule2 = "T14221"#
217
218-- RHS size: {terms: 2, types: 0, coercions: 0, joins: 0/0}
219T14221.$trModule1 :: GHC.Types.TrName
220T14221.$trModule1 = GHC.Types.TrNameS T14221.$trModule2
221
222-- RHS size: {terms: 3, types: 0, coercions: 0, joins: 0/0}
223T14221.$trModule :: GHC.Types.Module
224T14221.$trModule
225  = GHC.Types.Module T14221.$trModule3 T14221.$trModule1
226
227