aboutsummaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorazidar2015-09-30 10:21:08 -0700
committerazidar2015-09-30 10:21:08 -0700
commit168f001d672259f308301afa1165c15ab868171c (patch)
tree7da829a4f9ed6bf44c08c9f413d2b438984216da /test
parent56852471179bee7549a2197735fa009fbb3036e7 (diff)
Made simple9.fir a short, more isolated test case
Diffstat (limited to 'test')
-rw-r--r--test/passes/inline-indexers/simple9.fir3049
1 files changed, 8 insertions, 3041 deletions
diff --git a/test/passes/inline-indexers/simple9.fir b/test/passes/inline-indexers/simple9.fir
index f009ef1b..a40abb17 100644
--- a/test/passes/inline-indexers/simple9.fir
+++ b/test/passes/inline-indexers/simple9.fir
@@ -3,3049 +3,16 @@
;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 T_4910 : UInt<1>
+ input T_4581 : UInt<1>
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")
+ input clock : Clock
+ output out : UInt<1>
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)
+ T_4590[0] := UInt(0)
+ T_4590[1] := UInt(0)
+ out := UInt(0)
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
+ out := T_4911
;CHECK: Done!