1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
1909
1910
1911
1912
1913
1914
1915
1916
1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
1931
1932
1933
1934
1935
1936
1937
1938
1939
1940
1941
1942
1943
1944
1945
1946
1947
1948
1949
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035
2036
2037
2038
2039
2040
2041
2042
2043
2044
2045
2046
2047
2048
2049
2050
2051
2052
2053
2054
2055
2056
2057
2058
2059
2060
2061
2062
2063
2064
2065
2066
2067
2068
2069
2070
2071
2072
2073
2074
2075
2076
2077
2078
2079
2080
2081
2082
2083
2084
2085
2086
2087
2088
2089
2090
2091
2092
2093
2094
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
2109
2110
2111
2112
2113
2114
2115
2116
2117
2118
2119
2120
2121
2122
2123
2124
2125
2126
2127
2128
2129
2130
2131
2132
2133
2134
2135
2136
2137
2138
2139
2140
2141
2142
2143
2144
2145
2146
2147
2148
2149
2150
2151
2152
2153
2154
2155
2156
2157
2158
2159
2160
2161
2162
2163
2164
2165
2166
2167
2168
2169
2170
2171
2172
2173
2174
2175
2176
2177
2178
2179
2180
2181
2182
2183
2184
2185
2186
2187
2188
2189
2190
2191
2192
2193
2194
2195
2196
2197
2198
2199
2200
2201
2202
2203
2204
2205
2206
2207
2208
2209
2210
2211
2212
2213
2214
2215
2216
2217
2218
2219
2220
2221
2222
2223
2224
2225
2226
2227
2228
2229
2230
2231
2232
2233
2234
2235
2236
2237
2238
2239
2240
2241
2242
2243
2244
2245
2246
2247
2248
2249
2250
2251
2252
2253
2254
2255
2256
2257
2258
2259
2260
2261
2262
2263
2264
2265
2266
2267
2268
2269
2270
2271
2272
2273
2274
2275
2276
2277
2278
2279
2280
2281
2282
2283
2284
2285
2286
2287
2288
2289
2290
2291
2292
2293
2294
2295
2296
2297
2298
2299
2300
2301
2302
2303
2304
2305
2306
2307
2308
2309
2310
2311
2312
2313
2314
2315
2316
2317
2318
2319
2320
2321
2322
2323
2324
2325
2326
2327
2328
2329
2330
2331
2332
2333
2334
2335
2336
2337
2338
2339
2340
2341
2342
2343
2344
2345
2346
2347
2348
2349
2350
2351
2352
2353
2354
2355
2356
2357
2358
2359
2360
2361
2362
2363
2364
2365
2366
2367
2368
2369
2370
2371
2372
2373
2374
2375
2376
2377
2378
2379
2380
2381
2382
2383
2384
2385
2386
2387
2388
2389
2390
2391
2392
2393
2394
2395
2396
2397
2398
2399
2400
2401
2402
2403
2404
2405
2406
2407
2408
2409
2410
2411
2412
2413
2414
2415
2416
2417
2418
2419
2420
2421
2422
2423
2424
2425
2426
2427
2428
2429
2430
2431
2432
2433
2434
2435
2436
2437
2438
2439
2440
2441
2442
2443
2444
2445
2446
2447
2448
2449
2450
2451
2452
2453
2454
2455
2456
2457
2458
2459
2460
2461
2462
2463
2464
2465
2466
2467
2468
2469
2470
2471
2472
2473
2474
2475
2476
2477
2478
2479
2480
2481
2482
2483
2484
2485
2486
2487
2488
2489
2490
2491
2492
2493
2494
2495
2496
2497
2498
2499
2500
2501
2502
2503
2504
2505
2506
2507
2508
2509
2510
2511
2512
2513
2514
2515
2516
2517
2518
2519
2520
2521
2522
2523
2524
2525
2526
2527
2528
2529
2530
2531
2532
2533
2534
2535
2536
2537
2538
2539
2540
2541
2542
2543
2544
2545
2546
2547
2548
2549
2550
2551
2552
2553
2554
2555
2556
2557
2558
2559
2560
2561
2562
2563
2564
2565
2566
2567
2568
2569
2570
2571
2572
2573
2574
2575
2576
2577
2578
2579
2580
2581
2582
2583
2584
2585
2586
2587
2588
2589
2590
2591
2592
2593
2594
2595
2596
2597
2598
2599
2600
2601
2602
2603
2604
2605
2606
2607
2608
2609
2610
2611
2612
2613
2614
2615
2616
2617
2618
2619
2620
2621
2622
2623
2624
2625
2626
2627
2628
2629
2630
2631
2632
2633
2634
2635
2636
2637
2638
2639
2640
2641
2642
2643
2644
2645
2646
2647
2648
2649
2650
2651
2652
2653
2654
2655
2656
2657
2658
2659
2660
2661
2662
2663
2664
2665
2666
2667
2668
2669
2670
2671
2672
2673
2674
2675
2676
2677
2678
2679
2680
2681
2682
2683
2684
2685
2686
2687
2688
2689
2690
2691
2692
2693
2694
2695
2696
2697
2698
2699
2700
2701
2702
2703
2704
2705
2706
2707
2708
2709
2710
2711
2712
2713
2714
2715
2716
2717
2718
2719
2720
2721
2722
2723
2724
2725
2726
2727
2728
2729
2730
2731
2732
2733
2734
2735
2736
2737
2738
2739
2740
2741
2742
2743
2744
2745
2746
2747
2748
2749
2750
2751
2752
2753
2754
2755
2756
2757
2758
2759
2760
2761
2762
2763
2764
2765
2766
2767
2768
2769
2770
2771
2772
2773
2774
2775
2776
2777
2778
2779
2780
2781
2782
2783
2784
2785
2786
2787
2788
2789
2790
2791
2792
2793
2794
2795
2796
2797
2798
2799
2800
2801
2802
2803
2804
2805
2806
2807
2808
2809
2810
2811
2812
2813
2814
2815
2816
2817
2818
2819
2820
2821
2822
2823
2824
2825
2826
2827
2828
2829
2830
2831
2832
2833
2834
2835
2836
2837
2838
2839
2840
2841
2842
2843
2844
2845
2846
2847
2848
2849
2850
2851
2852
2853
2854
2855
2856
2857
2858
2859
2860
2861
2862
2863
2864
2865
2866
2867
2868
2869
2870
2871
2872
2873
2874
2875
2876
2877
2878
2879
2880
2881
2882
2883
2884
2885
2886
2887
2888
2889
2890
2891
2892
2893
2894
2895
2896
2897
2898
2899
2900
2901
2902
2903
2904
2905
2906
2907
2908
2909
2910
2911
2912
2913
2914
2915
2916
2917
2918
2919
2920
2921
2922
2923
2924
2925
2926
2927
2928
2929
2930
2931
2932
2933
2934
2935
2936
2937
2938
2939
2940
2941
2942
2943
2944
2945
2946
2947
2948
2949
2950
2951
2952
2953
2954
2955
2956
2957
2958
2959
2960
2961
2962
2963
2964
2965
2966
2967
2968
2969
2970
2971
2972
2973
2974
2975
2976
2977
2978
2979
2980
2981
2982
2983
2984
2985
2986
2987
2988
2989
2990
2991
2992
2993
2994
2995
2996
2997
2998
2999
3000
3001
3002
3003
3004
3005
3006
3007
3008
3009
3010
3011
3012
3013
3014
3015
3016
3017
3018
3019
3020
3021
3022
3023
3024
3025
3026
3027
3028
3029
3030
3031
3032
3033
3034
3035
3036
3037
3038
3039
3040
3041
3042
3043
3044
3045
3046
3047
3048
3049
3050
3051
|
; RUN: firrtl -i %s -o %s.v -X verilog -p c 2>&1 | tee %s.out | FileCheck %s
;CHECK: Inline Indexers
circuit top :
module top :
input invalidate : UInt<1>
input ras_update : {valid : UInt<1>, bits : {isCall : UInt<1>, isReturn : UInt<1>, returnAddr : UInt<39>, prediction : {valid : UInt<1>, bits : {taken : UInt<1>, mask : UInt<1>, bridx : UInt<1>, target : UInt<39>, entry : UInt<6>, bht : {history : UInt<7>, value : UInt<2>}}}}}
input bht_update : {valid : UInt<1>, bits : {prediction : {valid : UInt<1>, bits : {taken : UInt<1>, mask : UInt<1>, bridx : UInt<1>, target : UInt<39>, entry : UInt<6>, bht : {history : UInt<7>, value : UInt<2>}}}, pc : UInt<39>, taken : UInt<1>, mispredict : UInt<1>}}
input btb_update : {valid : UInt<1>, bits : {prediction : {valid : UInt<1>, bits : {taken : UInt<1>, mask : UInt<1>, bridx : UInt<1>, target : UInt<39>, entry : UInt<6>, bht : {history : UInt<7>, value : UInt<2>}}}, pc : UInt<39>, target : UInt<39>, taken : UInt<1>, isJump : UInt<1>, isReturn : UInt<1>, br_pc : UInt<39>}}
output resp : {valid : UInt<1>, bits : {taken : UInt<1>, mask : UInt<1>, bridx : UInt<1>, target : UInt<39>, entry : UInt<6>, bht : {history : UInt<7>, value : UInt<2>}}}
input req : {valid : UInt<1>, bits : {addr : UInt<39>}}
input clock : Clock
input reset : UInt<1>
resp.bits.bht.value := UInt<1>("h00")
resp.bits.bht.history := UInt<1>("h00")
resp.bits.entry := UInt<1>("h00")
resp.bits.target := UInt<1>("h00")
resp.bits.bridx := UInt<1>("h00")
resp.bits.mask := UInt<1>("h00")
resp.bits.taken := UInt<1>("h00")
resp.valid := UInt<1>("h00")
reg idxValid : UInt<62>, clock, reset
onreset idxValid := UInt<62>("h00")
cmem idxs : UInt<12>[62], clock
cmem idxPages : UInt<3>[62], clock
cmem tgts : UInt<12>[62], clock
cmem tgtPages : UInt<3>[62], clock
cmem pages : UInt<27>[6], clock
reg pageValid : UInt<6>, clock, reset
onreset pageValid := UInt<6>("h00")
infer accessor T_589 = idxPages[UInt<1>("h00")]
node T_591 = dshl(UInt<1>("h01"), T_589)
node T_592 = bits(T_591, 5, 0)
infer accessor T_594 = idxPages[UInt<1>("h01")]
node T_596 = dshl(UInt<1>("h01"), T_594)
node T_597 = bits(T_596, 5, 0)
infer accessor T_599 = idxPages[UInt<2>("h02")]
node T_601 = dshl(UInt<1>("h01"), T_599)
node T_602 = bits(T_601, 5, 0)
infer accessor T_604 = idxPages[UInt<2>("h03")]
node T_606 = dshl(UInt<1>("h01"), T_604)
node T_607 = bits(T_606, 5, 0)
infer accessor T_609 = idxPages[UInt<3>("h04")]
node T_611 = dshl(UInt<1>("h01"), T_609)
node T_612 = bits(T_611, 5, 0)
infer accessor T_614 = idxPages[UInt<3>("h05")]
node T_616 = dshl(UInt<1>("h01"), T_614)
node T_617 = bits(T_616, 5, 0)
infer accessor T_619 = idxPages[UInt<3>("h06")]
node T_621 = dshl(UInt<1>("h01"), T_619)
node T_622 = bits(T_621, 5, 0)
infer accessor T_624 = idxPages[UInt<3>("h07")]
node T_626 = dshl(UInt<1>("h01"), T_624)
node T_627 = bits(T_626, 5, 0)
infer accessor T_629 = idxPages[UInt<4>("h08")]
node T_631 = dshl(UInt<1>("h01"), T_629)
node T_632 = bits(T_631, 5, 0)
infer accessor T_634 = idxPages[UInt<4>("h09")]
node T_636 = dshl(UInt<1>("h01"), T_634)
node T_637 = bits(T_636, 5, 0)
infer accessor T_639 = idxPages[UInt<4>("h0a")]
node T_641 = dshl(UInt<1>("h01"), T_639)
node T_642 = bits(T_641, 5, 0)
infer accessor T_644 = idxPages[UInt<4>("h0b")]
node T_646 = dshl(UInt<1>("h01"), T_644)
node T_647 = bits(T_646, 5, 0)
infer accessor T_649 = idxPages[UInt<4>("h0c")]
node T_651 = dshl(UInt<1>("h01"), T_649)
node T_652 = bits(T_651, 5, 0)
infer accessor T_654 = idxPages[UInt<4>("h0d")]
node T_656 = dshl(UInt<1>("h01"), T_654)
node T_657 = bits(T_656, 5, 0)
infer accessor T_659 = idxPages[UInt<4>("h0e")]
node T_661 = dshl(UInt<1>("h01"), T_659)
node T_662 = bits(T_661, 5, 0)
infer accessor T_664 = idxPages[UInt<4>("h0f")]
node T_666 = dshl(UInt<1>("h01"), T_664)
node T_667 = bits(T_666, 5, 0)
infer accessor T_669 = idxPages[UInt<5>("h010")]
node T_671 = dshl(UInt<1>("h01"), T_669)
node T_672 = bits(T_671, 5, 0)
infer accessor T_674 = idxPages[UInt<5>("h011")]
node T_676 = dshl(UInt<1>("h01"), T_674)
node T_677 = bits(T_676, 5, 0)
infer accessor T_679 = idxPages[UInt<5>("h012")]
node T_681 = dshl(UInt<1>("h01"), T_679)
node T_682 = bits(T_681, 5, 0)
infer accessor T_684 = idxPages[UInt<5>("h013")]
node T_686 = dshl(UInt<1>("h01"), T_684)
node T_687 = bits(T_686, 5, 0)
infer accessor T_689 = idxPages[UInt<5>("h014")]
node T_691 = dshl(UInt<1>("h01"), T_689)
node T_692 = bits(T_691, 5, 0)
infer accessor T_694 = idxPages[UInt<5>("h015")]
node T_696 = dshl(UInt<1>("h01"), T_694)
node T_697 = bits(T_696, 5, 0)
infer accessor T_699 = idxPages[UInt<5>("h016")]
node T_701 = dshl(UInt<1>("h01"), T_699)
node T_702 = bits(T_701, 5, 0)
infer accessor T_704 = idxPages[UInt<5>("h017")]
node T_706 = dshl(UInt<1>("h01"), T_704)
node T_707 = bits(T_706, 5, 0)
infer accessor T_709 = idxPages[UInt<5>("h018")]
node T_711 = dshl(UInt<1>("h01"), T_709)
node T_712 = bits(T_711, 5, 0)
infer accessor T_714 = idxPages[UInt<5>("h019")]
node T_716 = dshl(UInt<1>("h01"), T_714)
node T_717 = bits(T_716, 5, 0)
infer accessor T_719 = idxPages[UInt<5>("h01a")]
node T_721 = dshl(UInt<1>("h01"), T_719)
node T_722 = bits(T_721, 5, 0)
infer accessor T_724 = idxPages[UInt<5>("h01b")]
node T_726 = dshl(UInt<1>("h01"), T_724)
node T_727 = bits(T_726, 5, 0)
infer accessor T_729 = idxPages[UInt<5>("h01c")]
node T_731 = dshl(UInt<1>("h01"), T_729)
node T_732 = bits(T_731, 5, 0)
infer accessor T_734 = idxPages[UInt<5>("h01d")]
node T_736 = dshl(UInt<1>("h01"), T_734)
node T_737 = bits(T_736, 5, 0)
infer accessor T_739 = idxPages[UInt<5>("h01e")]
node T_741 = dshl(UInt<1>("h01"), T_739)
node T_742 = bits(T_741, 5, 0)
infer accessor T_744 = idxPages[UInt<5>("h01f")]
node T_746 = dshl(UInt<1>("h01"), T_744)
node T_747 = bits(T_746, 5, 0)
infer accessor T_749 = idxPages[UInt<6>("h020")]
node T_751 = dshl(UInt<1>("h01"), T_749)
node T_752 = bits(T_751, 5, 0)
infer accessor T_754 = idxPages[UInt<6>("h021")]
node T_756 = dshl(UInt<1>("h01"), T_754)
node T_757 = bits(T_756, 5, 0)
infer accessor T_759 = idxPages[UInt<6>("h022")]
node T_761 = dshl(UInt<1>("h01"), T_759)
node T_762 = bits(T_761, 5, 0)
infer accessor T_764 = idxPages[UInt<6>("h023")]
node T_766 = dshl(UInt<1>("h01"), T_764)
node T_767 = bits(T_766, 5, 0)
infer accessor T_769 = idxPages[UInt<6>("h024")]
node T_771 = dshl(UInt<1>("h01"), T_769)
node T_772 = bits(T_771, 5, 0)
infer accessor T_774 = idxPages[UInt<6>("h025")]
node T_776 = dshl(UInt<1>("h01"), T_774)
node T_777 = bits(T_776, 5, 0)
infer accessor T_779 = idxPages[UInt<6>("h026")]
node T_781 = dshl(UInt<1>("h01"), T_779)
node T_782 = bits(T_781, 5, 0)
infer accessor T_784 = idxPages[UInt<6>("h027")]
node T_786 = dshl(UInt<1>("h01"), T_784)
node T_787 = bits(T_786, 5, 0)
infer accessor T_789 = idxPages[UInt<6>("h028")]
node T_791 = dshl(UInt<1>("h01"), T_789)
node T_792 = bits(T_791, 5, 0)
infer accessor T_794 = idxPages[UInt<6>("h029")]
node T_796 = dshl(UInt<1>("h01"), T_794)
node T_797 = bits(T_796, 5, 0)
infer accessor T_799 = idxPages[UInt<6>("h02a")]
node T_801 = dshl(UInt<1>("h01"), T_799)
node T_802 = bits(T_801, 5, 0)
infer accessor T_804 = idxPages[UInt<6>("h02b")]
node T_806 = dshl(UInt<1>("h01"), T_804)
node T_807 = bits(T_806, 5, 0)
infer accessor T_809 = idxPages[UInt<6>("h02c")]
node T_811 = dshl(UInt<1>("h01"), T_809)
node T_812 = bits(T_811, 5, 0)
infer accessor T_814 = idxPages[UInt<6>("h02d")]
node T_816 = dshl(UInt<1>("h01"), T_814)
node T_817 = bits(T_816, 5, 0)
infer accessor T_819 = idxPages[UInt<6>("h02e")]
node T_821 = dshl(UInt<1>("h01"), T_819)
node T_822 = bits(T_821, 5, 0)
infer accessor T_824 = idxPages[UInt<6>("h02f")]
node T_826 = dshl(UInt<1>("h01"), T_824)
node T_827 = bits(T_826, 5, 0)
infer accessor T_829 = idxPages[UInt<6>("h030")]
node T_831 = dshl(UInt<1>("h01"), T_829)
node T_832 = bits(T_831, 5, 0)
infer accessor T_834 = idxPages[UInt<6>("h031")]
node T_836 = dshl(UInt<1>("h01"), T_834)
node T_837 = bits(T_836, 5, 0)
infer accessor T_839 = idxPages[UInt<6>("h032")]
node T_841 = dshl(UInt<1>("h01"), T_839)
node T_842 = bits(T_841, 5, 0)
infer accessor T_844 = idxPages[UInt<6>("h033")]
node T_846 = dshl(UInt<1>("h01"), T_844)
node T_847 = bits(T_846, 5, 0)
infer accessor T_849 = idxPages[UInt<6>("h034")]
node T_851 = dshl(UInt<1>("h01"), T_849)
node T_852 = bits(T_851, 5, 0)
infer accessor T_854 = idxPages[UInt<6>("h035")]
node T_856 = dshl(UInt<1>("h01"), T_854)
node T_857 = bits(T_856, 5, 0)
infer accessor T_859 = idxPages[UInt<6>("h036")]
node T_861 = dshl(UInt<1>("h01"), T_859)
node T_862 = bits(T_861, 5, 0)
infer accessor T_864 = idxPages[UInt<6>("h037")]
node T_866 = dshl(UInt<1>("h01"), T_864)
node T_867 = bits(T_866, 5, 0)
infer accessor T_869 = idxPages[UInt<6>("h038")]
node T_871 = dshl(UInt<1>("h01"), T_869)
node T_872 = bits(T_871, 5, 0)
infer accessor T_874 = idxPages[UInt<6>("h039")]
node T_876 = dshl(UInt<1>("h01"), T_874)
node T_877 = bits(T_876, 5, 0)
infer accessor T_879 = idxPages[UInt<6>("h03a")]
node T_881 = dshl(UInt<1>("h01"), T_879)
node T_882 = bits(T_881, 5, 0)
infer accessor T_884 = idxPages[UInt<6>("h03b")]
node T_886 = dshl(UInt<1>("h01"), T_884)
node T_887 = bits(T_886, 5, 0)
infer accessor T_889 = idxPages[UInt<6>("h03c")]
node T_891 = dshl(UInt<1>("h01"), T_889)
node T_892 = bits(T_891, 5, 0)
infer accessor T_894 = idxPages[UInt<6>("h03d")]
node T_896 = dshl(UInt<1>("h01"), T_894)
node T_897 = bits(T_896, 5, 0)
infer accessor T_899 = tgtPages[UInt<1>("h00")]
node T_901 = dshl(UInt<1>("h01"), T_899)
node T_902 = bits(T_901, 5, 0)
infer accessor T_904 = tgtPages[UInt<1>("h01")]
node T_906 = dshl(UInt<1>("h01"), T_904)
node T_907 = bits(T_906, 5, 0)
infer accessor T_909 = tgtPages[UInt<2>("h02")]
node T_911 = dshl(UInt<1>("h01"), T_909)
node T_912 = bits(T_911, 5, 0)
infer accessor T_914 = tgtPages[UInt<2>("h03")]
node T_916 = dshl(UInt<1>("h01"), T_914)
node T_917 = bits(T_916, 5, 0)
infer accessor T_919 = tgtPages[UInt<3>("h04")]
node T_921 = dshl(UInt<1>("h01"), T_919)
node T_922 = bits(T_921, 5, 0)
infer accessor T_924 = tgtPages[UInt<3>("h05")]
node T_926 = dshl(UInt<1>("h01"), T_924)
node T_927 = bits(T_926, 5, 0)
infer accessor T_929 = tgtPages[UInt<3>("h06")]
node T_931 = dshl(UInt<1>("h01"), T_929)
node T_932 = bits(T_931, 5, 0)
infer accessor T_934 = tgtPages[UInt<3>("h07")]
node T_936 = dshl(UInt<1>("h01"), T_934)
node T_937 = bits(T_936, 5, 0)
infer accessor T_939 = tgtPages[UInt<4>("h08")]
node T_941 = dshl(UInt<1>("h01"), T_939)
node T_942 = bits(T_941, 5, 0)
infer accessor T_944 = tgtPages[UInt<4>("h09")]
node T_946 = dshl(UInt<1>("h01"), T_944)
node T_947 = bits(T_946, 5, 0)
infer accessor T_949 = tgtPages[UInt<4>("h0a")]
node T_951 = dshl(UInt<1>("h01"), T_949)
node T_952 = bits(T_951, 5, 0)
infer accessor T_954 = tgtPages[UInt<4>("h0b")]
node T_956 = dshl(UInt<1>("h01"), T_954)
node T_957 = bits(T_956, 5, 0)
infer accessor T_959 = tgtPages[UInt<4>("h0c")]
node T_961 = dshl(UInt<1>("h01"), T_959)
node T_962 = bits(T_961, 5, 0)
infer accessor T_964 = tgtPages[UInt<4>("h0d")]
node T_966 = dshl(UInt<1>("h01"), T_964)
node T_967 = bits(T_966, 5, 0)
infer accessor T_969 = tgtPages[UInt<4>("h0e")]
node T_971 = dshl(UInt<1>("h01"), T_969)
node T_972 = bits(T_971, 5, 0)
infer accessor T_974 = tgtPages[UInt<4>("h0f")]
node T_976 = dshl(UInt<1>("h01"), T_974)
node T_977 = bits(T_976, 5, 0)
infer accessor T_979 = tgtPages[UInt<5>("h010")]
node T_981 = dshl(UInt<1>("h01"), T_979)
node T_982 = bits(T_981, 5, 0)
infer accessor T_984 = tgtPages[UInt<5>("h011")]
node T_986 = dshl(UInt<1>("h01"), T_984)
node T_987 = bits(T_986, 5, 0)
infer accessor T_989 = tgtPages[UInt<5>("h012")]
node T_991 = dshl(UInt<1>("h01"), T_989)
node T_992 = bits(T_991, 5, 0)
infer accessor T_994 = tgtPages[UInt<5>("h013")]
node T_996 = dshl(UInt<1>("h01"), T_994)
node T_997 = bits(T_996, 5, 0)
infer accessor T_999 = tgtPages[UInt<5>("h014")]
node T_1001 = dshl(UInt<1>("h01"), T_999)
node T_1002 = bits(T_1001, 5, 0)
infer accessor T_1004 = tgtPages[UInt<5>("h015")]
node T_1006 = dshl(UInt<1>("h01"), T_1004)
node T_1007 = bits(T_1006, 5, 0)
infer accessor T_1009 = tgtPages[UInt<5>("h016")]
node T_1011 = dshl(UInt<1>("h01"), T_1009)
node T_1012 = bits(T_1011, 5, 0)
infer accessor T_1014 = tgtPages[UInt<5>("h017")]
node T_1016 = dshl(UInt<1>("h01"), T_1014)
node T_1017 = bits(T_1016, 5, 0)
infer accessor T_1019 = tgtPages[UInt<5>("h018")]
node T_1021 = dshl(UInt<1>("h01"), T_1019)
node T_1022 = bits(T_1021, 5, 0)
infer accessor T_1024 = tgtPages[UInt<5>("h019")]
node T_1026 = dshl(UInt<1>("h01"), T_1024)
node T_1027 = bits(T_1026, 5, 0)
infer accessor T_1029 = tgtPages[UInt<5>("h01a")]
node T_1031 = dshl(UInt<1>("h01"), T_1029)
node T_1032 = bits(T_1031, 5, 0)
infer accessor T_1034 = tgtPages[UInt<5>("h01b")]
node T_1036 = dshl(UInt<1>("h01"), T_1034)
node T_1037 = bits(T_1036, 5, 0)
infer accessor T_1039 = tgtPages[UInt<5>("h01c")]
node T_1041 = dshl(UInt<1>("h01"), T_1039)
node T_1042 = bits(T_1041, 5, 0)
infer accessor T_1044 = tgtPages[UInt<5>("h01d")]
node T_1046 = dshl(UInt<1>("h01"), T_1044)
node T_1047 = bits(T_1046, 5, 0)
infer accessor T_1049 = tgtPages[UInt<5>("h01e")]
node T_1051 = dshl(UInt<1>("h01"), T_1049)
node T_1052 = bits(T_1051, 5, 0)
infer accessor T_1054 = tgtPages[UInt<5>("h01f")]
node T_1056 = dshl(UInt<1>("h01"), T_1054)
node T_1057 = bits(T_1056, 5, 0)
infer accessor T_1059 = tgtPages[UInt<6>("h020")]
node T_1061 = dshl(UInt<1>("h01"), T_1059)
node T_1062 = bits(T_1061, 5, 0)
infer accessor T_1064 = tgtPages[UInt<6>("h021")]
node T_1066 = dshl(UInt<1>("h01"), T_1064)
node T_1067 = bits(T_1066, 5, 0)
infer accessor T_1069 = tgtPages[UInt<6>("h022")]
node T_1071 = dshl(UInt<1>("h01"), T_1069)
node T_1072 = bits(T_1071, 5, 0)
infer accessor T_1074 = tgtPages[UInt<6>("h023")]
node T_1076 = dshl(UInt<1>("h01"), T_1074)
node T_1077 = bits(T_1076, 5, 0)
infer accessor T_1079 = tgtPages[UInt<6>("h024")]
node T_1081 = dshl(UInt<1>("h01"), T_1079)
node T_1082 = bits(T_1081, 5, 0)
infer accessor T_1084 = tgtPages[UInt<6>("h025")]
node T_1086 = dshl(UInt<1>("h01"), T_1084)
node T_1087 = bits(T_1086, 5, 0)
infer accessor T_1089 = tgtPages[UInt<6>("h026")]
node T_1091 = dshl(UInt<1>("h01"), T_1089)
node T_1092 = bits(T_1091, 5, 0)
infer accessor T_1094 = tgtPages[UInt<6>("h027")]
node T_1096 = dshl(UInt<1>("h01"), T_1094)
node T_1097 = bits(T_1096, 5, 0)
infer accessor T_1099 = tgtPages[UInt<6>("h028")]
node T_1101 = dshl(UInt<1>("h01"), T_1099)
node T_1102 = bits(T_1101, 5, 0)
infer accessor T_1104 = tgtPages[UInt<6>("h029")]
node T_1106 = dshl(UInt<1>("h01"), T_1104)
node T_1107 = bits(T_1106, 5, 0)
infer accessor T_1109 = tgtPages[UInt<6>("h02a")]
node T_1111 = dshl(UInt<1>("h01"), T_1109)
node T_1112 = bits(T_1111, 5, 0)
infer accessor T_1114 = tgtPages[UInt<6>("h02b")]
node T_1116 = dshl(UInt<1>("h01"), T_1114)
node T_1117 = bits(T_1116, 5, 0)
infer accessor T_1119 = tgtPages[UInt<6>("h02c")]
node T_1121 = dshl(UInt<1>("h01"), T_1119)
node T_1122 = bits(T_1121, 5, 0)
infer accessor T_1124 = tgtPages[UInt<6>("h02d")]
node T_1126 = dshl(UInt<1>("h01"), T_1124)
node T_1127 = bits(T_1126, 5, 0)
infer accessor T_1129 = tgtPages[UInt<6>("h02e")]
node T_1131 = dshl(UInt<1>("h01"), T_1129)
node T_1132 = bits(T_1131, 5, 0)
infer accessor T_1134 = tgtPages[UInt<6>("h02f")]
node T_1136 = dshl(UInt<1>("h01"), T_1134)
node T_1137 = bits(T_1136, 5, 0)
infer accessor T_1139 = tgtPages[UInt<6>("h030")]
node T_1141 = dshl(UInt<1>("h01"), T_1139)
node T_1142 = bits(T_1141, 5, 0)
infer accessor T_1144 = tgtPages[UInt<6>("h031")]
node T_1146 = dshl(UInt<1>("h01"), T_1144)
node T_1147 = bits(T_1146, 5, 0)
infer accessor T_1149 = tgtPages[UInt<6>("h032")]
node T_1151 = dshl(UInt<1>("h01"), T_1149)
node T_1152 = bits(T_1151, 5, 0)
infer accessor T_1154 = tgtPages[UInt<6>("h033")]
node T_1156 = dshl(UInt<1>("h01"), T_1154)
node T_1157 = bits(T_1156, 5, 0)
infer accessor T_1159 = tgtPages[UInt<6>("h034")]
node T_1161 = dshl(UInt<1>("h01"), T_1159)
node T_1162 = bits(T_1161, 5, 0)
infer accessor T_1164 = tgtPages[UInt<6>("h035")]
node T_1166 = dshl(UInt<1>("h01"), T_1164)
node T_1167 = bits(T_1166, 5, 0)
infer accessor T_1169 = tgtPages[UInt<6>("h036")]
node T_1171 = dshl(UInt<1>("h01"), T_1169)
node T_1172 = bits(T_1171, 5, 0)
infer accessor T_1174 = tgtPages[UInt<6>("h037")]
node T_1176 = dshl(UInt<1>("h01"), T_1174)
node T_1177 = bits(T_1176, 5, 0)
infer accessor T_1179 = tgtPages[UInt<6>("h038")]
node T_1181 = dshl(UInt<1>("h01"), T_1179)
node T_1182 = bits(T_1181, 5, 0)
infer accessor T_1184 = tgtPages[UInt<6>("h039")]
node T_1186 = dshl(UInt<1>("h01"), T_1184)
node T_1187 = bits(T_1186, 5, 0)
infer accessor T_1189 = tgtPages[UInt<6>("h03a")]
node T_1191 = dshl(UInt<1>("h01"), T_1189)
node T_1192 = bits(T_1191, 5, 0)
infer accessor T_1194 = tgtPages[UInt<6>("h03b")]
node T_1196 = dshl(UInt<1>("h01"), T_1194)
node T_1197 = bits(T_1196, 5, 0)
infer accessor T_1199 = tgtPages[UInt<6>("h03c")]
node T_1201 = dshl(UInt<1>("h01"), T_1199)
node T_1202 = bits(T_1201, 5, 0)
infer accessor T_1204 = tgtPages[UInt<6>("h03d")]
node T_1206 = dshl(UInt<1>("h01"), T_1204)
node T_1207 = bits(T_1206, 5, 0)
reg useRAS : UInt<1>[62], clock, reset
reg isJump : UInt<1>[62], clock, reset
cmem brIdx : UInt<1>[62], clock
reg T_1477 : UInt<1>, clock, reset
onreset T_1477 := UInt<1>("h00")
T_1477 := btb_update.valid
reg T_1478 : {prediction : {valid : UInt<1>, bits : {taken : UInt<1>, mask : UInt<1>, bridx : UInt<1>, target : UInt<39>, entry : UInt<6>, bht : {history : UInt<7>, value : UInt<2>}}}, pc : UInt<39>, target : UInt<39>, taken : UInt<1>, isJump : UInt<1>, isReturn : UInt<1>, br_pc : UInt<39>}, clock, reset
when btb_update.valid :
T_1478 <> btb_update.bits
skip
wire r_btb_update : {valid : UInt<1>, bits : {prediction : {valid : UInt<1>, bits : {taken : UInt<1>, mask : UInt<1>, bridx : UInt<1>, target : UInt<39>, entry : UInt<6>, bht : {history : UInt<7>, value : UInt<2>}}}, pc : UInt<39>, target : UInt<39>, taken : UInt<1>, isJump : UInt<1>, isReturn : UInt<1>, br_pc : UInt<39>}}
r_btb_update.bits.br_pc := UInt<1>("h00")
r_btb_update.bits.isReturn := UInt<1>("h00")
r_btb_update.bits.isJump := UInt<1>("h00")
r_btb_update.bits.taken := UInt<1>("h00")
r_btb_update.bits.target := UInt<1>("h00")
r_btb_update.bits.pc := UInt<1>("h00")
r_btb_update.bits.prediction.bits.bht.value := UInt<1>("h00")
r_btb_update.bits.prediction.bits.bht.history := UInt<1>("h00")
r_btb_update.bits.prediction.bits.entry := UInt<1>("h00")
r_btb_update.bits.prediction.bits.target := UInt<1>("h00")
r_btb_update.bits.prediction.bits.bridx := UInt<1>("h00")
r_btb_update.bits.prediction.bits.mask := UInt<1>("h00")
r_btb_update.bits.prediction.bits.taken := UInt<1>("h00")
r_btb_update.bits.prediction.valid := UInt<1>("h00")
r_btb_update.valid := UInt<1>("h00")
r_btb_update.valid := T_1477
r_btb_update.bits <> T_1478
node T_1677 = shr(req.bits.addr, 12)
infer accessor T_1679 = pages[UInt<1>("h00")]
node T_1680 = eq(T_1679, T_1677)
infer accessor T_1682 = pages[UInt<1>("h01")]
node T_1683 = eq(T_1682, T_1677)
infer accessor T_1685 = pages[UInt<2>("h02")]
node T_1686 = eq(T_1685, T_1677)
infer accessor T_1688 = pages[UInt<2>("h03")]
node T_1689 = eq(T_1688, T_1677)
infer accessor T_1691 = pages[UInt<3>("h04")]
node T_1692 = eq(T_1691, T_1677)
infer accessor T_1694 = pages[UInt<3>("h05")]
node T_1695 = eq(T_1694, T_1677)
wire T_1697 : UInt<1>[6]
T_1697[0] := T_1680
T_1697[1] := T_1683
T_1697[2] := T_1686
T_1697[3] := T_1689
T_1697[4] := T_1692
T_1697[5] := T_1695
node T_1705 = cat(T_1697[4], T_1697[3])
node T_1706 = cat(T_1697[5], T_1705)
node T_1707 = cat(T_1697[1], T_1697[0])
node T_1708 = cat(T_1697[2], T_1707)
node T_1709 = cat(T_1706, T_1708)
node pageHit = and(T_1709, pageValid)
node T_1711 = bits(req.bits.addr, 11, 0)
infer accessor T_1713 = idxs[UInt<1>("h00")]
node T_1714 = eq(T_1713, T_1711)
infer accessor T_1716 = idxs[UInt<1>("h01")]
node T_1717 = eq(T_1716, T_1711)
infer accessor T_1719 = idxs[UInt<2>("h02")]
node T_1720 = eq(T_1719, T_1711)
infer accessor T_1722 = idxs[UInt<2>("h03")]
node T_1723 = eq(T_1722, T_1711)
infer accessor T_1725 = idxs[UInt<3>("h04")]
node T_1726 = eq(T_1725, T_1711)
infer accessor T_1728 = idxs[UInt<3>("h05")]
node T_1729 = eq(T_1728, T_1711)
infer accessor T_1731 = idxs[UInt<3>("h06")]
node T_1732 = eq(T_1731, T_1711)
infer accessor T_1734 = idxs[UInt<3>("h07")]
node T_1735 = eq(T_1734, T_1711)
infer accessor T_1737 = idxs[UInt<4>("h08")]
node T_1738 = eq(T_1737, T_1711)
infer accessor T_1740 = idxs[UInt<4>("h09")]
node T_1741 = eq(T_1740, T_1711)
infer accessor T_1743 = idxs[UInt<4>("h0a")]
node T_1744 = eq(T_1743, T_1711)
infer accessor T_1746 = idxs[UInt<4>("h0b")]
node T_1747 = eq(T_1746, T_1711)
infer accessor T_1749 = idxs[UInt<4>("h0c")]
node T_1750 = eq(T_1749, T_1711)
infer accessor T_1752 = idxs[UInt<4>("h0d")]
node T_1753 = eq(T_1752, T_1711)
infer accessor T_1755 = idxs[UInt<4>("h0e")]
node T_1756 = eq(T_1755, T_1711)
infer accessor T_1758 = idxs[UInt<4>("h0f")]
node T_1759 = eq(T_1758, T_1711)
infer accessor T_1761 = idxs[UInt<5>("h010")]
node T_1762 = eq(T_1761, T_1711)
infer accessor T_1764 = idxs[UInt<5>("h011")]
node T_1765 = eq(T_1764, T_1711)
infer accessor T_1767 = idxs[UInt<5>("h012")]
node T_1768 = eq(T_1767, T_1711)
infer accessor T_1770 = idxs[UInt<5>("h013")]
node T_1771 = eq(T_1770, T_1711)
infer accessor T_1773 = idxs[UInt<5>("h014")]
node T_1774 = eq(T_1773, T_1711)
infer accessor T_1776 = idxs[UInt<5>("h015")]
node T_1777 = eq(T_1776, T_1711)
infer accessor T_1779 = idxs[UInt<5>("h016")]
node T_1780 = eq(T_1779, T_1711)
infer accessor T_1782 = idxs[UInt<5>("h017")]
node T_1783 = eq(T_1782, T_1711)
infer accessor T_1785 = idxs[UInt<5>("h018")]
node T_1786 = eq(T_1785, T_1711)
infer accessor T_1788 = idxs[UInt<5>("h019")]
node T_1789 = eq(T_1788, T_1711)
infer accessor T_1791 = idxs[UInt<5>("h01a")]
node T_1792 = eq(T_1791, T_1711)
infer accessor T_1794 = idxs[UInt<5>("h01b")]
node T_1795 = eq(T_1794, T_1711)
infer accessor T_1797 = idxs[UInt<5>("h01c")]
node T_1798 = eq(T_1797, T_1711)
infer accessor T_1800 = idxs[UInt<5>("h01d")]
node T_1801 = eq(T_1800, T_1711)
infer accessor T_1803 = idxs[UInt<5>("h01e")]
node T_1804 = eq(T_1803, T_1711)
infer accessor T_1806 = idxs[UInt<5>("h01f")]
node T_1807 = eq(T_1806, T_1711)
infer accessor T_1809 = idxs[UInt<6>("h020")]
node T_1810 = eq(T_1809, T_1711)
infer accessor T_1812 = idxs[UInt<6>("h021")]
node T_1813 = eq(T_1812, T_1711)
infer accessor T_1815 = idxs[UInt<6>("h022")]
node T_1816 = eq(T_1815, T_1711)
infer accessor T_1818 = idxs[UInt<6>("h023")]
node T_1819 = eq(T_1818, T_1711)
infer accessor T_1821 = idxs[UInt<6>("h024")]
node T_1822 = eq(T_1821, T_1711)
infer accessor T_1824 = idxs[UInt<6>("h025")]
node T_1825 = eq(T_1824, T_1711)
infer accessor T_1827 = idxs[UInt<6>("h026")]
node T_1828 = eq(T_1827, T_1711)
infer accessor T_1830 = idxs[UInt<6>("h027")]
node T_1831 = eq(T_1830, T_1711)
infer accessor T_1833 = idxs[UInt<6>("h028")]
node T_1834 = eq(T_1833, T_1711)
infer accessor T_1836 = idxs[UInt<6>("h029")]
node T_1837 = eq(T_1836, T_1711)
infer accessor T_1839 = idxs[UInt<6>("h02a")]
node T_1840 = eq(T_1839, T_1711)
infer accessor T_1842 = idxs[UInt<6>("h02b")]
node T_1843 = eq(T_1842, T_1711)
infer accessor T_1845 = idxs[UInt<6>("h02c")]
node T_1846 = eq(T_1845, T_1711)
infer accessor T_1848 = idxs[UInt<6>("h02d")]
node T_1849 = eq(T_1848, T_1711)
infer accessor T_1851 = idxs[UInt<6>("h02e")]
node T_1852 = eq(T_1851, T_1711)
infer accessor T_1854 = idxs[UInt<6>("h02f")]
node T_1855 = eq(T_1854, T_1711)
infer accessor T_1857 = idxs[UInt<6>("h030")]
node T_1858 = eq(T_1857, T_1711)
infer accessor T_1860 = idxs[UInt<6>("h031")]
node T_1861 = eq(T_1860, T_1711)
infer accessor T_1863 = idxs[UInt<6>("h032")]
node T_1864 = eq(T_1863, T_1711)
infer accessor T_1866 = idxs[UInt<6>("h033")]
node T_1867 = eq(T_1866, T_1711)
infer accessor T_1869 = idxs[UInt<6>("h034")]
node T_1870 = eq(T_1869, T_1711)
infer accessor T_1872 = idxs[UInt<6>("h035")]
node T_1873 = eq(T_1872, T_1711)
infer accessor T_1875 = idxs[UInt<6>("h036")]
node T_1876 = eq(T_1875, T_1711)
infer accessor T_1878 = idxs[UInt<6>("h037")]
node T_1879 = eq(T_1878, T_1711)
infer accessor T_1881 = idxs[UInt<6>("h038")]
node T_1882 = eq(T_1881, T_1711)
infer accessor T_1884 = idxs[UInt<6>("h039")]
node T_1885 = eq(T_1884, T_1711)
infer accessor T_1887 = idxs[UInt<6>("h03a")]
node T_1888 = eq(T_1887, T_1711)
infer accessor T_1890 = idxs[UInt<6>("h03b")]
node T_1891 = eq(T_1890, T_1711)
infer accessor T_1893 = idxs[UInt<6>("h03c")]
node T_1894 = eq(T_1893, T_1711)
infer accessor T_1896 = idxs[UInt<6>("h03d")]
node T_1897 = eq(T_1896, T_1711)
wire T_1899 : UInt<1>[62]
T_1899[0] := T_1714
T_1899[1] := T_1717
T_1899[2] := T_1720
T_1899[3] := T_1723
T_1899[4] := T_1726
T_1899[5] := T_1729
T_1899[6] := T_1732
T_1899[7] := T_1735
T_1899[8] := T_1738
T_1899[9] := T_1741
T_1899[10] := T_1744
T_1899[11] := T_1747
T_1899[12] := T_1750
T_1899[13] := T_1753
T_1899[14] := T_1756
T_1899[15] := T_1759
T_1899[16] := T_1762
T_1899[17] := T_1765
T_1899[18] := T_1768
T_1899[19] := T_1771
T_1899[20] := T_1774
T_1899[21] := T_1777
T_1899[22] := T_1780
T_1899[23] := T_1783
T_1899[24] := T_1786
T_1899[25] := T_1789
T_1899[26] := T_1792
T_1899[27] := T_1795
T_1899[28] := T_1798
T_1899[29] := T_1801
T_1899[30] := T_1804
T_1899[31] := T_1807
T_1899[32] := T_1810
T_1899[33] := T_1813
T_1899[34] := T_1816
T_1899[35] := T_1819
T_1899[36] := T_1822
T_1899[37] := T_1825
T_1899[38] := T_1828
T_1899[39] := T_1831
T_1899[40] := T_1834
T_1899[41] := T_1837
T_1899[42] := T_1840
T_1899[43] := T_1843
T_1899[44] := T_1846
T_1899[45] := T_1849
T_1899[46] := T_1852
T_1899[47] := T_1855
T_1899[48] := T_1858
T_1899[49] := T_1861
T_1899[50] := T_1864
T_1899[51] := T_1867
T_1899[52] := T_1870
T_1899[53] := T_1873
T_1899[54] := T_1876
T_1899[55] := T_1879
T_1899[56] := T_1882
T_1899[57] := T_1885
T_1899[58] := T_1888
T_1899[59] := T_1891
T_1899[60] := T_1894
T_1899[61] := T_1897
node T_1963 = cat(T_1899[60], T_1899[59])
node T_1964 = cat(T_1899[61], T_1963)
node T_1965 = cat(T_1899[58], T_1899[57])
node T_1966 = cat(T_1899[56], T_1899[55])
node T_1967 = cat(T_1965, T_1966)
node T_1968 = cat(T_1964, T_1967)
node T_1969 = cat(T_1899[54], T_1899[53])
node T_1970 = cat(T_1899[52], T_1899[51])
node T_1971 = cat(T_1969, T_1970)
node T_1972 = cat(T_1899[50], T_1899[49])
node T_1973 = cat(T_1899[48], T_1899[47])
node T_1974 = cat(T_1972, T_1973)
node T_1975 = cat(T_1971, T_1974)
node T_1976 = cat(T_1968, T_1975)
node T_1977 = cat(T_1899[46], T_1899[45])
node T_1978 = cat(T_1899[44], T_1899[43])
node T_1979 = cat(T_1977, T_1978)
node T_1980 = cat(T_1899[42], T_1899[41])
node T_1981 = cat(T_1899[40], T_1899[39])
node T_1982 = cat(T_1980, T_1981)
node T_1983 = cat(T_1979, T_1982)
node T_1984 = cat(T_1899[38], T_1899[37])
node T_1985 = cat(T_1899[36], T_1899[35])
node T_1986 = cat(T_1984, T_1985)
node T_1987 = cat(T_1899[34], T_1899[33])
node T_1988 = cat(T_1899[32], T_1899[31])
node T_1989 = cat(T_1987, T_1988)
node T_1990 = cat(T_1986, T_1989)
node T_1991 = cat(T_1983, T_1990)
node T_1992 = cat(T_1976, T_1991)
node T_1993 = cat(T_1899[29], T_1899[28])
node T_1994 = cat(T_1899[30], T_1993)
node T_1995 = cat(T_1899[27], T_1899[26])
node T_1996 = cat(T_1899[25], T_1899[24])
node T_1997 = cat(T_1995, T_1996)
node T_1998 = cat(T_1994, T_1997)
node T_1999 = cat(T_1899[23], T_1899[22])
node T_2000 = cat(T_1899[21], T_1899[20])
node T_2001 = cat(T_1999, T_2000)
node T_2002 = cat(T_1899[19], T_1899[18])
node T_2003 = cat(T_1899[17], T_1899[16])
node T_2004 = cat(T_2002, T_2003)
node T_2005 = cat(T_2001, T_2004)
node T_2006 = cat(T_1998, T_2005)
node T_2007 = cat(T_1899[15], T_1899[14])
node T_2008 = cat(T_1899[13], T_1899[12])
node T_2009 = cat(T_2007, T_2008)
node T_2010 = cat(T_1899[11], T_1899[10])
node T_2011 = cat(T_1899[9], T_1899[8])
node T_2012 = cat(T_2010, T_2011)
node T_2013 = cat(T_2009, T_2012)
node T_2014 = cat(T_1899[7], T_1899[6])
node T_2015 = cat(T_1899[5], T_1899[4])
node T_2016 = cat(T_2014, T_2015)
node T_2017 = cat(T_1899[3], T_1899[2])
node T_2018 = cat(T_1899[1], T_1899[0])
node T_2019 = cat(T_2017, T_2018)
node T_2020 = cat(T_2016, T_2019)
node T_2021 = cat(T_2013, T_2020)
node T_2022 = cat(T_2006, T_2021)
node T_2023 = cat(T_1992, T_2022)
node T_2024 = and(T_592, pageHit)
node T_2025 = and(T_597, pageHit)
node T_2026 = and(T_602, pageHit)
node T_2027 = and(T_607, pageHit)
node T_2028 = and(T_612, pageHit)
node T_2029 = and(T_617, pageHit)
node T_2030 = and(T_622, pageHit)
node T_2031 = and(T_627, pageHit)
node T_2032 = and(T_632, pageHit)
node T_2033 = and(T_637, pageHit)
node T_2034 = and(T_642, pageHit)
node T_2035 = and(T_647, pageHit)
node T_2036 = and(T_652, pageHit)
node T_2037 = and(T_657, pageHit)
node T_2038 = and(T_662, pageHit)
node T_2039 = and(T_667, pageHit)
node T_2040 = and(T_672, pageHit)
node T_2041 = and(T_677, pageHit)
node T_2042 = and(T_682, pageHit)
node T_2043 = and(T_687, pageHit)
node T_2044 = and(T_692, pageHit)
node T_2045 = and(T_697, pageHit)
node T_2046 = and(T_702, pageHit)
node T_2047 = and(T_707, pageHit)
node T_2048 = and(T_712, pageHit)
node T_2049 = and(T_717, pageHit)
node T_2050 = and(T_722, pageHit)
node T_2051 = and(T_727, pageHit)
node T_2052 = and(T_732, pageHit)
node T_2053 = and(T_737, pageHit)
node T_2054 = and(T_742, pageHit)
node T_2055 = and(T_747, pageHit)
node T_2056 = and(T_752, pageHit)
node T_2057 = and(T_757, pageHit)
node T_2058 = and(T_762, pageHit)
node T_2059 = and(T_767, pageHit)
node T_2060 = and(T_772, pageHit)
node T_2061 = and(T_777, pageHit)
node T_2062 = and(T_782, pageHit)
node T_2063 = and(T_787, pageHit)
node T_2064 = and(T_792, pageHit)
node T_2065 = and(T_797, pageHit)
node T_2066 = and(T_802, pageHit)
node T_2067 = and(T_807, pageHit)
node T_2068 = and(T_812, pageHit)
node T_2069 = and(T_817, pageHit)
node T_2070 = and(T_822, pageHit)
node T_2071 = and(T_827, pageHit)
node T_2072 = and(T_832, pageHit)
node T_2073 = and(T_837, pageHit)
node T_2074 = and(T_842, pageHit)
node T_2075 = and(T_847, pageHit)
node T_2076 = and(T_852, pageHit)
node T_2077 = and(T_857, pageHit)
node T_2078 = and(T_862, pageHit)
node T_2079 = and(T_867, pageHit)
node T_2080 = and(T_872, pageHit)
node T_2081 = and(T_877, pageHit)
node T_2082 = and(T_882, pageHit)
node T_2083 = and(T_887, pageHit)
node T_2084 = and(T_892, pageHit)
node T_2085 = and(T_897, pageHit)
node T_2087 = neq(T_2024, UInt<1>("h00"))
node T_2089 = neq(T_2025, UInt<1>("h00"))
node T_2091 = neq(T_2026, UInt<1>("h00"))
node T_2093 = neq(T_2027, UInt<1>("h00"))
node T_2095 = neq(T_2028, UInt<1>("h00"))
node T_2097 = neq(T_2029, UInt<1>("h00"))
node T_2099 = neq(T_2030, UInt<1>("h00"))
node T_2101 = neq(T_2031, UInt<1>("h00"))
node T_2103 = neq(T_2032, UInt<1>("h00"))
node T_2105 = neq(T_2033, UInt<1>("h00"))
node T_2107 = neq(T_2034, UInt<1>("h00"))
node T_2109 = neq(T_2035, UInt<1>("h00"))
node T_2111 = neq(T_2036, UInt<1>("h00"))
node T_2113 = neq(T_2037, UInt<1>("h00"))
node T_2115 = neq(T_2038, UInt<1>("h00"))
node T_2117 = neq(T_2039, UInt<1>("h00"))
node T_2119 = neq(T_2040, UInt<1>("h00"))
node T_2121 = neq(T_2041, UInt<1>("h00"))
node T_2123 = neq(T_2042, UInt<1>("h00"))
node T_2125 = neq(T_2043, UInt<1>("h00"))
node T_2127 = neq(T_2044, UInt<1>("h00"))
node T_2129 = neq(T_2045, UInt<1>("h00"))
node T_2131 = neq(T_2046, UInt<1>("h00"))
node T_2133 = neq(T_2047, UInt<1>("h00"))
node T_2135 = neq(T_2048, UInt<1>("h00"))
node T_2137 = neq(T_2049, UInt<1>("h00"))
node T_2139 = neq(T_2050, UInt<1>("h00"))
node T_2141 = neq(T_2051, UInt<1>("h00"))
node T_2143 = neq(T_2052, UInt<1>("h00"))
node T_2145 = neq(T_2053, UInt<1>("h00"))
node T_2147 = neq(T_2054, UInt<1>("h00"))
node T_2149 = neq(T_2055, UInt<1>("h00"))
node T_2151 = neq(T_2056, UInt<1>("h00"))
node T_2153 = neq(T_2057, UInt<1>("h00"))
node T_2155 = neq(T_2058, UInt<1>("h00"))
node T_2157 = neq(T_2059, UInt<1>("h00"))
node T_2159 = neq(T_2060, UInt<1>("h00"))
node T_2161 = neq(T_2061, UInt<1>("h00"))
node T_2163 = neq(T_2062, UInt<1>("h00"))
node T_2165 = neq(T_2063, UInt<1>("h00"))
node T_2167 = neq(T_2064, UInt<1>("h00"))
node T_2169 = neq(T_2065, UInt<1>("h00"))
node T_2171 = neq(T_2066, UInt<1>("h00"))
node T_2173 = neq(T_2067, UInt<1>("h00"))
node T_2175 = neq(T_2068, UInt<1>("h00"))
node T_2177 = neq(T_2069, UInt<1>("h00"))
node T_2179 = neq(T_2070, UInt<1>("h00"))
node T_2181 = neq(T_2071, UInt<1>("h00"))
node T_2183 = neq(T_2072, UInt<1>("h00"))
node T_2185 = neq(T_2073, UInt<1>("h00"))
node T_2187 = neq(T_2074, UInt<1>("h00"))
node T_2189 = neq(T_2075, UInt<1>("h00"))
node T_2191 = neq(T_2076, UInt<1>("h00"))
node T_2193 = neq(T_2077, UInt<1>("h00"))
node T_2195 = neq(T_2078, UInt<1>("h00"))
node T_2197 = neq(T_2079, UInt<1>("h00"))
node T_2199 = neq(T_2080, UInt<1>("h00"))
node T_2201 = neq(T_2081, UInt<1>("h00"))
node T_2203 = neq(T_2082, UInt<1>("h00"))
node T_2205 = neq(T_2083, UInt<1>("h00"))
node T_2207 = neq(T_2084, UInt<1>("h00"))
node T_2209 = neq(T_2085, UInt<1>("h00"))
wire T_2211 : UInt<1>[62]
T_2211[0] := T_2087
T_2211[1] := T_2089
T_2211[2] := T_2091
T_2211[3] := T_2093
T_2211[4] := T_2095
T_2211[5] := T_2097
T_2211[6] := T_2099
T_2211[7] := T_2101
T_2211[8] := T_2103
T_2211[9] := T_2105
T_2211[10] := T_2107
T_2211[11] := T_2109
T_2211[12] := T_2111
T_2211[13] := T_2113
T_2211[14] := T_2115
T_2211[15] := T_2117
T_2211[16] := T_2119
T_2211[17] := T_2121
T_2211[18] := T_2123
T_2211[19] := T_2125
T_2211[20] := T_2127
T_2211[21] := T_2129
T_2211[22] := T_2131
T_2211[23] := T_2133
T_2211[24] := T_2135
T_2211[25] := T_2137
T_2211[26] := T_2139
T_2211[27] := T_2141
T_2211[28] := T_2143
T_2211[29] := T_2145
T_2211[30] := T_2147
T_2211[31] := T_2149
T_2211[32] := T_2151
T_2211[33] := T_2153
T_2211[34] := T_2155
T_2211[35] := T_2157
T_2211[36] := T_2159
T_2211[37] := T_2161
T_2211[38] := T_2163
T_2211[39] := T_2165
T_2211[40] := T_2167
T_2211[41] := T_2169
T_2211[42] := T_2171
T_2211[43] := T_2173
T_2211[44] := T_2175
T_2211[45] := T_2177
T_2211[46] := T_2179
T_2211[47] := T_2181
T_2211[48] := T_2183
T_2211[49] := T_2185
T_2211[50] := T_2187
T_2211[51] := T_2189
T_2211[52] := T_2191
T_2211[53] := T_2193
T_2211[54] := T_2195
T_2211[55] := T_2197
T_2211[56] := T_2199
T_2211[57] := T_2201
T_2211[58] := T_2203
T_2211[59] := T_2205
T_2211[60] := T_2207
T_2211[61] := T_2209
node T_2275 = cat(T_2211[60], T_2211[59])
node T_2276 = cat(T_2211[61], T_2275)
node T_2277 = cat(T_2211[58], T_2211[57])
node T_2278 = cat(T_2211[56], T_2211[55])
node T_2279 = cat(T_2277, T_2278)
node T_2280 = cat(T_2276, T_2279)
node T_2281 = cat(T_2211[54], T_2211[53])
node T_2282 = cat(T_2211[52], T_2211[51])
node T_2283 = cat(T_2281, T_2282)
node T_2284 = cat(T_2211[50], T_2211[49])
node T_2285 = cat(T_2211[48], T_2211[47])
node T_2286 = cat(T_2284, T_2285)
node T_2287 = cat(T_2283, T_2286)
node T_2288 = cat(T_2280, T_2287)
node T_2289 = cat(T_2211[46], T_2211[45])
node T_2290 = cat(T_2211[44], T_2211[43])
node T_2291 = cat(T_2289, T_2290)
node T_2292 = cat(T_2211[42], T_2211[41])
node T_2293 = cat(T_2211[40], T_2211[39])
node T_2294 = cat(T_2292, T_2293)
node T_2295 = cat(T_2291, T_2294)
node T_2296 = cat(T_2211[38], T_2211[37])
node T_2297 = cat(T_2211[36], T_2211[35])
node T_2298 = cat(T_2296, T_2297)
node T_2299 = cat(T_2211[34], T_2211[33])
node T_2300 = cat(T_2211[32], T_2211[31])
node T_2301 = cat(T_2299, T_2300)
node T_2302 = cat(T_2298, T_2301)
node T_2303 = cat(T_2295, T_2302)
node T_2304 = cat(T_2288, T_2303)
node T_2305 = cat(T_2211[29], T_2211[28])
node T_2306 = cat(T_2211[30], T_2305)
node T_2307 = cat(T_2211[27], T_2211[26])
node T_2308 = cat(T_2211[25], T_2211[24])
node T_2309 = cat(T_2307, T_2308)
node T_2310 = cat(T_2306, T_2309)
node T_2311 = cat(T_2211[23], T_2211[22])
node T_2312 = cat(T_2211[21], T_2211[20])
node T_2313 = cat(T_2311, T_2312)
node T_2314 = cat(T_2211[19], T_2211[18])
node T_2315 = cat(T_2211[17], T_2211[16])
node T_2316 = cat(T_2314, T_2315)
node T_2317 = cat(T_2313, T_2316)
node T_2318 = cat(T_2310, T_2317)
node T_2319 = cat(T_2211[15], T_2211[14])
node T_2320 = cat(T_2211[13], T_2211[12])
node T_2321 = cat(T_2319, T_2320)
node T_2322 = cat(T_2211[11], T_2211[10])
node T_2323 = cat(T_2211[9], T_2211[8])
node T_2324 = cat(T_2322, T_2323)
node T_2325 = cat(T_2321, T_2324)
node T_2326 = cat(T_2211[7], T_2211[6])
node T_2327 = cat(T_2211[5], T_2211[4])
node T_2328 = cat(T_2326, T_2327)
node T_2329 = cat(T_2211[3], T_2211[2])
node T_2330 = cat(T_2211[1], T_2211[0])
node T_2331 = cat(T_2329, T_2330)
node T_2332 = cat(T_2328, T_2331)
node T_2333 = cat(T_2325, T_2332)
node T_2334 = cat(T_2318, T_2333)
node T_2335 = cat(T_2304, T_2334)
node T_2336 = and(idxValid, T_2023)
node hits = and(T_2336, T_2335)
node T_2338 = shr(r_btb_update.bits.pc, 12)
infer accessor T_2340 = pages[UInt<1>("h00")]
node T_2341 = eq(T_2340, T_2338)
infer accessor T_2343 = pages[UInt<1>("h01")]
node T_2344 = eq(T_2343, T_2338)
infer accessor T_2346 = pages[UInt<2>("h02")]
node T_2347 = eq(T_2346, T_2338)
infer accessor T_2349 = pages[UInt<2>("h03")]
node T_2350 = eq(T_2349, T_2338)
infer accessor T_2352 = pages[UInt<3>("h04")]
node T_2353 = eq(T_2352, T_2338)
infer accessor T_2355 = pages[UInt<3>("h05")]
node T_2356 = eq(T_2355, T_2338)
wire T_2358 : UInt<1>[6]
T_2358[0] := T_2341
T_2358[1] := T_2344
T_2358[2] := T_2347
T_2358[3] := T_2350
T_2358[4] := T_2353
T_2358[5] := T_2356
node T_2366 = cat(T_2358[4], T_2358[3])
node T_2367 = cat(T_2358[5], T_2366)
node T_2368 = cat(T_2358[1], T_2358[0])
node T_2369 = cat(T_2358[2], T_2368)
node T_2370 = cat(T_2367, T_2369)
node updatePageHit = and(T_2370, pageValid)
node T_2372 = bits(r_btb_update.bits.pc, 11, 0)
infer accessor T_2374 = idxs[UInt<1>("h00")]
node T_2375 = eq(T_2374, T_2372)
infer accessor T_2377 = idxs[UInt<1>("h01")]
node T_2378 = eq(T_2377, T_2372)
infer accessor T_2380 = idxs[UInt<2>("h02")]
node T_2381 = eq(T_2380, T_2372)
infer accessor T_2383 = idxs[UInt<2>("h03")]
node T_2384 = eq(T_2383, T_2372)
infer accessor T_2386 = idxs[UInt<3>("h04")]
node T_2387 = eq(T_2386, T_2372)
infer accessor T_2389 = idxs[UInt<3>("h05")]
node T_2390 = eq(T_2389, T_2372)
infer accessor T_2392 = idxs[UInt<3>("h06")]
node T_2393 = eq(T_2392, T_2372)
infer accessor T_2395 = idxs[UInt<3>("h07")]
node T_2396 = eq(T_2395, T_2372)
infer accessor T_2398 = idxs[UInt<4>("h08")]
node T_2399 = eq(T_2398, T_2372)
infer accessor T_2401 = idxs[UInt<4>("h09")]
node T_2402 = eq(T_2401, T_2372)
infer accessor T_2404 = idxs[UInt<4>("h0a")]
node T_2405 = eq(T_2404, T_2372)
infer accessor T_2407 = idxs[UInt<4>("h0b")]
node T_2408 = eq(T_2407, T_2372)
infer accessor T_2410 = idxs[UInt<4>("h0c")]
node T_2411 = eq(T_2410, T_2372)
infer accessor T_2413 = idxs[UInt<4>("h0d")]
node T_2414 = eq(T_2413, T_2372)
infer accessor T_2416 = idxs[UInt<4>("h0e")]
node T_2417 = eq(T_2416, T_2372)
infer accessor T_2419 = idxs[UInt<4>("h0f")]
node T_2420 = eq(T_2419, T_2372)
infer accessor T_2422 = idxs[UInt<5>("h010")]
node T_2423 = eq(T_2422, T_2372)
infer accessor T_2425 = idxs[UInt<5>("h011")]
node T_2426 = eq(T_2425, T_2372)
infer accessor T_2428 = idxs[UInt<5>("h012")]
node T_2429 = eq(T_2428, T_2372)
infer accessor T_2431 = idxs[UInt<5>("h013")]
node T_2432 = eq(T_2431, T_2372)
infer accessor T_2434 = idxs[UInt<5>("h014")]
node T_2435 = eq(T_2434, T_2372)
infer accessor T_2437 = idxs[UInt<5>("h015")]
node T_2438 = eq(T_2437, T_2372)
infer accessor T_2440 = idxs[UInt<5>("h016")]
node T_2441 = eq(T_2440, T_2372)
infer accessor T_2443 = idxs[UInt<5>("h017")]
node T_2444 = eq(T_2443, T_2372)
infer accessor T_2446 = idxs[UInt<5>("h018")]
node T_2447 = eq(T_2446, T_2372)
infer accessor T_2449 = idxs[UInt<5>("h019")]
node T_2450 = eq(T_2449, T_2372)
infer accessor T_2452 = idxs[UInt<5>("h01a")]
node T_2453 = eq(T_2452, T_2372)
infer accessor T_2455 = idxs[UInt<5>("h01b")]
node T_2456 = eq(T_2455, T_2372)
infer accessor T_2458 = idxs[UInt<5>("h01c")]
node T_2459 = eq(T_2458, T_2372)
infer accessor T_2461 = idxs[UInt<5>("h01d")]
node T_2462 = eq(T_2461, T_2372)
infer accessor T_2464 = idxs[UInt<5>("h01e")]
node T_2465 = eq(T_2464, T_2372)
infer accessor T_2467 = idxs[UInt<5>("h01f")]
node T_2468 = eq(T_2467, T_2372)
infer accessor T_2470 = idxs[UInt<6>("h020")]
node T_2471 = eq(T_2470, T_2372)
infer accessor T_2473 = idxs[UInt<6>("h021")]
node T_2474 = eq(T_2473, T_2372)
infer accessor T_2476 = idxs[UInt<6>("h022")]
node T_2477 = eq(T_2476, T_2372)
infer accessor T_2479 = idxs[UInt<6>("h023")]
node T_2480 = eq(T_2479, T_2372)
infer accessor T_2482 = idxs[UInt<6>("h024")]
node T_2483 = eq(T_2482, T_2372)
infer accessor T_2485 = idxs[UInt<6>("h025")]
node T_2486 = eq(T_2485, T_2372)
infer accessor T_2488 = idxs[UInt<6>("h026")]
node T_2489 = eq(T_2488, T_2372)
infer accessor T_2491 = idxs[UInt<6>("h027")]
node T_2492 = eq(T_2491, T_2372)
infer accessor T_2494 = idxs[UInt<6>("h028")]
node T_2495 = eq(T_2494, T_2372)
infer accessor T_2497 = idxs[UInt<6>("h029")]
node T_2498 = eq(T_2497, T_2372)
infer accessor T_2500 = idxs[UInt<6>("h02a")]
node T_2501 = eq(T_2500, T_2372)
infer accessor T_2503 = idxs[UInt<6>("h02b")]
node T_2504 = eq(T_2503, T_2372)
infer accessor T_2506 = idxs[UInt<6>("h02c")]
node T_2507 = eq(T_2506, T_2372)
infer accessor T_2509 = idxs[UInt<6>("h02d")]
node T_2510 = eq(T_2509, T_2372)
infer accessor T_2512 = idxs[UInt<6>("h02e")]
node T_2513 = eq(T_2512, T_2372)
infer accessor T_2515 = idxs[UInt<6>("h02f")]
node T_2516 = eq(T_2515, T_2372)
infer accessor T_2518 = idxs[UInt<6>("h030")]
node T_2519 = eq(T_2518, T_2372)
infer accessor T_2521 = idxs[UInt<6>("h031")]
node T_2522 = eq(T_2521, T_2372)
infer accessor T_2524 = idxs[UInt<6>("h032")]
node T_2525 = eq(T_2524, T_2372)
infer accessor T_2527 = idxs[UInt<6>("h033")]
node T_2528 = eq(T_2527, T_2372)
infer accessor T_2530 = idxs[UInt<6>("h034")]
node T_2531 = eq(T_2530, T_2372)
infer accessor T_2533 = idxs[UInt<6>("h035")]
node T_2534 = eq(T_2533, T_2372)
infer accessor T_2536 = idxs[UInt<6>("h036")]
node T_2537 = eq(T_2536, T_2372)
infer accessor T_2539 = idxs[UInt<6>("h037")]
node T_2540 = eq(T_2539, T_2372)
infer accessor T_2542 = idxs[UInt<6>("h038")]
node T_2543 = eq(T_2542, T_2372)
infer accessor T_2545 = idxs[UInt<6>("h039")]
node T_2546 = eq(T_2545, T_2372)
infer accessor T_2548 = idxs[UInt<6>("h03a")]
node T_2549 = eq(T_2548, T_2372)
infer accessor T_2551 = idxs[UInt<6>("h03b")]
node T_2552 = eq(T_2551, T_2372)
infer accessor T_2554 = idxs[UInt<6>("h03c")]
node T_2555 = eq(T_2554, T_2372)
infer accessor T_2557 = idxs[UInt<6>("h03d")]
node T_2558 = eq(T_2557, T_2372)
wire T_2560 : UInt<1>[62]
T_2560[0] := T_2375
T_2560[1] := T_2378
T_2560[2] := T_2381
T_2560[3] := T_2384
T_2560[4] := T_2387
T_2560[5] := T_2390
T_2560[6] := T_2393
T_2560[7] := T_2396
T_2560[8] := T_2399
T_2560[9] := T_2402
T_2560[10] := T_2405
T_2560[11] := T_2408
T_2560[12] := T_2411
T_2560[13] := T_2414
T_2560[14] := T_2417
T_2560[15] := T_2420
T_2560[16] := T_2423
T_2560[17] := T_2426
T_2560[18] := T_2429
T_2560[19] := T_2432
T_2560[20] := T_2435
T_2560[21] := T_2438
T_2560[22] := T_2441
T_2560[23] := T_2444
T_2560[24] := T_2447
T_2560[25] := T_2450
T_2560[26] := T_2453
T_2560[27] := T_2456
T_2560[28] := T_2459
T_2560[29] := T_2462
T_2560[30] := T_2465
T_2560[31] := T_2468
T_2560[32] := T_2471
T_2560[33] := T_2474
T_2560[34] := T_2477
T_2560[35] := T_2480
T_2560[36] := T_2483
T_2560[37] := T_2486
T_2560[38] := T_2489
T_2560[39] := T_2492
T_2560[40] := T_2495
T_2560[41] := T_2498
T_2560[42] := T_2501
T_2560[43] := T_2504
T_2560[44] := T_2507
T_2560[45] := T_2510
T_2560[46] := T_2513
T_2560[47] := T_2516
T_2560[48] := T_2519
T_2560[49] := T_2522
T_2560[50] := T_2525
T_2560[51] := T_2528
T_2560[52] := T_2531
T_2560[53] := T_2534
T_2560[54] := T_2537
T_2560[55] := T_2540
T_2560[56] := T_2543
T_2560[57] := T_2546
T_2560[58] := T_2549
T_2560[59] := T_2552
T_2560[60] := T_2555
T_2560[61] := T_2558
node T_2624 = cat(T_2560[60], T_2560[59])
node T_2625 = cat(T_2560[61], T_2624)
node T_2626 = cat(T_2560[58], T_2560[57])
node T_2627 = cat(T_2560[56], T_2560[55])
node T_2628 = cat(T_2626, T_2627)
node T_2629 = cat(T_2625, T_2628)
node T_2630 = cat(T_2560[54], T_2560[53])
node T_2631 = cat(T_2560[52], T_2560[51])
node T_2632 = cat(T_2630, T_2631)
node T_2633 = cat(T_2560[50], T_2560[49])
node T_2634 = cat(T_2560[48], T_2560[47])
node T_2635 = cat(T_2633, T_2634)
node T_2636 = cat(T_2632, T_2635)
node T_2637 = cat(T_2629, T_2636)
node T_2638 = cat(T_2560[46], T_2560[45])
node T_2639 = cat(T_2560[44], T_2560[43])
node T_2640 = cat(T_2638, T_2639)
node T_2641 = cat(T_2560[42], T_2560[41])
node T_2642 = cat(T_2560[40], T_2560[39])
node T_2643 = cat(T_2641, T_2642)
node T_2644 = cat(T_2640, T_2643)
node T_2645 = cat(T_2560[38], T_2560[37])
node T_2646 = cat(T_2560[36], T_2560[35])
node T_2647 = cat(T_2645, T_2646)
node T_2648 = cat(T_2560[34], T_2560[33])
node T_2649 = cat(T_2560[32], T_2560[31])
node T_2650 = cat(T_2648, T_2649)
node T_2651 = cat(T_2647, T_2650)
node T_2652 = cat(T_2644, T_2651)
node T_2653 = cat(T_2637, T_2652)
node T_2654 = cat(T_2560[29], T_2560[28])
node T_2655 = cat(T_2560[30], T_2654)
node T_2656 = cat(T_2560[27], T_2560[26])
node T_2657 = cat(T_2560[25], T_2560[24])
node T_2658 = cat(T_2656, T_2657)
node T_2659 = cat(T_2655, T_2658)
node T_2660 = cat(T_2560[23], T_2560[22])
node T_2661 = cat(T_2560[21], T_2560[20])
node T_2662 = cat(T_2660, T_2661)
node T_2663 = cat(T_2560[19], T_2560[18])
node T_2664 = cat(T_2560[17], T_2560[16])
node T_2665 = cat(T_2663, T_2664)
node T_2666 = cat(T_2662, T_2665)
node T_2667 = cat(T_2659, T_2666)
node T_2668 = cat(T_2560[15], T_2560[14])
node T_2669 = cat(T_2560[13], T_2560[12])
node T_2670 = cat(T_2668, T_2669)
node T_2671 = cat(T_2560[11], T_2560[10])
node T_2672 = cat(T_2560[9], T_2560[8])
node T_2673 = cat(T_2671, T_2672)
node T_2674 = cat(T_2670, T_2673)
node T_2675 = cat(T_2560[7], T_2560[6])
node T_2676 = cat(T_2560[5], T_2560[4])
node T_2677 = cat(T_2675, T_2676)
node T_2678 = cat(T_2560[3], T_2560[2])
node T_2679 = cat(T_2560[1], T_2560[0])
node T_2680 = cat(T_2678, T_2679)
node T_2681 = cat(T_2677, T_2680)
node T_2682 = cat(T_2674, T_2681)
node T_2683 = cat(T_2667, T_2682)
node T_2684 = cat(T_2653, T_2683)
node T_2685 = and(T_592, updatePageHit)
node T_2686 = and(T_597, updatePageHit)
node T_2687 = and(T_602, updatePageHit)
node T_2688 = and(T_607, updatePageHit)
node T_2689 = and(T_612, updatePageHit)
node T_2690 = and(T_617, updatePageHit)
node T_2691 = and(T_622, updatePageHit)
node T_2692 = and(T_627, updatePageHit)
node T_2693 = and(T_632, updatePageHit)
node T_2694 = and(T_637, updatePageHit)
node T_2695 = and(T_642, updatePageHit)
node T_2696 = and(T_647, updatePageHit)
node T_2697 = and(T_652, updatePageHit)
node T_2698 = and(T_657, updatePageHit)
node T_2699 = and(T_662, updatePageHit)
node T_2700 = and(T_667, updatePageHit)
node T_2701 = and(T_672, updatePageHit)
node T_2702 = and(T_677, updatePageHit)
node T_2703 = and(T_682, updatePageHit)
node T_2704 = and(T_687, updatePageHit)
node T_2705 = and(T_692, updatePageHit)
node T_2706 = and(T_697, updatePageHit)
node T_2707 = and(T_702, updatePageHit)
node T_2708 = and(T_707, updatePageHit)
node T_2709 = and(T_712, updatePageHit)
node T_2710 = and(T_717, updatePageHit)
node T_2711 = and(T_722, updatePageHit)
node T_2712 = and(T_727, updatePageHit)
node T_2713 = and(T_732, updatePageHit)
node T_2714 = and(T_737, updatePageHit)
node T_2715 = and(T_742, updatePageHit)
node T_2716 = and(T_747, updatePageHit)
node T_2717 = and(T_752, updatePageHit)
node T_2718 = and(T_757, updatePageHit)
node T_2719 = and(T_762, updatePageHit)
node T_2720 = and(T_767, updatePageHit)
node T_2721 = and(T_772, updatePageHit)
node T_2722 = and(T_777, updatePageHit)
node T_2723 = and(T_782, updatePageHit)
node T_2724 = and(T_787, updatePageHit)
node T_2725 = and(T_792, updatePageHit)
node T_2726 = and(T_797, updatePageHit)
node T_2727 = and(T_802, updatePageHit)
node T_2728 = and(T_807, updatePageHit)
node T_2729 = and(T_812, updatePageHit)
node T_2730 = and(T_817, updatePageHit)
node T_2731 = and(T_822, updatePageHit)
node T_2732 = and(T_827, updatePageHit)
node T_2733 = and(T_832, updatePageHit)
node T_2734 = and(T_837, updatePageHit)
node T_2735 = and(T_842, updatePageHit)
node T_2736 = and(T_847, updatePageHit)
node T_2737 = and(T_852, updatePageHit)
node T_2738 = and(T_857, updatePageHit)
node T_2739 = and(T_862, updatePageHit)
node T_2740 = and(T_867, updatePageHit)
node T_2741 = and(T_872, updatePageHit)
node T_2742 = and(T_877, updatePageHit)
node T_2743 = and(T_882, updatePageHit)
node T_2744 = and(T_887, updatePageHit)
node T_2745 = and(T_892, updatePageHit)
node T_2746 = and(T_897, updatePageHit)
node T_2748 = neq(T_2685, UInt<1>("h00"))
node T_2750 = neq(T_2686, UInt<1>("h00"))
node T_2752 = neq(T_2687, UInt<1>("h00"))
node T_2754 = neq(T_2688, UInt<1>("h00"))
node T_2756 = neq(T_2689, UInt<1>("h00"))
node T_2758 = neq(T_2690, UInt<1>("h00"))
node T_2760 = neq(T_2691, UInt<1>("h00"))
node T_2762 = neq(T_2692, UInt<1>("h00"))
node T_2764 = neq(T_2693, UInt<1>("h00"))
node T_2766 = neq(T_2694, UInt<1>("h00"))
node T_2768 = neq(T_2695, UInt<1>("h00"))
node T_2770 = neq(T_2696, UInt<1>("h00"))
node T_2772 = neq(T_2697, UInt<1>("h00"))
node T_2774 = neq(T_2698, UInt<1>("h00"))
node T_2776 = neq(T_2699, UInt<1>("h00"))
node T_2778 = neq(T_2700, UInt<1>("h00"))
node T_2780 = neq(T_2701, UInt<1>("h00"))
node T_2782 = neq(T_2702, UInt<1>("h00"))
node T_2784 = neq(T_2703, UInt<1>("h00"))
node T_2786 = neq(T_2704, UInt<1>("h00"))
node T_2788 = neq(T_2705, UInt<1>("h00"))
node T_2790 = neq(T_2706, UInt<1>("h00"))
node T_2792 = neq(T_2707, UInt<1>("h00"))
node T_2794 = neq(T_2708, UInt<1>("h00"))
node T_2796 = neq(T_2709, UInt<1>("h00"))
node T_2798 = neq(T_2710, UInt<1>("h00"))
node T_2800 = neq(T_2711, UInt<1>("h00"))
node T_2802 = neq(T_2712, UInt<1>("h00"))
node T_2804 = neq(T_2713, UInt<1>("h00"))
node T_2806 = neq(T_2714, UInt<1>("h00"))
node T_2808 = neq(T_2715, UInt<1>("h00"))
node T_2810 = neq(T_2716, UInt<1>("h00"))
node T_2812 = neq(T_2717, UInt<1>("h00"))
node T_2814 = neq(T_2718, UInt<1>("h00"))
node T_2816 = neq(T_2719, UInt<1>("h00"))
node T_2818 = neq(T_2720, UInt<1>("h00"))
node T_2820 = neq(T_2721, UInt<1>("h00"))
node T_2822 = neq(T_2722, UInt<1>("h00"))
node T_2824 = neq(T_2723, UInt<1>("h00"))
node T_2826 = neq(T_2724, UInt<1>("h00"))
node T_2828 = neq(T_2725, UInt<1>("h00"))
node T_2830 = neq(T_2726, UInt<1>("h00"))
node T_2832 = neq(T_2727, UInt<1>("h00"))
node T_2834 = neq(T_2728, UInt<1>("h00"))
node T_2836 = neq(T_2729, UInt<1>("h00"))
node T_2838 = neq(T_2730, UInt<1>("h00"))
node T_2840 = neq(T_2731, UInt<1>("h00"))
node T_2842 = neq(T_2732, UInt<1>("h00"))
node T_2844 = neq(T_2733, UInt<1>("h00"))
node T_2846 = neq(T_2734, UInt<1>("h00"))
node T_2848 = neq(T_2735, UInt<1>("h00"))
node T_2850 = neq(T_2736, UInt<1>("h00"))
node T_2852 = neq(T_2737, UInt<1>("h00"))
node T_2854 = neq(T_2738, UInt<1>("h00"))
node T_2856 = neq(T_2739, UInt<1>("h00"))
node T_2858 = neq(T_2740, UInt<1>("h00"))
node T_2860 = neq(T_2741, UInt<1>("h00"))
node T_2862 = neq(T_2742, UInt<1>("h00"))
node T_2864 = neq(T_2743, UInt<1>("h00"))
node T_2866 = neq(T_2744, UInt<1>("h00"))
node T_2868 = neq(T_2745, UInt<1>("h00"))
node T_2870 = neq(T_2746, UInt<1>("h00"))
wire T_2872 : UInt<1>[62]
T_2872[0] := T_2748
T_2872[1] := T_2750
T_2872[2] := T_2752
T_2872[3] := T_2754
T_2872[4] := T_2756
T_2872[5] := T_2758
T_2872[6] := T_2760
T_2872[7] := T_2762
T_2872[8] := T_2764
T_2872[9] := T_2766
T_2872[10] := T_2768
T_2872[11] := T_2770
T_2872[12] := T_2772
T_2872[13] := T_2774
T_2872[14] := T_2776
T_2872[15] := T_2778
T_2872[16] := T_2780
T_2872[17] := T_2782
T_2872[18] := T_2784
T_2872[19] := T_2786
T_2872[20] := T_2788
T_2872[21] := T_2790
T_2872[22] := T_2792
T_2872[23] := T_2794
T_2872[24] := T_2796
T_2872[25] := T_2798
T_2872[26] := T_2800
T_2872[27] := T_2802
T_2872[28] := T_2804
T_2872[29] := T_2806
T_2872[30] := T_2808
T_2872[31] := T_2810
T_2872[32] := T_2812
T_2872[33] := T_2814
T_2872[34] := T_2816
T_2872[35] := T_2818
T_2872[36] := T_2820
T_2872[37] := T_2822
T_2872[38] := T_2824
T_2872[39] := T_2826
T_2872[40] := T_2828
T_2872[41] := T_2830
T_2872[42] := T_2832
T_2872[43] := T_2834
T_2872[44] := T_2836
T_2872[45] := T_2838
T_2872[46] := T_2840
T_2872[47] := T_2842
T_2872[48] := T_2844
T_2872[49] := T_2846
T_2872[50] := T_2848
T_2872[51] := T_2850
T_2872[52] := T_2852
T_2872[53] := T_2854
T_2872[54] := T_2856
T_2872[55] := T_2858
T_2872[56] := T_2860
T_2872[57] := T_2862
T_2872[58] := T_2864
T_2872[59] := T_2866
T_2872[60] := T_2868
T_2872[61] := T_2870
node T_2936 = cat(T_2872[60], T_2872[59])
node T_2937 = cat(T_2872[61], T_2936)
node T_2938 = cat(T_2872[58], T_2872[57])
node T_2939 = cat(T_2872[56], T_2872[55])
node T_2940 = cat(T_2938, T_2939)
node T_2941 = cat(T_2937, T_2940)
node T_2942 = cat(T_2872[54], T_2872[53])
node T_2943 = cat(T_2872[52], T_2872[51])
node T_2944 = cat(T_2942, T_2943)
node T_2945 = cat(T_2872[50], T_2872[49])
node T_2946 = cat(T_2872[48], T_2872[47])
node T_2947 = cat(T_2945, T_2946)
node T_2948 = cat(T_2944, T_2947)
node T_2949 = cat(T_2941, T_2948)
node T_2950 = cat(T_2872[46], T_2872[45])
node T_2951 = cat(T_2872[44], T_2872[43])
node T_2952 = cat(T_2950, T_2951)
node T_2953 = cat(T_2872[42], T_2872[41])
node T_2954 = cat(T_2872[40], T_2872[39])
node T_2955 = cat(T_2953, T_2954)
node T_2956 = cat(T_2952, T_2955)
node T_2957 = cat(T_2872[38], T_2872[37])
node T_2958 = cat(T_2872[36], T_2872[35])
node T_2959 = cat(T_2957, T_2958)
node T_2960 = cat(T_2872[34], T_2872[33])
node T_2961 = cat(T_2872[32], T_2872[31])
node T_2962 = cat(T_2960, T_2961)
node T_2963 = cat(T_2959, T_2962)
node T_2964 = cat(T_2956, T_2963)
node T_2965 = cat(T_2949, T_2964)
node T_2966 = cat(T_2872[29], T_2872[28])
node T_2967 = cat(T_2872[30], T_2966)
node T_2968 = cat(T_2872[27], T_2872[26])
node T_2969 = cat(T_2872[25], T_2872[24])
node T_2970 = cat(T_2968, T_2969)
node T_2971 = cat(T_2967, T_2970)
node T_2972 = cat(T_2872[23], T_2872[22])
node T_2973 = cat(T_2872[21], T_2872[20])
node T_2974 = cat(T_2972, T_2973)
node T_2975 = cat(T_2872[19], T_2872[18])
node T_2976 = cat(T_2872[17], T_2872[16])
node T_2977 = cat(T_2975, T_2976)
node T_2978 = cat(T_2974, T_2977)
node T_2979 = cat(T_2971, T_2978)
node T_2980 = cat(T_2872[15], T_2872[14])
node T_2981 = cat(T_2872[13], T_2872[12])
node T_2982 = cat(T_2980, T_2981)
node T_2983 = cat(T_2872[11], T_2872[10])
node T_2984 = cat(T_2872[9], T_2872[8])
node T_2985 = cat(T_2983, T_2984)
node T_2986 = cat(T_2982, T_2985)
node T_2987 = cat(T_2872[7], T_2872[6])
node T_2988 = cat(T_2872[5], T_2872[4])
node T_2989 = cat(T_2987, T_2988)
node T_2990 = cat(T_2872[3], T_2872[2])
node T_2991 = cat(T_2872[1], T_2872[0])
node T_2992 = cat(T_2990, T_2991)
node T_2993 = cat(T_2989, T_2992)
node T_2994 = cat(T_2986, T_2993)
node T_2995 = cat(T_2979, T_2994)
node T_2996 = cat(T_2965, T_2995)
node T_2997 = and(idxValid, T_2684)
node updateHits = and(T_2997, T_2996)
reg T_3000 : UInt<16>, clock, reset
onreset T_3000 := UInt<16>("h01")
when r_btb_update.valid :
node T_3001 = bit(T_3000, 0)
node T_3002 = bit(T_3000, 2)
node T_3003 = xor(T_3001, T_3002)
node T_3004 = bit(T_3000, 3)
node T_3005 = xor(T_3003, T_3004)
node T_3006 = bit(T_3000, 5)
node T_3007 = xor(T_3005, T_3006)
node T_3008 = bits(T_3000, 15, 1)
node T_3009 = cat(T_3007, T_3008)
T_3000 := T_3009
skip
node useUpdatePageHit = neq(updatePageHit, UInt<1>("h00"))
node doIdxPageRepl = eq(useUpdatePageHit, UInt<1>("h00"))
wire idxPageRepl : UInt<6>
idxPageRepl := UInt<1>("h00")
node idxPageUpdateOH = mux(useUpdatePageHit, updatePageHit, idxPageRepl)
node T_3018 = bits(idxPageUpdateOH, 5, 4)
node T_3019 = bits(idxPageUpdateOH, 3, 0)
node T_3021 = neq(T_3018, UInt<1>("h00"))
node T_3022 = or(T_3018, T_3019)
node T_3023 = bits(T_3022, 3, 2)
node T_3024 = bits(T_3022, 1, 0)
node T_3026 = neq(T_3023, UInt<1>("h00"))
node T_3027 = or(T_3023, T_3024)
node T_3028 = bit(T_3027, 1)
node T_3029 = cat(T_3026, T_3028)
node idxPageUpdate = cat(T_3021, T_3029)
node idxPageReplEn = mux(doIdxPageRepl, idxPageRepl, UInt<1>("h00"))
node T_3033 = shr(r_btb_update.bits.pc, 12)
node T_3034 = shr(req.bits.addr, 12)
node samePage = eq(T_3033, T_3034)
node T_3036 = not(idxPageReplEn)
node T_3037 = and(pageHit, T_3036)
node usePageHit = neq(T_3037, UInt<1>("h00"))
node T_3041 = eq(samePage, UInt<1>("h00"))
node T_3043 = eq(usePageHit, UInt<1>("h00"))
node doTgtPageRepl = and(T_3041, T_3043)
node T_3045 = bits(idxPageUpdateOH, 4, 0)
node T_3046 = shl(T_3045, 1)
node T_3047 = bit(idxPageUpdateOH, 5)
node T_3048 = or(T_3046, T_3047)
node tgtPageRepl = mux(samePage, idxPageUpdateOH, T_3048)
node T_3050 = mux(usePageHit, pageHit, tgtPageRepl)
node T_3051 = bits(T_3050, 5, 4)
node T_3052 = bits(T_3050, 3, 0)
node T_3054 = neq(T_3051, UInt<1>("h00"))
node T_3055 = or(T_3051, T_3052)
node T_3056 = bits(T_3055, 3, 2)
node T_3057 = bits(T_3055, 1, 0)
node T_3059 = neq(T_3056, UInt<1>("h00"))
node T_3060 = or(T_3056, T_3057)
node T_3061 = bit(T_3060, 1)
node T_3062 = cat(T_3059, T_3061)
node tgtPageUpdate = cat(T_3054, T_3062)
node tgtPageReplEn = mux(doTgtPageRepl, tgtPageRepl, UInt<1>("h00"))
node doPageRepl = or(doIdxPageRepl, doTgtPageRepl)
node pageReplEn = or(idxPageReplEn, tgtPageReplEn)
node T_3068 = and(r_btb_update.valid, doPageRepl)
reg T_3070 : UInt<3>, clock, reset
onreset T_3070 := UInt<3>("h00")
when T_3068 :
node T_3072 = eq(T_3070, UInt<3>("h05"))
node T_3074 = and(UInt<1>("h01"), T_3072)
node T_3077 = addw(T_3070, UInt<1>("h01"))
node T_3078 = mux(T_3074, UInt<1>("h00"), T_3077)
T_3070 := T_3078
skip
node T_3079 = and(T_3068, T_3072)
node T_3081 = dshl(UInt<1>("h01"), T_3070)
idxPageRepl := T_3081
when r_btb_update.valid :
node T_3082 = eq(req.bits.addr, r_btb_update.bits.target)
node T_3084 = eq(r_btb_update.bits.prediction.valid, UInt<1>("h00"))
reg T_3086 : UInt<6>, clock, reset
onreset T_3086 := UInt<6>("h00")
when T_3084 :
node T_3088 = eq(T_3086, UInt<6>("h03d"))
node T_3090 = and(UInt<1>("h01"), T_3088)
node T_3093 = addw(T_3086, UInt<1>("h01"))
node T_3094 = mux(T_3090, UInt<1>("h00"), T_3093)
T_3086 := T_3094
skip
node T_3095 = and(T_3084, T_3088)
node T_3096 = mux(r_btb_update.bits.prediction.valid, r_btb_update.bits.prediction.bits.entry, T_3086)
node T_3097 = or(T_592, T_902)
node T_3098 = and(pageReplEn, T_3097)
node T_3100 = neq(T_3098, UInt<1>("h00"))
node T_3101 = or(T_597, T_907)
node T_3102 = and(pageReplEn, T_3101)
node T_3104 = neq(T_3102, UInt<1>("h00"))
node T_3105 = or(T_602, T_912)
node T_3106 = and(pageReplEn, T_3105)
node T_3108 = neq(T_3106, UInt<1>("h00"))
node T_3109 = or(T_607, T_917)
node T_3110 = and(pageReplEn, T_3109)
node T_3112 = neq(T_3110, UInt<1>("h00"))
node T_3113 = or(T_612, T_922)
node T_3114 = and(pageReplEn, T_3113)
node T_3116 = neq(T_3114, UInt<1>("h00"))
node T_3117 = or(T_617, T_927)
node T_3118 = and(pageReplEn, T_3117)
node T_3120 = neq(T_3118, UInt<1>("h00"))
node T_3121 = or(T_622, T_932)
node T_3122 = and(pageReplEn, T_3121)
node T_3124 = neq(T_3122, UInt<1>("h00"))
node T_3125 = or(T_627, T_937)
node T_3126 = and(pageReplEn, T_3125)
node T_3128 = neq(T_3126, UInt<1>("h00"))
node T_3129 = or(T_632, T_942)
node T_3130 = and(pageReplEn, T_3129)
node T_3132 = neq(T_3130, UInt<1>("h00"))
node T_3133 = or(T_637, T_947)
node T_3134 = and(pageReplEn, T_3133)
node T_3136 = neq(T_3134, UInt<1>("h00"))
node T_3137 = or(T_642, T_952)
node T_3138 = and(pageReplEn, T_3137)
node T_3140 = neq(T_3138, UInt<1>("h00"))
node T_3141 = or(T_647, T_957)
node T_3142 = and(pageReplEn, T_3141)
node T_3144 = neq(T_3142, UInt<1>("h00"))
node T_3145 = or(T_652, T_962)
node T_3146 = and(pageReplEn, T_3145)
node T_3148 = neq(T_3146, UInt<1>("h00"))
node T_3149 = or(T_657, T_967)
node T_3150 = and(pageReplEn, T_3149)
node T_3152 = neq(T_3150, UInt<1>("h00"))
node T_3153 = or(T_662, T_972)
node T_3154 = and(pageReplEn, T_3153)
node T_3156 = neq(T_3154, UInt<1>("h00"))
node T_3157 = or(T_667, T_977)
node T_3158 = and(pageReplEn, T_3157)
node T_3160 = neq(T_3158, UInt<1>("h00"))
node T_3161 = or(T_672, T_982)
node T_3162 = and(pageReplEn, T_3161)
node T_3164 = neq(T_3162, UInt<1>("h00"))
node T_3165 = or(T_677, T_987)
node T_3166 = and(pageReplEn, T_3165)
node T_3168 = neq(T_3166, UInt<1>("h00"))
node T_3169 = or(T_682, T_992)
node T_3170 = and(pageReplEn, T_3169)
node T_3172 = neq(T_3170, UInt<1>("h00"))
node T_3173 = or(T_687, T_997)
node T_3174 = and(pageReplEn, T_3173)
node T_3176 = neq(T_3174, UInt<1>("h00"))
node T_3177 = or(T_692, T_1002)
node T_3178 = and(pageReplEn, T_3177)
node T_3180 = neq(T_3178, UInt<1>("h00"))
node T_3181 = or(T_697, T_1007)
node T_3182 = and(pageReplEn, T_3181)
node T_3184 = neq(T_3182, UInt<1>("h00"))
node T_3185 = or(T_702, T_1012)
node T_3186 = and(pageReplEn, T_3185)
node T_3188 = neq(T_3186, UInt<1>("h00"))
node T_3189 = or(T_707, T_1017)
node T_3190 = and(pageReplEn, T_3189)
node T_3192 = neq(T_3190, UInt<1>("h00"))
node T_3193 = or(T_712, T_1022)
node T_3194 = and(pageReplEn, T_3193)
node T_3196 = neq(T_3194, UInt<1>("h00"))
node T_3197 = or(T_717, T_1027)
node T_3198 = and(pageReplEn, T_3197)
node T_3200 = neq(T_3198, UInt<1>("h00"))
node T_3201 = or(T_722, T_1032)
node T_3202 = and(pageReplEn, T_3201)
node T_3204 = neq(T_3202, UInt<1>("h00"))
node T_3205 = or(T_727, T_1037)
node T_3206 = and(pageReplEn, T_3205)
node T_3208 = neq(T_3206, UInt<1>("h00"))
node T_3209 = or(T_732, T_1042)
node T_3210 = and(pageReplEn, T_3209)
node T_3212 = neq(T_3210, UInt<1>("h00"))
node T_3213 = or(T_737, T_1047)
node T_3214 = and(pageReplEn, T_3213)
node T_3216 = neq(T_3214, UInt<1>("h00"))
node T_3217 = or(T_742, T_1052)
node T_3218 = and(pageReplEn, T_3217)
node T_3220 = neq(T_3218, UInt<1>("h00"))
node T_3221 = or(T_747, T_1057)
node T_3222 = and(pageReplEn, T_3221)
node T_3224 = neq(T_3222, UInt<1>("h00"))
node T_3225 = or(T_752, T_1062)
node T_3226 = and(pageReplEn, T_3225)
node T_3228 = neq(T_3226, UInt<1>("h00"))
node T_3229 = or(T_757, T_1067)
node T_3230 = and(pageReplEn, T_3229)
node T_3232 = neq(T_3230, UInt<1>("h00"))
node T_3233 = or(T_762, T_1072)
node T_3234 = and(pageReplEn, T_3233)
node T_3236 = neq(T_3234, UInt<1>("h00"))
node T_3237 = or(T_767, T_1077)
node T_3238 = and(pageReplEn, T_3237)
node T_3240 = neq(T_3238, UInt<1>("h00"))
node T_3241 = or(T_772, T_1082)
node T_3242 = and(pageReplEn, T_3241)
node T_3244 = neq(T_3242, UInt<1>("h00"))
node T_3245 = or(T_777, T_1087)
node T_3246 = and(pageReplEn, T_3245)
node T_3248 = neq(T_3246, UInt<1>("h00"))
node T_3249 = or(T_782, T_1092)
node T_3250 = and(pageReplEn, T_3249)
node T_3252 = neq(T_3250, UInt<1>("h00"))
node T_3253 = or(T_787, T_1097)
node T_3254 = and(pageReplEn, T_3253)
node T_3256 = neq(T_3254, UInt<1>("h00"))
node T_3257 = or(T_792, T_1102)
node T_3258 = and(pageReplEn, T_3257)
node T_3260 = neq(T_3258, UInt<1>("h00"))
node T_3261 = or(T_797, T_1107)
node T_3262 = and(pageReplEn, T_3261)
node T_3264 = neq(T_3262, UInt<1>("h00"))
node T_3265 = or(T_802, T_1112)
node T_3266 = and(pageReplEn, T_3265)
node T_3268 = neq(T_3266, UInt<1>("h00"))
node T_3269 = or(T_807, T_1117)
node T_3270 = and(pageReplEn, T_3269)
node T_3272 = neq(T_3270, UInt<1>("h00"))
node T_3273 = or(T_812, T_1122)
node T_3274 = and(pageReplEn, T_3273)
node T_3276 = neq(T_3274, UInt<1>("h00"))
node T_3277 = or(T_817, T_1127)
node T_3278 = and(pageReplEn, T_3277)
node T_3280 = neq(T_3278, UInt<1>("h00"))
node T_3281 = or(T_822, T_1132)
node T_3282 = and(pageReplEn, T_3281)
node T_3284 = neq(T_3282, UInt<1>("h00"))
node T_3285 = or(T_827, T_1137)
node T_3286 = and(pageReplEn, T_3285)
node T_3288 = neq(T_3286, UInt<1>("h00"))
node T_3289 = or(T_832, T_1142)
node T_3290 = and(pageReplEn, T_3289)
node T_3292 = neq(T_3290, UInt<1>("h00"))
node T_3293 = or(T_837, T_1147)
node T_3294 = and(pageReplEn, T_3293)
node T_3296 = neq(T_3294, UInt<1>("h00"))
node T_3297 = or(T_842, T_1152)
node T_3298 = and(pageReplEn, T_3297)
node T_3300 = neq(T_3298, UInt<1>("h00"))
node T_3301 = or(T_847, T_1157)
node T_3302 = and(pageReplEn, T_3301)
node T_3304 = neq(T_3302, UInt<1>("h00"))
node T_3305 = or(T_852, T_1162)
node T_3306 = and(pageReplEn, T_3305)
node T_3308 = neq(T_3306, UInt<1>("h00"))
node T_3309 = or(T_857, T_1167)
node T_3310 = and(pageReplEn, T_3309)
node T_3312 = neq(T_3310, UInt<1>("h00"))
node T_3313 = or(T_862, T_1172)
node T_3314 = and(pageReplEn, T_3313)
node T_3316 = neq(T_3314, UInt<1>("h00"))
node T_3317 = or(T_867, T_1177)
node T_3318 = and(pageReplEn, T_3317)
node T_3320 = neq(T_3318, UInt<1>("h00"))
node T_3321 = or(T_872, T_1182)
node T_3322 = and(pageReplEn, T_3321)
node T_3324 = neq(T_3322, UInt<1>("h00"))
node T_3325 = or(T_877, T_1187)
node T_3326 = and(pageReplEn, T_3325)
node T_3328 = neq(T_3326, UInt<1>("h00"))
node T_3329 = or(T_882, T_1192)
node T_3330 = and(pageReplEn, T_3329)
node T_3332 = neq(T_3330, UInt<1>("h00"))
node T_3333 = or(T_887, T_1197)
node T_3334 = and(pageReplEn, T_3333)
node T_3336 = neq(T_3334, UInt<1>("h00"))
node T_3337 = or(T_892, T_1202)
node T_3338 = and(pageReplEn, T_3337)
node T_3340 = neq(T_3338, UInt<1>("h00"))
node T_3341 = or(T_897, T_1207)
node T_3342 = and(pageReplEn, T_3341)
node T_3344 = neq(T_3342, UInt<1>("h00"))
wire T_3346 : UInt<1>[62]
T_3346[0] := T_3100
T_3346[1] := T_3104
T_3346[2] := T_3108
T_3346[3] := T_3112
T_3346[4] := T_3116
T_3346[5] := T_3120
T_3346[6] := T_3124
T_3346[7] := T_3128
T_3346[8] := T_3132
T_3346[9] := T_3136
T_3346[10] := T_3140
T_3346[11] := T_3144
T_3346[12] := T_3148
T_3346[13] := T_3152
T_3346[14] := T_3156
T_3346[15] := T_3160
T_3346[16] := T_3164
T_3346[17] := T_3168
T_3346[18] := T_3172
T_3346[19] := T_3176
T_3346[20] := T_3180
T_3346[21] := T_3184
T_3346[22] := T_3188
T_3346[23] := T_3192
T_3346[24] := T_3196
T_3346[25] := T_3200
T_3346[26] := T_3204
T_3346[27] := T_3208
T_3346[28] := T_3212
T_3346[29] := T_3216
T_3346[30] := T_3220
T_3346[31] := T_3224
T_3346[32] := T_3228
T_3346[33] := T_3232
T_3346[34] := T_3236
T_3346[35] := T_3240
T_3346[36] := T_3244
T_3346[37] := T_3248
T_3346[38] := T_3252
T_3346[39] := T_3256
T_3346[40] := T_3260
T_3346[41] := T_3264
T_3346[42] := T_3268
T_3346[43] := T_3272
T_3346[44] := T_3276
T_3346[45] := T_3280
T_3346[46] := T_3284
T_3346[47] := T_3288
T_3346[48] := T_3292
T_3346[49] := T_3296
T_3346[50] := T_3300
T_3346[51] := T_3304
T_3346[52] := T_3308
T_3346[53] := T_3312
T_3346[54] := T_3316
T_3346[55] := T_3320
T_3346[56] := T_3324
T_3346[57] := T_3328
T_3346[58] := T_3332
T_3346[59] := T_3336
T_3346[60] := T_3340
T_3346[61] := T_3344
node T_3410 = cat(T_3346[60], T_3346[59])
node T_3411 = cat(T_3346[61], T_3410)
node T_3412 = cat(T_3346[58], T_3346[57])
node T_3413 = cat(T_3346[56], T_3346[55])
node T_3414 = cat(T_3412, T_3413)
node T_3415 = cat(T_3411, T_3414)
node T_3416 = cat(T_3346[54], T_3346[53])
node T_3417 = cat(T_3346[52], T_3346[51])
node T_3418 = cat(T_3416, T_3417)
node T_3419 = cat(T_3346[50], T_3346[49])
node T_3420 = cat(T_3346[48], T_3346[47])
node T_3421 = cat(T_3419, T_3420)
node T_3422 = cat(T_3418, T_3421)
node T_3423 = cat(T_3415, T_3422)
node T_3424 = cat(T_3346[46], T_3346[45])
node T_3425 = cat(T_3346[44], T_3346[43])
node T_3426 = cat(T_3424, T_3425)
node T_3427 = cat(T_3346[42], T_3346[41])
node T_3428 = cat(T_3346[40], T_3346[39])
node T_3429 = cat(T_3427, T_3428)
node T_3430 = cat(T_3426, T_3429)
node T_3431 = cat(T_3346[38], T_3346[37])
node T_3432 = cat(T_3346[36], T_3346[35])
node T_3433 = cat(T_3431, T_3432)
node T_3434 = cat(T_3346[34], T_3346[33])
node T_3435 = cat(T_3346[32], T_3346[31])
node T_3436 = cat(T_3434, T_3435)
node T_3437 = cat(T_3433, T_3436)
node T_3438 = cat(T_3430, T_3437)
node T_3439 = cat(T_3423, T_3438)
node T_3440 = cat(T_3346[29], T_3346[28])
node T_3441 = cat(T_3346[30], T_3440)
node T_3442 = cat(T_3346[27], T_3346[26])
node T_3443 = cat(T_3346[25], T_3346[24])
node T_3444 = cat(T_3442, T_3443)
node T_3445 = cat(T_3441, T_3444)
node T_3446 = cat(T_3346[23], T_3346[22])
node T_3447 = cat(T_3346[21], T_3346[20])
node T_3448 = cat(T_3446, T_3447)
node T_3449 = cat(T_3346[19], T_3346[18])
node T_3450 = cat(T_3346[17], T_3346[16])
node T_3451 = cat(T_3449, T_3450)
node T_3452 = cat(T_3448, T_3451)
node T_3453 = cat(T_3445, T_3452)
node T_3454 = cat(T_3346[15], T_3346[14])
node T_3455 = cat(T_3346[13], T_3346[12])
node T_3456 = cat(T_3454, T_3455)
node T_3457 = cat(T_3346[11], T_3346[10])
node T_3458 = cat(T_3346[9], T_3346[8])
node T_3459 = cat(T_3457, T_3458)
node T_3460 = cat(T_3456, T_3459)
node T_3461 = cat(T_3346[7], T_3346[6])
node T_3462 = cat(T_3346[5], T_3346[4])
node T_3463 = cat(T_3461, T_3462)
node T_3464 = cat(T_3346[3], T_3346[2])
node T_3465 = cat(T_3346[1], T_3346[0])
node T_3466 = cat(T_3464, T_3465)
node T_3467 = cat(T_3463, T_3466)
node T_3468 = cat(T_3460, T_3467)
node T_3469 = cat(T_3453, T_3468)
node T_3470 = cat(T_3439, T_3469)
node T_3472 = dshl(UInt<1>("h01"), T_3096)
node T_3473 = not(T_3470)
node T_3474 = and(idxValid, T_3473)
node T_3475 = or(T_3474, T_3472)
idxValid := T_3475
infer accessor T_3476 = idxs[T_3096]
T_3476 := r_btb_update.bits.pc
infer accessor T_3477 = tgts[T_3096]
T_3477 := req.bits.addr
infer accessor T_3478 = idxPages[T_3096]
T_3478 := idxPageUpdate
infer accessor T_3479 = tgtPages[T_3096]
T_3479 := tgtPageUpdate
infer accessor T_3480 = useRAS[T_3096]
T_3480 := r_btb_update.bits.isReturn
infer accessor T_3481 = isJump[T_3096]
T_3481 := r_btb_update.bits.isJump
infer accessor T_3482 = brIdx[T_3096]
T_3482 := UInt<1>("h00")
node T_3485 = cat(UInt<2>("h01"), UInt<2>("h01"))
node T_3486 = cat(UInt<2>("h01"), T_3485)
node T_3487 = and(idxPageUpdateOH, T_3486)
node T_3489 = neq(T_3487, UInt<1>("h00"))
node T_3490 = mux(T_3489, doIdxPageRepl, doTgtPageRepl)
node T_3491 = shr(r_btb_update.bits.pc, 12)
node T_3492 = shr(req.bits.addr, 12)
node T_3493 = mux(T_3489, T_3491, T_3492)
node T_3494 = bit(pageReplEn, 0)
node T_3495 = and(T_3490, T_3494)
when T_3495 :
infer accessor T_3497 = pages[UInt<1>("h00")]
T_3497 := T_3493
skip
node T_3498 = bit(pageReplEn, 2)
node T_3499 = and(T_3490, T_3498)
when T_3499 :
infer accessor T_3501 = pages[UInt<2>("h02")]
T_3501 := T_3493
skip
node T_3502 = bit(pageReplEn, 4)
node T_3503 = and(T_3490, T_3502)
when T_3503 :
infer accessor T_3505 = pages[UInt<3>("h04")]
T_3505 := T_3493
skip
node T_3506 = mux(T_3489, doTgtPageRepl, doIdxPageRepl)
node T_3507 = shr(req.bits.addr, 12)
node T_3508 = shr(r_btb_update.bits.pc, 12)
node T_3509 = mux(T_3489, T_3507, T_3508)
node T_3510 = bit(pageReplEn, 1)
node T_3511 = and(T_3506, T_3510)
when T_3511 :
infer accessor T_3513 = pages[UInt<1>("h01")]
T_3513 := T_3509
skip
node T_3514 = bit(pageReplEn, 3)
node T_3515 = and(T_3506, T_3514)
when T_3515 :
infer accessor T_3517 = pages[UInt<2>("h03")]
T_3517 := T_3509
skip
node T_3518 = bit(pageReplEn, 5)
node T_3519 = and(T_3506, T_3518)
when T_3519 :
infer accessor T_3521 = pages[UInt<3>("h05")]
T_3521 := T_3509
skip
when doPageRepl :
node T_3522 = or(pageValid, pageReplEn)
pageValid := T_3522
skip
skip
when invalidate :
idxValid := UInt<1>("h00")
pageValid := UInt<1>("h00")
skip
node T_3526 = neq(hits, UInt<1>("h00"))
resp.valid := T_3526
resp.bits.taken := resp.valid
node T_3527 = bit(hits, 0)
node T_3528 = bit(hits, 1)
node T_3529 = bit(hits, 2)
node T_3530 = bit(hits, 3)
node T_3531 = bit(hits, 4)
node T_3532 = bit(hits, 5)
node T_3533 = bit(hits, 6)
node T_3534 = bit(hits, 7)
node T_3535 = bit(hits, 8)
node T_3536 = bit(hits, 9)
node T_3537 = bit(hits, 10)
node T_3538 = bit(hits, 11)
node T_3539 = bit(hits, 12)
node T_3540 = bit(hits, 13)
node T_3541 = bit(hits, 14)
node T_3542 = bit(hits, 15)
node T_3543 = bit(hits, 16)
node T_3544 = bit(hits, 17)
node T_3545 = bit(hits, 18)
node T_3546 = bit(hits, 19)
node T_3547 = bit(hits, 20)
node T_3548 = bit(hits, 21)
node T_3549 = bit(hits, 22)
node T_3550 = bit(hits, 23)
node T_3551 = bit(hits, 24)
node T_3552 = bit(hits, 25)
node T_3553 = bit(hits, 26)
node T_3554 = bit(hits, 27)
node T_3555 = bit(hits, 28)
node T_3556 = bit(hits, 29)
node T_3557 = bit(hits, 30)
node T_3558 = bit(hits, 31)
node T_3559 = bit(hits, 32)
node T_3560 = bit(hits, 33)
node T_3561 = bit(hits, 34)
node T_3562 = bit(hits, 35)
node T_3563 = bit(hits, 36)
node T_3564 = bit(hits, 37)
node T_3565 = bit(hits, 38)
node T_3566 = bit(hits, 39)
node T_3567 = bit(hits, 40)
node T_3568 = bit(hits, 41)
node T_3569 = bit(hits, 42)
node T_3570 = bit(hits, 43)
node T_3571 = bit(hits, 44)
node T_3572 = bit(hits, 45)
node T_3573 = bit(hits, 46)
node T_3574 = bit(hits, 47)
node T_3575 = bit(hits, 48)
node T_3576 = bit(hits, 49)
node T_3577 = bit(hits, 50)
node T_3578 = bit(hits, 51)
node T_3579 = bit(hits, 52)
node T_3580 = bit(hits, 53)
node T_3581 = bit(hits, 54)
node T_3582 = bit(hits, 55)
node T_3583 = bit(hits, 56)
node T_3584 = bit(hits, 57)
node T_3585 = bit(hits, 58)
node T_3586 = bit(hits, 59)
node T_3587 = bit(hits, 60)
node T_3588 = bit(hits, 61)
node T_3590 = mux(T_3527, T_902, UInt<1>("h00"))
node T_3592 = mux(T_3528, T_907, UInt<1>("h00"))
node T_3594 = mux(T_3529, T_912, UInt<1>("h00"))
node T_3596 = mux(T_3530, T_917, UInt<1>("h00"))
node T_3598 = mux(T_3531, T_922, UInt<1>("h00"))
node T_3600 = mux(T_3532, T_927, UInt<1>("h00"))
node T_3602 = mux(T_3533, T_932, UInt<1>("h00"))
node T_3604 = mux(T_3534, T_937, UInt<1>("h00"))
node T_3606 = mux(T_3535, T_942, UInt<1>("h00"))
node T_3608 = mux(T_3536, T_947, UInt<1>("h00"))
node T_3610 = mux(T_3537, T_952, UInt<1>("h00"))
node T_3612 = mux(T_3538, T_957, UInt<1>("h00"))
node T_3614 = mux(T_3539, T_962, UInt<1>("h00"))
node T_3616 = mux(T_3540, T_967, UInt<1>("h00"))
node T_3618 = mux(T_3541, T_972, UInt<1>("h00"))
node T_3620 = mux(T_3542, T_977, UInt<1>("h00"))
node T_3622 = mux(T_3543, T_982, UInt<1>("h00"))
node T_3624 = mux(T_3544, T_987, UInt<1>("h00"))
node T_3626 = mux(T_3545, T_992, UInt<1>("h00"))
node T_3628 = mux(T_3546, T_997, UInt<1>("h00"))
node T_3630 = mux(T_3547, T_1002, UInt<1>("h00"))
node T_3632 = mux(T_3548, T_1007, UInt<1>("h00"))
node T_3634 = mux(T_3549, T_1012, UInt<1>("h00"))
node T_3636 = mux(T_3550, T_1017, UInt<1>("h00"))
node T_3638 = mux(T_3551, T_1022, UInt<1>("h00"))
node T_3640 = mux(T_3552, T_1027, UInt<1>("h00"))
node T_3642 = mux(T_3553, T_1032, UInt<1>("h00"))
node T_3644 = mux(T_3554, T_1037, UInt<1>("h00"))
node T_3646 = mux(T_3555, T_1042, UInt<1>("h00"))
node T_3648 = mux(T_3556, T_1047, UInt<1>("h00"))
node T_3650 = mux(T_3557, T_1052, UInt<1>("h00"))
node T_3652 = mux(T_3558, T_1057, UInt<1>("h00"))
node T_3654 = mux(T_3559, T_1062, UInt<1>("h00"))
node T_3656 = mux(T_3560, T_1067, UInt<1>("h00"))
node T_3658 = mux(T_3561, T_1072, UInt<1>("h00"))
node T_3660 = mux(T_3562, T_1077, UInt<1>("h00"))
node T_3662 = mux(T_3563, T_1082, UInt<1>("h00"))
node T_3664 = mux(T_3564, T_1087, UInt<1>("h00"))
node T_3666 = mux(T_3565, T_1092, UInt<1>("h00"))
node T_3668 = mux(T_3566, T_1097, UInt<1>("h00"))
node T_3670 = mux(T_3567, T_1102, UInt<1>("h00"))
node T_3672 = mux(T_3568, T_1107, UInt<1>("h00"))
node T_3674 = mux(T_3569, T_1112, UInt<1>("h00"))
node T_3676 = mux(T_3570, T_1117, UInt<1>("h00"))
node T_3678 = mux(T_3571, T_1122, UInt<1>("h00"))
node T_3680 = mux(T_3572, T_1127, UInt<1>("h00"))
node T_3682 = mux(T_3573, T_1132, UInt<1>("h00"))
node T_3684 = mux(T_3574, T_1137, UInt<1>("h00"))
node T_3686 = mux(T_3575, T_1142, UInt<1>("h00"))
node T_3688 = mux(T_3576, T_1147, UInt<1>("h00"))
node T_3690 = mux(T_3577, T_1152, UInt<1>("h00"))
node T_3692 = mux(T_3578, T_1157, UInt<1>("h00"))
node T_3694 = mux(T_3579, T_1162, UInt<1>("h00"))
node T_3696 = mux(T_3580, T_1167, UInt<1>("h00"))
node T_3698 = mux(T_3581, T_1172, UInt<1>("h00"))
node T_3700 = mux(T_3582, T_1177, UInt<1>("h00"))
node T_3702 = mux(T_3583, T_1182, UInt<1>("h00"))
node T_3704 = mux(T_3584, T_1187, UInt<1>("h00"))
node T_3706 = mux(T_3585, T_1192, UInt<1>("h00"))
node T_3708 = mux(T_3586, T_1197, UInt<1>("h00"))
node T_3710 = mux(T_3587, T_1202, UInt<1>("h00"))
node T_3712 = mux(T_3588, T_1207, UInt<1>("h00"))
node T_3714 = or(T_3590, T_3592)
node T_3715 = or(T_3714, T_3594)
node T_3716 = or(T_3715, T_3596)
node T_3717 = or(T_3716, T_3598)
node T_3718 = or(T_3717, T_3600)
node T_3719 = or(T_3718, T_3602)
node T_3720 = or(T_3719, T_3604)
node T_3721 = or(T_3720, T_3606)
node T_3722 = or(T_3721, T_3608)
node T_3723 = or(T_3722, T_3610)
node T_3724 = or(T_3723, T_3612)
node T_3725 = or(T_3724, T_3614)
node T_3726 = or(T_3725, T_3616)
node T_3727 = or(T_3726, T_3618)
node T_3728 = or(T_3727, T_3620)
node T_3729 = or(T_3728, T_3622)
node T_3730 = or(T_3729, T_3624)
node T_3731 = or(T_3730, T_3626)
node T_3732 = or(T_3731, T_3628)
node T_3733 = or(T_3732, T_3630)
node T_3734 = or(T_3733, T_3632)
node T_3735 = or(T_3734, T_3634)
node T_3736 = or(T_3735, T_3636)
node T_3737 = or(T_3736, T_3638)
node T_3738 = or(T_3737, T_3640)
node T_3739 = or(T_3738, T_3642)
node T_3740 = or(T_3739, T_3644)
node T_3741 = or(T_3740, T_3646)
node T_3742 = or(T_3741, T_3648)
node T_3743 = or(T_3742, T_3650)
node T_3744 = or(T_3743, T_3652)
node T_3745 = or(T_3744, T_3654)
node T_3746 = or(T_3745, T_3656)
node T_3747 = or(T_3746, T_3658)
node T_3748 = or(T_3747, T_3660)
node T_3749 = or(T_3748, T_3662)
node T_3750 = or(T_3749, T_3664)
node T_3751 = or(T_3750, T_3666)
node T_3752 = or(T_3751, T_3668)
node T_3753 = or(T_3752, T_3670)
node T_3754 = or(T_3753, T_3672)
node T_3755 = or(T_3754, T_3674)
node T_3756 = or(T_3755, T_3676)
node T_3757 = or(T_3756, T_3678)
node T_3758 = or(T_3757, T_3680)
node T_3759 = or(T_3758, T_3682)
node T_3760 = or(T_3759, T_3684)
node T_3761 = or(T_3760, T_3686)
node T_3762 = or(T_3761, T_3688)
node T_3763 = or(T_3762, T_3690)
node T_3764 = or(T_3763, T_3692)
node T_3765 = or(T_3764, T_3694)
node T_3766 = or(T_3765, T_3696)
node T_3767 = or(T_3766, T_3698)
node T_3768 = or(T_3767, T_3700)
node T_3769 = or(T_3768, T_3702)
node T_3770 = or(T_3769, T_3704)
node T_3771 = or(T_3770, T_3706)
node T_3772 = or(T_3771, T_3708)
node T_3773 = or(T_3772, T_3710)
node T_3774 = or(T_3773, T_3712)
wire T_3775 : UInt<6>
T_3775 := UInt<1>("h00")
T_3775 := T_3774
node T_3777 = bit(T_3775, 0)
node T_3778 = bit(T_3775, 1)
node T_3779 = bit(T_3775, 2)
node T_3780 = bit(T_3775, 3)
node T_3781 = bit(T_3775, 4)
node T_3782 = bit(T_3775, 5)
infer accessor T_3784 = pages[UInt<1>("h00")]
infer accessor T_3786 = pages[UInt<1>("h01")]
infer accessor T_3788 = pages[UInt<2>("h02")]
infer accessor T_3790 = pages[UInt<2>("h03")]
infer accessor T_3792 = pages[UInt<3>("h04")]
infer accessor T_3794 = pages[UInt<3>("h05")]
node T_3796 = mux(T_3777, T_3784, UInt<1>("h00"))
node T_3798 = mux(T_3778, T_3786, UInt<1>("h00"))
node T_3800 = mux(T_3779, T_3788, UInt<1>("h00"))
node T_3802 = mux(T_3780, T_3790, UInt<1>("h00"))
node T_3804 = mux(T_3781, T_3792, UInt<1>("h00"))
node T_3806 = mux(T_3782, T_3794, UInt<1>("h00"))
node T_3808 = or(T_3796, T_3798)
node T_3809 = or(T_3808, T_3800)
node T_3810 = or(T_3809, T_3802)
node T_3811 = or(T_3810, T_3804)
node T_3812 = or(T_3811, T_3806)
wire T_3813 : UInt<27>
T_3813 := UInt<1>("h00")
T_3813 := T_3812
node T_3815 = bit(hits, 0)
node T_3816 = bit(hits, 1)
node T_3817 = bit(hits, 2)
node T_3818 = bit(hits, 3)
node T_3819 = bit(hits, 4)
node T_3820 = bit(hits, 5)
node T_3821 = bit(hits, 6)
node T_3822 = bit(hits, 7)
node T_3823 = bit(hits, 8)
node T_3824 = bit(hits, 9)
node T_3825 = bit(hits, 10)
node T_3826 = bit(hits, 11)
node T_3827 = bit(hits, 12)
node T_3828 = bit(hits, 13)
node T_3829 = bit(hits, 14)
node T_3830 = bit(hits, 15)
node T_3831 = bit(hits, 16)
node T_3832 = bit(hits, 17)
node T_3833 = bit(hits, 18)
node T_3834 = bit(hits, 19)
node T_3835 = bit(hits, 20)
node T_3836 = bit(hits, 21)
node T_3837 = bit(hits, 22)
node T_3838 = bit(hits, 23)
node T_3839 = bit(hits, 24)
node T_3840 = bit(hits, 25)
node T_3841 = bit(hits, 26)
node T_3842 = bit(hits, 27)
node T_3843 = bit(hits, 28)
node T_3844 = bit(hits, 29)
node T_3845 = bit(hits, 30)
node T_3846 = bit(hits, 31)
node T_3847 = bit(hits, 32)
node T_3848 = bit(hits, 33)
node T_3849 = bit(hits, 34)
node T_3850 = bit(hits, 35)
node T_3851 = bit(hits, 36)
node T_3852 = bit(hits, 37)
node T_3853 = bit(hits, 38)
node T_3854 = bit(hits, 39)
node T_3855 = bit(hits, 40)
node T_3856 = bit(hits, 41)
node T_3857 = bit(hits, 42)
node T_3858 = bit(hits, 43)
node T_3859 = bit(hits, 44)
node T_3860 = bit(hits, 45)
node T_3861 = bit(hits, 46)
node T_3862 = bit(hits, 47)
node T_3863 = bit(hits, 48)
node T_3864 = bit(hits, 49)
node T_3865 = bit(hits, 50)
node T_3866 = bit(hits, 51)
node T_3867 = bit(hits, 52)
node T_3868 = bit(hits, 53)
node T_3869 = bit(hits, 54)
node T_3870 = bit(hits, 55)
node T_3871 = bit(hits, 56)
node T_3872 = bit(hits, 57)
node T_3873 = bit(hits, 58)
node T_3874 = bit(hits, 59)
node T_3875 = bit(hits, 60)
node T_3876 = bit(hits, 61)
infer accessor T_3878 = tgts[UInt<1>("h00")]
infer accessor T_3880 = tgts[UInt<1>("h01")]
infer accessor T_3882 = tgts[UInt<2>("h02")]
infer accessor T_3884 = tgts[UInt<2>("h03")]
infer accessor T_3886 = tgts[UInt<3>("h04")]
infer accessor T_3888 = tgts[UInt<3>("h05")]
infer accessor T_3890 = tgts[UInt<3>("h06")]
infer accessor T_3892 = tgts[UInt<3>("h07")]
infer accessor T_3894 = tgts[UInt<4>("h08")]
infer accessor T_3896 = tgts[UInt<4>("h09")]
infer accessor T_3898 = tgts[UInt<4>("h0a")]
infer accessor T_3900 = tgts[UInt<4>("h0b")]
infer accessor T_3902 = tgts[UInt<4>("h0c")]
infer accessor T_3904 = tgts[UInt<4>("h0d")]
infer accessor T_3906 = tgts[UInt<4>("h0e")]
infer accessor T_3908 = tgts[UInt<4>("h0f")]
infer accessor T_3910 = tgts[UInt<5>("h010")]
infer accessor T_3912 = tgts[UInt<5>("h011")]
infer accessor T_3914 = tgts[UInt<5>("h012")]
infer accessor T_3916 = tgts[UInt<5>("h013")]
infer accessor T_3918 = tgts[UInt<5>("h014")]
infer accessor T_3920 = tgts[UInt<5>("h015")]
infer accessor T_3922 = tgts[UInt<5>("h016")]
infer accessor T_3924 = tgts[UInt<5>("h017")]
infer accessor T_3926 = tgts[UInt<5>("h018")]
infer accessor T_3928 = tgts[UInt<5>("h019")]
infer accessor T_3930 = tgts[UInt<5>("h01a")]
infer accessor T_3932 = tgts[UInt<5>("h01b")]
infer accessor T_3934 = tgts[UInt<5>("h01c")]
infer accessor T_3936 = tgts[UInt<5>("h01d")]
infer accessor T_3938 = tgts[UInt<5>("h01e")]
infer accessor T_3940 = tgts[UInt<5>("h01f")]
infer accessor T_3942 = tgts[UInt<6>("h020")]
infer accessor T_3944 = tgts[UInt<6>("h021")]
infer accessor T_3946 = tgts[UInt<6>("h022")]
infer accessor T_3948 = tgts[UInt<6>("h023")]
infer accessor T_3950 = tgts[UInt<6>("h024")]
infer accessor T_3952 = tgts[UInt<6>("h025")]
infer accessor T_3954 = tgts[UInt<6>("h026")]
infer accessor T_3956 = tgts[UInt<6>("h027")]
infer accessor T_3958 = tgts[UInt<6>("h028")]
infer accessor T_3960 = tgts[UInt<6>("h029")]
infer accessor T_3962 = tgts[UInt<6>("h02a")]
infer accessor T_3964 = tgts[UInt<6>("h02b")]
infer accessor T_3966 = tgts[UInt<6>("h02c")]
infer accessor T_3968 = tgts[UInt<6>("h02d")]
infer accessor T_3970 = tgts[UInt<6>("h02e")]
infer accessor T_3972 = tgts[UInt<6>("h02f")]
infer accessor T_3974 = tgts[UInt<6>("h030")]
infer accessor T_3976 = tgts[UInt<6>("h031")]
infer accessor T_3978 = tgts[UInt<6>("h032")]
infer accessor T_3980 = tgts[UInt<6>("h033")]
infer accessor T_3982 = tgts[UInt<6>("h034")]
infer accessor T_3984 = tgts[UInt<6>("h035")]
infer accessor T_3986 = tgts[UInt<6>("h036")]
infer accessor T_3988 = tgts[UInt<6>("h037")]
infer accessor T_3990 = tgts[UInt<6>("h038")]
infer accessor T_3992 = tgts[UInt<6>("h039")]
infer accessor T_3994 = tgts[UInt<6>("h03a")]
infer accessor T_3996 = tgts[UInt<6>("h03b")]
infer accessor T_3998 = tgts[UInt<6>("h03c")]
infer accessor T_4000 = tgts[UInt<6>("h03d")]
node T_4002 = mux(T_3815, T_3878, UInt<1>("h00"))
node T_4004 = mux(T_3816, T_3880, UInt<1>("h00"))
node T_4006 = mux(T_3817, T_3882, UInt<1>("h00"))
node T_4008 = mux(T_3818, T_3884, UInt<1>("h00"))
node T_4010 = mux(T_3819, T_3886, UInt<1>("h00"))
node T_4012 = mux(T_3820, T_3888, UInt<1>("h00"))
node T_4014 = mux(T_3821, T_3890, UInt<1>("h00"))
node T_4016 = mux(T_3822, T_3892, UInt<1>("h00"))
node T_4018 = mux(T_3823, T_3894, UInt<1>("h00"))
node T_4020 = mux(T_3824, T_3896, UInt<1>("h00"))
node T_4022 = mux(T_3825, T_3898, UInt<1>("h00"))
node T_4024 = mux(T_3826, T_3900, UInt<1>("h00"))
node T_4026 = mux(T_3827, T_3902, UInt<1>("h00"))
node T_4028 = mux(T_3828, T_3904, UInt<1>("h00"))
node T_4030 = mux(T_3829, T_3906, UInt<1>("h00"))
node T_4032 = mux(T_3830, T_3908, UInt<1>("h00"))
node T_4034 = mux(T_3831, T_3910, UInt<1>("h00"))
node T_4036 = mux(T_3832, T_3912, UInt<1>("h00"))
node T_4038 = mux(T_3833, T_3914, UInt<1>("h00"))
node T_4040 = mux(T_3834, T_3916, UInt<1>("h00"))
node T_4042 = mux(T_3835, T_3918, UInt<1>("h00"))
node T_4044 = mux(T_3836, T_3920, UInt<1>("h00"))
node T_4046 = mux(T_3837, T_3922, UInt<1>("h00"))
node T_4048 = mux(T_3838, T_3924, UInt<1>("h00"))
node T_4050 = mux(T_3839, T_3926, UInt<1>("h00"))
node T_4052 = mux(T_3840, T_3928, UInt<1>("h00"))
node T_4054 = mux(T_3841, T_3930, UInt<1>("h00"))
node T_4056 = mux(T_3842, T_3932, UInt<1>("h00"))
node T_4058 = mux(T_3843, T_3934, UInt<1>("h00"))
node T_4060 = mux(T_3844, T_3936, UInt<1>("h00"))
node T_4062 = mux(T_3845, T_3938, UInt<1>("h00"))
node T_4064 = mux(T_3846, T_3940, UInt<1>("h00"))
node T_4066 = mux(T_3847, T_3942, UInt<1>("h00"))
node T_4068 = mux(T_3848, T_3944, UInt<1>("h00"))
node T_4070 = mux(T_3849, T_3946, UInt<1>("h00"))
node T_4072 = mux(T_3850, T_3948, UInt<1>("h00"))
node T_4074 = mux(T_3851, T_3950, UInt<1>("h00"))
node T_4076 = mux(T_3852, T_3952, UInt<1>("h00"))
node T_4078 = mux(T_3853, T_3954, UInt<1>("h00"))
node T_4080 = mux(T_3854, T_3956, UInt<1>("h00"))
node T_4082 = mux(T_3855, T_3958, UInt<1>("h00"))
node T_4084 = mux(T_3856, T_3960, UInt<1>("h00"))
node T_4086 = mux(T_3857, T_3962, UInt<1>("h00"))
node T_4088 = mux(T_3858, T_3964, UInt<1>("h00"))
node T_4090 = mux(T_3859, T_3966, UInt<1>("h00"))
node T_4092 = mux(T_3860, T_3968, UInt<1>("h00"))
node T_4094 = mux(T_3861, T_3970, UInt<1>("h00"))
node T_4096 = mux(T_3862, T_3972, UInt<1>("h00"))
node T_4098 = mux(T_3863, T_3974, UInt<1>("h00"))
node T_4100 = mux(T_3864, T_3976, UInt<1>("h00"))
node T_4102 = mux(T_3865, T_3978, UInt<1>("h00"))
node T_4104 = mux(T_3866, T_3980, UInt<1>("h00"))
node T_4106 = mux(T_3867, T_3982, UInt<1>("h00"))
node T_4108 = mux(T_3868, T_3984, UInt<1>("h00"))
node T_4110 = mux(T_3869, T_3986, UInt<1>("h00"))
node T_4112 = mux(T_3870, T_3988, UInt<1>("h00"))
node T_4114 = mux(T_3871, T_3990, UInt<1>("h00"))
node T_4116 = mux(T_3872, T_3992, UInt<1>("h00"))
node T_4118 = mux(T_3873, T_3994, UInt<1>("h00"))
node T_4120 = mux(T_3874, T_3996, UInt<1>("h00"))
node T_4122 = mux(T_3875, T_3998, UInt<1>("h00"))
node T_4124 = mux(T_3876, T_4000, UInt<1>("h00"))
node T_4126 = or(T_4002, T_4004)
node T_4127 = or(T_4126, T_4006)
node T_4128 = or(T_4127, T_4008)
node T_4129 = or(T_4128, T_4010)
node T_4130 = or(T_4129, T_4012)
node T_4131 = or(T_4130, T_4014)
node T_4132 = or(T_4131, T_4016)
node T_4133 = or(T_4132, T_4018)
node T_4134 = or(T_4133, T_4020)
node T_4135 = or(T_4134, T_4022)
node T_4136 = or(T_4135, T_4024)
node T_4137 = or(T_4136, T_4026)
node T_4138 = or(T_4137, T_4028)
node T_4139 = or(T_4138, T_4030)
node T_4140 = or(T_4139, T_4032)
node T_4141 = or(T_4140, T_4034)
node T_4142 = or(T_4141, T_4036)
node T_4143 = or(T_4142, T_4038)
node T_4144 = or(T_4143, T_4040)
node T_4145 = or(T_4144, T_4042)
node T_4146 = or(T_4145, T_4044)
node T_4147 = or(T_4146, T_4046)
node T_4148 = or(T_4147, T_4048)
node T_4149 = or(T_4148, T_4050)
node T_4150 = or(T_4149, T_4052)
node T_4151 = or(T_4150, T_4054)
node T_4152 = or(T_4151, T_4056)
node T_4153 = or(T_4152, T_4058)
node T_4154 = or(T_4153, T_4060)
node T_4155 = or(T_4154, T_4062)
node T_4156 = or(T_4155, T_4064)
node T_4157 = or(T_4156, T_4066)
node T_4158 = or(T_4157, T_4068)
node T_4159 = or(T_4158, T_4070)
node T_4160 = or(T_4159, T_4072)
node T_4161 = or(T_4160, T_4074)
node T_4162 = or(T_4161, T_4076)
node T_4163 = or(T_4162, T_4078)
node T_4164 = or(T_4163, T_4080)
node T_4165 = or(T_4164, T_4082)
node T_4166 = or(T_4165, T_4084)
node T_4167 = or(T_4166, T_4086)
node T_4168 = or(T_4167, T_4088)
node T_4169 = or(T_4168, T_4090)
node T_4170 = or(T_4169, T_4092)
node T_4171 = or(T_4170, T_4094)
node T_4172 = or(T_4171, T_4096)
node T_4173 = or(T_4172, T_4098)
node T_4174 = or(T_4173, T_4100)
node T_4175 = or(T_4174, T_4102)
node T_4176 = or(T_4175, T_4104)
node T_4177 = or(T_4176, T_4106)
node T_4178 = or(T_4177, T_4108)
node T_4179 = or(T_4178, T_4110)
node T_4180 = or(T_4179, T_4112)
node T_4181 = or(T_4180, T_4114)
node T_4182 = or(T_4181, T_4116)
node T_4183 = or(T_4182, T_4118)
node T_4184 = or(T_4183, T_4120)
node T_4185 = or(T_4184, T_4122)
node T_4186 = or(T_4185, T_4124)
wire T_4187 : UInt<12>
T_4187 := UInt<1>("h00")
T_4187 := T_4186
node T_4189 = cat(T_3813, T_4187)
resp.bits.target := T_4189
node T_4190 = bits(hits, 61, 32)
node T_4191 = bits(hits, 31, 0)
node T_4193 = neq(T_4190, UInt<1>("h00"))
node T_4194 = or(T_4190, T_4191)
node T_4195 = bits(T_4194, 31, 16)
node T_4196 = bits(T_4194, 15, 0)
node T_4198 = neq(T_4195, UInt<1>("h00"))
node T_4199 = or(T_4195, T_4196)
node T_4200 = bits(T_4199, 15, 8)
node T_4201 = bits(T_4199, 7, 0)
node T_4203 = neq(T_4200, UInt<1>("h00"))
node T_4204 = or(T_4200, T_4201)
node T_4205 = bits(T_4204, 7, 4)
node T_4206 = bits(T_4204, 3, 0)
node T_4208 = neq(T_4205, UInt<1>("h00"))
node T_4209 = or(T_4205, T_4206)
node T_4210 = bits(T_4209, 3, 2)
node T_4211 = bits(T_4209, 1, 0)
node T_4213 = neq(T_4210, UInt<1>("h00"))
node T_4214 = or(T_4210, T_4211)
node T_4215 = bit(T_4214, 1)
node T_4216 = cat(T_4213, T_4215)
node T_4217 = cat(T_4208, T_4216)
node T_4218 = cat(T_4203, T_4217)
node T_4219 = cat(T_4198, T_4218)
node T_4220 = cat(T_4193, T_4219)
resp.bits.entry := T_4220
infer accessor T_4221 = brIdx[resp.bits.entry]
resp.bits.bridx := T_4221
resp.bits.mask := UInt<1>("h01")
cmem T_4225 : UInt<2>[128], clock
reg T_4227 : UInt<7>, clock, reset
node T_4228 = bit(hits, 0)
node T_4229 = bit(hits, 1)
node T_4230 = bit(hits, 2)
node T_4231 = bit(hits, 3)
node T_4232 = bit(hits, 4)
node T_4233 = bit(hits, 5)
node T_4234 = bit(hits, 6)
node T_4235 = bit(hits, 7)
node T_4236 = bit(hits, 8)
node T_4237 = bit(hits, 9)
node T_4238 = bit(hits, 10)
node T_4239 = bit(hits, 11)
node T_4240 = bit(hits, 12)
node T_4241 = bit(hits, 13)
node T_4242 = bit(hits, 14)
node T_4243 = bit(hits, 15)
node T_4244 = bit(hits, 16)
node T_4245 = bit(hits, 17)
node T_4246 = bit(hits, 18)
node T_4247 = bit(hits, 19)
node T_4248 = bit(hits, 20)
node T_4249 = bit(hits, 21)
node T_4250 = bit(hits, 22)
node T_4251 = bit(hits, 23)
node T_4252 = bit(hits, 24)
node T_4253 = bit(hits, 25)
node T_4254 = bit(hits, 26)
node T_4255 = bit(hits, 27)
node T_4256 = bit(hits, 28)
node T_4257 = bit(hits, 29)
node T_4258 = bit(hits, 30)
node T_4259 = bit(hits, 31)
node T_4260 = bit(hits, 32)
node T_4261 = bit(hits, 33)
node T_4262 = bit(hits, 34)
node T_4263 = bit(hits, 35)
node T_4264 = bit(hits, 36)
node T_4265 = bit(hits, 37)
node T_4266 = bit(hits, 38)
node T_4267 = bit(hits, 39)
node T_4268 = bit(hits, 40)
node T_4269 = bit(hits, 41)
node T_4270 = bit(hits, 42)
node T_4271 = bit(hits, 43)
node T_4272 = bit(hits, 44)
node T_4273 = bit(hits, 45)
node T_4274 = bit(hits, 46)
node T_4275 = bit(hits, 47)
node T_4276 = bit(hits, 48)
node T_4277 = bit(hits, 49)
node T_4278 = bit(hits, 50)
node T_4279 = bit(hits, 51)
node T_4280 = bit(hits, 52)
node T_4281 = bit(hits, 53)
node T_4282 = bit(hits, 54)
node T_4283 = bit(hits, 55)
node T_4284 = bit(hits, 56)
node T_4285 = bit(hits, 57)
node T_4286 = bit(hits, 58)
node T_4287 = bit(hits, 59)
node T_4288 = bit(hits, 60)
node T_4289 = bit(hits, 61)
node T_4291 = shl(isJump[0], 0)
node T_4292 = mux(T_4228, T_4291, UInt<1>("h00"))
node T_4294 = shl(isJump[1], 0)
node T_4295 = mux(T_4229, T_4294, UInt<1>("h00"))
node T_4297 = shl(isJump[2], 0)
node T_4298 = mux(T_4230, T_4297, UInt<1>("h00"))
node T_4300 = shl(isJump[3], 0)
node T_4301 = mux(T_4231, T_4300, UInt<1>("h00"))
node T_4303 = shl(isJump[4], 0)
node T_4304 = mux(T_4232, T_4303, UInt<1>("h00"))
node T_4306 = shl(isJump[5], 0)
node T_4307 = mux(T_4233, T_4306, UInt<1>("h00"))
node T_4309 = shl(isJump[6], 0)
node T_4310 = mux(T_4234, T_4309, UInt<1>("h00"))
node T_4312 = shl(isJump[7], 0)
node T_4313 = mux(T_4235, T_4312, UInt<1>("h00"))
node T_4315 = shl(isJump[8], 0)
node T_4316 = mux(T_4236, T_4315, UInt<1>("h00"))
node T_4318 = shl(isJump[9], 0)
node T_4319 = mux(T_4237, T_4318, UInt<1>("h00"))
node T_4321 = shl(isJump[10], 0)
node T_4322 = mux(T_4238, T_4321, UInt<1>("h00"))
node T_4324 = shl(isJump[11], 0)
node T_4325 = mux(T_4239, T_4324, UInt<1>("h00"))
node T_4327 = shl(isJump[12], 0)
node T_4328 = mux(T_4240, T_4327, UInt<1>("h00"))
node T_4330 = shl(isJump[13], 0)
node T_4331 = mux(T_4241, T_4330, UInt<1>("h00"))
node T_4333 = shl(isJump[14], 0)
node T_4334 = mux(T_4242, T_4333, UInt<1>("h00"))
node T_4336 = shl(isJump[15], 0)
node T_4337 = mux(T_4243, T_4336, UInt<1>("h00"))
node T_4339 = shl(isJump[16], 0)
node T_4340 = mux(T_4244, T_4339, UInt<1>("h00"))
node T_4342 = shl(isJump[17], 0)
node T_4343 = mux(T_4245, T_4342, UInt<1>("h00"))
node T_4345 = shl(isJump[18], 0)
node T_4346 = mux(T_4246, T_4345, UInt<1>("h00"))
node T_4348 = shl(isJump[19], 0)
node T_4349 = mux(T_4247, T_4348, UInt<1>("h00"))
node T_4351 = shl(isJump[20], 0)
node T_4352 = mux(T_4248, T_4351, UInt<1>("h00"))
node T_4354 = shl(isJump[21], 0)
node T_4355 = mux(T_4249, T_4354, UInt<1>("h00"))
node T_4357 = shl(isJump[22], 0)
node T_4358 = mux(T_4250, T_4357, UInt<1>("h00"))
node T_4360 = shl(isJump[23], 0)
node T_4361 = mux(T_4251, T_4360, UInt<1>("h00"))
node T_4363 = shl(isJump[24], 0)
node T_4364 = mux(T_4252, T_4363, UInt<1>("h00"))
node T_4366 = shl(isJump[25], 0)
node T_4367 = mux(T_4253, T_4366, UInt<1>("h00"))
node T_4369 = shl(isJump[26], 0)
node T_4370 = mux(T_4254, T_4369, UInt<1>("h00"))
node T_4372 = shl(isJump[27], 0)
node T_4373 = mux(T_4255, T_4372, UInt<1>("h00"))
node T_4375 = shl(isJump[28], 0)
node T_4376 = mux(T_4256, T_4375, UInt<1>("h00"))
node T_4378 = shl(isJump[29], 0)
node T_4379 = mux(T_4257, T_4378, UInt<1>("h00"))
node T_4381 = shl(isJump[30], 0)
node T_4382 = mux(T_4258, T_4381, UInt<1>("h00"))
node T_4384 = shl(isJump[31], 0)
node T_4385 = mux(T_4259, T_4384, UInt<1>("h00"))
node T_4387 = shl(isJump[32], 0)
node T_4388 = mux(T_4260, T_4387, UInt<1>("h00"))
node T_4390 = shl(isJump[33], 0)
node T_4391 = mux(T_4261, T_4390, UInt<1>("h00"))
node T_4393 = shl(isJump[34], 0)
node T_4394 = mux(T_4262, T_4393, UInt<1>("h00"))
node T_4396 = shl(isJump[35], 0)
node T_4397 = mux(T_4263, T_4396, UInt<1>("h00"))
node T_4399 = shl(isJump[36], 0)
node T_4400 = mux(T_4264, T_4399, UInt<1>("h00"))
node T_4402 = shl(isJump[37], 0)
node T_4403 = mux(T_4265, T_4402, UInt<1>("h00"))
node T_4405 = shl(isJump[38], 0)
node T_4406 = mux(T_4266, T_4405, UInt<1>("h00"))
node T_4408 = shl(isJump[39], 0)
node T_4409 = mux(T_4267, T_4408, UInt<1>("h00"))
node T_4411 = shl(isJump[40], 0)
node T_4412 = mux(T_4268, T_4411, UInt<1>("h00"))
node T_4414 = shl(isJump[41], 0)
node T_4415 = mux(T_4269, T_4414, UInt<1>("h00"))
node T_4417 = shl(isJump[42], 0)
node T_4418 = mux(T_4270, T_4417, UInt<1>("h00"))
node T_4420 = shl(isJump[43], 0)
node T_4421 = mux(T_4271, T_4420, UInt<1>("h00"))
node T_4423 = shl(isJump[44], 0)
node T_4424 = mux(T_4272, T_4423, UInt<1>("h00"))
node T_4426 = shl(isJump[45], 0)
node T_4427 = mux(T_4273, T_4426, UInt<1>("h00"))
node T_4429 = shl(isJump[46], 0)
node T_4430 = mux(T_4274, T_4429, UInt<1>("h00"))
node T_4432 = shl(isJump[47], 0)
node T_4433 = mux(T_4275, T_4432, UInt<1>("h00"))
node T_4435 = shl(isJump[48], 0)
node T_4436 = mux(T_4276, T_4435, UInt<1>("h00"))
node T_4438 = shl(isJump[49], 0)
node T_4439 = mux(T_4277, T_4438, UInt<1>("h00"))
node T_4441 = shl(isJump[50], 0)
node T_4442 = mux(T_4278, T_4441, UInt<1>("h00"))
node T_4444 = shl(isJump[51], 0)
node T_4445 = mux(T_4279, T_4444, UInt<1>("h00"))
node T_4447 = shl(isJump[52], 0)
node T_4448 = mux(T_4280, T_4447, UInt<1>("h00"))
node T_4450 = shl(isJump[53], 0)
node T_4451 = mux(T_4281, T_4450, UInt<1>("h00"))
node T_4453 = shl(isJump[54], 0)
node T_4454 = mux(T_4282, T_4453, UInt<1>("h00"))
node T_4456 = shl(isJump[55], 0)
node T_4457 = mux(T_4283, T_4456, UInt<1>("h00"))
node T_4459 = shl(isJump[56], 0)
node T_4460 = mux(T_4284, T_4459, UInt<1>("h00"))
node T_4462 = shl(isJump[57], 0)
node T_4463 = mux(T_4285, T_4462, UInt<1>("h00"))
node T_4465 = shl(isJump[58], 0)
node T_4466 = mux(T_4286, T_4465, UInt<1>("h00"))
node T_4468 = shl(isJump[59], 0)
node T_4469 = mux(T_4287, T_4468, UInt<1>("h00"))
node T_4471 = shl(isJump[60], 0)
node T_4472 = mux(T_4288, T_4471, UInt<1>("h00"))
node T_4474 = shl(isJump[61], 0)
node T_4475 = mux(T_4289, T_4474, UInt<1>("h00"))
node T_4477 = or(T_4292, T_4295)
node T_4478 = or(T_4477, T_4298)
node T_4479 = or(T_4478, T_4301)
node T_4480 = or(T_4479, T_4304)
node T_4481 = or(T_4480, T_4307)
node T_4482 = or(T_4481, T_4310)
node T_4483 = or(T_4482, T_4313)
node T_4484 = or(T_4483, T_4316)
node T_4485 = or(T_4484, T_4319)
node T_4486 = or(T_4485, T_4322)
node T_4487 = or(T_4486, T_4325)
node T_4488 = or(T_4487, T_4328)
node T_4489 = or(T_4488, T_4331)
node T_4490 = or(T_4489, T_4334)
node T_4491 = or(T_4490, T_4337)
node T_4492 = or(T_4491, T_4340)
node T_4493 = or(T_4492, T_4343)
node T_4494 = or(T_4493, T_4346)
node T_4495 = or(T_4494, T_4349)
node T_4496 = or(T_4495, T_4352)
node T_4497 = or(T_4496, T_4355)
node T_4498 = or(T_4497, T_4358)
node T_4499 = or(T_4498, T_4361)
node T_4500 = or(T_4499, T_4364)
node T_4501 = or(T_4500, T_4367)
node T_4502 = or(T_4501, T_4370)
node T_4503 = or(T_4502, T_4373)
node T_4504 = or(T_4503, T_4376)
node T_4505 = or(T_4504, T_4379)
node T_4506 = or(T_4505, T_4382)
node T_4507 = or(T_4506, T_4385)
node T_4508 = or(T_4507, T_4388)
node T_4509 = or(T_4508, T_4391)
node T_4510 = or(T_4509, T_4394)
node T_4511 = or(T_4510, T_4397)
node T_4512 = or(T_4511, T_4400)
node T_4513 = or(T_4512, T_4403)
node T_4514 = or(T_4513, T_4406)
node T_4515 = or(T_4514, T_4409)
node T_4516 = or(T_4515, T_4412)
node T_4517 = or(T_4516, T_4415)
node T_4518 = or(T_4517, T_4418)
node T_4519 = or(T_4518, T_4421)
node T_4520 = or(T_4519, T_4424)
node T_4521 = or(T_4520, T_4427)
node T_4522 = or(T_4521, T_4430)
node T_4523 = or(T_4522, T_4433)
node T_4524 = or(T_4523, T_4436)
node T_4525 = or(T_4524, T_4439)
node T_4526 = or(T_4525, T_4442)
node T_4527 = or(T_4526, T_4445)
node T_4528 = or(T_4527, T_4448)
node T_4529 = or(T_4528, T_4451)
node T_4530 = or(T_4529, T_4454)
node T_4531 = or(T_4530, T_4457)
node T_4532 = or(T_4531, T_4460)
node T_4533 = or(T_4532, T_4463)
node T_4534 = or(T_4533, T_4466)
node T_4535 = or(T_4534, T_4469)
node T_4536 = or(T_4535, T_4472)
node T_4537 = or(T_4536, T_4475)
wire T_4538 : UInt<1>
T_4538 := UInt<1>("h00")
T_4538 := T_4537
node T_4541 = eq(T_4538, UInt<1>("h00"))
node T_4542 = and(req.valid, resp.valid)
node T_4543 = and(T_4542, T_4541)
wire T_4547 : {history : UInt<7>, value : UInt<2>}
T_4547.value := UInt<1>("h00")
T_4547.history := UInt<1>("h00")
node T_4552 = bits(req.bits.addr, 8, 2)
node T_4553 = xor(T_4552, T_4227)
infer accessor T_4554 = T_4225[T_4553]
T_4547.value := T_4554
T_4547.history := T_4227
node T_4555 = bit(T_4547.value, 0)
when T_4543 :
node T_4556 = bits(T_4227, 6, 1)
node T_4557 = cat(T_4555, T_4556)
T_4227 := T_4557
skip
node T_4558 = and(bht_update.valid, bht_update.bits.prediction.valid)
when T_4558 :
node T_4559 = bits(bht_update.bits.pc, 8, 2)
node T_4560 = xor(T_4559, bht_update.bits.prediction.bits.bht.history)
infer accessor T_4561 = T_4225[T_4560]
node T_4562 = bit(bht_update.bits.prediction.bits.bht.value, 1)
node T_4563 = bit(bht_update.bits.prediction.bits.bht.value, 0)
node T_4564 = and(T_4562, T_4563)
node T_4565 = bit(bht_update.bits.prediction.bits.bht.value, 1)
node T_4566 = bit(bht_update.bits.prediction.bits.bht.value, 0)
node T_4567 = or(T_4565, T_4566)
node T_4568 = and(T_4567, bht_update.bits.taken)
node T_4569 = or(T_4564, T_4568)
node T_4570 = cat(bht_update.bits.taken, T_4569)
T_4561 := T_4570
when bht_update.bits.mispredict :
node T_4571 = bits(bht_update.bits.prediction.bits.bht.history, 6, 1)
node T_4572 = cat(bht_update.bits.taken, T_4571)
T_4227 := T_4572
skip
skip
node T_4573 = bit(T_4547.value, 0)
node T_4575 = eq(T_4573, UInt<1>("h00"))
node T_4576 = and(T_4575, T_4541)
when T_4576 :
resp.bits.taken := UInt<1>("h00")
skip
resp.bits.bht <> T_4547
reg T_4579 : UInt<2>, clock, reset
onreset T_4579 := UInt<2>("h00")
reg T_4581 : UInt<1>, clock, reset
onreset T_4581 := UInt<1>("h00")
reg T_4590 : UInt<1>[2], clock, reset
node T_4594 = bit(hits, 0)
node T_4595 = bit(hits, 1)
node T_4596 = bit(hits, 2)
node T_4597 = bit(hits, 3)
node T_4598 = bit(hits, 4)
node T_4599 = bit(hits, 5)
node T_4600 = bit(hits, 6)
node T_4601 = bit(hits, 7)
node T_4602 = bit(hits, 8)
node T_4603 = bit(hits, 9)
node T_4604 = bit(hits, 10)
node T_4605 = bit(hits, 11)
node T_4606 = bit(hits, 12)
node T_4607 = bit(hits, 13)
node T_4608 = bit(hits, 14)
node T_4609 = bit(hits, 15)
node T_4610 = bit(hits, 16)
node T_4611 = bit(hits, 17)
node T_4612 = bit(hits, 18)
node T_4613 = bit(hits, 19)
node T_4614 = bit(hits, 20)
node T_4615 = bit(hits, 21)
node T_4616 = bit(hits, 22)
node T_4617 = bit(hits, 23)
node T_4618 = bit(hits, 24)
node T_4619 = bit(hits, 25)
node T_4620 = bit(hits, 26)
node T_4621 = bit(hits, 27)
node T_4622 = bit(hits, 28)
node T_4623 = bit(hits, 29)
node T_4624 = bit(hits, 30)
node T_4625 = bit(hits, 31)
node T_4626 = bit(hits, 32)
node T_4627 = bit(hits, 33)
node T_4628 = bit(hits, 34)
node T_4629 = bit(hits, 35)
node T_4630 = bit(hits, 36)
node T_4631 = bit(hits, 37)
node T_4632 = bit(hits, 38)
node T_4633 = bit(hits, 39)
node T_4634 = bit(hits, 40)
node T_4635 = bit(hits, 41)
node T_4636 = bit(hits, 42)
node T_4637 = bit(hits, 43)
node T_4638 = bit(hits, 44)
node T_4639 = bit(hits, 45)
node T_4640 = bit(hits, 46)
node T_4641 = bit(hits, 47)
node T_4642 = bit(hits, 48)
node T_4643 = bit(hits, 49)
node T_4644 = bit(hits, 50)
node T_4645 = bit(hits, 51)
node T_4646 = bit(hits, 52)
node T_4647 = bit(hits, 53)
node T_4648 = bit(hits, 54)
node T_4649 = bit(hits, 55)
node T_4650 = bit(hits, 56)
node T_4651 = bit(hits, 57)
node T_4652 = bit(hits, 58)
node T_4653 = bit(hits, 59)
node T_4654 = bit(hits, 60)
node T_4655 = bit(hits, 61)
node T_4657 = shl(useRAS[0], 0)
node T_4658 = mux(T_4594, T_4657, UInt<1>("h00"))
node T_4660 = shl(useRAS[1], 0)
node T_4661 = mux(T_4595, T_4660, UInt<1>("h00"))
node T_4663 = shl(useRAS[2], 0)
node T_4664 = mux(T_4596, T_4663, UInt<1>("h00"))
node T_4666 = shl(useRAS[3], 0)
node T_4667 = mux(T_4597, T_4666, UInt<1>("h00"))
node T_4669 = shl(useRAS[4], 0)
node T_4670 = mux(T_4598, T_4669, UInt<1>("h00"))
node T_4672 = shl(useRAS[5], 0)
node T_4673 = mux(T_4599, T_4672, UInt<1>("h00"))
node T_4675 = shl(useRAS[6], 0)
node T_4676 = mux(T_4600, T_4675, UInt<1>("h00"))
node T_4678 = shl(useRAS[7], 0)
node T_4679 = mux(T_4601, T_4678, UInt<1>("h00"))
node T_4681 = shl(useRAS[8], 0)
node T_4682 = mux(T_4602, T_4681, UInt<1>("h00"))
node T_4684 = shl(useRAS[9], 0)
node T_4685 = mux(T_4603, T_4684, UInt<1>("h00"))
node T_4687 = shl(useRAS[10], 0)
node T_4688 = mux(T_4604, T_4687, UInt<1>("h00"))
node T_4690 = shl(useRAS[11], 0)
node T_4691 = mux(T_4605, T_4690, UInt<1>("h00"))
node T_4693 = shl(useRAS[12], 0)
node T_4694 = mux(T_4606, T_4693, UInt<1>("h00"))
node T_4696 = shl(useRAS[13], 0)
node T_4697 = mux(T_4607, T_4696, UInt<1>("h00"))
node T_4699 = shl(useRAS[14], 0)
node T_4700 = mux(T_4608, T_4699, UInt<1>("h00"))
node T_4702 = shl(useRAS[15], 0)
node T_4703 = mux(T_4609, T_4702, UInt<1>("h00"))
node T_4705 = shl(useRAS[16], 0)
node T_4706 = mux(T_4610, T_4705, UInt<1>("h00"))
node T_4708 = shl(useRAS[17], 0)
node T_4709 = mux(T_4611, T_4708, UInt<1>("h00"))
node T_4711 = shl(useRAS[18], 0)
node T_4712 = mux(T_4612, T_4711, UInt<1>("h00"))
node T_4714 = shl(useRAS[19], 0)
node T_4715 = mux(T_4613, T_4714, UInt<1>("h00"))
node T_4717 = shl(useRAS[20], 0)
node T_4718 = mux(T_4614, T_4717, UInt<1>("h00"))
node T_4720 = shl(useRAS[21], 0)
node T_4721 = mux(T_4615, T_4720, UInt<1>("h00"))
node T_4723 = shl(useRAS[22], 0)
node T_4724 = mux(T_4616, T_4723, UInt<1>("h00"))
node T_4726 = shl(useRAS[23], 0)
node T_4727 = mux(T_4617, T_4726, UInt<1>("h00"))
node T_4729 = shl(useRAS[24], 0)
node T_4730 = mux(T_4618, T_4729, UInt<1>("h00"))
node T_4732 = shl(useRAS[25], 0)
node T_4733 = mux(T_4619, T_4732, UInt<1>("h00"))
node T_4735 = shl(useRAS[26], 0)
node T_4736 = mux(T_4620, T_4735, UInt<1>("h00"))
node T_4738 = shl(useRAS[27], 0)
node T_4739 = mux(T_4621, T_4738, UInt<1>("h00"))
node T_4741 = shl(useRAS[28], 0)
node T_4742 = mux(T_4622, T_4741, UInt<1>("h00"))
node T_4744 = shl(useRAS[29], 0)
node T_4745 = mux(T_4623, T_4744, UInt<1>("h00"))
node T_4747 = shl(useRAS[30], 0)
node T_4748 = mux(T_4624, T_4747, UInt<1>("h00"))
node T_4750 = shl(useRAS[31], 0)
node T_4751 = mux(T_4625, T_4750, UInt<1>("h00"))
node T_4753 = shl(useRAS[32], 0)
node T_4754 = mux(T_4626, T_4753, UInt<1>("h00"))
node T_4756 = shl(useRAS[33], 0)
node T_4757 = mux(T_4627, T_4756, UInt<1>("h00"))
node T_4759 = shl(useRAS[34], 0)
node T_4760 = mux(T_4628, T_4759, UInt<1>("h00"))
node T_4762 = shl(useRAS[35], 0)
node T_4763 = mux(T_4629, T_4762, UInt<1>("h00"))
node T_4765 = shl(useRAS[36], 0)
node T_4766 = mux(T_4630, T_4765, UInt<1>("h00"))
node T_4768 = shl(useRAS[37], 0)
node T_4769 = mux(T_4631, T_4768, UInt<1>("h00"))
node T_4771 = shl(useRAS[38], 0)
node T_4772 = mux(T_4632, T_4771, UInt<1>("h00"))
node T_4774 = shl(useRAS[39], 0)
node T_4775 = mux(T_4633, T_4774, UInt<1>("h00"))
node T_4777 = shl(useRAS[40], 0)
node T_4778 = mux(T_4634, T_4777, UInt<1>("h00"))
node T_4780 = shl(useRAS[41], 0)
node T_4781 = mux(T_4635, T_4780, UInt<1>("h00"))
node T_4783 = shl(useRAS[42], 0)
node T_4784 = mux(T_4636, T_4783, UInt<1>("h00"))
node T_4786 = shl(useRAS[43], 0)
node T_4787 = mux(T_4637, T_4786, UInt<1>("h00"))
node T_4789 = shl(useRAS[44], 0)
node T_4790 = mux(T_4638, T_4789, UInt<1>("h00"))
node T_4792 = shl(useRAS[45], 0)
node T_4793 = mux(T_4639, T_4792, UInt<1>("h00"))
node T_4795 = shl(useRAS[46], 0)
node T_4796 = mux(T_4640, T_4795, UInt<1>("h00"))
node T_4798 = shl(useRAS[47], 0)
node T_4799 = mux(T_4641, T_4798, UInt<1>("h00"))
node T_4801 = shl(useRAS[48], 0)
node T_4802 = mux(T_4642, T_4801, UInt<1>("h00"))
node T_4804 = shl(useRAS[49], 0)
node T_4805 = mux(T_4643, T_4804, UInt<1>("h00"))
node T_4807 = shl(useRAS[50], 0)
node T_4808 = mux(T_4644, T_4807, UInt<1>("h00"))
node T_4810 = shl(useRAS[51], 0)
node T_4811 = mux(T_4645, T_4810, UInt<1>("h00"))
node T_4813 = shl(useRAS[52], 0)
node T_4814 = mux(T_4646, T_4813, UInt<1>("h00"))
node T_4816 = shl(useRAS[53], 0)
node T_4817 = mux(T_4647, T_4816, UInt<1>("h00"))
node T_4819 = shl(useRAS[54], 0)
node T_4820 = mux(T_4648, T_4819, UInt<1>("h00"))
node T_4822 = shl(useRAS[55], 0)
node T_4823 = mux(T_4649, T_4822, UInt<1>("h00"))
node T_4825 = shl(useRAS[56], 0)
node T_4826 = mux(T_4650, T_4825, UInt<1>("h00"))
node T_4828 = shl(useRAS[57], 0)
node T_4829 = mux(T_4651, T_4828, UInt<1>("h00"))
node T_4831 = shl(useRAS[58], 0)
node T_4832 = mux(T_4652, T_4831, UInt<1>("h00"))
node T_4834 = shl(useRAS[59], 0)
node T_4835 = mux(T_4653, T_4834, UInt<1>("h00"))
node T_4837 = shl(useRAS[60], 0)
node T_4838 = mux(T_4654, T_4837, UInt<1>("h00"))
node T_4840 = shl(useRAS[61], 0)
node T_4841 = mux(T_4655, T_4840, UInt<1>("h00"))
node T_4843 = or(T_4658, T_4661)
node T_4844 = or(T_4843, T_4664)
node T_4845 = or(T_4844, T_4667)
node T_4846 = or(T_4845, T_4670)
node T_4847 = or(T_4846, T_4673)
node T_4848 = or(T_4847, T_4676)
node T_4849 = or(T_4848, T_4679)
node T_4850 = or(T_4849, T_4682)
node T_4851 = or(T_4850, T_4685)
node T_4852 = or(T_4851, T_4688)
node T_4853 = or(T_4852, T_4691)
node T_4854 = or(T_4853, T_4694)
node T_4855 = or(T_4854, T_4697)
node T_4856 = or(T_4855, T_4700)
node T_4857 = or(T_4856, T_4703)
node T_4858 = or(T_4857, T_4706)
node T_4859 = or(T_4858, T_4709)
node T_4860 = or(T_4859, T_4712)
node T_4861 = or(T_4860, T_4715)
node T_4862 = or(T_4861, T_4718)
node T_4863 = or(T_4862, T_4721)
node T_4864 = or(T_4863, T_4724)
node T_4865 = or(T_4864, T_4727)
node T_4866 = or(T_4865, T_4730)
node T_4867 = or(T_4866, T_4733)
node T_4868 = or(T_4867, T_4736)
node T_4869 = or(T_4868, T_4739)
node T_4870 = or(T_4869, T_4742)
node T_4871 = or(T_4870, T_4745)
node T_4872 = or(T_4871, T_4748)
node T_4873 = or(T_4872, T_4751)
node T_4874 = or(T_4873, T_4754)
node T_4875 = or(T_4874, T_4757)
node T_4876 = or(T_4875, T_4760)
node T_4877 = or(T_4876, T_4763)
node T_4878 = or(T_4877, T_4766)
node T_4879 = or(T_4878, T_4769)
node T_4880 = or(T_4879, T_4772)
node T_4881 = or(T_4880, T_4775)
node T_4882 = or(T_4881, T_4778)
node T_4883 = or(T_4882, T_4781)
node T_4884 = or(T_4883, T_4784)
node T_4885 = or(T_4884, T_4787)
node T_4886 = or(T_4885, T_4790)
node T_4887 = or(T_4886, T_4793)
node T_4888 = or(T_4887, T_4796)
node T_4889 = or(T_4888, T_4799)
node T_4890 = or(T_4889, T_4802)
node T_4891 = or(T_4890, T_4805)
node T_4892 = or(T_4891, T_4808)
node T_4893 = or(T_4892, T_4811)
node T_4894 = or(T_4893, T_4814)
node T_4895 = or(T_4894, T_4817)
node T_4896 = or(T_4895, T_4820)
node T_4897 = or(T_4896, T_4823)
node T_4898 = or(T_4897, T_4826)
node T_4899 = or(T_4898, T_4829)
node T_4900 = or(T_4899, T_4832)
node T_4901 = or(T_4900, T_4835)
node T_4902 = or(T_4901, T_4838)
node T_4903 = or(T_4902, T_4841)
wire T_4904 : UInt<1>
T_4904 := UInt<1>("h00")
T_4904 := T_4903
node T_4907 = eq(T_4579, UInt<1>("h00"))
node T_4909 = eq(T_4907, UInt<1>("h00"))
node T_4910 = and(T_4909, T_4904)
when T_4910 :
infer accessor T_4911 = T_4590[T_4581]
resp.bits.target := T_4911
skip
when ras_update.valid :
when ras_update.bits.isCall :
node T_4913 = lt(T_4579, UInt<2>("h02"))
when T_4913 :
node T_4915 = addw(T_4579, UInt<1>("h01"))
T_4579 := T_4915
skip
node T_4918 = lt(T_4581, UInt<1>("h01"))
node T_4919 = or(UInt<1>("h01"), T_4918)
node T_4921 = addw(T_4581, UInt<1>("h01"))
node T_4923 = mux(T_4919, T_4921, UInt<1>("h00"))
infer accessor T_4924 = T_4590[T_4923]
T_4924 := ras_update.bits.returnAddr
T_4581 := T_4923
when T_4904 :
resp.bits.target := ras_update.bits.returnAddr
skip
skip
else :
node T_4925 = and(ras_update.bits.isReturn, ras_update.bits.prediction.valid)
when T_4925 :
node T_4927 = eq(T_4579, UInt<1>("h00"))
node T_4929 = eq(T_4927, UInt<1>("h00"))
when T_4929 :
node T_4931 = subw(T_4579, UInt<1>("h01"))
T_4579 := T_4931
node T_4934 = gt(T_4581, UInt<1>("h00"))
node T_4935 = or(UInt<1>("h01"), T_4934)
node T_4937 = subw(T_4581, UInt<1>("h01"))
node T_4939 = mux(T_4935, T_4937, UInt<1>("h01"))
T_4581 := T_4939
skip
skip
skip
skip
when invalidate :
T_4579 := UInt<1>("h00")
skip
;CHECK: Done!
|