Project

General

Profile

Download (146 KB) Statistics
| Branch: | Tag: | Revision:
1
{
2
  "DESIGN_FILE" : {
3
    "design_units" : [{
4
      "contexts" : [["LIBRARY_CLAUSE", [["IDENTIFIER", "ieee"]]], ["USE_CLAUSE", [["SELECTED_NAME", [["SIMPLE_NAME", "ieee"], ["SIMPLE_NAME", "std_logic_1164"]]]]], ["USE_CLAUSE", [["SELECTED_NAME", [["SIMPLE_NAME", "work"], ["SIMPLE_NAME", "mlite_pack"]]]]]], "library" : ["ENTITY_DECLARATION", {
5
        "name" : ["IDENTIFIER", "control"], "ports" : [{
6
          "names" : [["IDENTIFIER", "opcode"]], "mode" : ["in"], "typ" : {
7
            "name" : ["SIMPLE_NAME", "std_logic_vector"], "const" : ["INDEX_CONSTRAINT", {
8
              "ranges" : [["RANGE_WITH_DIRECTION", {
9
                "direction" : "downto", "from" : ["EXPRESSION", {
10
                  "args" : [["EXPRESSION", {
11
                    "args" : [["CONSTANT_VALUE", {
12
                      "value" : ["CST_LITERAL", "31"]}
13
                    ]]}
14
                  ]]}
15
                ], "_to" : ["EXPRESSION", {
16
                  "args" : [["EXPRESSION", {
17
                    "args" : [["CONSTANT_VALUE", {
18
                      "value" : ["CST_LITERAL", "0"]}
19
                    ]]}
20
                  ]]}
21
                ]}
22
              ]]}
23
            ]}
24
          }
25
        , {
26
          "names" : [["IDENTIFIER", "intr_signal"]], "mode" : ["in"], "typ" : {
27
            "name" : ["SIMPLE_NAME", "std_logic"]}
28
          }
29
        , {
30
          "names" : [["IDENTIFIER", "rs_index"]], "mode" : ["out"], "typ" : {
31
            "name" : ["SIMPLE_NAME", "std_logic_vector"], "const" : ["INDEX_CONSTRAINT", {
32
              "ranges" : [["RANGE_WITH_DIRECTION", {
33
                "direction" : "downto", "from" : ["EXPRESSION", {
34
                  "args" : [["EXPRESSION", {
35
                    "args" : [["CONSTANT_VALUE", {
36
                      "value" : ["CST_LITERAL", "5"]}
37
                    ]]}
38
                  ]]}
39
                ], "_to" : ["EXPRESSION", {
40
                  "args" : [["EXPRESSION", {
41
                    "args" : [["CONSTANT_VALUE", {
42
                      "value" : ["CST_LITERAL", "0"]}
43
                    ]]}
44
                  ]]}
45
                ]}
46
              ]]}
47
            ]}
48
          }
49
        , {
50
          "names" : [["IDENTIFIER", "rt_index"]], "mode" : ["out"], "typ" : {
51
            "name" : ["SIMPLE_NAME", "std_logic_vector"], "const" : ["INDEX_CONSTRAINT", {
52
              "ranges" : [["RANGE_WITH_DIRECTION", {
53
                "direction" : "downto", "from" : ["EXPRESSION", {
54
                  "args" : [["EXPRESSION", {
55
                    "args" : [["CONSTANT_VALUE", {
56
                      "value" : ["CST_LITERAL", "5"]}
57
                    ]]}
58
                  ]]}
59
                ], "_to" : ["EXPRESSION", {
60
                  "args" : [["EXPRESSION", {
61
                    "args" : [["CONSTANT_VALUE", {
62
                      "value" : ["CST_LITERAL", "0"]}
63
                    ]]}
64
                  ]]}
65
                ]}
66
              ]]}
67
            ]}
68
          }
69
        , {
70
          "names" : [["IDENTIFIER", "rd_index"]], "mode" : ["out"], "typ" : {
71
            "name" : ["SIMPLE_NAME", "std_logic_vector"], "const" : ["INDEX_CONSTRAINT", {
72
              "ranges" : [["RANGE_WITH_DIRECTION", {
73
                "direction" : "downto", "from" : ["EXPRESSION", {
74
                  "args" : [["EXPRESSION", {
75
                    "args" : [["CONSTANT_VALUE", {
76
                      "value" : ["CST_LITERAL", "5"]}
77
                    ]]}
78
                  ]]}
79
                ], "_to" : ["EXPRESSION", {
80
                  "args" : [["EXPRESSION", {
81
                    "args" : [["CONSTANT_VALUE", {
82
                      "value" : ["CST_LITERAL", "0"]}
83
                    ]]}
84
                  ]]}
85
                ]}
86
              ]]}
87
            ]}
88
          }
89
        , {
90
          "names" : [["IDENTIFIER", "imm_out"]], "mode" : ["out"], "typ" : {
91
            "name" : ["SIMPLE_NAME", "std_logic_vector"], "const" : ["INDEX_CONSTRAINT", {
92
              "ranges" : [["RANGE_WITH_DIRECTION", {
93
                "direction" : "downto", "from" : ["EXPRESSION", {
94
                  "args" : [["EXPRESSION", {
95
                    "args" : [["CONSTANT_VALUE", {
96
                      "value" : ["CST_LITERAL", "15"]}
97
                    ]]}
98
                  ]]}
99
                ], "_to" : ["EXPRESSION", {
100
                  "args" : [["EXPRESSION", {
101
                    "args" : [["CONSTANT_VALUE", {
102
                      "value" : ["CST_LITERAL", "0"]}
103
                    ]]}
104
                  ]]}
105
                ]}
106
              ]]}
107
            ]}
108
          }
109
        , {
110
          "names" : [["IDENTIFIER", "alu_func"]], "mode" : ["out"], "typ" : {
111
            "name" : ["SIMPLE_NAME", "alu_function_type"]}
112
          }
113
        , {
114
          "names" : [["IDENTIFIER", "shift_func"]], "mode" : ["out"], "typ" : {
115
            "name" : ["SIMPLE_NAME", "shift_function_type"]}
116
          }
117
        , {
118
          "names" : [["IDENTIFIER", "mult_func"]], "mode" : ["out"], "typ" : {
119
            "name" : ["SIMPLE_NAME", "mult_function_type"]}
120
          }
121
        , {
122
          "names" : [["IDENTIFIER", "branch_func"]], "mode" : ["out"], "typ" : {
123
            "name" : ["SIMPLE_NAME", "branch_function_type"]}
124
          }
125
        , {
126
          "names" : [["IDENTIFIER", "a_source_out"]], "mode" : ["out"], "typ" : {
127
            "name" : ["SIMPLE_NAME", "a_source_type"]}
128
          }
129
        , {
130
          "names" : [["IDENTIFIER", "b_source_out"]], "mode" : ["out"], "typ" : {
131
            "name" : ["SIMPLE_NAME", "b_source_type"]}
132
          }
133
        , {
134
          "names" : [["IDENTIFIER", "c_source_out"]], "mode" : ["out"], "typ" : {
135
            "name" : ["SIMPLE_NAME", "c_source_type"]}
136
          }
137
        , {
138
          "names" : [["IDENTIFIER", "pc_source_out"]], "mode" : ["out"], "typ" : {
139
            "name" : ["SIMPLE_NAME", "pc_source_type"]}
140
          }
141
        , {
142
          "names" : [["IDENTIFIER", "mem_source_out"]], "mode" : ["out"], "typ" : {
143
            "name" : ["SIMPLE_NAME", "mem_source_type"]}
144
          }
145
        , {
146
          "names" : [["IDENTIFIER", "exception_out"]], "mode" : ["out"], "typ" : {
147
            "name" : ["SIMPLE_NAME", "std_logic"]}
148
          }
149
        ], "ENTITY_DECLARATIVE_PART" : [], "ENTITY_STATEMENT_PART" : []}
150
      ]}
151
    , {
152
      "contexts" : [], "library" : ["ARCHITECTURE_BODY", {
153
        "name" : ["IDENTIFIER", "logic"], "entity" : ["IDENTIFIER", "control"], "ARCHITECTURE_DECLARATIVE_PART" : [], "ARCHITECTURE_STATEMENT_PART" : [["PROCESS_STATEMENT", {
154
          "id" : ["IDENTIFIER", "control_proc"], "PROCESS_DECLARATIVE_PART" : [{
155
            "declaration" : ["VARIABLE_DECLARATION", {
156
              "names" : [["IDENTIFIER", "op"], ["IDENTIFIER", "func"]], "typ" : {
157
                "name" : ["SIMPLE_NAME", "std_logic_vector"], "const" : ["INDEX_CONSTRAINT", {
158
                  "ranges" : [["RANGE_WITH_DIRECTION", {
159
                    "direction" : "downto", "from" : ["EXPRESSION", {
160
                      "args" : [["EXPRESSION", {
161
                        "args" : [["CONSTANT_VALUE", {
162
                          "value" : ["CST_LITERAL", "5"]}
163
                        ]]}
164
                      ]]}
165
                    ], "_to" : ["EXPRESSION", {
166
                      "args" : [["EXPRESSION", {
167
                        "args" : [["CONSTANT_VALUE", {
168
                          "value" : ["CST_LITERAL", "0"]}
169
                        ]]}
170
                      ]]}
171
                    ]}
172
                  ]]}
173
                ]}
174
              }
175
            ]}
176
          , {
177
            "declaration" : ["VARIABLE_DECLARATION", {
178
              "names" : [["IDENTIFIER", "rs"], ["IDENTIFIER", "rt"], ["IDENTIFIER", "rd"]], "typ" : {
179
                "name" : ["SIMPLE_NAME", "std_logic_vector"], "const" : ["INDEX_CONSTRAINT", {
180
                  "ranges" : [["RANGE_WITH_DIRECTION", {
181
                    "direction" : "downto", "from" : ["EXPRESSION", {
182
                      "args" : [["EXPRESSION", {
183
                        "args" : [["CONSTANT_VALUE", {
184
                          "value" : ["CST_LITERAL", "5"]}
185
                        ]]}
186
                      ]]}
187
                    ], "_to" : ["EXPRESSION", {
188
                      "args" : [["EXPRESSION", {
189
                        "args" : [["CONSTANT_VALUE", {
190
                          "value" : ["CST_LITERAL", "0"]}
191
                        ]]}
192
                      ]]}
193
                    ]}
194
                  ]]}
195
                ]}
196
              }
197
            ]}
198
          , {
199
            "declaration" : ["VARIABLE_DECLARATION", {
200
              "names" : [["IDENTIFIER", "rtx"]], "typ" : {
201
                "name" : ["SIMPLE_NAME", "std_logic_vector"], "const" : ["INDEX_CONSTRAINT", {
202
                  "ranges" : [["RANGE_WITH_DIRECTION", {
203
                    "direction" : "downto", "from" : ["EXPRESSION", {
204
                      "args" : [["EXPRESSION", {
205
                        "args" : [["CONSTANT_VALUE", {
206
                          "value" : ["CST_LITERAL", "4"]}
207
                        ]]}
208
                      ]]}
209
                    ], "_to" : ["EXPRESSION", {
210
                      "args" : [["EXPRESSION", {
211
                        "args" : [["CONSTANT_VALUE", {
212
                          "value" : ["CST_LITERAL", "0"]}
213
                        ]]}
214
                      ]]}
215
                    ]}
216
                  ]]}
217
                ]}
218
              }
219
            ]}
220
          , {
221
            "declaration" : ["VARIABLE_DECLARATION", {
222
              "names" : [["IDENTIFIER", "imm"]], "typ" : {
223
                "name" : ["SIMPLE_NAME", "std_logic_vector"], "const" : ["INDEX_CONSTRAINT", {
224
                  "ranges" : [["RANGE_WITH_DIRECTION", {
225
                    "direction" : "downto", "from" : ["EXPRESSION", {
226
                      "args" : [["EXPRESSION", {
227
                        "args" : [["CONSTANT_VALUE", {
228
                          "value" : ["CST_LITERAL", "15"]}
229
                        ]]}
230
                      ]]}
231
                    ], "_to" : ["EXPRESSION", {
232
                      "args" : [["EXPRESSION", {
233
                        "args" : [["CONSTANT_VALUE", {
234
                          "value" : ["CST_LITERAL", "0"]}
235
                        ]]}
236
                      ]]}
237
                    ]}
238
                  ]]}
239
                ]}
240
              }
241
            ]}
242
          , {
243
            "declaration" : ["VARIABLE_DECLARATION", {
244
              "names" : [["IDENTIFIER", "alu_function"]], "typ" : {
245
                "name" : ["SIMPLE_NAME", "alu_function_type"]}
246
              }
247
            ]}
248
          , {
249
            "declaration" : ["VARIABLE_DECLARATION", {
250
              "names" : [["IDENTIFIER", "shift_function"]], "typ" : {
251
                "name" : ["SIMPLE_NAME", "shift_function_type"]}
252
              }
253
            ]}
254
          , {
255
            "declaration" : ["VARIABLE_DECLARATION", {
256
              "names" : [["IDENTIFIER", "mult_function"]], "typ" : {
257
                "name" : ["SIMPLE_NAME", "mult_function_type"]}
258
              }
259
            ]}
260
          , {
261
            "declaration" : ["VARIABLE_DECLARATION", {
262
              "names" : [["IDENTIFIER", "a_source"]], "typ" : {
263
                "name" : ["SIMPLE_NAME", "a_source_type"]}
264
              }
265
            ]}
266
          , {
267
            "declaration" : ["VARIABLE_DECLARATION", {
268
              "names" : [["IDENTIFIER", "b_source"]], "typ" : {
269
                "name" : ["SIMPLE_NAME", "b_source_type"]}
270
              }
271
            ]}
272
          , {
273
            "declaration" : ["VARIABLE_DECLARATION", {
274
              "names" : [["IDENTIFIER", "c_source"]], "typ" : {
275
                "name" : ["SIMPLE_NAME", "c_source_type"]}
276
              }
277
            ]}
278
          , {
279
            "declaration" : ["VARIABLE_DECLARATION", {
280
              "names" : [["IDENTIFIER", "pc_source"]], "typ" : {
281
                "name" : ["SIMPLE_NAME", "pc_source_type"]}
282
              }
283
            ]}
284
          , {
285
            "declaration" : ["VARIABLE_DECLARATION", {
286
              "names" : [["IDENTIFIER", "branch_function"]], "typ" : {
287
                "name" : ["SIMPLE_NAME", "branch_function_type"]}
288
              }
289
            ]}
290
          , {
291
            "declaration" : ["VARIABLE_DECLARATION", {
292
              "names" : [["IDENTIFIER", "mem_source"]], "typ" : {
293
                "name" : ["SIMPLE_NAME", "mem_source_type"]}
294
              }
295
            ]}
296
          , {
297
            "declaration" : ["VARIABLE_DECLARATION", {
298
              "names" : [["IDENTIFIER", "is_syscall"]], "typ" : {
299
                "name" : ["SIMPLE_NAME", "std_logic"]}
300
              }
301
            ]}
302
          ], "active_sigs" : [["SIMPLE_NAME", "opcode"], ["SIMPLE_NAME", "intr_signal"]], "PROCESS_STATEMENT_PART" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
303
            "lhs" : ["SIMPLE_NAME", "alu_function"], "rhs" : ["EXPRESSION", {
304
              "args" : [["EXPRESSION", {
305
                "args" : [["EXPRESSION", {
306
                  "args" : [["EXPRESSION", {
307
                    "args" : [["CALL", ["SIMPLE_NAME", "ALU_NOTHING"]]]}
308
                  ]]}
309
                ]]}
310
              ]]}
311
            ]}
312
          ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
313
            "lhs" : ["SIMPLE_NAME", "shift_function"], "rhs" : ["EXPRESSION", {
314
              "args" : [["EXPRESSION", {
315
                "args" : [["EXPRESSION", {
316
                  "args" : [["EXPRESSION", {
317
                    "args" : [["CALL", ["SIMPLE_NAME", "SHIFT_NOTHING"]]]}
318
                  ]]}
319
                ]]}
320
              ]]}
321
            ]}
322
          ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
323
            "lhs" : ["SIMPLE_NAME", "mult_function"], "rhs" : ["EXPRESSION", {
324
              "args" : [["EXPRESSION", {
325
                "args" : [["EXPRESSION", {
326
                  "args" : [["EXPRESSION", {
327
                    "args" : [["CALL", ["SIMPLE_NAME", "MULT_NOTHING"]]]}
328
                  ]]}
329
                ]]}
330
              ]]}
331
            ]}
332
          ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
333
            "lhs" : ["SIMPLE_NAME", "a_source"], "rhs" : ["EXPRESSION", {
334
              "args" : [["EXPRESSION", {
335
                "args" : [["EXPRESSION", {
336
                  "args" : [["EXPRESSION", {
337
                    "args" : [["CALL", ["SIMPLE_NAME", "A_FROM_REG_SOURCE"]]]}
338
                  ]]}
339
                ]]}
340
              ]]}
341
            ]}
342
          ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
343
            "lhs" : ["SIMPLE_NAME", "b_source"], "rhs" : ["EXPRESSION", {
344
              "args" : [["EXPRESSION", {
345
                "args" : [["EXPRESSION", {
346
                  "args" : [["EXPRESSION", {
347
                    "args" : [["CALL", ["SIMPLE_NAME", "B_FROM_REG_TARGET"]]]}
348
                  ]]}
349
                ]]}
350
              ]]}
351
            ]}
352
          ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
353
            "lhs" : ["SIMPLE_NAME", "c_source"], "rhs" : ["EXPRESSION", {
354
              "args" : [["EXPRESSION", {
355
                "args" : [["EXPRESSION", {
356
                  "args" : [["EXPRESSION", {
357
                    "args" : [["CALL", ["SIMPLE_NAME", "C_FROM_NULL"]]]}
358
                  ]]}
359
                ]]}
360
              ]]}
361
            ]}
362
          ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
363
            "lhs" : ["SIMPLE_NAME", "pc_source"], "rhs" : ["EXPRESSION", {
364
              "args" : [["EXPRESSION", {
365
                "args" : [["EXPRESSION", {
366
                  "args" : [["EXPRESSION", {
367
                    "args" : [["CALL", ["SIMPLE_NAME", "FROM_INC4"]]]}
368
                  ]]}
369
                ]]}
370
              ]]}
371
            ]}
372
          ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
373
            "lhs" : ["SIMPLE_NAME", "branch_function"], "rhs" : ["EXPRESSION", {
374
              "args" : [["EXPRESSION", {
375
                "args" : [["EXPRESSION", {
376
                  "args" : [["EXPRESSION", {
377
                    "args" : [["CALL", ["SIMPLE_NAME", "BRANCH_EQ"]]]}
378
                  ]]}
379
                ]]}
380
              ]]}
381
            ]}
382
          ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
383
            "lhs" : ["SIMPLE_NAME", "mem_source"], "rhs" : ["EXPRESSION", {
384
              "args" : [["EXPRESSION", {
385
                "args" : [["EXPRESSION", {
386
                  "args" : [["EXPRESSION", {
387
                    "args" : [["CALL", ["SIMPLE_NAME", "MEM_FETCH"]]]}
388
                  ]]}
389
                ]]}
390
              ]]}
391
            ]}
392
          ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
393
            "lhs" : ["SIMPLE_NAME", "op"], "rhs" : ["EXPRESSION", {
394
              "args" : [["EXPRESSION", {
395
                "args" : [["EXPRESSION", {
396
                  "args" : [["EXPRESSION", {
397
                    "args" : [["CALL", ["SLICE_NAME", {
398
                      "id" : ["SIMPLE_NAME", "opcode"], "range" : ["RANGE_WITH_DIRECTION", {
399
                        "direction" : "downto", "from" : ["EXPRESSION", {
400
                          "args" : [["EXPRESSION", {
401
                            "args" : [["CONSTANT_VALUE", {
402
                              "value" : ["CST_LITERAL", "31"]}
403
                            ]]}
404
                          ]]}
405
                        ], "_to" : ["EXPRESSION", {
406
                          "args" : [["EXPRESSION", {
407
                            "args" : [["CONSTANT_VALUE", {
408
                              "value" : ["CST_LITERAL", "26"]}
409
                            ]]}
410
                          ]]}
411
                        ]}
412
                      ]}
413
                    ]]]}
414
                  ]]}
415
                ]]}
416
              ]]}
417
            ]}
418
          ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
419
            "lhs" : ["SIMPLE_NAME", "rs"], "rhs" : ["EXPRESSION", {
420
              "args" : [["EXPRESSION", {
421
                "args" : [["EXPRESSION", {
422
                  "args" : [["EXPRESSION", {
423
                    "id" : "&", "args" : [["EXPRESSION", {
424
                      "args" : [["CONSTANT_VALUE", {
425
                        "value" : ["CST_LITERAL", "'0'"]}
426
                      ]]}
427
                    ], ["EXPRESSION", {
428
                      "args" : [["CALL", ["SLICE_NAME", {
429
                        "id" : ["SIMPLE_NAME", "opcode"], "range" : ["RANGE_WITH_DIRECTION", {
430
                          "direction" : "downto", "from" : ["EXPRESSION", {
431
                            "args" : [["EXPRESSION", {
432
                              "args" : [["CONSTANT_VALUE", {
433
                                "value" : ["CST_LITERAL", "25"]}
434
                              ]]}
435
                            ]]}
436
                          ], "_to" : ["EXPRESSION", {
437
                            "args" : [["EXPRESSION", {
438
                              "args" : [["CONSTANT_VALUE", {
439
                                "value" : ["CST_LITERAL", "21"]}
440
                              ]]}
441
                            ]]}
442
                          ]}
443
                        ]}
444
                      ]]]}
445
                    ]]}
446
                  ]]}
447
                ]]}
448
              ]]}
449
            ]}
450
          ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
451
            "lhs" : ["SIMPLE_NAME", "rt"], "rhs" : ["EXPRESSION", {
452
              "args" : [["EXPRESSION", {
453
                "args" : [["EXPRESSION", {
454
                  "args" : [["EXPRESSION", {
455
                    "id" : "&", "args" : [["EXPRESSION", {
456
                      "args" : [["CONSTANT_VALUE", {
457
                        "value" : ["CST_LITERAL", "'0'"]}
458
                      ]]}
459
                    ], ["EXPRESSION", {
460
                      "args" : [["CALL", ["SLICE_NAME", {
461
                        "id" : ["SIMPLE_NAME", "opcode"], "range" : ["RANGE_WITH_DIRECTION", {
462
                          "direction" : "downto", "from" : ["EXPRESSION", {
463
                            "args" : [["EXPRESSION", {
464
                              "args" : [["CONSTANT_VALUE", {
465
                                "value" : ["CST_LITERAL", "20"]}
466
                              ]]}
467
                            ]]}
468
                          ], "_to" : ["EXPRESSION", {
469
                            "args" : [["EXPRESSION", {
470
                              "args" : [["CONSTANT_VALUE", {
471
                                "value" : ["CST_LITERAL", "16"]}
472
                              ]]}
473
                            ]]}
474
                          ]}
475
                        ]}
476
                      ]]]}
477
                    ]]}
478
                  ]]}
479
                ]]}
480
              ]]}
481
            ]}
482
          ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
483
            "lhs" : ["SIMPLE_NAME", "rtx"], "rhs" : ["EXPRESSION", {
484
              "args" : [["EXPRESSION", {
485
                "args" : [["EXPRESSION", {
486
                  "args" : [["EXPRESSION", {
487
                    "args" : [["CALL", ["SLICE_NAME", {
488
                      "id" : ["SIMPLE_NAME", "opcode"], "range" : ["RANGE_WITH_DIRECTION", {
489
                        "direction" : "downto", "from" : ["EXPRESSION", {
490
                          "args" : [["EXPRESSION", {
491
                            "args" : [["CONSTANT_VALUE", {
492
                              "value" : ["CST_LITERAL", "20"]}
493
                            ]]}
494
                          ]]}
495
                        ], "_to" : ["EXPRESSION", {
496
                          "args" : [["EXPRESSION", {
497
                            "args" : [["CONSTANT_VALUE", {
498
                              "value" : ["CST_LITERAL", "16"]}
499
                            ]]}
500
                          ]]}
501
                        ]}
502
                      ]}
503
                    ]]]}
504
                  ]]}
505
                ]]}
506
              ]]}
507
            ]}
508
          ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
509
            "lhs" : ["SIMPLE_NAME", "rd"], "rhs" : ["EXPRESSION", {
510
              "args" : [["EXPRESSION", {
511
                "args" : [["EXPRESSION", {
512
                  "args" : [["EXPRESSION", {
513
                    "id" : "&", "args" : [["EXPRESSION", {
514
                      "args" : [["CONSTANT_VALUE", {
515
                        "value" : ["CST_LITERAL", "'0'"]}
516
                      ]]}
517
                    ], ["EXPRESSION", {
518
                      "args" : [["CALL", ["SLICE_NAME", {
519
                        "id" : ["SIMPLE_NAME", "opcode"], "range" : ["RANGE_WITH_DIRECTION", {
520
                          "direction" : "downto", "from" : ["EXPRESSION", {
521
                            "args" : [["EXPRESSION", {
522
                              "args" : [["CONSTANT_VALUE", {
523
                                "value" : ["CST_LITERAL", "15"]}
524
                              ]]}
525
                            ]]}
526
                          ], "_to" : ["EXPRESSION", {
527
                            "args" : [["EXPRESSION", {
528
                              "args" : [["CONSTANT_VALUE", {
529
                                "value" : ["CST_LITERAL", "11"]}
530
                              ]]}
531
                            ]]}
532
                          ]}
533
                        ]}
534
                      ]]]}
535
                    ]]}
536
                  ]]}
537
                ]]}
538
              ]]}
539
            ]}
540
          ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
541
            "lhs" : ["SIMPLE_NAME", "func"], "rhs" : ["EXPRESSION", {
542
              "args" : [["EXPRESSION", {
543
                "args" : [["EXPRESSION", {
544
                  "args" : [["EXPRESSION", {
545
                    "args" : [["CALL", ["SLICE_NAME", {
546
                      "id" : ["SIMPLE_NAME", "opcode"], "range" : ["RANGE_WITH_DIRECTION", {
547
                        "direction" : "downto", "from" : ["EXPRESSION", {
548
                          "args" : [["EXPRESSION", {
549
                            "args" : [["CONSTANT_VALUE", {
550
                              "value" : ["CST_LITERAL", "5"]}
551
                            ]]}
552
                          ]]}
553
                        ], "_to" : ["EXPRESSION", {
554
                          "args" : [["EXPRESSION", {
555
                            "args" : [["CONSTANT_VALUE", {
556
                              "value" : ["CST_LITERAL", "0"]}
557
                            ]]}
558
                          ]]}
559
                        ]}
560
                      ]}
561
                    ]]]}
562
                  ]]}
563
                ]]}
564
              ]]}
565
            ]}
566
          ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
567
            "lhs" : ["SIMPLE_NAME", "imm"], "rhs" : ["EXPRESSION", {
568
              "args" : [["EXPRESSION", {
569
                "args" : [["EXPRESSION", {
570
                  "args" : [["EXPRESSION", {
571
                    "args" : [["CALL", ["SLICE_NAME", {
572
                      "id" : ["SIMPLE_NAME", "opcode"], "range" : ["RANGE_WITH_DIRECTION", {
573
                        "direction" : "downto", "from" : ["EXPRESSION", {
574
                          "args" : [["EXPRESSION", {
575
                            "args" : [["CONSTANT_VALUE", {
576
                              "value" : ["CST_LITERAL", "15"]}
577
                            ]]}
578
                          ]]}
579
                        ], "_to" : ["EXPRESSION", {
580
                          "args" : [["EXPRESSION", {
581
                            "args" : [["CONSTANT_VALUE", {
582
                              "value" : ["CST_LITERAL", "0"]}
583
                            ]]}
584
                          ]]}
585
                        ]}
586
                      ]}
587
                    ]]]}
588
                  ]]}
589
                ]]}
590
              ]]}
591
            ]}
592
          ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
593
            "lhs" : ["SIMPLE_NAME", "is_syscall"], "rhs" : ["EXPRESSION", {
594
              "args" : [["EXPRESSION", {
595
                "args" : [["EXPRESSION", {
596
                  "args" : [["EXPRESSION", {
597
                    "args" : [["CONSTANT_VALUE", {
598
                      "value" : ["CST_LITERAL", "'0'"]}
599
                    ]]}
600
                  ]]}
601
                ]]}
602
              ]]}
603
            ]}
604
          ], ["CASE_STATEMENT_TREE", {
605
            "guard" : ["EXPRESSION", {
606
              "args" : [["EXPRESSION", {
607
                "args" : [["EXPRESSION", {
608
                  "args" : [["EXPRESSION", {
609
                    "args" : [["CALL", ["SIMPLE_NAME", "op"]]]}
610
                  ]]}
611
                ]]}
612
              ]]}
613
            ], "branches" : [{
614
              "when_cond" : [["EXPRESSION", {
615
                "args" : [["EXPRESSION", {
616
                  "args" : [["CONSTANT_VALUE", {
617
                    "value" : ["CST_LITERAL", "\"000000\""]}
618
                  ]]}
619
                ]]}
620
              ]], "when_stmt" : [["CASE_STATEMENT_TREE", {
621
                "guard" : ["EXPRESSION", {
622
                  "args" : [["EXPRESSION", {
623
                    "args" : [["EXPRESSION", {
624
                      "args" : [["EXPRESSION", {
625
                        "args" : [["CALL", ["SIMPLE_NAME", "func"]]]}
626
                      ]]}
627
                    ]]}
628
                  ]]}
629
                ], "branches" : [{
630
                  "when_cond" : [["EXPRESSION", {
631
                    "args" : [["EXPRESSION", {
632
                      "args" : [["CONSTANT_VALUE", {
633
                        "value" : ["CST_LITERAL", "\"000000\""]}
634
                      ]]}
635
                    ]]}
636
                  ]], "when_stmt" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
637
                    "lhs" : ["SIMPLE_NAME", "a_source"], "rhs" : ["EXPRESSION", {
638
                      "args" : [["EXPRESSION", {
639
                        "args" : [["EXPRESSION", {
640
                          "args" : [["EXPRESSION", {
641
                            "args" : [["CALL", ["SIMPLE_NAME", "A_FROM_IMM10_6"]]]}
642
                          ]]}
643
                        ]]}
644
                      ]]}
645
                    ]}
646
                  ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
647
                    "lhs" : ["SIMPLE_NAME", "c_source"], "rhs" : ["EXPRESSION", {
648
                      "args" : [["EXPRESSION", {
649
                        "args" : [["EXPRESSION", {
650
                          "args" : [["EXPRESSION", {
651
                            "args" : [["CALL", ["SIMPLE_NAME", "C_FROM_SHIFT"]]]}
652
                          ]]}
653
                        ]]}
654
                      ]]}
655
                    ]}
656
                  ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
657
                    "lhs" : ["SIMPLE_NAME", "shift_function"], "rhs" : ["EXPRESSION", {
658
                      "args" : [["EXPRESSION", {
659
                        "args" : [["EXPRESSION", {
660
                          "args" : [["EXPRESSION", {
661
                            "args" : [["CALL", ["SIMPLE_NAME", "SHIFT_LEFT_UNSIGNED"]]]}
662
                          ]]}
663
                        ]]}
664
                      ]]}
665
                    ]}
666
                  ]]}
667
                , {
668
                  "when_cond" : [["EXPRESSION", {
669
                    "args" : [["EXPRESSION", {
670
                      "args" : [["CONSTANT_VALUE", {
671
                        "value" : ["CST_LITERAL", "\"000010\""]}
672
                      ]]}
673
                    ]]}
674
                  ]], "when_stmt" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
675
                    "lhs" : ["SIMPLE_NAME", "a_source"], "rhs" : ["EXPRESSION", {
676
                      "args" : [["EXPRESSION", {
677
                        "args" : [["EXPRESSION", {
678
                          "args" : [["EXPRESSION", {
679
                            "args" : [["CALL", ["SIMPLE_NAME", "A_FROM_IMM10_6"]]]}
680
                          ]]}
681
                        ]]}
682
                      ]]}
683
                    ]}
684
                  ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
685
                    "lhs" : ["SIMPLE_NAME", "c_source"], "rhs" : ["EXPRESSION", {
686
                      "args" : [["EXPRESSION", {
687
                        "args" : [["EXPRESSION", {
688
                          "args" : [["EXPRESSION", {
689
                            "args" : [["CALL", ["SIMPLE_NAME", "C_FROM_shift"]]]}
690
                          ]]}
691
                        ]]}
692
                      ]]}
693
                    ]}
694
                  ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
695
                    "lhs" : ["SIMPLE_NAME", "shift_function"], "rhs" : ["EXPRESSION", {
696
                      "args" : [["EXPRESSION", {
697
                        "args" : [["EXPRESSION", {
698
                          "args" : [["EXPRESSION", {
699
                            "args" : [["CALL", ["SIMPLE_NAME", "SHIFT_RIGHT_UNSIGNED"]]]}
700
                          ]]}
701
                        ]]}
702
                      ]]}
703
                    ]}
704
                  ]]}
705
                , {
706
                  "when_cond" : [["EXPRESSION", {
707
                    "args" : [["EXPRESSION", {
708
                      "args" : [["CONSTANT_VALUE", {
709
                        "value" : ["CST_LITERAL", "\"000011\""]}
710
                      ]]}
711
                    ]]}
712
                  ]], "when_stmt" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
713
                    "lhs" : ["SIMPLE_NAME", "a_source"], "rhs" : ["EXPRESSION", {
714
                      "args" : [["EXPRESSION", {
715
                        "args" : [["EXPRESSION", {
716
                          "args" : [["EXPRESSION", {
717
                            "args" : [["CALL", ["SIMPLE_NAME", "A_FROM_IMM10_6"]]]}
718
                          ]]}
719
                        ]]}
720
                      ]]}
721
                    ]}
722
                  ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
723
                    "lhs" : ["SIMPLE_NAME", "c_source"], "rhs" : ["EXPRESSION", {
724
                      "args" : [["EXPRESSION", {
725
                        "args" : [["EXPRESSION", {
726
                          "args" : [["EXPRESSION", {
727
                            "args" : [["CALL", ["SIMPLE_NAME", "C_FROM_SHIFT"]]]}
728
                          ]]}
729
                        ]]}
730
                      ]]}
731
                    ]}
732
                  ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
733
                    "lhs" : ["SIMPLE_NAME", "shift_function"], "rhs" : ["EXPRESSION", {
734
                      "args" : [["EXPRESSION", {
735
                        "args" : [["EXPRESSION", {
736
                          "args" : [["EXPRESSION", {
737
                            "args" : [["CALL", ["SIMPLE_NAME", "SHIFT_RIGHT_SIGNED"]]]}
738
                          ]]}
739
                        ]]}
740
                      ]]}
741
                    ]}
742
                  ]]}
743
                , {
744
                  "when_cond" : [["EXPRESSION", {
745
                    "args" : [["EXPRESSION", {
746
                      "args" : [["CONSTANT_VALUE", {
747
                        "value" : ["CST_LITERAL", "\"000100\""]}
748
                      ]]}
749
                    ]]}
750
                  ]], "when_stmt" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
751
                    "lhs" : ["SIMPLE_NAME", "c_source"], "rhs" : ["EXPRESSION", {
752
                      "args" : [["EXPRESSION", {
753
                        "args" : [["EXPRESSION", {
754
                          "args" : [["EXPRESSION", {
755
                            "args" : [["CALL", ["SIMPLE_NAME", "C_FROM_SHIFT"]]]}
756
                          ]]}
757
                        ]]}
758
                      ]]}
759
                    ]}
760
                  ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
761
                    "lhs" : ["SIMPLE_NAME", "shift_function"], "rhs" : ["EXPRESSION", {
762
                      "args" : [["EXPRESSION", {
763
                        "args" : [["EXPRESSION", {
764
                          "args" : [["EXPRESSION", {
765
                            "args" : [["CALL", ["SIMPLE_NAME", "SHIFT_LEFT_UNSIGNED"]]]}
766
                          ]]}
767
                        ]]}
768
                      ]]}
769
                    ]}
770
                  ]]}
771
                , {
772
                  "when_cond" : [["EXPRESSION", {
773
                    "args" : [["EXPRESSION", {
774
                      "args" : [["CONSTANT_VALUE", {
775
                        "value" : ["CST_LITERAL", "\"000110\""]}
776
                      ]]}
777
                    ]]}
778
                  ]], "when_stmt" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
779
                    "lhs" : ["SIMPLE_NAME", "c_source"], "rhs" : ["EXPRESSION", {
780
                      "args" : [["EXPRESSION", {
781
                        "args" : [["EXPRESSION", {
782
                          "args" : [["EXPRESSION", {
783
                            "args" : [["CALL", ["SIMPLE_NAME", "C_FROM_SHIFT"]]]}
784
                          ]]}
785
                        ]]}
786
                      ]]}
787
                    ]}
788
                  ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
789
                    "lhs" : ["SIMPLE_NAME", "shift_function"], "rhs" : ["EXPRESSION", {
790
                      "args" : [["EXPRESSION", {
791
                        "args" : [["EXPRESSION", {
792
                          "args" : [["EXPRESSION", {
793
                            "args" : [["CALL", ["SIMPLE_NAME", "SHIFT_RIGHT_UNSIGNED"]]]}
794
                          ]]}
795
                        ]]}
796
                      ]]}
797
                    ]}
798
                  ]]}
799
                , {
800
                  "when_cond" : [["EXPRESSION", {
801
                    "args" : [["EXPRESSION", {
802
                      "args" : [["CONSTANT_VALUE", {
803
                        "value" : ["CST_LITERAL", "\"000111\""]}
804
                      ]]}
805
                    ]]}
806
                  ]], "when_stmt" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
807
                    "lhs" : ["SIMPLE_NAME", "c_source"], "rhs" : ["EXPRESSION", {
808
                      "args" : [["EXPRESSION", {
809
                        "args" : [["EXPRESSION", {
810
                          "args" : [["EXPRESSION", {
811
                            "args" : [["CALL", ["SIMPLE_NAME", "C_FROM_SHIFT"]]]}
812
                          ]]}
813
                        ]]}
814
                      ]]}
815
                    ]}
816
                  ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
817
                    "lhs" : ["SIMPLE_NAME", "shift_function"], "rhs" : ["EXPRESSION", {
818
                      "args" : [["EXPRESSION", {
819
                        "args" : [["EXPRESSION", {
820
                          "args" : [["EXPRESSION", {
821
                            "args" : [["CALL", ["SIMPLE_NAME", "SHIFT_RIGHT_SIGNED"]]]}
822
                          ]]}
823
                        ]]}
824
                      ]]}
825
                    ]}
826
                  ]]}
827
                , {
828
                  "when_cond" : [["EXPRESSION", {
829
                    "args" : [["EXPRESSION", {
830
                      "args" : [["CONSTANT_VALUE", {
831
                        "value" : ["CST_LITERAL", "\"001000\""]}
832
                      ]]}
833
                    ]]}
834
                  ]], "when_stmt" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
835
                    "lhs" : ["SIMPLE_NAME", "pc_source"], "rhs" : ["EXPRESSION", {
836
                      "args" : [["EXPRESSION", {
837
                        "args" : [["EXPRESSION", {
838
                          "args" : [["EXPRESSION", {
839
                            "args" : [["CALL", ["SIMPLE_NAME", "FROM_BRANCH"]]]}
840
                          ]]}
841
                        ]]}
842
                      ]]}
843
                    ]}
844
                  ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
845
                    "lhs" : ["SIMPLE_NAME", "alu_function"], "rhs" : ["EXPRESSION", {
846
                      "args" : [["EXPRESSION", {
847
                        "args" : [["EXPRESSION", {
848
                          "args" : [["EXPRESSION", {
849
                            "args" : [["CALL", ["SIMPLE_NAME", "ALU_ADD"]]]}
850
                          ]]}
851
                        ]]}
852
                      ]]}
853
                    ]}
854
                  ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
855
                    "lhs" : ["SIMPLE_NAME", "branch_function"], "rhs" : ["EXPRESSION", {
856
                      "args" : [["EXPRESSION", {
857
                        "args" : [["EXPRESSION", {
858
                          "args" : [["EXPRESSION", {
859
                            "args" : [["CALL", ["SIMPLE_NAME", "BRANCH_YES"]]]}
860
                          ]]}
861
                        ]]}
862
                      ]]}
863
                    ]}
864
                  ]]}
865
                , {
866
                  "when_cond" : [["EXPRESSION", {
867
                    "args" : [["EXPRESSION", {
868
                      "args" : [["CONSTANT_VALUE", {
869
                        "value" : ["CST_LITERAL", "\"001001\""]}
870
                      ]]}
871
                    ]]}
872
                  ]], "when_stmt" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
873
                    "lhs" : ["SIMPLE_NAME", "c_source"], "rhs" : ["EXPRESSION", {
874
                      "args" : [["EXPRESSION", {
875
                        "args" : [["EXPRESSION", {
876
                          "args" : [["EXPRESSION", {
877
                            "args" : [["CALL", ["SIMPLE_NAME", "C_FROM_PC_PLUS4"]]]}
878
                          ]]}
879
                        ]]}
880
                      ]]}
881
                    ]}
882
                  ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
883
                    "lhs" : ["SIMPLE_NAME", "pc_source"], "rhs" : ["EXPRESSION", {
884
                      "args" : [["EXPRESSION", {
885
                        "args" : [["EXPRESSION", {
886
                          "args" : [["EXPRESSION", {
887
                            "args" : [["CALL", ["SIMPLE_NAME", "FROM_BRANCH"]]]}
888
                          ]]}
889
                        ]]}
890
                      ]]}
891
                    ]}
892
                  ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
893
                    "lhs" : ["SIMPLE_NAME", "alu_function"], "rhs" : ["EXPRESSION", {
894
                      "args" : [["EXPRESSION", {
895
                        "args" : [["EXPRESSION", {
896
                          "args" : [["EXPRESSION", {
897
                            "args" : [["CALL", ["SIMPLE_NAME", "ALU_ADD"]]]}
898
                          ]]}
899
                        ]]}
900
                      ]]}
901
                    ]}
902
                  ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
903
                    "lhs" : ["SIMPLE_NAME", "branch_function"], "rhs" : ["EXPRESSION", {
904
                      "args" : [["EXPRESSION", {
905
                        "args" : [["EXPRESSION", {
906
                          "args" : [["EXPRESSION", {
907
                            "args" : [["CALL", ["SIMPLE_NAME", "BRANCH_YES"]]]}
908
                          ]]}
909
                        ]]}
910
                      ]]}
911
                    ]}
912
                  ]]}
913
                , {
914
                  "when_cond" : [["EXPRESSION", {
915
                    "args" : [["EXPRESSION", {
916
                      "args" : [["CONSTANT_VALUE", {
917
                        "value" : ["CST_LITERAL", "\"001100\""]}
918
                      ]]}
919
                    ]]}
920
                  ]], "when_stmt" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
921
                    "lhs" : ["SIMPLE_NAME", "is_syscall"], "rhs" : ["EXPRESSION", {
922
                      "args" : [["EXPRESSION", {
923
                        "args" : [["EXPRESSION", {
924
                          "args" : [["EXPRESSION", {
925
                            "args" : [["CONSTANT_VALUE", {
926
                              "value" : ["CST_LITERAL", "'1'"]}
927
                            ]]}
928
                          ]]}
929
                        ]]}
930
                      ]]}
931
                    ]}
932
                  ]]}
933
                , {
934
                  "when_cond" : [["EXPRESSION", {
935
                    "args" : [["EXPRESSION", {
936
                      "args" : [["CONSTANT_VALUE", {
937
                        "value" : ["CST_LITERAL", "\"001101\""]}
938
                      ]]}
939
                    ]]}
940
                  ]], "when_stmt" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
941
                    "lhs" : ["SIMPLE_NAME", "is_syscall"], "rhs" : ["EXPRESSION", {
942
                      "args" : [["EXPRESSION", {
943
                        "args" : [["EXPRESSION", {
944
                          "args" : [["EXPRESSION", {
945
                            "args" : [["CONSTANT_VALUE", {
946
                              "value" : ["CST_LITERAL", "'1'"]}
947
                            ]]}
948
                          ]]}
949
                        ]]}
950
                      ]]}
951
                    ]}
952
                  ]]}
953
                , {
954
                  "when_cond" : [["EXPRESSION", {
955
                    "args" : [["EXPRESSION", {
956
                      "args" : [["CONSTANT_VALUE", {
957
                        "value" : ["CST_LITERAL", "\"010000\""]}
958
                      ]]}
959
                    ]]}
960
                  ]], "when_stmt" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
961
                    "lhs" : ["SIMPLE_NAME", "c_source"], "rhs" : ["EXPRESSION", {
962
                      "args" : [["EXPRESSION", {
963
                        "args" : [["EXPRESSION", {
964
                          "args" : [["EXPRESSION", {
965
                            "args" : [["CALL", ["SIMPLE_NAME", "C_FROM_MULT"]]]}
966
                          ]]}
967
                        ]]}
968
                      ]]}
969
                    ]}
970
                  ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
971
                    "lhs" : ["SIMPLE_NAME", "mult_function"], "rhs" : ["EXPRESSION", {
972
                      "args" : [["EXPRESSION", {
973
                        "args" : [["EXPRESSION", {
974
                          "args" : [["EXPRESSION", {
975
                            "args" : [["CALL", ["SIMPLE_NAME", "MULT_READ_HI"]]]}
976
                          ]]}
977
                        ]]}
978
                      ]]}
979
                    ]}
980
                  ]]}
981
                , {
982
                  "when_cond" : [["EXPRESSION", {
983
                    "args" : [["EXPRESSION", {
984
                      "args" : [["CONSTANT_VALUE", {
985
                        "value" : ["CST_LITERAL", "\"010001\""]}
986
                      ]]}
987
                    ]]}
988
                  ]], "when_stmt" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
989
                    "lhs" : ["SIMPLE_NAME", "mult_function"], "rhs" : ["EXPRESSION", {
990
                      "args" : [["EXPRESSION", {
991
                        "args" : [["EXPRESSION", {
992
                          "args" : [["EXPRESSION", {
993
                            "args" : [["CALL", ["SIMPLE_NAME", "MULT_WRITE_HI"]]]}
994
                          ]]}
995
                        ]]}
996
                      ]]}
997
                    ]}
998
                  ]]}
999
                , {
1000
                  "when_cond" : [["EXPRESSION", {
1001
                    "args" : [["EXPRESSION", {
1002
                      "args" : [["CONSTANT_VALUE", {
1003
                        "value" : ["CST_LITERAL", "\"010010\""]}
1004
                      ]]}
1005
                    ]]}
1006
                  ]], "when_stmt" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
1007
                    "lhs" : ["SIMPLE_NAME", "c_source"], "rhs" : ["EXPRESSION", {
1008
                      "args" : [["EXPRESSION", {
1009
                        "args" : [["EXPRESSION", {
1010
                          "args" : [["EXPRESSION", {
1011
                            "args" : [["CALL", ["SIMPLE_NAME", "C_FROM_MULT"]]]}
1012
                          ]]}
1013
                        ]]}
1014
                      ]]}
1015
                    ]}
1016
                  ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
1017
                    "lhs" : ["SIMPLE_NAME", "mult_function"], "rhs" : ["EXPRESSION", {
1018
                      "args" : [["EXPRESSION", {
1019
                        "args" : [["EXPRESSION", {
1020
                          "args" : [["EXPRESSION", {
1021
                            "args" : [["CALL", ["SIMPLE_NAME", "MULT_READ_LO"]]]}
1022
                          ]]}
1023
                        ]]}
1024
                      ]]}
1025
                    ]}
1026
                  ]]}
1027
                , {
1028
                  "when_cond" : [["EXPRESSION", {
1029
                    "args" : [["EXPRESSION", {
1030
                      "args" : [["CONSTANT_VALUE", {
1031
                        "value" : ["CST_LITERAL", "\"010011\""]}
1032
                      ]]}
1033
                    ]]}
1034
                  ]], "when_stmt" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
1035
                    "lhs" : ["SIMPLE_NAME", "mult_function"], "rhs" : ["EXPRESSION", {
1036
                      "args" : [["EXPRESSION", {
1037
                        "args" : [["EXPRESSION", {
1038
                          "args" : [["EXPRESSION", {
1039
                            "args" : [["CALL", ["SIMPLE_NAME", "MULT_WRITE_LO"]]]}
1040
                          ]]}
1041
                        ]]}
1042
                      ]]}
1043
                    ]}
1044
                  ]]}
1045
                , {
1046
                  "when_cond" : [["EXPRESSION", {
1047
                    "args" : [["EXPRESSION", {
1048
                      "args" : [["CONSTANT_VALUE", {
1049
                        "value" : ["CST_LITERAL", "\"011000\""]}
1050
                      ]]}
1051
                    ]]}
1052
                  ]], "when_stmt" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
1053
                    "lhs" : ["SIMPLE_NAME", "mult_function"], "rhs" : ["EXPRESSION", {
1054
                      "args" : [["EXPRESSION", {
1055
                        "args" : [["EXPRESSION", {
1056
                          "args" : [["EXPRESSION", {
1057
                            "args" : [["CALL", ["SIMPLE_NAME", "MULT_SIGNED_MULT"]]]}
1058
                          ]]}
1059
                        ]]}
1060
                      ]]}
1061
                    ]}
1062
                  ]]}
1063
                , {
1064
                  "when_cond" : [["EXPRESSION", {
1065
                    "args" : [["EXPRESSION", {
1066
                      "args" : [["CONSTANT_VALUE", {
1067
                        "value" : ["CST_LITERAL", "\"011001\""]}
1068
                      ]]}
1069
                    ]]}
1070
                  ]], "when_stmt" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
1071
                    "lhs" : ["SIMPLE_NAME", "mult_function"], "rhs" : ["EXPRESSION", {
1072
                      "args" : [["EXPRESSION", {
1073
                        "args" : [["EXPRESSION", {
1074
                          "args" : [["EXPRESSION", {
1075
                            "args" : [["CALL", ["SIMPLE_NAME", "MULT_MULT"]]]}
1076
                          ]]}
1077
                        ]]}
1078
                      ]]}
1079
                    ]}
1080
                  ]]}
1081
                , {
1082
                  "when_cond" : [["EXPRESSION", {
1083
                    "args" : [["EXPRESSION", {
1084
                      "args" : [["CONSTANT_VALUE", {
1085
                        "value" : ["CST_LITERAL", "\"011010\""]}
1086
                      ]]}
1087
                    ]]}
1088
                  ]], "when_stmt" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
1089
                    "lhs" : ["SIMPLE_NAME", "mult_function"], "rhs" : ["EXPRESSION", {
1090
                      "args" : [["EXPRESSION", {
1091
                        "args" : [["EXPRESSION", {
1092
                          "args" : [["EXPRESSION", {
1093
                            "args" : [["CALL", ["SIMPLE_NAME", "MULT_SIGNED_DIVIDE"]]]}
1094
                          ]]}
1095
                        ]]}
1096
                      ]]}
1097
                    ]}
1098
                  ]]}
1099
                , {
1100
                  "when_cond" : [["EXPRESSION", {
1101
                    "args" : [["EXPRESSION", {
1102
                      "args" : [["CONSTANT_VALUE", {
1103
                        "value" : ["CST_LITERAL", "\"011011\""]}
1104
                      ]]}
1105
                    ]]}
1106
                  ]], "when_stmt" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
1107
                    "lhs" : ["SIMPLE_NAME", "mult_function"], "rhs" : ["EXPRESSION", {
1108
                      "args" : [["EXPRESSION", {
1109
                        "args" : [["EXPRESSION", {
1110
                          "args" : [["EXPRESSION", {
1111
                            "args" : [["CALL", ["SIMPLE_NAME", "MULT_DIVIDE"]]]}
1112
                          ]]}
1113
                        ]]}
1114
                      ]]}
1115
                    ]}
1116
                  ]]}
1117
                , {
1118
                  "when_cond" : [["EXPRESSION", {
1119
                    "args" : [["EXPRESSION", {
1120
                      "args" : [["CONSTANT_VALUE", {
1121
                        "value" : ["CST_LITERAL", "\"100000\""]}
1122
                      ]]}
1123
                    ]]}
1124
                  ]], "when_stmt" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
1125
                    "lhs" : ["SIMPLE_NAME", "c_source"], "rhs" : ["EXPRESSION", {
1126
                      "args" : [["EXPRESSION", {
1127
                        "args" : [["EXPRESSION", {
1128
                          "args" : [["EXPRESSION", {
1129
                            "args" : [["CALL", ["SIMPLE_NAME", "C_FROM_ALU"]]]}
1130
                          ]]}
1131
                        ]]}
1132
                      ]]}
1133
                    ]}
1134
                  ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
1135
                    "lhs" : ["SIMPLE_NAME", "alu_function"], "rhs" : ["EXPRESSION", {
1136
                      "args" : [["EXPRESSION", {
1137
                        "args" : [["EXPRESSION", {
1138
                          "args" : [["EXPRESSION", {
1139
                            "args" : [["CALL", ["SIMPLE_NAME", "ALU_ADD"]]]}
1140
                          ]]}
1141
                        ]]}
1142
                      ]]}
1143
                    ]}
1144
                  ]]}
1145
                , {
1146
                  "when_cond" : [["EXPRESSION", {
1147
                    "args" : [["EXPRESSION", {
1148
                      "args" : [["CONSTANT_VALUE", {
1149
                        "value" : ["CST_LITERAL", "\"100001\""]}
1150
                      ]]}
1151
                    ]]}
1152
                  ]], "when_stmt" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
1153
                    "lhs" : ["SIMPLE_NAME", "c_source"], "rhs" : ["EXPRESSION", {
1154
                      "args" : [["EXPRESSION", {
1155
                        "args" : [["EXPRESSION", {
1156
                          "args" : [["EXPRESSION", {
1157
                            "args" : [["CALL", ["SIMPLE_NAME", "C_FROM_ALU"]]]}
1158
                          ]]}
1159
                        ]]}
1160
                      ]]}
1161
                    ]}
1162
                  ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
1163
                    "lhs" : ["SIMPLE_NAME", "alu_function"], "rhs" : ["EXPRESSION", {
1164
                      "args" : [["EXPRESSION", {
1165
                        "args" : [["EXPRESSION", {
1166
                          "args" : [["EXPRESSION", {
1167
                            "args" : [["CALL", ["SIMPLE_NAME", "ALU_ADD"]]]}
1168
                          ]]}
1169
                        ]]}
1170
                      ]]}
1171
                    ]}
1172
                  ]]}
1173
                , {
1174
                  "when_cond" : [["EXPRESSION", {
1175
                    "args" : [["EXPRESSION", {
1176
                      "args" : [["CONSTANT_VALUE", {
1177
                        "value" : ["CST_LITERAL", "\"100010\""]}
1178
                      ]]}
1179
                    ]]}
1180
                  ]], "when_stmt" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
1181
                    "lhs" : ["SIMPLE_NAME", "c_source"], "rhs" : ["EXPRESSION", {
1182
                      "args" : [["EXPRESSION", {
1183
                        "args" : [["EXPRESSION", {
1184
                          "args" : [["EXPRESSION", {
1185
                            "args" : [["CALL", ["SIMPLE_NAME", "C_FROM_ALU"]]]}
1186
                          ]]}
1187
                        ]]}
1188
                      ]]}
1189
                    ]}
1190
                  ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
1191
                    "lhs" : ["SIMPLE_NAME", "alu_function"], "rhs" : ["EXPRESSION", {
1192
                      "args" : [["EXPRESSION", {
1193
                        "args" : [["EXPRESSION", {
1194
                          "args" : [["EXPRESSION", {
1195
                            "args" : [["CALL", ["SIMPLE_NAME", "ALU_SUBTRACT"]]]}
1196
                          ]]}
1197
                        ]]}
1198
                      ]]}
1199
                    ]}
1200
                  ]]}
1201
                , {
1202
                  "when_cond" : [["EXPRESSION", {
1203
                    "args" : [["EXPRESSION", {
1204
                      "args" : [["CONSTANT_VALUE", {
1205
                        "value" : ["CST_LITERAL", "\"100011\""]}
1206
                      ]]}
1207
                    ]]}
1208
                  ]], "when_stmt" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
1209
                    "lhs" : ["SIMPLE_NAME", "c_source"], "rhs" : ["EXPRESSION", {
1210
                      "args" : [["EXPRESSION", {
1211
                        "args" : [["EXPRESSION", {
1212
                          "args" : [["EXPRESSION", {
1213
                            "args" : [["CALL", ["SIMPLE_NAME", "C_FROM_ALU"]]]}
1214
                          ]]}
1215
                        ]]}
1216
                      ]]}
1217
                    ]}
1218
                  ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
1219
                    "lhs" : ["SIMPLE_NAME", "alu_function"], "rhs" : ["EXPRESSION", {
1220
                      "args" : [["EXPRESSION", {
1221
                        "args" : [["EXPRESSION", {
1222
                          "args" : [["EXPRESSION", {
1223
                            "args" : [["CALL", ["SIMPLE_NAME", "ALU_SUBTRACT"]]]}
1224
                          ]]}
1225
                        ]]}
1226
                      ]]}
1227
                    ]}
1228
                  ]]}
1229
                , {
1230
                  "when_cond" : [["EXPRESSION", {
1231
                    "args" : [["EXPRESSION", {
1232
                      "args" : [["CONSTANT_VALUE", {
1233
                        "value" : ["CST_LITERAL", "\"100100\""]}
1234
                      ]]}
1235
                    ]]}
1236
                  ]], "when_stmt" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
1237
                    "lhs" : ["SIMPLE_NAME", "c_source"], "rhs" : ["EXPRESSION", {
1238
                      "args" : [["EXPRESSION", {
1239
                        "args" : [["EXPRESSION", {
1240
                          "args" : [["EXPRESSION", {
1241
                            "args" : [["CALL", ["SIMPLE_NAME", "C_FROM_ALU"]]]}
1242
                          ]]}
1243
                        ]]}
1244
                      ]]}
1245
                    ]}
1246
                  ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
1247
                    "lhs" : ["SIMPLE_NAME", "alu_function"], "rhs" : ["EXPRESSION", {
1248
                      "args" : [["EXPRESSION", {
1249
                        "args" : [["EXPRESSION", {
1250
                          "args" : [["EXPRESSION", {
1251
                            "args" : [["CALL", ["SIMPLE_NAME", "ALU_AND"]]]}
1252
                          ]]}
1253
                        ]]}
1254
                      ]]}
1255
                    ]}
1256
                  ]]}
1257
                , {
1258
                  "when_cond" : [["EXPRESSION", {
1259
                    "args" : [["EXPRESSION", {
1260
                      "args" : [["CONSTANT_VALUE", {
1261
                        "value" : ["CST_LITERAL", "\"100101\""]}
1262
                      ]]}
1263
                    ]]}
1264
                  ]], "when_stmt" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
1265
                    "lhs" : ["SIMPLE_NAME", "c_source"], "rhs" : ["EXPRESSION", {
1266
                      "args" : [["EXPRESSION", {
1267
                        "args" : [["EXPRESSION", {
1268
                          "args" : [["EXPRESSION", {
1269
                            "args" : [["CALL", ["SIMPLE_NAME", "C_FROM_ALU"]]]}
1270
                          ]]}
1271
                        ]]}
1272
                      ]]}
1273
                    ]}
1274
                  ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
1275
                    "lhs" : ["SIMPLE_NAME", "alu_function"], "rhs" : ["EXPRESSION", {
1276
                      "args" : [["EXPRESSION", {
1277
                        "args" : [["EXPRESSION", {
1278
                          "args" : [["EXPRESSION", {
1279
                            "args" : [["CALL", ["SIMPLE_NAME", "ALU_OR"]]]}
1280
                          ]]}
1281
                        ]]}
1282
                      ]]}
1283
                    ]}
1284
                  ]]}
1285
                , {
1286
                  "when_cond" : [["EXPRESSION", {
1287
                    "args" : [["EXPRESSION", {
1288
                      "args" : [["CONSTANT_VALUE", {
1289
                        "value" : ["CST_LITERAL", "\"100110\""]}
1290
                      ]]}
1291
                    ]]}
1292
                  ]], "when_stmt" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
1293
                    "lhs" : ["SIMPLE_NAME", "c_source"], "rhs" : ["EXPRESSION", {
1294
                      "args" : [["EXPRESSION", {
1295
                        "args" : [["EXPRESSION", {
1296
                          "args" : [["EXPRESSION", {
1297
                            "args" : [["CALL", ["SIMPLE_NAME", "C_FROM_ALU"]]]}
1298
                          ]]}
1299
                        ]]}
1300
                      ]]}
1301
                    ]}
1302
                  ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
1303
                    "lhs" : ["SIMPLE_NAME", "alu_function"], "rhs" : ["EXPRESSION", {
1304
                      "args" : [["EXPRESSION", {
1305
                        "args" : [["EXPRESSION", {
1306
                          "args" : [["EXPRESSION", {
1307
                            "args" : [["CALL", ["SIMPLE_NAME", "ALU_XOR"]]]}
1308
                          ]]}
1309
                        ]]}
1310
                      ]]}
1311
                    ]}
1312
                  ]]}
1313
                , {
1314
                  "when_cond" : [["EXPRESSION", {
1315
                    "args" : [["EXPRESSION", {
1316
                      "args" : [["CONSTANT_VALUE", {
1317
                        "value" : ["CST_LITERAL", "\"100111\""]}
1318
                      ]]}
1319
                    ]]}
1320
                  ]], "when_stmt" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
1321
                    "lhs" : ["SIMPLE_NAME", "c_source"], "rhs" : ["EXPRESSION", {
1322
                      "args" : [["EXPRESSION", {
1323
                        "args" : [["EXPRESSION", {
1324
                          "args" : [["EXPRESSION", {
1325
                            "args" : [["CALL", ["SIMPLE_NAME", "C_FROM_ALU"]]]}
1326
                          ]]}
1327
                        ]]}
1328
                      ]]}
1329
                    ]}
1330
                  ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
1331
                    "lhs" : ["SIMPLE_NAME", "alu_function"], "rhs" : ["EXPRESSION", {
1332
                      "args" : [["EXPRESSION", {
1333
                        "args" : [["EXPRESSION", {
1334
                          "args" : [["EXPRESSION", {
1335
                            "args" : [["CALL", ["SIMPLE_NAME", "ALU_NOR"]]]}
1336
                          ]]}
1337
                        ]]}
1338
                      ]]}
1339
                    ]}
1340
                  ]]}
1341
                , {
1342
                  "when_cond" : [["EXPRESSION", {
1343
                    "args" : [["EXPRESSION", {
1344
                      "args" : [["CONSTANT_VALUE", {
1345
                        "value" : ["CST_LITERAL", "\"101010\""]}
1346
                      ]]}
1347
                    ]]}
1348
                  ]], "when_stmt" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
1349
                    "lhs" : ["SIMPLE_NAME", "c_source"], "rhs" : ["EXPRESSION", {
1350
                      "args" : [["EXPRESSION", {
1351
                        "args" : [["EXPRESSION", {
1352
                          "args" : [["EXPRESSION", {
1353
                            "args" : [["CALL", ["SIMPLE_NAME", "C_FROM_ALU"]]]}
1354
                          ]]}
1355
                        ]]}
1356
                      ]]}
1357
                    ]}
1358
                  ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
1359
                    "lhs" : ["SIMPLE_NAME", "alu_function"], "rhs" : ["EXPRESSION", {
1360
                      "args" : [["EXPRESSION", {
1361
                        "args" : [["EXPRESSION", {
1362
                          "args" : [["EXPRESSION", {
1363
                            "args" : [["CALL", ["SIMPLE_NAME", "ALU_LESS_THAN_SIGNED"]]]}
1364
                          ]]}
1365
                        ]]}
1366
                      ]]}
1367
                    ]}
1368
                  ]]}
1369
                , {
1370
                  "when_cond" : [["EXPRESSION", {
1371
                    "args" : [["EXPRESSION", {
1372
                      "args" : [["CONSTANT_VALUE", {
1373
                        "value" : ["CST_LITERAL", "\"101011\""]}
1374
                      ]]}
1375
                    ]]}
1376
                  ]], "when_stmt" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
1377
                    "lhs" : ["SIMPLE_NAME", "c_source"], "rhs" : ["EXPRESSION", {
1378
                      "args" : [["EXPRESSION", {
1379
                        "args" : [["EXPRESSION", {
1380
                          "args" : [["EXPRESSION", {
1381
                            "args" : [["CALL", ["SIMPLE_NAME", "C_FROM_ALU"]]]}
1382
                          ]]}
1383
                        ]]}
1384
                      ]]}
1385
                    ]}
1386
                  ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
1387
                    "lhs" : ["SIMPLE_NAME", "alu_function"], "rhs" : ["EXPRESSION", {
1388
                      "args" : [["EXPRESSION", {
1389
                        "args" : [["EXPRESSION", {
1390
                          "args" : [["EXPRESSION", {
1391
                            "args" : [["CALL", ["SIMPLE_NAME", "ALU_LESS_THAN"]]]}
1392
                          ]]}
1393
                        ]]}
1394
                      ]]}
1395
                    ]}
1396
                  ]]}
1397
                , {
1398
                  "when_cond" : [["EXPRESSION", {
1399
                    "args" : [["EXPRESSION", {
1400
                      "args" : [["CONSTANT_VALUE", {
1401
                        "value" : ["CST_LITERAL", "\"101101\""]}
1402
                      ]]}
1403
                    ]]}
1404
                  ]], "when_stmt" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
1405
                    "lhs" : ["SIMPLE_NAME", "c_source"], "rhs" : ["EXPRESSION", {
1406
                      "args" : [["EXPRESSION", {
1407
                        "args" : [["EXPRESSION", {
1408
                          "args" : [["EXPRESSION", {
1409
                            "args" : [["CALL", ["SIMPLE_NAME", "C_FROM_ALU"]]]}
1410
                          ]]}
1411
                        ]]}
1412
                      ]]}
1413
                    ]}
1414
                  ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
1415
                    "lhs" : ["SIMPLE_NAME", "alu_function"], "rhs" : ["EXPRESSION", {
1416
                      "args" : [["EXPRESSION", {
1417
                        "args" : [["EXPRESSION", {
1418
                          "args" : [["EXPRESSION", {
1419
                            "args" : [["CALL", ["SIMPLE_NAME", "ALU_ADD"]]]}
1420
                          ]]}
1421
                        ]]}
1422
                      ]]}
1423
                    ]}
1424
                  ]]}
1425
                , {
1426
                  "when_cond" : [["OTHERS"]], "when_stmt" : []}
1427
                ]}
1428
              ]]}
1429
            , {
1430
              "when_cond" : [["EXPRESSION", {
1431
                "args" : [["EXPRESSION", {
1432
                  "args" : [["CONSTANT_VALUE", {
1433
                    "value" : ["CST_LITERAL", "\"000001\""]}
1434
                  ]]}
1435
                ]]}
1436
              ]], "when_stmt" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
1437
                "lhs" : ["SIMPLE_NAME", "rt"], "rhs" : ["EXPRESSION", {
1438
                  "args" : [["EXPRESSION", {
1439
                    "args" : [["EXPRESSION", {
1440
                      "args" : [["EXPRESSION", {
1441
                        "args" : [["CONSTANT_VALUE", {
1442
                          "value" : ["CST_LITERAL", "\"000000\""]}
1443
                        ]]}
1444
                      ]]}
1445
                    ]]}
1446
                  ]]}
1447
                ]}
1448
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
1449
                "lhs" : ["SIMPLE_NAME", "rd"], "rhs" : ["EXPRESSION", {
1450
                  "args" : [["EXPRESSION", {
1451
                    "args" : [["EXPRESSION", {
1452
                      "args" : [["EXPRESSION", {
1453
                        "args" : [["CONSTANT_VALUE", {
1454
                          "value" : ["CST_LITERAL", "\"011111\""]}
1455
                        ]]}
1456
                      ]]}
1457
                    ]]}
1458
                  ]]}
1459
                ]}
1460
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
1461
                "lhs" : ["SIMPLE_NAME", "a_source"], "rhs" : ["EXPRESSION", {
1462
                  "args" : [["EXPRESSION", {
1463
                    "args" : [["EXPRESSION", {
1464
                      "args" : [["EXPRESSION", {
1465
                        "args" : [["CALL", ["SIMPLE_NAME", "A_FROM_PC"]]]}
1466
                      ]]}
1467
                    ]]}
1468
                  ]]}
1469
                ]}
1470
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
1471
                "lhs" : ["SIMPLE_NAME", "b_source"], "rhs" : ["EXPRESSION", {
1472
                  "args" : [["EXPRESSION", {
1473
                    "args" : [["EXPRESSION", {
1474
                      "args" : [["EXPRESSION", {
1475
                        "args" : [["CALL", ["SIMPLE_NAME", "B_FROM_IMMX4"]]]}
1476
                      ]]}
1477
                    ]]}
1478
                  ]]}
1479
                ]}
1480
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
1481
                "lhs" : ["SIMPLE_NAME", "alu_function"], "rhs" : ["EXPRESSION", {
1482
                  "args" : [["EXPRESSION", {
1483
                    "args" : [["EXPRESSION", {
1484
                      "args" : [["EXPRESSION", {
1485
                        "args" : [["CALL", ["SIMPLE_NAME", "ALU_ADD"]]]}
1486
                      ]]}
1487
                    ]]}
1488
                  ]]}
1489
                ]}
1490
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
1491
                "lhs" : ["SIMPLE_NAME", "pc_source"], "rhs" : ["EXPRESSION", {
1492
                  "args" : [["EXPRESSION", {
1493
                    "args" : [["EXPRESSION", {
1494
                      "args" : [["EXPRESSION", {
1495
                        "args" : [["CALL", ["SIMPLE_NAME", "FROM_BRANCH"]]]}
1496
                      ]]}
1497
                    ]]}
1498
                  ]]}
1499
                ]}
1500
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
1501
                "lhs" : ["SIMPLE_NAME", "branch_function"], "rhs" : ["EXPRESSION", {
1502
                  "args" : [["EXPRESSION", {
1503
                    "args" : [["EXPRESSION", {
1504
                      "args" : [["EXPRESSION", {
1505
                        "args" : [["CALL", ["SIMPLE_NAME", "BRANCH_GTZ"]]]}
1506
                      ]]}
1507
                    ]]}
1508
                  ]]}
1509
                ]}
1510
              ], ["CASE_STATEMENT_TREE", {
1511
                "guard" : ["EXPRESSION", {
1512
                  "args" : [["EXPRESSION", {
1513
                    "args" : [["EXPRESSION", {
1514
                      "args" : [["EXPRESSION", {
1515
                        "args" : [["CALL", ["SIMPLE_NAME", "rtx"]]]}
1516
                      ]]}
1517
                    ]]}
1518
                  ]]}
1519
                ], "branches" : [{
1520
                  "when_cond" : [["EXPRESSION", {
1521
                    "args" : [["EXPRESSION", {
1522
                      "args" : [["CONSTANT_VALUE", {
1523
                        "value" : ["CST_LITERAL", "\"10000\""]}
1524
                      ]]}
1525
                    ]]}
1526
                  ]], "when_stmt" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
1527
                    "lhs" : ["SIMPLE_NAME", "c_source"], "rhs" : ["EXPRESSION", {
1528
                      "args" : [["EXPRESSION", {
1529
                        "args" : [["EXPRESSION", {
1530
                          "args" : [["EXPRESSION", {
1531
                            "args" : [["CALL", ["SIMPLE_NAME", "C_FROM_PC_PLUS4"]]]}
1532
                          ]]}
1533
                        ]]}
1534
                      ]]}
1535
                    ]}
1536
                  ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
1537
                    "lhs" : ["SIMPLE_NAME", "branch_function"], "rhs" : ["EXPRESSION", {
1538
                      "args" : [["EXPRESSION", {
1539
                        "args" : [["EXPRESSION", {
1540
                          "args" : [["EXPRESSION", {
1541
                            "args" : [["CALL", ["SIMPLE_NAME", "BRANCH_LTZ"]]]}
1542
                          ]]}
1543
                        ]]}
1544
                      ]]}
1545
                    ]}
1546
                  ]]}
1547
                , {
1548
                  "when_cond" : [["EXPRESSION", {
1549
                    "args" : [["EXPRESSION", {
1550
                      "args" : [["CONSTANT_VALUE", {
1551
                        "value" : ["CST_LITERAL", "\"00000\""]}
1552
                      ]]}
1553
                    ]]}
1554
                  ]], "when_stmt" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
1555
                    "lhs" : ["SIMPLE_NAME", "branch_function"], "rhs" : ["EXPRESSION", {
1556
                      "args" : [["EXPRESSION", {
1557
                        "args" : [["EXPRESSION", {
1558
                          "args" : [["EXPRESSION", {
1559
                            "args" : [["CALL", ["SIMPLE_NAME", "BRANCH_LTZ"]]]}
1560
                          ]]}
1561
                        ]]}
1562
                      ]]}
1563
                    ]}
1564
                  ]]}
1565
                , {
1566
                  "when_cond" : [["EXPRESSION", {
1567
                    "args" : [["EXPRESSION", {
1568
                      "args" : [["CONSTANT_VALUE", {
1569
                        "value" : ["CST_LITERAL", "\"10001\""]}
1570
                      ]]}
1571
                    ]]}
1572
                  ]], "when_stmt" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
1573
                    "lhs" : ["SIMPLE_NAME", "c_source"], "rhs" : ["EXPRESSION", {
1574
                      "args" : [["EXPRESSION", {
1575
                        "args" : [["EXPRESSION", {
1576
                          "args" : [["EXPRESSION", {
1577
                            "args" : [["CALL", ["SIMPLE_NAME", "C_FROM_PC_PLUS4"]]]}
1578
                          ]]}
1579
                        ]]}
1580
                      ]]}
1581
                    ]}
1582
                  ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
1583
                    "lhs" : ["SIMPLE_NAME", "branch_function"], "rhs" : ["EXPRESSION", {
1584
                      "args" : [["EXPRESSION", {
1585
                        "args" : [["EXPRESSION", {
1586
                          "args" : [["EXPRESSION", {
1587
                            "args" : [["CALL", ["SIMPLE_NAME", "BRANCH_GEZ"]]]}
1588
                          ]]}
1589
                        ]]}
1590
                      ]]}
1591
                    ]}
1592
                  ]]}
1593
                , {
1594
                  "when_cond" : [["EXPRESSION", {
1595
                    "args" : [["EXPRESSION", {
1596
                      "args" : [["CONSTANT_VALUE", {
1597
                        "value" : ["CST_LITERAL", "\"00001\""]}
1598
                      ]]}
1599
                    ]]}
1600
                  ]], "when_stmt" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
1601
                    "lhs" : ["SIMPLE_NAME", "branch_function"], "rhs" : ["EXPRESSION", {
1602
                      "args" : [["EXPRESSION", {
1603
                        "args" : [["EXPRESSION", {
1604
                          "args" : [["EXPRESSION", {
1605
                            "args" : [["CALL", ["SIMPLE_NAME", "BRANCH_GEZ"]]]}
1606
                          ]]}
1607
                        ]]}
1608
                      ]]}
1609
                    ]}
1610
                  ]]}
1611
                , {
1612
                  "when_cond" : [["OTHERS"]], "when_stmt" : []}
1613
                ]}
1614
              ]]}
1615
            , {
1616
              "when_cond" : [["EXPRESSION", {
1617
                "args" : [["EXPRESSION", {
1618
                  "args" : [["CONSTANT_VALUE", {
1619
                    "value" : ["CST_LITERAL", "\"000011\""]}
1620
                  ]]}
1621
                ]]}
1622
              ]], "when_stmt" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
1623
                "lhs" : ["SIMPLE_NAME", "c_source"], "rhs" : ["EXPRESSION", {
1624
                  "args" : [["EXPRESSION", {
1625
                    "args" : [["EXPRESSION", {
1626
                      "args" : [["EXPRESSION", {
1627
                        "args" : [["CALL", ["SIMPLE_NAME", "C_FROM_PC_PLUS4"]]]}
1628
                      ]]}
1629
                    ]]}
1630
                  ]]}
1631
                ]}
1632
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
1633
                "lhs" : ["SIMPLE_NAME", "rd"], "rhs" : ["EXPRESSION", {
1634
                  "args" : [["EXPRESSION", {
1635
                    "args" : [["EXPRESSION", {
1636
                      "args" : [["EXPRESSION", {
1637
                        "args" : [["CONSTANT_VALUE", {
1638
                          "value" : ["CST_LITERAL", "\"011111\""]}
1639
                        ]]}
1640
                      ]]}
1641
                    ]]}
1642
                  ]]}
1643
                ]}
1644
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
1645
                "lhs" : ["SIMPLE_NAME", "pc_source"], "rhs" : ["EXPRESSION", {
1646
                  "args" : [["EXPRESSION", {
1647
                    "args" : [["EXPRESSION", {
1648
                      "args" : [["EXPRESSION", {
1649
                        "args" : [["CALL", ["SIMPLE_NAME", "FROM_OPCODE25_0"]]]}
1650
                      ]]}
1651
                    ]]}
1652
                  ]]}
1653
                ]}
1654
              ]]}
1655
            , {
1656
              "when_cond" : [["EXPRESSION", {
1657
                "args" : [["EXPRESSION", {
1658
                  "args" : [["CONSTANT_VALUE", {
1659
                    "value" : ["CST_LITERAL", "\"000010\""]}
1660
                  ]]}
1661
                ]]}
1662
              ]], "when_stmt" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
1663
                "lhs" : ["SIMPLE_NAME", "pc_source"], "rhs" : ["EXPRESSION", {
1664
                  "args" : [["EXPRESSION", {
1665
                    "args" : [["EXPRESSION", {
1666
                      "args" : [["EXPRESSION", {
1667
                        "args" : [["CALL", ["SIMPLE_NAME", "FROM_OPCODE25_0"]]]}
1668
                      ]]}
1669
                    ]]}
1670
                  ]]}
1671
                ]}
1672
              ]]}
1673
            , {
1674
              "when_cond" : [["EXPRESSION", {
1675
                "args" : [["EXPRESSION", {
1676
                  "args" : [["CONSTANT_VALUE", {
1677
                    "value" : ["CST_LITERAL", "\"000100\""]}
1678
                  ]]}
1679
                ]]}
1680
              ]], "when_stmt" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
1681
                "lhs" : ["SIMPLE_NAME", "a_source"], "rhs" : ["EXPRESSION", {
1682
                  "args" : [["EXPRESSION", {
1683
                    "args" : [["EXPRESSION", {
1684
                      "args" : [["EXPRESSION", {
1685
                        "args" : [["CALL", ["SIMPLE_NAME", "A_FROM_PC"]]]}
1686
                      ]]}
1687
                    ]]}
1688
                  ]]}
1689
                ]}
1690
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
1691
                "lhs" : ["SIMPLE_NAME", "b_source"], "rhs" : ["EXPRESSION", {
1692
                  "args" : [["EXPRESSION", {
1693
                    "args" : [["EXPRESSION", {
1694
                      "args" : [["EXPRESSION", {
1695
                        "args" : [["CALL", ["SIMPLE_NAME", "B_FROM_IMMX4"]]]}
1696
                      ]]}
1697
                    ]]}
1698
                  ]]}
1699
                ]}
1700
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
1701
                "lhs" : ["SIMPLE_NAME", "alu_function"], "rhs" : ["EXPRESSION", {
1702
                  "args" : [["EXPRESSION", {
1703
                    "args" : [["EXPRESSION", {
1704
                      "args" : [["EXPRESSION", {
1705
                        "args" : [["CALL", ["SIMPLE_NAME", "ALU_ADD"]]]}
1706
                      ]]}
1707
                    ]]}
1708
                  ]]}
1709
                ]}
1710
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
1711
                "lhs" : ["SIMPLE_NAME", "pc_source"], "rhs" : ["EXPRESSION", {
1712
                  "args" : [["EXPRESSION", {
1713
                    "args" : [["EXPRESSION", {
1714
                      "args" : [["EXPRESSION", {
1715
                        "args" : [["CALL", ["SIMPLE_NAME", "FROM_BRANCH"]]]}
1716
                      ]]}
1717
                    ]]}
1718
                  ]]}
1719
                ]}
1720
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
1721
                "lhs" : ["SIMPLE_NAME", "branch_function"], "rhs" : ["EXPRESSION", {
1722
                  "args" : [["EXPRESSION", {
1723
                    "args" : [["EXPRESSION", {
1724
                      "args" : [["EXPRESSION", {
1725
                        "args" : [["CALL", ["SIMPLE_NAME", "BRANCH_EQ"]]]}
1726
                      ]]}
1727
                    ]]}
1728
                  ]]}
1729
                ]}
1730
              ]]}
1731
            , {
1732
              "when_cond" : [["EXPRESSION", {
1733
                "args" : [["EXPRESSION", {
1734
                  "args" : [["CONSTANT_VALUE", {
1735
                    "value" : ["CST_LITERAL", "\"000101\""]}
1736
                  ]]}
1737
                ]]}
1738
              ]], "when_stmt" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
1739
                "lhs" : ["SIMPLE_NAME", "a_source"], "rhs" : ["EXPRESSION", {
1740
                  "args" : [["EXPRESSION", {
1741
                    "args" : [["EXPRESSION", {
1742
                      "args" : [["EXPRESSION", {
1743
                        "args" : [["CALL", ["SIMPLE_NAME", "A_FROM_PC"]]]}
1744
                      ]]}
1745
                    ]]}
1746
                  ]]}
1747
                ]}
1748
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
1749
                "lhs" : ["SIMPLE_NAME", "b_source"], "rhs" : ["EXPRESSION", {
1750
                  "args" : [["EXPRESSION", {
1751
                    "args" : [["EXPRESSION", {
1752
                      "args" : [["EXPRESSION", {
1753
                        "args" : [["CALL", ["SIMPLE_NAME", "B_FROM_IMMX4"]]]}
1754
                      ]]}
1755
                    ]]}
1756
                  ]]}
1757
                ]}
1758
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
1759
                "lhs" : ["SIMPLE_NAME", "alu_function"], "rhs" : ["EXPRESSION", {
1760
                  "args" : [["EXPRESSION", {
1761
                    "args" : [["EXPRESSION", {
1762
                      "args" : [["EXPRESSION", {
1763
                        "args" : [["CALL", ["SIMPLE_NAME", "ALU_ADD"]]]}
1764
                      ]]}
1765
                    ]]}
1766
                  ]]}
1767
                ]}
1768
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
1769
                "lhs" : ["SIMPLE_NAME", "pc_source"], "rhs" : ["EXPRESSION", {
1770
                  "args" : [["EXPRESSION", {
1771
                    "args" : [["EXPRESSION", {
1772
                      "args" : [["EXPRESSION", {
1773
                        "args" : [["CALL", ["SIMPLE_NAME", "FROM_BRANCH"]]]}
1774
                      ]]}
1775
                    ]]}
1776
                  ]]}
1777
                ]}
1778
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
1779
                "lhs" : ["SIMPLE_NAME", "branch_function"], "rhs" : ["EXPRESSION", {
1780
                  "args" : [["EXPRESSION", {
1781
                    "args" : [["EXPRESSION", {
1782
                      "args" : [["EXPRESSION", {
1783
                        "args" : [["CALL", ["SIMPLE_NAME", "BRANCH_NE"]]]}
1784
                      ]]}
1785
                    ]]}
1786
                  ]]}
1787
                ]}
1788
              ]]}
1789
            , {
1790
              "when_cond" : [["EXPRESSION", {
1791
                "args" : [["EXPRESSION", {
1792
                  "args" : [["CONSTANT_VALUE", {
1793
                    "value" : ["CST_LITERAL", "\"000110\""]}
1794
                  ]]}
1795
                ]]}
1796
              ]], "when_stmt" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
1797
                "lhs" : ["SIMPLE_NAME", "a_source"], "rhs" : ["EXPRESSION", {
1798
                  "args" : [["EXPRESSION", {
1799
                    "args" : [["EXPRESSION", {
1800
                      "args" : [["EXPRESSION", {
1801
                        "args" : [["CALL", ["SIMPLE_NAME", "A_FROM_PC"]]]}
1802
                      ]]}
1803
                    ]]}
1804
                  ]]}
1805
                ]}
1806
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
1807
                "lhs" : ["SIMPLE_NAME", "b_source"], "rhs" : ["EXPRESSION", {
1808
                  "args" : [["EXPRESSION", {
1809
                    "args" : [["EXPRESSION", {
1810
                      "args" : [["EXPRESSION", {
1811
                        "args" : [["CALL", ["SIMPLE_NAME", "b_FROM_IMMX4"]]]}
1812
                      ]]}
1813
                    ]]}
1814
                  ]]}
1815
                ]}
1816
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
1817
                "lhs" : ["SIMPLE_NAME", "alu_function"], "rhs" : ["EXPRESSION", {
1818
                  "args" : [["EXPRESSION", {
1819
                    "args" : [["EXPRESSION", {
1820
                      "args" : [["EXPRESSION", {
1821
                        "args" : [["CALL", ["SIMPLE_NAME", "ALU_ADD"]]]}
1822
                      ]]}
1823
                    ]]}
1824
                  ]]}
1825
                ]}
1826
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
1827
                "lhs" : ["SIMPLE_NAME", "pc_source"], "rhs" : ["EXPRESSION", {
1828
                  "args" : [["EXPRESSION", {
1829
                    "args" : [["EXPRESSION", {
1830
                      "args" : [["EXPRESSION", {
1831
                        "args" : [["CALL", ["SIMPLE_NAME", "FROM_BRANCH"]]]}
1832
                      ]]}
1833
                    ]]}
1834
                  ]]}
1835
                ]}
1836
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
1837
                "lhs" : ["SIMPLE_NAME", "branch_function"], "rhs" : ["EXPRESSION", {
1838
                  "args" : [["EXPRESSION", {
1839
                    "args" : [["EXPRESSION", {
1840
                      "args" : [["EXPRESSION", {
1841
                        "args" : [["CALL", ["SIMPLE_NAME", "BRANCH_LEZ"]]]}
1842
                      ]]}
1843
                    ]]}
1844
                  ]]}
1845
                ]}
1846
              ]]}
1847
            , {
1848
              "when_cond" : [["EXPRESSION", {
1849
                "args" : [["EXPRESSION", {
1850
                  "args" : [["CONSTANT_VALUE", {
1851
                    "value" : ["CST_LITERAL", "\"000111\""]}
1852
                  ]]}
1853
                ]]}
1854
              ]], "when_stmt" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
1855
                "lhs" : ["SIMPLE_NAME", "a_source"], "rhs" : ["EXPRESSION", {
1856
                  "args" : [["EXPRESSION", {
1857
                    "args" : [["EXPRESSION", {
1858
                      "args" : [["EXPRESSION", {
1859
                        "args" : [["CALL", ["SIMPLE_NAME", "A_FROM_PC"]]]}
1860
                      ]]}
1861
                    ]]}
1862
                  ]]}
1863
                ]}
1864
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
1865
                "lhs" : ["SIMPLE_NAME", "b_source"], "rhs" : ["EXPRESSION", {
1866
                  "args" : [["EXPRESSION", {
1867
                    "args" : [["EXPRESSION", {
1868
                      "args" : [["EXPRESSION", {
1869
                        "args" : [["CALL", ["SIMPLE_NAME", "B_FROM_IMMX4"]]]}
1870
                      ]]}
1871
                    ]]}
1872
                  ]]}
1873
                ]}
1874
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
1875
                "lhs" : ["SIMPLE_NAME", "alu_function"], "rhs" : ["EXPRESSION", {
1876
                  "args" : [["EXPRESSION", {
1877
                    "args" : [["EXPRESSION", {
1878
                      "args" : [["EXPRESSION", {
1879
                        "args" : [["CALL", ["SIMPLE_NAME", "ALU_ADD"]]]}
1880
                      ]]}
1881
                    ]]}
1882
                  ]]}
1883
                ]}
1884
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
1885
                "lhs" : ["SIMPLE_NAME", "pc_source"], "rhs" : ["EXPRESSION", {
1886
                  "args" : [["EXPRESSION", {
1887
                    "args" : [["EXPRESSION", {
1888
                      "args" : [["EXPRESSION", {
1889
                        "args" : [["CALL", ["SIMPLE_NAME", "FROM_BRANCH"]]]}
1890
                      ]]}
1891
                    ]]}
1892
                  ]]}
1893
                ]}
1894
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
1895
                "lhs" : ["SIMPLE_NAME", "branch_function"], "rhs" : ["EXPRESSION", {
1896
                  "args" : [["EXPRESSION", {
1897
                    "args" : [["EXPRESSION", {
1898
                      "args" : [["EXPRESSION", {
1899
                        "args" : [["CALL", ["SIMPLE_NAME", "BRANCH_GTZ"]]]}
1900
                      ]]}
1901
                    ]]}
1902
                  ]]}
1903
                ]}
1904
              ]]}
1905
            , {
1906
              "when_cond" : [["EXPRESSION", {
1907
                "args" : [["EXPRESSION", {
1908
                  "args" : [["CONSTANT_VALUE", {
1909
                    "value" : ["CST_LITERAL", "\"001000\""]}
1910
                  ]]}
1911
                ]]}
1912
              ]], "when_stmt" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
1913
                "lhs" : ["SIMPLE_NAME", "b_source"], "rhs" : ["EXPRESSION", {
1914
                  "args" : [["EXPRESSION", {
1915
                    "args" : [["EXPRESSION", {
1916
                      "args" : [["EXPRESSION", {
1917
                        "args" : [["CALL", ["SIMPLE_NAME", "B_FROM_SIGNED_IMM"]]]}
1918
                      ]]}
1919
                    ]]}
1920
                  ]]}
1921
                ]}
1922
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
1923
                "lhs" : ["SIMPLE_NAME", "c_source"], "rhs" : ["EXPRESSION", {
1924
                  "args" : [["EXPRESSION", {
1925
                    "args" : [["EXPRESSION", {
1926
                      "args" : [["EXPRESSION", {
1927
                        "args" : [["CALL", ["SIMPLE_NAME", "C_FROM_ALU"]]]}
1928
                      ]]}
1929
                    ]]}
1930
                  ]]}
1931
                ]}
1932
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
1933
                "lhs" : ["SIMPLE_NAME", "rd"], "rhs" : ["EXPRESSION", {
1934
                  "args" : [["EXPRESSION", {
1935
                    "args" : [["EXPRESSION", {
1936
                      "args" : [["EXPRESSION", {
1937
                        "args" : [["CALL", ["SIMPLE_NAME", "rt"]]]}
1938
                      ]]}
1939
                    ]]}
1940
                  ]]}
1941
                ]}
1942
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
1943
                "lhs" : ["SIMPLE_NAME", "alu_function"], "rhs" : ["EXPRESSION", {
1944
                  "args" : [["EXPRESSION", {
1945
                    "args" : [["EXPRESSION", {
1946
                      "args" : [["EXPRESSION", {
1947
                        "args" : [["CALL", ["SIMPLE_NAME", "ALU_ADD"]]]}
1948
                      ]]}
1949
                    ]]}
1950
                  ]]}
1951
                ]}
1952
              ]]}
1953
            , {
1954
              "when_cond" : [["EXPRESSION", {
1955
                "args" : [["EXPRESSION", {
1956
                  "args" : [["CONSTANT_VALUE", {
1957
                    "value" : ["CST_LITERAL", "\"001001\""]}
1958
                  ]]}
1959
                ]]}
1960
              ]], "when_stmt" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
1961
                "lhs" : ["SIMPLE_NAME", "b_source"], "rhs" : ["EXPRESSION", {
1962
                  "args" : [["EXPRESSION", {
1963
                    "args" : [["EXPRESSION", {
1964
                      "args" : [["EXPRESSION", {
1965
                        "args" : [["CALL", ["SIMPLE_NAME", "B_FROM_SIGNED_IMM"]]]}
1966
                      ]]}
1967
                    ]]}
1968
                  ]]}
1969
                ]}
1970
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
1971
                "lhs" : ["SIMPLE_NAME", "c_source"], "rhs" : ["EXPRESSION", {
1972
                  "args" : [["EXPRESSION", {
1973
                    "args" : [["EXPRESSION", {
1974
                      "args" : [["EXPRESSION", {
1975
                        "args" : [["CALL", ["SIMPLE_NAME", "C_FROM_ALU"]]]}
1976
                      ]]}
1977
                    ]]}
1978
                  ]]}
1979
                ]}
1980
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
1981
                "lhs" : ["SIMPLE_NAME", "rd"], "rhs" : ["EXPRESSION", {
1982
                  "args" : [["EXPRESSION", {
1983
                    "args" : [["EXPRESSION", {
1984
                      "args" : [["EXPRESSION", {
1985
                        "args" : [["CALL", ["SIMPLE_NAME", "rt"]]]}
1986
                      ]]}
1987
                    ]]}
1988
                  ]]}
1989
                ]}
1990
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
1991
                "lhs" : ["SIMPLE_NAME", "alu_function"], "rhs" : ["EXPRESSION", {
1992
                  "args" : [["EXPRESSION", {
1993
                    "args" : [["EXPRESSION", {
1994
                      "args" : [["EXPRESSION", {
1995
                        "args" : [["CALL", ["SIMPLE_NAME", "ALU_ADD"]]]}
1996
                      ]]}
1997
                    ]]}
1998
                  ]]}
1999
                ]}
2000
              ]]}
2001
            , {
2002
              "when_cond" : [["EXPRESSION", {
2003
                "args" : [["EXPRESSION", {
2004
                  "args" : [["CONSTANT_VALUE", {
2005
                    "value" : ["CST_LITERAL", "\"001010\""]}
2006
                  ]]}
2007
                ]]}
2008
              ]], "when_stmt" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
2009
                "lhs" : ["SIMPLE_NAME", "b_source"], "rhs" : ["EXPRESSION", {
2010
                  "args" : [["EXPRESSION", {
2011
                    "args" : [["EXPRESSION", {
2012
                      "args" : [["EXPRESSION", {
2013
                        "args" : [["CALL", ["SIMPLE_NAME", "B_FROM_SIGNED_IMM"]]]}
2014
                      ]]}
2015
                    ]]}
2016
                  ]]}
2017
                ]}
2018
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
2019
                "lhs" : ["SIMPLE_NAME", "c_source"], "rhs" : ["EXPRESSION", {
2020
                  "args" : [["EXPRESSION", {
2021
                    "args" : [["EXPRESSION", {
2022
                      "args" : [["EXPRESSION", {
2023
                        "args" : [["CALL", ["SIMPLE_NAME", "C_FROM_ALU"]]]}
2024
                      ]]}
2025
                    ]]}
2026
                  ]]}
2027
                ]}
2028
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
2029
                "lhs" : ["SIMPLE_NAME", "rd"], "rhs" : ["EXPRESSION", {
2030
                  "args" : [["EXPRESSION", {
2031
                    "args" : [["EXPRESSION", {
2032
                      "args" : [["EXPRESSION", {
2033
                        "args" : [["CALL", ["SIMPLE_NAME", "rt"]]]}
2034
                      ]]}
2035
                    ]]}
2036
                  ]]}
2037
                ]}
2038
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
2039
                "lhs" : ["SIMPLE_NAME", "alu_function"], "rhs" : ["EXPRESSION", {
2040
                  "args" : [["EXPRESSION", {
2041
                    "args" : [["EXPRESSION", {
2042
                      "args" : [["EXPRESSION", {
2043
                        "args" : [["CALL", ["SIMPLE_NAME", "ALU_LESS_THAN_SIGNED"]]]}
2044
                      ]]}
2045
                    ]]}
2046
                  ]]}
2047
                ]}
2048
              ]]}
2049
            , {
2050
              "when_cond" : [["EXPRESSION", {
2051
                "args" : [["EXPRESSION", {
2052
                  "args" : [["CONSTANT_VALUE", {
2053
                    "value" : ["CST_LITERAL", "\"001011\""]}
2054
                  ]]}
2055
                ]]}
2056
              ]], "when_stmt" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
2057
                "lhs" : ["SIMPLE_NAME", "b_source"], "rhs" : ["EXPRESSION", {
2058
                  "args" : [["EXPRESSION", {
2059
                    "args" : [["EXPRESSION", {
2060
                      "args" : [["EXPRESSION", {
2061
                        "args" : [["CALL", ["SIMPLE_NAME", "B_FROM_SIGNED_IMM"]]]}
2062
                      ]]}
2063
                    ]]}
2064
                  ]]}
2065
                ]}
2066
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
2067
                "lhs" : ["SIMPLE_NAME", "c_source"], "rhs" : ["EXPRESSION", {
2068
                  "args" : [["EXPRESSION", {
2069
                    "args" : [["EXPRESSION", {
2070
                      "args" : [["EXPRESSION", {
2071
                        "args" : [["CALL", ["SIMPLE_NAME", "C_FROM_ALU"]]]}
2072
                      ]]}
2073
                    ]]}
2074
                  ]]}
2075
                ]}
2076
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
2077
                "lhs" : ["SIMPLE_NAME", "rd"], "rhs" : ["EXPRESSION", {
2078
                  "args" : [["EXPRESSION", {
2079
                    "args" : [["EXPRESSION", {
2080
                      "args" : [["EXPRESSION", {
2081
                        "args" : [["CALL", ["SIMPLE_NAME", "rt"]]]}
2082
                      ]]}
2083
                    ]]}
2084
                  ]]}
2085
                ]}
2086
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
2087
                "lhs" : ["SIMPLE_NAME", "alu_function"], "rhs" : ["EXPRESSION", {
2088
                  "args" : [["EXPRESSION", {
2089
                    "args" : [["EXPRESSION", {
2090
                      "args" : [["EXPRESSION", {
2091
                        "args" : [["CALL", ["SIMPLE_NAME", "ALU_LESS_THAN"]]]}
2092
                      ]]}
2093
                    ]]}
2094
                  ]]}
2095
                ]}
2096
              ]]}
2097
            , {
2098
              "when_cond" : [["EXPRESSION", {
2099
                "args" : [["EXPRESSION", {
2100
                  "args" : [["CONSTANT_VALUE", {
2101
                    "value" : ["CST_LITERAL", "\"001100\""]}
2102
                  ]]}
2103
                ]]}
2104
              ]], "when_stmt" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
2105
                "lhs" : ["SIMPLE_NAME", "b_source"], "rhs" : ["EXPRESSION", {
2106
                  "args" : [["EXPRESSION", {
2107
                    "args" : [["EXPRESSION", {
2108
                      "args" : [["EXPRESSION", {
2109
                        "args" : [["CALL", ["SIMPLE_NAME", "B_FROM_IMM"]]]}
2110
                      ]]}
2111
                    ]]}
2112
                  ]]}
2113
                ]}
2114
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
2115
                "lhs" : ["SIMPLE_NAME", "c_source"], "rhs" : ["EXPRESSION", {
2116
                  "args" : [["EXPRESSION", {
2117
                    "args" : [["EXPRESSION", {
2118
                      "args" : [["EXPRESSION", {
2119
                        "args" : [["CALL", ["SIMPLE_NAME", "C_FROM_ALU"]]]}
2120
                      ]]}
2121
                    ]]}
2122
                  ]]}
2123
                ]}
2124
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
2125
                "lhs" : ["SIMPLE_NAME", "rd"], "rhs" : ["EXPRESSION", {
2126
                  "args" : [["EXPRESSION", {
2127
                    "args" : [["EXPRESSION", {
2128
                      "args" : [["EXPRESSION", {
2129
                        "args" : [["CALL", ["SIMPLE_NAME", "rt"]]]}
2130
                      ]]}
2131
                    ]]}
2132
                  ]]}
2133
                ]}
2134
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
2135
                "lhs" : ["SIMPLE_NAME", "alu_function"], "rhs" : ["EXPRESSION", {
2136
                  "args" : [["EXPRESSION", {
2137
                    "args" : [["EXPRESSION", {
2138
                      "args" : [["EXPRESSION", {
2139
                        "args" : [["CALL", ["SIMPLE_NAME", "ALU_AND"]]]}
2140
                      ]]}
2141
                    ]]}
2142
                  ]]}
2143
                ]}
2144
              ]]}
2145
            , {
2146
              "when_cond" : [["EXPRESSION", {
2147
                "args" : [["EXPRESSION", {
2148
                  "args" : [["CONSTANT_VALUE", {
2149
                    "value" : ["CST_LITERAL", "\"001101\""]}
2150
                  ]]}
2151
                ]]}
2152
              ]], "when_stmt" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
2153
                "lhs" : ["SIMPLE_NAME", "b_source"], "rhs" : ["EXPRESSION", {
2154
                  "args" : [["EXPRESSION", {
2155
                    "args" : [["EXPRESSION", {
2156
                      "args" : [["EXPRESSION", {
2157
                        "args" : [["CALL", ["SIMPLE_NAME", "B_FROM_IMM"]]]}
2158
                      ]]}
2159
                    ]]}
2160
                  ]]}
2161
                ]}
2162
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
2163
                "lhs" : ["SIMPLE_NAME", "c_source"], "rhs" : ["EXPRESSION", {
2164
                  "args" : [["EXPRESSION", {
2165
                    "args" : [["EXPRESSION", {
2166
                      "args" : [["EXPRESSION", {
2167
                        "args" : [["CALL", ["SIMPLE_NAME", "C_FROM_ALU"]]]}
2168
                      ]]}
2169
                    ]]}
2170
                  ]]}
2171
                ]}
2172
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
2173
                "lhs" : ["SIMPLE_NAME", "rd"], "rhs" : ["EXPRESSION", {
2174
                  "args" : [["EXPRESSION", {
2175
                    "args" : [["EXPRESSION", {
2176
                      "args" : [["EXPRESSION", {
2177
                        "args" : [["CALL", ["SIMPLE_NAME", "rt"]]]}
2178
                      ]]}
2179
                    ]]}
2180
                  ]]}
2181
                ]}
2182
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
2183
                "lhs" : ["SIMPLE_NAME", "alu_function"], "rhs" : ["EXPRESSION", {
2184
                  "args" : [["EXPRESSION", {
2185
                    "args" : [["EXPRESSION", {
2186
                      "args" : [["EXPRESSION", {
2187
                        "args" : [["CALL", ["SIMPLE_NAME", "ALU_OR"]]]}
2188
                      ]]}
2189
                    ]]}
2190
                  ]]}
2191
                ]}
2192
              ]]}
2193
            , {
2194
              "when_cond" : [["EXPRESSION", {
2195
                "args" : [["EXPRESSION", {
2196
                  "args" : [["CONSTANT_VALUE", {
2197
                    "value" : ["CST_LITERAL", "\"001110\""]}
2198
                  ]]}
2199
                ]]}
2200
              ]], "when_stmt" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
2201
                "lhs" : ["SIMPLE_NAME", "b_source"], "rhs" : ["EXPRESSION", {
2202
                  "args" : [["EXPRESSION", {
2203
                    "args" : [["EXPRESSION", {
2204
                      "args" : [["EXPRESSION", {
2205
                        "args" : [["CALL", ["SIMPLE_NAME", "B_FROM_IMM"]]]}
2206
                      ]]}
2207
                    ]]}
2208
                  ]]}
2209
                ]}
2210
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
2211
                "lhs" : ["SIMPLE_NAME", "c_source"], "rhs" : ["EXPRESSION", {
2212
                  "args" : [["EXPRESSION", {
2213
                    "args" : [["EXPRESSION", {
2214
                      "args" : [["EXPRESSION", {
2215
                        "args" : [["CALL", ["SIMPLE_NAME", "C_FROM_ALU"]]]}
2216
                      ]]}
2217
                    ]]}
2218
                  ]]}
2219
                ]}
2220
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
2221
                "lhs" : ["SIMPLE_NAME", "rd"], "rhs" : ["EXPRESSION", {
2222
                  "args" : [["EXPRESSION", {
2223
                    "args" : [["EXPRESSION", {
2224
                      "args" : [["EXPRESSION", {
2225
                        "args" : [["CALL", ["SIMPLE_NAME", "rt"]]]}
2226
                      ]]}
2227
                    ]]}
2228
                  ]]}
2229
                ]}
2230
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
2231
                "lhs" : ["SIMPLE_NAME", "alu_function"], "rhs" : ["EXPRESSION", {
2232
                  "args" : [["EXPRESSION", {
2233
                    "args" : [["EXPRESSION", {
2234
                      "args" : [["EXPRESSION", {
2235
                        "args" : [["CALL", ["SIMPLE_NAME", "ALU_XOR"]]]}
2236
                      ]]}
2237
                    ]]}
2238
                  ]]}
2239
                ]}
2240
              ]]}
2241
            , {
2242
              "when_cond" : [["EXPRESSION", {
2243
                "args" : [["EXPRESSION", {
2244
                  "args" : [["CONSTANT_VALUE", {
2245
                    "value" : ["CST_LITERAL", "\"001111\""]}
2246
                  ]]}
2247
                ]]}
2248
              ]], "when_stmt" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
2249
                "lhs" : ["SIMPLE_NAME", "c_source"], "rhs" : ["EXPRESSION", {
2250
                  "args" : [["EXPRESSION", {
2251
                    "args" : [["EXPRESSION", {
2252
                      "args" : [["EXPRESSION", {
2253
                        "args" : [["CALL", ["SIMPLE_NAME", "C_FROM_IMM_SHIFT16"]]]}
2254
                      ]]}
2255
                    ]]}
2256
                  ]]}
2257
                ]}
2258
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
2259
                "lhs" : ["SIMPLE_NAME", "rd"], "rhs" : ["EXPRESSION", {
2260
                  "args" : [["EXPRESSION", {
2261
                    "args" : [["EXPRESSION", {
2262
                      "args" : [["EXPRESSION", {
2263
                        "args" : [["CALL", ["SIMPLE_NAME", "rt"]]]}
2264
                      ]]}
2265
                    ]]}
2266
                  ]]}
2267
                ]}
2268
              ]]}
2269
            , {
2270
              "when_cond" : [["EXPRESSION", {
2271
                "args" : [["EXPRESSION", {
2272
                  "args" : [["CONSTANT_VALUE", {
2273
                    "value" : ["CST_LITERAL", "\"010000\""]}
2274
                  ]]}
2275
                ]]}
2276
              ]], "when_stmt" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
2277
                "lhs" : ["SIMPLE_NAME", "alu_function"], "rhs" : ["EXPRESSION", {
2278
                  "args" : [["EXPRESSION", {
2279
                    "args" : [["EXPRESSION", {
2280
                      "args" : [["EXPRESSION", {
2281
                        "args" : [["CALL", ["SIMPLE_NAME", "ALU_OR"]]]}
2282
                      ]]}
2283
                    ]]}
2284
                  ]]}
2285
                ]}
2286
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
2287
                "lhs" : ["SIMPLE_NAME", "c_source"], "rhs" : ["EXPRESSION", {
2288
                  "args" : [["EXPRESSION", {
2289
                    "args" : [["EXPRESSION", {
2290
                      "args" : [["EXPRESSION", {
2291
                        "args" : [["CALL", ["SIMPLE_NAME", "C_FROM_ALU"]]]}
2292
                      ]]}
2293
                    ]]}
2294
                  ]]}
2295
                ]}
2296
              ], ["IF_STATEMENT", {
2297
                "if_cases" : [{
2298
                  "if_cond" : ["EXPRESSION", {
2299
                    "id" : "=", "args" : [["EXPRESSION", {
2300
                      "args" : [["EXPRESSION", {
2301
                        "args" : [["EXPRESSION", {
2302
                          "args" : [["CALL", ["FUNCTION_CALL", {
2303
                            "id" : ["SIMPLE_NAME", "opcode"], "assoc_list" : [{
2304
                              "actual_expr" : ["EXPRESSION", {
2305
                                "args" : [["EXPRESSION", {
2306
                                  "args" : [["EXPRESSION", {
2307
                                    "args" : [["EXPRESSION", {
2308
                                      "args" : [["CONSTANT_VALUE", {
2309
                                        "value" : ["CST_LITERAL", "23"]}
2310
                                      ]]}
2311
                                    ]]}
2312
                                  ]]}
2313
                                ]]}
2314
                              ]}
2315
                            ]}
2316
                          ]]]}
2317
                        ]]}
2318
                      ]]}
2319
                    ], ["EXPRESSION", {
2320
                      "args" : [["EXPRESSION", {
2321
                        "args" : [["EXPRESSION", {
2322
                          "args" : [["CONSTANT_VALUE", {
2323
                            "value" : ["CST_LITERAL", "'0'"]}
2324
                          ]]}
2325
                        ]]}
2326
                      ]]}
2327
                    ]]}
2328
                  ], "if_block" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
2329
                    "lhs" : ["SIMPLE_NAME", "rs"], "rhs" : ["EXPRESSION", {
2330
                      "args" : [["EXPRESSION", {
2331
                        "args" : [["EXPRESSION", {
2332
                          "args" : [["EXPRESSION", {
2333
                            "id" : "&", "args" : [["EXPRESSION", {
2334
                              "args" : [["CONSTANT_VALUE", {
2335
                                "value" : ["CST_LITERAL", "'1'"]}
2336
                              ]]}
2337
                            ], ["EXPRESSION", {
2338
                              "args" : [["CALL", ["SLICE_NAME", {
2339
                                "id" : ["SIMPLE_NAME", "opcode"], "range" : ["RANGE_WITH_DIRECTION", {
2340
                                  "direction" : "downto", "from" : ["EXPRESSION", {
2341
                                    "args" : [["EXPRESSION", {
2342
                                      "args" : [["CONSTANT_VALUE", {
2343
                                        "value" : ["CST_LITERAL", "15"]}
2344
                                      ]]}
2345
                                    ]]}
2346
                                  ], "_to" : ["EXPRESSION", {
2347
                                    "args" : [["EXPRESSION", {
2348
                                      "args" : [["CONSTANT_VALUE", {
2349
                                        "value" : ["CST_LITERAL", "11"]}
2350
                                      ]]}
2351
                                    ]]}
2352
                                  ]}
2353
                                ]}
2354
                              ]]]}
2355
                            ]]}
2356
                          ]]}
2357
                        ]]}
2358
                      ]]}
2359
                    ]}
2360
                  ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
2361
                    "lhs" : ["SIMPLE_NAME", "rt"], "rhs" : ["EXPRESSION", {
2362
                      "args" : [["EXPRESSION", {
2363
                        "args" : [["EXPRESSION", {
2364
                          "args" : [["EXPRESSION", {
2365
                            "args" : [["CONSTANT_VALUE", {
2366
                              "value" : ["CST_LITERAL", "\"000000\""]}
2367
                            ]]}
2368
                          ]]}
2369
                        ]]}
2370
                      ]]}
2371
                    ]}
2372
                  ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
2373
                    "lhs" : ["SIMPLE_NAME", "rd"], "rhs" : ["EXPRESSION", {
2374
                      "args" : [["EXPRESSION", {
2375
                        "args" : [["EXPRESSION", {
2376
                          "args" : [["EXPRESSION", {
2377
                            "id" : "&", "args" : [["EXPRESSION", {
2378
                              "args" : [["CONSTANT_VALUE", {
2379
                                "value" : ["CST_LITERAL", "'0'"]}
2380
                              ]]}
2381
                            ], ["EXPRESSION", {
2382
                              "args" : [["CALL", ["SLICE_NAME", {
2383
                                "id" : ["SIMPLE_NAME", "opcode"], "range" : ["RANGE_WITH_DIRECTION", {
2384
                                  "direction" : "downto", "from" : ["EXPRESSION", {
2385
                                    "args" : [["EXPRESSION", {
2386
                                      "args" : [["CONSTANT_VALUE", {
2387
                                        "value" : ["CST_LITERAL", "20"]}
2388
                                      ]]}
2389
                                    ]]}
2390
                                  ], "_to" : ["EXPRESSION", {
2391
                                    "args" : [["EXPRESSION", {
2392
                                      "args" : [["CONSTANT_VALUE", {
2393
                                        "value" : ["CST_LITERAL", "16"]}
2394
                                      ]]}
2395
                                    ]]}
2396
                                  ]}
2397
                                ]}
2398
                              ]]]}
2399
                            ]]}
2400
                          ]]}
2401
                        ]]}
2402
                      ]]}
2403
                    ]}
2404
                  ]]}
2405
                ], "default" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
2406
                  "lhs" : ["SIMPLE_NAME", "rs"], "rhs" : ["EXPRESSION", {
2407
                    "args" : [["EXPRESSION", {
2408
                      "args" : [["EXPRESSION", {
2409
                        "args" : [["EXPRESSION", {
2410
                          "args" : [["CONSTANT_VALUE", {
2411
                            "value" : ["CST_LITERAL", "\"000000\""]}
2412
                          ]]}
2413
                        ]]}
2414
                      ]]}
2415
                    ]]}
2416
                  ]}
2417
                ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
2418
                  "lhs" : ["INDEXED_NAME", {
2419
                    "id" : ["SIMPLE_NAME", "rd"], "exprs" : [["EXPRESSION", {
2420
                      "args" : [["EXPRESSION", {
2421
                        "args" : [["EXPRESSION", {
2422
                          "args" : [["EXPRESSION", {
2423
                            "args" : [["CONSTANT_VALUE", {
2424
                              "value" : ["CST_LITERAL", "5"]}
2425
                            ]]}
2426
                          ]]}
2427
                        ]]}
2428
                      ]]}
2429
                    ]]}
2430
                  ], "rhs" : ["EXPRESSION", {
2431
                    "args" : [["EXPRESSION", {
2432
                      "args" : [["EXPRESSION", {
2433
                        "args" : [["EXPRESSION", {
2434
                          "args" : [["CONSTANT_VALUE", {
2435
                            "value" : ["CST_LITERAL", "'1'"]}
2436
                          ]]}
2437
                        ]]}
2438
                      ]]}
2439
                    ]]}
2440
                  ]}
2441
                ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
2442
                  "lhs" : ["SIMPLE_NAME", "pc_source"], "rhs" : ["EXPRESSION", {
2443
                    "args" : [["EXPRESSION", {
2444
                      "args" : [["EXPRESSION", {
2445
                        "args" : [["EXPRESSION", {
2446
                          "args" : [["CALL", ["SIMPLE_NAME", "FROM_BRANCH"]]]}
2447
                        ]]}
2448
                      ]]}
2449
                    ]]}
2450
                  ]}
2451
                ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
2452
                  "lhs" : ["SIMPLE_NAME", "branch_function"], "rhs" : ["EXPRESSION", {
2453
                    "args" : [["EXPRESSION", {
2454
                      "args" : [["EXPRESSION", {
2455
                        "args" : [["EXPRESSION", {
2456
                          "args" : [["CALL", ["SIMPLE_NAME", "BRANCH_NO"]]]}
2457
                        ]]}
2458
                      ]]}
2459
                    ]]}
2460
                  ]}
2461
                ]]}
2462
              ]]}
2463
            , {
2464
              "when_cond" : [["EXPRESSION", {
2465
                "args" : [["EXPRESSION", {
2466
                  "args" : [["CONSTANT_VALUE", {
2467
                    "value" : ["CST_LITERAL", "\"100000\""]}
2468
                  ]]}
2469
                ]]}
2470
              ]], "when_stmt" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
2471
                "lhs" : ["SIMPLE_NAME", "a_source"], "rhs" : ["EXPRESSION", {
2472
                  "args" : [["EXPRESSION", {
2473
                    "args" : [["EXPRESSION", {
2474
                      "args" : [["EXPRESSION", {
2475
                        "args" : [["CALL", ["SIMPLE_NAME", "A_FROM_REG_SOURCE"]]]}
2476
                      ]]}
2477
                    ]]}
2478
                  ]]}
2479
                ]}
2480
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
2481
                "lhs" : ["SIMPLE_NAME", "b_source"], "rhs" : ["EXPRESSION", {
2482
                  "args" : [["EXPRESSION", {
2483
                    "args" : [["EXPRESSION", {
2484
                      "args" : [["EXPRESSION", {
2485
                        "args" : [["CALL", ["SIMPLE_NAME", "B_FROM_SIGNED_IMM"]]]}
2486
                      ]]}
2487
                    ]]}
2488
                  ]]}
2489
                ]}
2490
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
2491
                "lhs" : ["SIMPLE_NAME", "alu_function"], "rhs" : ["EXPRESSION", {
2492
                  "args" : [["EXPRESSION", {
2493
                    "args" : [["EXPRESSION", {
2494
                      "args" : [["EXPRESSION", {
2495
                        "args" : [["CALL", ["SIMPLE_NAME", "ALU_ADD"]]]}
2496
                      ]]}
2497
                    ]]}
2498
                  ]]}
2499
                ]}
2500
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
2501
                "lhs" : ["SIMPLE_NAME", "rd"], "rhs" : ["EXPRESSION", {
2502
                  "args" : [["EXPRESSION", {
2503
                    "args" : [["EXPRESSION", {
2504
                      "args" : [["EXPRESSION", {
2505
                        "args" : [["CALL", ["SIMPLE_NAME", "rt"]]]}
2506
                      ]]}
2507
                    ]]}
2508
                  ]]}
2509
                ]}
2510
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
2511
                "lhs" : ["SIMPLE_NAME", "c_source"], "rhs" : ["EXPRESSION", {
2512
                  "args" : [["EXPRESSION", {
2513
                    "args" : [["EXPRESSION", {
2514
                      "args" : [["EXPRESSION", {
2515
                        "args" : [["CALL", ["SIMPLE_NAME", "C_FROM_MEMORY"]]]}
2516
                      ]]}
2517
                    ]]}
2518
                  ]]}
2519
                ]}
2520
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
2521
                "lhs" : ["SIMPLE_NAME", "mem_source"], "rhs" : ["EXPRESSION", {
2522
                  "args" : [["EXPRESSION", {
2523
                    "args" : [["EXPRESSION", {
2524
                      "args" : [["EXPRESSION", {
2525
                        "args" : [["CALL", ["SIMPLE_NAME", "MEM_READ8S"]]]}
2526
                      ]]}
2527
                    ]]}
2528
                  ]]}
2529
                ]}
2530
              ]]}
2531
            , {
2532
              "when_cond" : [["EXPRESSION", {
2533
                "args" : [["EXPRESSION", {
2534
                  "args" : [["CONSTANT_VALUE", {
2535
                    "value" : ["CST_LITERAL", "\"100001\""]}
2536
                  ]]}
2537
                ]]}
2538
              ]], "when_stmt" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
2539
                "lhs" : ["SIMPLE_NAME", "a_source"], "rhs" : ["EXPRESSION", {
2540
                  "args" : [["EXPRESSION", {
2541
                    "args" : [["EXPRESSION", {
2542
                      "args" : [["EXPRESSION", {
2543
                        "args" : [["CALL", ["SIMPLE_NAME", "A_FROM_REG_SOURCE"]]]}
2544
                      ]]}
2545
                    ]]}
2546
                  ]]}
2547
                ]}
2548
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
2549
                "lhs" : ["SIMPLE_NAME", "b_source"], "rhs" : ["EXPRESSION", {
2550
                  "args" : [["EXPRESSION", {
2551
                    "args" : [["EXPRESSION", {
2552
                      "args" : [["EXPRESSION", {
2553
                        "args" : [["CALL", ["SIMPLE_NAME", "B_FROM_SIGNED_IMM"]]]}
2554
                      ]]}
2555
                    ]]}
2556
                  ]]}
2557
                ]}
2558
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
2559
                "lhs" : ["SIMPLE_NAME", "alu_function"], "rhs" : ["EXPRESSION", {
2560
                  "args" : [["EXPRESSION", {
2561
                    "args" : [["EXPRESSION", {
2562
                      "args" : [["EXPRESSION", {
2563
                        "args" : [["CALL", ["SIMPLE_NAME", "ALU_ADD"]]]}
2564
                      ]]}
2565
                    ]]}
2566
                  ]]}
2567
                ]}
2568
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
2569
                "lhs" : ["SIMPLE_NAME", "rd"], "rhs" : ["EXPRESSION", {
2570
                  "args" : [["EXPRESSION", {
2571
                    "args" : [["EXPRESSION", {
2572
                      "args" : [["EXPRESSION", {
2573
                        "args" : [["CALL", ["SIMPLE_NAME", "rt"]]]}
2574
                      ]]}
2575
                    ]]}
2576
                  ]]}
2577
                ]}
2578
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
2579
                "lhs" : ["SIMPLE_NAME", "c_source"], "rhs" : ["EXPRESSION", {
2580
                  "args" : [["EXPRESSION", {
2581
                    "args" : [["EXPRESSION", {
2582
                      "args" : [["EXPRESSION", {
2583
                        "args" : [["CALL", ["SIMPLE_NAME", "C_FROM_MEMORY"]]]}
2584
                      ]]}
2585
                    ]]}
2586
                  ]]}
2587
                ]}
2588
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
2589
                "lhs" : ["SIMPLE_NAME", "mem_source"], "rhs" : ["EXPRESSION", {
2590
                  "args" : [["EXPRESSION", {
2591
                    "args" : [["EXPRESSION", {
2592
                      "args" : [["EXPRESSION", {
2593
                        "args" : [["CALL", ["SIMPLE_NAME", "MEM_READ16S"]]]}
2594
                      ]]}
2595
                    ]]}
2596
                  ]]}
2597
                ]}
2598
              ]]}
2599
            , {
2600
              "when_cond" : [["EXPRESSION", {
2601
                "args" : [["EXPRESSION", {
2602
                  "args" : [["CONSTANT_VALUE", {
2603
                    "value" : ["CST_LITERAL", "\"100010\""]}
2604
                  ]]}
2605
                ]]}
2606
              ]], "when_stmt" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
2607
                "lhs" : ["SIMPLE_NAME", "a_source"], "rhs" : ["EXPRESSION", {
2608
                  "args" : [["EXPRESSION", {
2609
                    "args" : [["EXPRESSION", {
2610
                      "args" : [["EXPRESSION", {
2611
                        "args" : [["CALL", ["SIMPLE_NAME", "A_FROM_REG_SOURCE"]]]}
2612
                      ]]}
2613
                    ]]}
2614
                  ]]}
2615
                ]}
2616
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
2617
                "lhs" : ["SIMPLE_NAME", "b_source"], "rhs" : ["EXPRESSION", {
2618
                  "args" : [["EXPRESSION", {
2619
                    "args" : [["EXPRESSION", {
2620
                      "args" : [["EXPRESSION", {
2621
                        "args" : [["CALL", ["SIMPLE_NAME", "B_FROM_SIGNED_IMM"]]]}
2622
                      ]]}
2623
                    ]]}
2624
                  ]]}
2625
                ]}
2626
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
2627
                "lhs" : ["SIMPLE_NAME", "alu_function"], "rhs" : ["EXPRESSION", {
2628
                  "args" : [["EXPRESSION", {
2629
                    "args" : [["EXPRESSION", {
2630
                      "args" : [["EXPRESSION", {
2631
                        "args" : [["CALL", ["SIMPLE_NAME", "ALU_ADD"]]]}
2632
                      ]]}
2633
                    ]]}
2634
                  ]]}
2635
                ]}
2636
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
2637
                "lhs" : ["SIMPLE_NAME", "rd"], "rhs" : ["EXPRESSION", {
2638
                  "args" : [["EXPRESSION", {
2639
                    "args" : [["EXPRESSION", {
2640
                      "args" : [["EXPRESSION", {
2641
                        "args" : [["CALL", ["SIMPLE_NAME", "rt"]]]}
2642
                      ]]}
2643
                    ]]}
2644
                  ]]}
2645
                ]}
2646
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
2647
                "lhs" : ["SIMPLE_NAME", "c_source"], "rhs" : ["EXPRESSION", {
2648
                  "args" : [["EXPRESSION", {
2649
                    "args" : [["EXPRESSION", {
2650
                      "args" : [["EXPRESSION", {
2651
                        "args" : [["CALL", ["SIMPLE_NAME", "C_FROM_MEMORY"]]]}
2652
                      ]]}
2653
                    ]]}
2654
                  ]]}
2655
                ]}
2656
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
2657
                "lhs" : ["SIMPLE_NAME", "mem_source"], "rhs" : ["EXPRESSION", {
2658
                  "args" : [["EXPRESSION", {
2659
                    "args" : [["EXPRESSION", {
2660
                      "args" : [["EXPRESSION", {
2661
                        "args" : [["CALL", ["SIMPLE_NAME", "MEM_READ32"]]]}
2662
                      ]]}
2663
                    ]]}
2664
                  ]]}
2665
                ]}
2666
              ]]}
2667
            , {
2668
              "when_cond" : [["EXPRESSION", {
2669
                "args" : [["EXPRESSION", {
2670
                  "args" : [["CONSTANT_VALUE", {
2671
                    "value" : ["CST_LITERAL", "\"100011\""]}
2672
                  ]]}
2673
                ]]}
2674
              ]], "when_stmt" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
2675
                "lhs" : ["SIMPLE_NAME", "a_source"], "rhs" : ["EXPRESSION", {
2676
                  "args" : [["EXPRESSION", {
2677
                    "args" : [["EXPRESSION", {
2678
                      "args" : [["EXPRESSION", {
2679
                        "args" : [["CALL", ["SIMPLE_NAME", "A_FROM_REG_SOURCE"]]]}
2680
                      ]]}
2681
                    ]]}
2682
                  ]]}
2683
                ]}
2684
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
2685
                "lhs" : ["SIMPLE_NAME", "b_source"], "rhs" : ["EXPRESSION", {
2686
                  "args" : [["EXPRESSION", {
2687
                    "args" : [["EXPRESSION", {
2688
                      "args" : [["EXPRESSION", {
2689
                        "args" : [["CALL", ["SIMPLE_NAME", "B_FROM_SIGNED_IMM"]]]}
2690
                      ]]}
2691
                    ]]}
2692
                  ]]}
2693
                ]}
2694
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
2695
                "lhs" : ["SIMPLE_NAME", "alu_function"], "rhs" : ["EXPRESSION", {
2696
                  "args" : [["EXPRESSION", {
2697
                    "args" : [["EXPRESSION", {
2698
                      "args" : [["EXPRESSION", {
2699
                        "args" : [["CALL", ["SIMPLE_NAME", "ALU_ADD"]]]}
2700
                      ]]}
2701
                    ]]}
2702
                  ]]}
2703
                ]}
2704
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
2705
                "lhs" : ["SIMPLE_NAME", "rd"], "rhs" : ["EXPRESSION", {
2706
                  "args" : [["EXPRESSION", {
2707
                    "args" : [["EXPRESSION", {
2708
                      "args" : [["EXPRESSION", {
2709
                        "args" : [["CALL", ["SIMPLE_NAME", "rt"]]]}
2710
                      ]]}
2711
                    ]]}
2712
                  ]]}
2713
                ]}
2714
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
2715
                "lhs" : ["SIMPLE_NAME", "c_source"], "rhs" : ["EXPRESSION", {
2716
                  "args" : [["EXPRESSION", {
2717
                    "args" : [["EXPRESSION", {
2718
                      "args" : [["EXPRESSION", {
2719
                        "args" : [["CALL", ["SIMPLE_NAME", "C_FROM_MEMORY"]]]}
2720
                      ]]}
2721
                    ]]}
2722
                  ]]}
2723
                ]}
2724
              ], ["VARIABLE_ASSIGNMENT_STATEMENT", {
2725
                "lhs" : ["SIMPLE_NAME", "mem_source"], "rhs" : ["EXPRESSION", {
2726
                  "args" : [["EXPRESSION", {
2727
                    "args" : [["EXPRESSION", {
2728
                      "args" : [["EXPRESSION", {
2729
                        "args" : [["CALL", ["SIMPLE_NAME", "MEM_READ32"]]]}
2730
                      ]]}
2731
                    ]]}
2732
                  ]]}
2733
                ]}
2734
              ]]}
2735
            , {
2736
              "when_cond" : [["EXPRESSION", {
2737
                "args" : [["EXPRESSION", {
2738
                  "args" : [["CONSTANT_VALUE", {
2739
                    "value" : ["CST_LITERAL", "\"100100\""]}
2740
                  ]]}
2741
                ]]}