From 222c787097b1d62aee4316d0163aed7007bf6035 Mon Sep 17 00:00:00 2001 From: waleed-lm Date: Tue, 13 Oct 2020 10:51:37 +0500 Subject: [PATCH] Aligner Updated --- el2_ifu_aln_ctl.fir | 1367 +++++++++-------- el2_ifu_aln_ctl.v | 434 +++--- src/main/scala/ifu/el2_ifu_aln_ctl.scala | 16 + .../classes/ifu/el2_ifu_aln_ctl$$anon$1.class | Bin 6820 -> 6820 bytes .../classes/ifu/el2_ifu_aln_ctl.class | Bin 175650 -> 192083 bytes target/scala-2.12/classes/ifu/ifu_aln$.class | Bin 3875 -> 3875 bytes .../ifu/ifu_aln$delayedInit$body.class | Bin 736 -> 736 bytes 7 files changed, 924 insertions(+), 893 deletions(-) diff --git a/el2_ifu_aln_ctl.fir b/el2_ifu_aln_ctl.fir index 7522a1aa..a3adff11 100644 --- a/el2_ifu_aln_ctl.fir +++ b/el2_ifu_aln_ctl.fir @@ -1998,6 +1998,21 @@ circuit el2_ifu_aln_ctl : input reset : UInt<1> output io : {flip scan_mode : UInt<1>, flip active_clk : Clock, flip ifu_async_error_start : UInt<1>, flip iccm_rd_ecc_double_err : UInt<1>, flip ic_access_fault_f : UInt<1>, flip ic_access_fault_type_f : UInt<2>, flip ifu_bp_fghr_f : UInt<8>, flip ifu_bp_btb_target_f : UInt<32>, flip ifu_bp_poffset_f : UInt<12>, flip ifu_bp_hist0_f : UInt<2>, flip ifu_bp_hist1_f : UInt<2>, flip ifu_bp_pc4_f : UInt<2>, flip ifu_bp_way_f : UInt<2>, flip ifu_bp_valid_f : UInt<2>, flip ifu_bp_ret_f : UInt<2>, flip exu_flush_final : UInt<1>, flip dec_i0_decode_d : UInt<1>, flip ifu_fetch_data_f : UInt<32>, flip ifu_fetch_val : UInt<2>, flip ifu_fetch_pc : UInt<31>, ifu_i0_valid : UInt<1>, ifu_i0_icaf : UInt<1>, ifu_i0_icaf_type : UInt<2>, ifu_i0_icaf_f1 : UInt<1>, ifu_i0_dbecc : UInt<1>, ifu_i0_instr : UInt<32>, ifu_i0_pc : UInt<32>, ifu_i0_pc4 : UInt<1>, ifu_fb_consume1 : UInt<1>, ifu_fb_consume2 : UInt<1>, ifu_i0_bp_index : UInt<7>, ifu_i0_bp_fghr : UInt<8>, ifu_i0_bp_btag : UInt<5>, ifu_pmu_instr_aligned : UInt<1>, ifu_i0_cinst : UInt<16>, i0_brp : {valid : UInt<1>, toffset : UInt<12>, hist : UInt<2>, br_error : UInt<1>, br_start_error : UInt<1>, bank : UInt<1>, prett : UInt<31>, way : UInt<1>, ret : UInt<1>}} + io.ifu_i0_valid <= UInt<1>("h00") @[el2_ifu_aln_ctl.scala 47:19] + io.ifu_i0_icaf <= UInt<1>("h00") @[el2_ifu_aln_ctl.scala 48:18] + io.ifu_i0_icaf_type <= UInt<1>("h00") @[el2_ifu_aln_ctl.scala 49:23] + io.ifu_i0_icaf_f1 <= UInt<1>("h00") @[el2_ifu_aln_ctl.scala 50:21] + io.ifu_i0_dbecc <= UInt<1>("h00") @[el2_ifu_aln_ctl.scala 51:19] + io.ifu_i0_instr <= UInt<1>("h00") @[el2_ifu_aln_ctl.scala 52:19] + io.ifu_i0_pc <= UInt<1>("h00") @[el2_ifu_aln_ctl.scala 53:16] + io.ifu_i0_pc4 <= UInt<1>("h00") @[el2_ifu_aln_ctl.scala 54:17] + io.ifu_fb_consume1 <= UInt<1>("h00") @[el2_ifu_aln_ctl.scala 55:22] + io.ifu_fb_consume2 <= UInt<1>("h00") @[el2_ifu_aln_ctl.scala 56:22] + io.ifu_i0_bp_index <= UInt<1>("h00") @[el2_ifu_aln_ctl.scala 57:22] + io.ifu_i0_bp_fghr <= UInt<1>("h00") @[el2_ifu_aln_ctl.scala 58:21] + io.ifu_i0_bp_btag <= UInt<1>("h00") @[el2_ifu_aln_ctl.scala 59:21] + io.ifu_pmu_instr_aligned <= UInt<1>("h00") @[el2_ifu_aln_ctl.scala 60:28] + io.ifu_i0_cinst <= UInt<1>("h00") @[el2_ifu_aln_ctl.scala 61:19] wire error_stall_in : UInt<1> error_stall_in <= UInt<1>("h00") wire alignval : UInt<2> @@ -2096,157 +2111,157 @@ circuit el2_ifu_aln_ctl : shift_2B <= UInt<1>("h00") wire f0_shift_2B : UInt<1> f0_shift_2B <= UInt<1>("h00") - node _T = or(error_stall, io.ifu_async_error_start) @[el2_ifu_aln_ctl.scala 110:34] - node _T_1 = eq(io.exu_flush_final, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 110:64] - node _T_2 = and(_T, _T_1) @[el2_ifu_aln_ctl.scala 110:62] - error_stall_in <= _T_2 @[el2_ifu_aln_ctl.scala 110:18] - reg _T_3 : UInt<1>, io.active_clk with : (reset => (reset, UInt<1>("h00"))) @[el2_ifu_aln_ctl.scala 112:51] - _T_3 <= error_stall_in @[el2_ifu_aln_ctl.scala 112:51] - error_stall <= _T_3 @[el2_ifu_aln_ctl.scala 112:15] - reg wrptr : UInt, io.active_clk with : (reset => (reset, UInt<1>("h00"))) @[el2_ifu_aln_ctl.scala 113:48] - wrptr <= wrptr_in @[el2_ifu_aln_ctl.scala 113:48] - reg rdptr : UInt, io.active_clk with : (reset => (reset, UInt<1>("h00"))) @[el2_ifu_aln_ctl.scala 114:48] - rdptr <= rdptr_in @[el2_ifu_aln_ctl.scala 114:48] - reg f2val : UInt, io.active_clk with : (reset => (reset, UInt<1>("h00"))) @[el2_ifu_aln_ctl.scala 116:48] - f2val <= f2val_in @[el2_ifu_aln_ctl.scala 116:48] - reg f1val : UInt, io.active_clk with : (reset => (reset, UInt<1>("h00"))) @[el2_ifu_aln_ctl.scala 117:48] - f1val <= f1val_in @[el2_ifu_aln_ctl.scala 117:48] - reg f0val : UInt, io.active_clk with : (reset => (reset, UInt<1>("h00"))) @[el2_ifu_aln_ctl.scala 118:48] - f0val <= f0val_in @[el2_ifu_aln_ctl.scala 118:48] - reg q2off : UInt, io.active_clk with : (reset => (reset, UInt<1>("h00"))) @[el2_ifu_aln_ctl.scala 120:48] - q2off <= q2off_in @[el2_ifu_aln_ctl.scala 120:48] - reg q1off : UInt, io.active_clk with : (reset => (reset, UInt<1>("h00"))) @[el2_ifu_aln_ctl.scala 121:48] - q1off <= q1off_in @[el2_ifu_aln_ctl.scala 121:48] - reg q0off : UInt, io.active_clk with : (reset => (reset, UInt<1>("h00"))) @[el2_ifu_aln_ctl.scala 122:48] - q0off <= q0off_in @[el2_ifu_aln_ctl.scala 122:48] - node _T_4 = bits(f2_wr_en, 0, 0) @[el2_ifu_aln_ctl.scala 124:55] + node _T = or(error_stall, io.ifu_async_error_start) @[el2_ifu_aln_ctl.scala 126:34] + node _T_1 = eq(io.exu_flush_final, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 126:64] + node _T_2 = and(_T, _T_1) @[el2_ifu_aln_ctl.scala 126:62] + error_stall_in <= _T_2 @[el2_ifu_aln_ctl.scala 126:18] + reg _T_3 : UInt<1>, io.active_clk with : (reset => (reset, UInt<1>("h00"))) @[el2_ifu_aln_ctl.scala 128:51] + _T_3 <= error_stall_in @[el2_ifu_aln_ctl.scala 128:51] + error_stall <= _T_3 @[el2_ifu_aln_ctl.scala 128:15] + reg wrptr : UInt, io.active_clk with : (reset => (reset, UInt<1>("h00"))) @[el2_ifu_aln_ctl.scala 129:48] + wrptr <= wrptr_in @[el2_ifu_aln_ctl.scala 129:48] + reg rdptr : UInt, io.active_clk with : (reset => (reset, UInt<1>("h00"))) @[el2_ifu_aln_ctl.scala 130:48] + rdptr <= rdptr_in @[el2_ifu_aln_ctl.scala 130:48] + reg f2val : UInt, io.active_clk with : (reset => (reset, UInt<1>("h00"))) @[el2_ifu_aln_ctl.scala 132:48] + f2val <= f2val_in @[el2_ifu_aln_ctl.scala 132:48] + reg f1val : UInt, io.active_clk with : (reset => (reset, UInt<1>("h00"))) @[el2_ifu_aln_ctl.scala 133:48] + f1val <= f1val_in @[el2_ifu_aln_ctl.scala 133:48] + reg f0val : UInt, io.active_clk with : (reset => (reset, UInt<1>("h00"))) @[el2_ifu_aln_ctl.scala 134:48] + f0val <= f0val_in @[el2_ifu_aln_ctl.scala 134:48] + reg q2off : UInt, io.active_clk with : (reset => (reset, UInt<1>("h00"))) @[el2_ifu_aln_ctl.scala 136:48] + q2off <= q2off_in @[el2_ifu_aln_ctl.scala 136:48] + reg q1off : UInt, io.active_clk with : (reset => (reset, UInt<1>("h00"))) @[el2_ifu_aln_ctl.scala 137:48] + q1off <= q1off_in @[el2_ifu_aln_ctl.scala 137:48] + reg q0off : UInt, io.active_clk with : (reset => (reset, UInt<1>("h00"))) @[el2_ifu_aln_ctl.scala 138:48] + q0off <= q0off_in @[el2_ifu_aln_ctl.scala 138:48] + node _T_4 = bits(f2_wr_en, 0, 0) @[el2_ifu_aln_ctl.scala 140:55] reg f2pc : UInt, clock with : (reset => (reset, UInt<1>("h00"))) @[Reg.scala 27:20] when _T_4 : @[Reg.scala 28:19] f2pc <= io.ifu_fetch_pc @[Reg.scala 28:23] skip @[Reg.scala 28:19] - node _T_5 = bits(f1_shift_wr_en, 0, 0) @[el2_ifu_aln_ctl.scala 125:53] + node _T_5 = bits(f1_shift_wr_en, 0, 0) @[el2_ifu_aln_ctl.scala 141:53] reg f1pc : UInt, clock with : (reset => (reset, UInt<1>("h00"))) @[Reg.scala 27:20] when _T_5 : @[Reg.scala 28:19] f1pc <= f1pc_in @[Reg.scala 28:23] skip @[Reg.scala 28:19] - node _T_6 = bits(f0_shift_wr_en, 0, 0) @[el2_ifu_aln_ctl.scala 126:53] + node _T_6 = bits(f0_shift_wr_en, 0, 0) @[el2_ifu_aln_ctl.scala 142:53] reg f0pc : UInt, clock with : (reset => (reset, UInt<1>("h00"))) @[Reg.scala 27:20] when _T_6 : @[Reg.scala 28:19] f0pc <= f0pc_in @[Reg.scala 28:23] skip @[Reg.scala 28:19] - node _T_7 = bits(qwen, 2, 2) @[el2_ifu_aln_ctl.scala 128:44] + node _T_7 = bits(qwen, 2, 2) @[el2_ifu_aln_ctl.scala 144:44] reg _T_8 : UInt, clock with : (reset => (reset, UInt<1>("h00"))) @[Reg.scala 27:20] when _T_7 : @[Reg.scala 28:19] _T_8 <= brdata_in @[Reg.scala 28:23] skip @[Reg.scala 28:19] - brdata2 <= _T_8 @[el2_ifu_aln_ctl.scala 128:11] - node _T_9 = bits(qwen, 1, 1) @[el2_ifu_aln_ctl.scala 129:44] + brdata2 <= _T_8 @[el2_ifu_aln_ctl.scala 144:11] + node _T_9 = bits(qwen, 1, 1) @[el2_ifu_aln_ctl.scala 145:44] reg _T_10 : UInt, clock with : (reset => (reset, UInt<1>("h00"))) @[Reg.scala 27:20] when _T_9 : @[Reg.scala 28:19] _T_10 <= brdata_in @[Reg.scala 28:23] skip @[Reg.scala 28:19] - brdata1 <= _T_10 @[el2_ifu_aln_ctl.scala 129:11] - node _T_11 = bits(qwen, 0, 0) @[el2_ifu_aln_ctl.scala 130:44] + brdata1 <= _T_10 @[el2_ifu_aln_ctl.scala 145:11] + node _T_11 = bits(qwen, 0, 0) @[el2_ifu_aln_ctl.scala 146:44] reg _T_12 : UInt, clock with : (reset => (reset, UInt<1>("h00"))) @[Reg.scala 27:20] when _T_11 : @[Reg.scala 28:19] _T_12 <= brdata_in @[Reg.scala 28:23] skip @[Reg.scala 28:19] - brdata0 <= _T_12 @[el2_ifu_aln_ctl.scala 130:11] - node _T_13 = bits(qwen, 2, 2) @[el2_ifu_aln_ctl.scala 132:45] + brdata0 <= _T_12 @[el2_ifu_aln_ctl.scala 146:11] + node _T_13 = bits(qwen, 2, 2) @[el2_ifu_aln_ctl.scala 148:45] reg _T_14 : UInt, clock with : (reset => (reset, UInt<1>("h00"))) @[Reg.scala 27:20] when _T_13 : @[Reg.scala 28:19] _T_14 <= misc_data_in @[Reg.scala 28:23] skip @[Reg.scala 28:19] - misc2 <= _T_14 @[el2_ifu_aln_ctl.scala 132:9] - node _T_15 = bits(qwen, 1, 1) @[el2_ifu_aln_ctl.scala 133:45] + misc2 <= _T_14 @[el2_ifu_aln_ctl.scala 148:9] + node _T_15 = bits(qwen, 1, 1) @[el2_ifu_aln_ctl.scala 149:45] reg _T_16 : UInt, clock with : (reset => (reset, UInt<1>("h00"))) @[Reg.scala 27:20] when _T_15 : @[Reg.scala 28:19] _T_16 <= misc_data_in @[Reg.scala 28:23] skip @[Reg.scala 28:19] - misc1 <= _T_16 @[el2_ifu_aln_ctl.scala 133:9] - node _T_17 = bits(qwen, 0, 0) @[el2_ifu_aln_ctl.scala 134:45] + misc1 <= _T_16 @[el2_ifu_aln_ctl.scala 149:9] + node _T_17 = bits(qwen, 0, 0) @[el2_ifu_aln_ctl.scala 150:45] reg _T_18 : UInt, clock with : (reset => (reset, UInt<1>("h00"))) @[Reg.scala 27:20] when _T_17 : @[Reg.scala 28:19] _T_18 <= misc_data_in @[Reg.scala 28:23] skip @[Reg.scala 28:19] - misc0 <= _T_18 @[el2_ifu_aln_ctl.scala 134:9] - node _T_19 = bits(qwen, 2, 2) @[el2_ifu_aln_ctl.scala 136:49] + misc0 <= _T_18 @[el2_ifu_aln_ctl.scala 150:9] + node _T_19 = bits(qwen, 2, 2) @[el2_ifu_aln_ctl.scala 152:49] reg _T_20 : UInt, clock with : (reset => (reset, UInt<1>("h00"))) @[Reg.scala 27:20] when _T_19 : @[Reg.scala 28:19] _T_20 <= io.ifu_fetch_data_f @[Reg.scala 28:23] skip @[Reg.scala 28:19] - q2 <= _T_20 @[el2_ifu_aln_ctl.scala 136:6] - node _T_21 = bits(qwen, 1, 1) @[el2_ifu_aln_ctl.scala 137:49] + q2 <= _T_20 @[el2_ifu_aln_ctl.scala 152:6] + node _T_21 = bits(qwen, 1, 1) @[el2_ifu_aln_ctl.scala 153:49] reg _T_22 : UInt, clock with : (reset => (reset, UInt<1>("h00"))) @[Reg.scala 27:20] when _T_21 : @[Reg.scala 28:19] _T_22 <= io.ifu_fetch_data_f @[Reg.scala 28:23] skip @[Reg.scala 28:19] - q1 <= _T_22 @[el2_ifu_aln_ctl.scala 137:6] - node _T_23 = bits(qwen, 0, 0) @[el2_ifu_aln_ctl.scala 138:49] + q1 <= _T_22 @[el2_ifu_aln_ctl.scala 153:6] + node _T_23 = bits(qwen, 0, 0) @[el2_ifu_aln_ctl.scala 154:49] reg _T_24 : UInt, clock with : (reset => (reset, UInt<1>("h00"))) @[Reg.scala 27:20] when _T_23 : @[Reg.scala 28:19] _T_24 <= io.ifu_fetch_data_f @[Reg.scala 28:23] skip @[Reg.scala 28:19] - q0 <= _T_24 @[el2_ifu_aln_ctl.scala 138:6] - f2_wr_en <= fetch_to_f2 @[el2_ifu_aln_ctl.scala 140:18] - node _T_25 = or(fetch_to_f1, shift_f2_f1) @[el2_ifu_aln_ctl.scala 141:33] - node _T_26 = or(_T_25, f1_shift_2B) @[el2_ifu_aln_ctl.scala 141:47] - f1_shift_wr_en <= _T_26 @[el2_ifu_aln_ctl.scala 141:18] - node _T_27 = or(fetch_to_f0, shift_f2_f0) @[el2_ifu_aln_ctl.scala 142:33] - node _T_28 = or(_T_27, shift_f1_f0) @[el2_ifu_aln_ctl.scala 142:47] - node _T_29 = or(_T_28, shift_2B) @[el2_ifu_aln_ctl.scala 142:61] - node _T_30 = or(_T_29, shift_4B) @[el2_ifu_aln_ctl.scala 142:72] - f0_shift_wr_en <= _T_30 @[el2_ifu_aln_ctl.scala 142:18] - node _T_31 = eq(rdptr, UInt<2>("h02")) @[el2_ifu_aln_ctl.scala 144:24] - node _T_32 = eq(rdptr, UInt<1>("h01")) @[el2_ifu_aln_ctl.scala 144:39] - node _T_33 = eq(rdptr, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 144:54] + q0 <= _T_24 @[el2_ifu_aln_ctl.scala 154:6] + f2_wr_en <= fetch_to_f2 @[el2_ifu_aln_ctl.scala 156:18] + node _T_25 = or(fetch_to_f1, shift_f2_f1) @[el2_ifu_aln_ctl.scala 157:33] + node _T_26 = or(_T_25, f1_shift_2B) @[el2_ifu_aln_ctl.scala 157:47] + f1_shift_wr_en <= _T_26 @[el2_ifu_aln_ctl.scala 157:18] + node _T_27 = or(fetch_to_f0, shift_f2_f0) @[el2_ifu_aln_ctl.scala 158:33] + node _T_28 = or(_T_27, shift_f1_f0) @[el2_ifu_aln_ctl.scala 158:47] + node _T_29 = or(_T_28, shift_2B) @[el2_ifu_aln_ctl.scala 158:61] + node _T_30 = or(_T_29, shift_4B) @[el2_ifu_aln_ctl.scala 158:72] + f0_shift_wr_en <= _T_30 @[el2_ifu_aln_ctl.scala 158:18] + node _T_31 = eq(rdptr, UInt<2>("h02")) @[el2_ifu_aln_ctl.scala 160:24] + node _T_32 = eq(rdptr, UInt<1>("h01")) @[el2_ifu_aln_ctl.scala 160:39] + node _T_33 = eq(rdptr, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 160:54] node _T_34 = cat(_T_31, _T_32) @[Cat.scala 29:58] node qren = cat(_T_34, _T_33) @[Cat.scala 29:58] - node _T_35 = eq(wrptr, UInt<2>("h02")) @[el2_ifu_aln_ctl.scala 145:21] - node _T_36 = and(_T_35, ifvalid) @[el2_ifu_aln_ctl.scala 145:29] - node _T_37 = eq(wrptr, UInt<1>("h01")) @[el2_ifu_aln_ctl.scala 145:46] - node _T_38 = and(_T_37, ifvalid) @[el2_ifu_aln_ctl.scala 145:54] - node _T_39 = eq(wrptr, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 145:71] - node _T_40 = and(_T_39, ifvalid) @[el2_ifu_aln_ctl.scala 145:79] + node _T_35 = eq(wrptr, UInt<2>("h02")) @[el2_ifu_aln_ctl.scala 161:21] + node _T_36 = and(_T_35, ifvalid) @[el2_ifu_aln_ctl.scala 161:29] + node _T_37 = eq(wrptr, UInt<1>("h01")) @[el2_ifu_aln_ctl.scala 161:46] + node _T_38 = and(_T_37, ifvalid) @[el2_ifu_aln_ctl.scala 161:54] + node _T_39 = eq(wrptr, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 161:71] + node _T_40 = and(_T_39, ifvalid) @[el2_ifu_aln_ctl.scala 161:79] node _T_41 = cat(_T_36, _T_38) @[Cat.scala 29:58] node _T_42 = cat(_T_41, _T_40) @[Cat.scala 29:58] - qwen <= _T_42 @[el2_ifu_aln_ctl.scala 145:8] - node _T_43 = bits(qren, 0, 0) @[el2_ifu_aln_ctl.scala 147:30] - node _T_44 = and(_T_43, io.ifu_fb_consume1) @[el2_ifu_aln_ctl.scala 147:34] - node _T_45 = eq(io.exu_flush_final, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 147:57] - node _T_46 = and(_T_44, _T_45) @[el2_ifu_aln_ctl.scala 147:55] - node _T_47 = bits(_T_46, 0, 0) @[el2_ifu_aln_ctl.scala 147:78] - node _T_48 = bits(qren, 1, 1) @[el2_ifu_aln_ctl.scala 148:10] - node _T_49 = and(_T_48, io.ifu_fb_consume1) @[el2_ifu_aln_ctl.scala 148:14] - node _T_50 = eq(io.exu_flush_final, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 148:37] - node _T_51 = and(_T_49, _T_50) @[el2_ifu_aln_ctl.scala 148:35] - node _T_52 = bits(_T_51, 0, 0) @[el2_ifu_aln_ctl.scala 148:58] - node _T_53 = bits(qren, 2, 2) @[el2_ifu_aln_ctl.scala 149:10] - node _T_54 = and(_T_53, io.ifu_fb_consume1) @[el2_ifu_aln_ctl.scala 149:14] - node _T_55 = eq(io.exu_flush_final, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 149:37] - node _T_56 = and(_T_54, _T_55) @[el2_ifu_aln_ctl.scala 149:35] - node _T_57 = bits(_T_56, 0, 0) @[el2_ifu_aln_ctl.scala 149:58] - node _T_58 = bits(qren, 0, 0) @[el2_ifu_aln_ctl.scala 150:10] - node _T_59 = and(_T_58, io.ifu_fb_consume2) @[el2_ifu_aln_ctl.scala 150:14] - node _T_60 = eq(io.exu_flush_final, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 150:37] - node _T_61 = and(_T_59, _T_60) @[el2_ifu_aln_ctl.scala 150:35] - node _T_62 = bits(_T_61, 0, 0) @[el2_ifu_aln_ctl.scala 150:58] - node _T_63 = bits(qren, 1, 1) @[el2_ifu_aln_ctl.scala 151:10] - node _T_64 = and(_T_63, io.ifu_fb_consume2) @[el2_ifu_aln_ctl.scala 151:14] - node _T_65 = eq(io.exu_flush_final, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 151:37] - node _T_66 = and(_T_64, _T_65) @[el2_ifu_aln_ctl.scala 151:35] - node _T_67 = bits(_T_66, 0, 0) @[el2_ifu_aln_ctl.scala 151:58] - node _T_68 = bits(qren, 2, 2) @[el2_ifu_aln_ctl.scala 152:10] - node _T_69 = and(_T_68, io.ifu_fb_consume2) @[el2_ifu_aln_ctl.scala 152:14] - node _T_70 = eq(io.exu_flush_final, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 152:37] - node _T_71 = and(_T_69, _T_70) @[el2_ifu_aln_ctl.scala 152:35] - node _T_72 = bits(_T_71, 0, 0) @[el2_ifu_aln_ctl.scala 152:58] - node _T_73 = eq(io.ifu_fb_consume1, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 153:6] - node _T_74 = eq(io.ifu_fb_consume2, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 153:28] - node _T_75 = and(_T_73, _T_74) @[el2_ifu_aln_ctl.scala 153:26] - node _T_76 = eq(io.exu_flush_final, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 153:50] - node _T_77 = and(_T_75, _T_76) @[el2_ifu_aln_ctl.scala 153:48] - node _T_78 = bits(_T_77, 0, 0) @[el2_ifu_aln_ctl.scala 153:71] + qwen <= _T_42 @[el2_ifu_aln_ctl.scala 161:8] + node _T_43 = bits(qren, 0, 0) @[el2_ifu_aln_ctl.scala 163:30] + node _T_44 = and(_T_43, io.ifu_fb_consume1) @[el2_ifu_aln_ctl.scala 163:34] + node _T_45 = eq(io.exu_flush_final, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 163:57] + node _T_46 = and(_T_44, _T_45) @[el2_ifu_aln_ctl.scala 163:55] + node _T_47 = bits(_T_46, 0, 0) @[el2_ifu_aln_ctl.scala 163:78] + node _T_48 = bits(qren, 1, 1) @[el2_ifu_aln_ctl.scala 164:10] + node _T_49 = and(_T_48, io.ifu_fb_consume1) @[el2_ifu_aln_ctl.scala 164:14] + node _T_50 = eq(io.exu_flush_final, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 164:37] + node _T_51 = and(_T_49, _T_50) @[el2_ifu_aln_ctl.scala 164:35] + node _T_52 = bits(_T_51, 0, 0) @[el2_ifu_aln_ctl.scala 164:58] + node _T_53 = bits(qren, 2, 2) @[el2_ifu_aln_ctl.scala 165:10] + node _T_54 = and(_T_53, io.ifu_fb_consume1) @[el2_ifu_aln_ctl.scala 165:14] + node _T_55 = eq(io.exu_flush_final, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 165:37] + node _T_56 = and(_T_54, _T_55) @[el2_ifu_aln_ctl.scala 165:35] + node _T_57 = bits(_T_56, 0, 0) @[el2_ifu_aln_ctl.scala 165:58] + node _T_58 = bits(qren, 0, 0) @[el2_ifu_aln_ctl.scala 166:10] + node _T_59 = and(_T_58, io.ifu_fb_consume2) @[el2_ifu_aln_ctl.scala 166:14] + node _T_60 = eq(io.exu_flush_final, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 166:37] + node _T_61 = and(_T_59, _T_60) @[el2_ifu_aln_ctl.scala 166:35] + node _T_62 = bits(_T_61, 0, 0) @[el2_ifu_aln_ctl.scala 166:58] + node _T_63 = bits(qren, 1, 1) @[el2_ifu_aln_ctl.scala 167:10] + node _T_64 = and(_T_63, io.ifu_fb_consume2) @[el2_ifu_aln_ctl.scala 167:14] + node _T_65 = eq(io.exu_flush_final, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 167:37] + node _T_66 = and(_T_64, _T_65) @[el2_ifu_aln_ctl.scala 167:35] + node _T_67 = bits(_T_66, 0, 0) @[el2_ifu_aln_ctl.scala 167:58] + node _T_68 = bits(qren, 2, 2) @[el2_ifu_aln_ctl.scala 168:10] + node _T_69 = and(_T_68, io.ifu_fb_consume2) @[el2_ifu_aln_ctl.scala 168:14] + node _T_70 = eq(io.exu_flush_final, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 168:37] + node _T_71 = and(_T_69, _T_70) @[el2_ifu_aln_ctl.scala 168:35] + node _T_72 = bits(_T_71, 0, 0) @[el2_ifu_aln_ctl.scala 168:58] + node _T_73 = eq(io.ifu_fb_consume1, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 169:6] + node _T_74 = eq(io.ifu_fb_consume2, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 169:28] + node _T_75 = and(_T_73, _T_74) @[el2_ifu_aln_ctl.scala 169:26] + node _T_76 = eq(io.exu_flush_final, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 169:50] + node _T_77 = and(_T_75, _T_76) @[el2_ifu_aln_ctl.scala 169:48] + node _T_78 = bits(_T_77, 0, 0) @[el2_ifu_aln_ctl.scala 169:71] node _T_79 = mux(_T_47, UInt<1>("h01"), UInt<1>("h00")) @[Mux.scala 27:72] node _T_80 = mux(_T_52, UInt<2>("h02"), UInt<1>("h00")) @[Mux.scala 27:72] node _T_81 = mux(_T_57, UInt<1>("h00"), UInt<1>("h00")) @[Mux.scala 27:72] @@ -2262,23 +2277,23 @@ circuit el2_ifu_aln_ctl : node _T_91 = or(_T_90, _T_85) @[Mux.scala 27:72] wire _T_92 : UInt @[Mux.scala 27:72] _T_92 <= _T_91 @[Mux.scala 27:72] - rdptr_in <= _T_92 @[el2_ifu_aln_ctl.scala 147:12] - node _T_93 = bits(qwen, 0, 0) @[el2_ifu_aln_ctl.scala 155:30] - node _T_94 = eq(io.exu_flush_final, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 155:36] - node _T_95 = and(_T_93, _T_94) @[el2_ifu_aln_ctl.scala 155:34] - node _T_96 = bits(_T_95, 0, 0) @[el2_ifu_aln_ctl.scala 155:57] - node _T_97 = bits(qwen, 1, 1) @[el2_ifu_aln_ctl.scala 156:10] - node _T_98 = eq(io.exu_flush_final, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 156:16] - node _T_99 = and(_T_97, _T_98) @[el2_ifu_aln_ctl.scala 156:14] - node _T_100 = bits(_T_99, 0, 0) @[el2_ifu_aln_ctl.scala 156:37] - node _T_101 = bits(qwen, 2, 2) @[el2_ifu_aln_ctl.scala 157:10] - node _T_102 = eq(io.exu_flush_final, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 157:16] - node _T_103 = and(_T_101, _T_102) @[el2_ifu_aln_ctl.scala 157:14] - node _T_104 = bits(_T_103, 0, 0) @[el2_ifu_aln_ctl.scala 157:37] - node _T_105 = eq(ifvalid, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 158:6] - node _T_106 = eq(io.exu_flush_final, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 158:17] - node _T_107 = and(_T_105, _T_106) @[el2_ifu_aln_ctl.scala 158:15] - node _T_108 = bits(_T_107, 0, 0) @[el2_ifu_aln_ctl.scala 158:38] + rdptr_in <= _T_92 @[el2_ifu_aln_ctl.scala 163:12] + node _T_93 = bits(qwen, 0, 0) @[el2_ifu_aln_ctl.scala 171:30] + node _T_94 = eq(io.exu_flush_final, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 171:36] + node _T_95 = and(_T_93, _T_94) @[el2_ifu_aln_ctl.scala 171:34] + node _T_96 = bits(_T_95, 0, 0) @[el2_ifu_aln_ctl.scala 171:57] + node _T_97 = bits(qwen, 1, 1) @[el2_ifu_aln_ctl.scala 172:10] + node _T_98 = eq(io.exu_flush_final, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 172:16] + node _T_99 = and(_T_97, _T_98) @[el2_ifu_aln_ctl.scala 172:14] + node _T_100 = bits(_T_99, 0, 0) @[el2_ifu_aln_ctl.scala 172:37] + node _T_101 = bits(qwen, 2, 2) @[el2_ifu_aln_ctl.scala 173:10] + node _T_102 = eq(io.exu_flush_final, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 173:16] + node _T_103 = and(_T_101, _T_102) @[el2_ifu_aln_ctl.scala 173:14] + node _T_104 = bits(_T_103, 0, 0) @[el2_ifu_aln_ctl.scala 173:37] + node _T_105 = eq(ifvalid, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 174:6] + node _T_106 = eq(io.exu_flush_final, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 174:17] + node _T_107 = and(_T_105, _T_106) @[el2_ifu_aln_ctl.scala 174:15] + node _T_108 = bits(_T_107, 0, 0) @[el2_ifu_aln_ctl.scala 174:38] node _T_109 = mux(_T_96, UInt<1>("h01"), UInt<1>("h00")) @[Mux.scala 27:72] node _T_110 = mux(_T_100, UInt<2>("h02"), UInt<1>("h00")) @[Mux.scala 27:72] node _T_111 = mux(_T_104, UInt<1>("h00"), UInt<1>("h00")) @[Mux.scala 27:72] @@ -2288,24 +2303,24 @@ circuit el2_ifu_aln_ctl : node _T_115 = or(_T_114, _T_112) @[Mux.scala 27:72] wire _T_116 : UInt @[Mux.scala 27:72] _T_116 <= _T_115 @[Mux.scala 27:72] - wrptr_in <= _T_116 @[el2_ifu_aln_ctl.scala 155:12] - node _T_117 = bits(qwen, 2, 2) @[el2_ifu_aln_ctl.scala 160:31] - node _T_118 = eq(_T_117, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 160:26] - node _T_119 = eq(rdptr, UInt<2>("h02")) @[el2_ifu_aln_ctl.scala 160:43] - node _T_120 = and(_T_118, _T_119) @[el2_ifu_aln_ctl.scala 160:35] - node _T_121 = bits(_T_120, 0, 0) @[el2_ifu_aln_ctl.scala 160:52] - node _T_122 = or(q2off, f0_shift_2B) @[el2_ifu_aln_ctl.scala 160:74] - node _T_123 = bits(qwen, 2, 2) @[el2_ifu_aln_ctl.scala 161:11] - node _T_124 = eq(_T_123, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 161:6] - node _T_125 = eq(rdptr, UInt<1>("h01")) @[el2_ifu_aln_ctl.scala 161:23] - node _T_126 = and(_T_124, _T_125) @[el2_ifu_aln_ctl.scala 161:15] - node _T_127 = bits(_T_126, 0, 0) @[el2_ifu_aln_ctl.scala 161:32] - node _T_128 = or(q2off, f1_shift_2B) @[el2_ifu_aln_ctl.scala 161:54] - node _T_129 = bits(qwen, 2, 2) @[el2_ifu_aln_ctl.scala 162:11] - node _T_130 = eq(_T_129, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 162:6] - node _T_131 = eq(rdptr, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 162:23] - node _T_132 = and(_T_130, _T_131) @[el2_ifu_aln_ctl.scala 162:15] - node _T_133 = bits(_T_132, 0, 0) @[el2_ifu_aln_ctl.scala 162:32] + wrptr_in <= _T_116 @[el2_ifu_aln_ctl.scala 171:12] + node _T_117 = bits(qwen, 2, 2) @[el2_ifu_aln_ctl.scala 176:31] + node _T_118 = eq(_T_117, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 176:26] + node _T_119 = eq(rdptr, UInt<2>("h02")) @[el2_ifu_aln_ctl.scala 176:43] + node _T_120 = and(_T_118, _T_119) @[el2_ifu_aln_ctl.scala 176:35] + node _T_121 = bits(_T_120, 0, 0) @[el2_ifu_aln_ctl.scala 176:52] + node _T_122 = or(q2off, f0_shift_2B) @[el2_ifu_aln_ctl.scala 176:74] + node _T_123 = bits(qwen, 2, 2) @[el2_ifu_aln_ctl.scala 177:11] + node _T_124 = eq(_T_123, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 177:6] + node _T_125 = eq(rdptr, UInt<1>("h01")) @[el2_ifu_aln_ctl.scala 177:23] + node _T_126 = and(_T_124, _T_125) @[el2_ifu_aln_ctl.scala 177:15] + node _T_127 = bits(_T_126, 0, 0) @[el2_ifu_aln_ctl.scala 177:32] + node _T_128 = or(q2off, f1_shift_2B) @[el2_ifu_aln_ctl.scala 177:54] + node _T_129 = bits(qwen, 2, 2) @[el2_ifu_aln_ctl.scala 178:11] + node _T_130 = eq(_T_129, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 178:6] + node _T_131 = eq(rdptr, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 178:23] + node _T_132 = and(_T_130, _T_131) @[el2_ifu_aln_ctl.scala 178:15] + node _T_133 = bits(_T_132, 0, 0) @[el2_ifu_aln_ctl.scala 178:32] node _T_134 = mux(_T_121, _T_122, UInt<1>("h00")) @[Mux.scala 27:72] node _T_135 = mux(_T_127, _T_128, UInt<1>("h00")) @[Mux.scala 27:72] node _T_136 = mux(_T_133, q2off, UInt<1>("h00")) @[Mux.scala 27:72] @@ -2313,24 +2328,24 @@ circuit el2_ifu_aln_ctl : node _T_138 = or(_T_137, _T_136) @[Mux.scala 27:72] wire _T_139 : UInt @[Mux.scala 27:72] _T_139 <= _T_138 @[Mux.scala 27:72] - q2off_in <= _T_139 @[el2_ifu_aln_ctl.scala 160:12] - node _T_140 = bits(qwen, 1, 1) @[el2_ifu_aln_ctl.scala 164:31] - node _T_141 = eq(_T_140, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 164:26] - node _T_142 = eq(rdptr, UInt<1>("h01")) @[el2_ifu_aln_ctl.scala 164:43] - node _T_143 = and(_T_141, _T_142) @[el2_ifu_aln_ctl.scala 164:35] - node _T_144 = bits(_T_143, 0, 0) @[el2_ifu_aln_ctl.scala 164:52] - node _T_145 = or(q1off, f0_shift_2B) @[el2_ifu_aln_ctl.scala 164:74] - node _T_146 = bits(qwen, 1, 1) @[el2_ifu_aln_ctl.scala 165:11] - node _T_147 = eq(_T_146, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 165:6] - node _T_148 = eq(rdptr, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 165:23] - node _T_149 = and(_T_147, _T_148) @[el2_ifu_aln_ctl.scala 165:15] - node _T_150 = bits(_T_149, 0, 0) @[el2_ifu_aln_ctl.scala 165:32] - node _T_151 = or(q1off, f1_shift_2B) @[el2_ifu_aln_ctl.scala 165:54] - node _T_152 = bits(qwen, 1, 1) @[el2_ifu_aln_ctl.scala 166:11] - node _T_153 = eq(_T_152, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 166:6] - node _T_154 = eq(rdptr, UInt<2>("h02")) @[el2_ifu_aln_ctl.scala 166:23] - node _T_155 = and(_T_153, _T_154) @[el2_ifu_aln_ctl.scala 166:15] - node _T_156 = bits(_T_155, 0, 0) @[el2_ifu_aln_ctl.scala 166:32] + q2off_in <= _T_139 @[el2_ifu_aln_ctl.scala 176:12] + node _T_140 = bits(qwen, 1, 1) @[el2_ifu_aln_ctl.scala 180:31] + node _T_141 = eq(_T_140, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 180:26] + node _T_142 = eq(rdptr, UInt<1>("h01")) @[el2_ifu_aln_ctl.scala 180:43] + node _T_143 = and(_T_141, _T_142) @[el2_ifu_aln_ctl.scala 180:35] + node _T_144 = bits(_T_143, 0, 0) @[el2_ifu_aln_ctl.scala 180:52] + node _T_145 = or(q1off, f0_shift_2B) @[el2_ifu_aln_ctl.scala 180:74] + node _T_146 = bits(qwen, 1, 1) @[el2_ifu_aln_ctl.scala 181:11] + node _T_147 = eq(_T_146, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 181:6] + node _T_148 = eq(rdptr, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 181:23] + node _T_149 = and(_T_147, _T_148) @[el2_ifu_aln_ctl.scala 181:15] + node _T_150 = bits(_T_149, 0, 0) @[el2_ifu_aln_ctl.scala 181:32] + node _T_151 = or(q1off, f1_shift_2B) @[el2_ifu_aln_ctl.scala 181:54] + node _T_152 = bits(qwen, 1, 1) @[el2_ifu_aln_ctl.scala 182:11] + node _T_153 = eq(_T_152, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 182:6] + node _T_154 = eq(rdptr, UInt<2>("h02")) @[el2_ifu_aln_ctl.scala 182:23] + node _T_155 = and(_T_153, _T_154) @[el2_ifu_aln_ctl.scala 182:15] + node _T_156 = bits(_T_155, 0, 0) @[el2_ifu_aln_ctl.scala 182:32] node _T_157 = mux(_T_144, _T_145, UInt<1>("h00")) @[Mux.scala 27:72] node _T_158 = mux(_T_150, _T_151, UInt<1>("h00")) @[Mux.scala 27:72] node _T_159 = mux(_T_156, q1off, UInt<1>("h00")) @[Mux.scala 27:72] @@ -2338,24 +2353,24 @@ circuit el2_ifu_aln_ctl : node _T_161 = or(_T_160, _T_159) @[Mux.scala 27:72] wire _T_162 : UInt @[Mux.scala 27:72] _T_162 <= _T_161 @[Mux.scala 27:72] - q1off_in <= _T_162 @[el2_ifu_aln_ctl.scala 164:12] - node _T_163 = bits(qwen, 0, 0) @[el2_ifu_aln_ctl.scala 168:31] - node _T_164 = eq(_T_163, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 168:26] - node _T_165 = eq(rdptr, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 168:43] - node _T_166 = and(_T_164, _T_165) @[el2_ifu_aln_ctl.scala 168:35] - node _T_167 = bits(_T_166, 0, 0) @[el2_ifu_aln_ctl.scala 168:52] - node _T_168 = or(q0off, f0_shift_2B) @[el2_ifu_aln_ctl.scala 168:76] - node _T_169 = bits(qwen, 0, 0) @[el2_ifu_aln_ctl.scala 169:11] - node _T_170 = eq(_T_169, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 169:6] - node _T_171 = eq(rdptr, UInt<2>("h02")) @[el2_ifu_aln_ctl.scala 169:23] - node _T_172 = and(_T_170, _T_171) @[el2_ifu_aln_ctl.scala 169:15] - node _T_173 = bits(_T_172, 0, 0) @[el2_ifu_aln_ctl.scala 169:32] - node _T_174 = or(q0off, f1_shift_2B) @[el2_ifu_aln_ctl.scala 169:56] - node _T_175 = bits(qwen, 0, 0) @[el2_ifu_aln_ctl.scala 170:11] - node _T_176 = eq(_T_175, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 170:6] - node _T_177 = eq(rdptr, UInt<1>("h01")) @[el2_ifu_aln_ctl.scala 170:23] - node _T_178 = and(_T_176, _T_177) @[el2_ifu_aln_ctl.scala 170:15] - node _T_179 = bits(_T_178, 0, 0) @[el2_ifu_aln_ctl.scala 170:32] + q1off_in <= _T_162 @[el2_ifu_aln_ctl.scala 180:12] + node _T_163 = bits(qwen, 0, 0) @[el2_ifu_aln_ctl.scala 184:31] + node _T_164 = eq(_T_163, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 184:26] + node _T_165 = eq(rdptr, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 184:43] + node _T_166 = and(_T_164, _T_165) @[el2_ifu_aln_ctl.scala 184:35] + node _T_167 = bits(_T_166, 0, 0) @[el2_ifu_aln_ctl.scala 184:52] + node _T_168 = or(q0off, f0_shift_2B) @[el2_ifu_aln_ctl.scala 184:76] + node _T_169 = bits(qwen, 0, 0) @[el2_ifu_aln_ctl.scala 185:11] + node _T_170 = eq(_T_169, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 185:6] + node _T_171 = eq(rdptr, UInt<2>("h02")) @[el2_ifu_aln_ctl.scala 185:23] + node _T_172 = and(_T_170, _T_171) @[el2_ifu_aln_ctl.scala 185:15] + node _T_173 = bits(_T_172, 0, 0) @[el2_ifu_aln_ctl.scala 185:32] + node _T_174 = or(q0off, f1_shift_2B) @[el2_ifu_aln_ctl.scala 185:56] + node _T_175 = bits(qwen, 0, 0) @[el2_ifu_aln_ctl.scala 186:11] + node _T_176 = eq(_T_175, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 186:6] + node _T_177 = eq(rdptr, UInt<1>("h01")) @[el2_ifu_aln_ctl.scala 186:23] + node _T_178 = and(_T_176, _T_177) @[el2_ifu_aln_ctl.scala 186:15] + node _T_179 = bits(_T_178, 0, 0) @[el2_ifu_aln_ctl.scala 186:32] node _T_180 = mux(_T_167, _T_168, UInt<1>("h00")) @[Mux.scala 27:72] node _T_181 = mux(_T_173, _T_174, UInt<1>("h00")) @[Mux.scala 27:72] node _T_182 = mux(_T_179, q0off, UInt<1>("h00")) @[Mux.scala 27:72] @@ -2363,10 +2378,10 @@ circuit el2_ifu_aln_ctl : node _T_184 = or(_T_183, _T_182) @[Mux.scala 27:72] wire _T_185 : UInt @[Mux.scala 27:72] _T_185 <= _T_184 @[Mux.scala 27:72] - q0off_in <= _T_185 @[el2_ifu_aln_ctl.scala 168:12] - node _T_186 = eq(rdptr, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 172:31] - node _T_187 = eq(rdptr, UInt<1>("h01")) @[el2_ifu_aln_ctl.scala 173:11] - node _T_188 = eq(rdptr, UInt<2>("h02")) @[el2_ifu_aln_ctl.scala 174:11] + q0off_in <= _T_185 @[el2_ifu_aln_ctl.scala 184:12] + node _T_186 = eq(rdptr, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 188:31] + node _T_187 = eq(rdptr, UInt<1>("h01")) @[el2_ifu_aln_ctl.scala 189:11] + node _T_188 = eq(rdptr, UInt<2>("h02")) @[el2_ifu_aln_ctl.scala 190:11] node _T_189 = mux(_T_186, q0off, UInt<1>("h00")) @[Mux.scala 27:72] node _T_190 = mux(_T_187, q1off, UInt<1>("h00")) @[Mux.scala 27:72] node _T_191 = mux(_T_188, q2off, UInt<1>("h00")) @[Mux.scala 27:72] @@ -2374,9 +2389,9 @@ circuit el2_ifu_aln_ctl : node _T_193 = or(_T_192, _T_191) @[Mux.scala 27:72] wire q0ptr : UInt @[Mux.scala 27:72] q0ptr <= _T_193 @[Mux.scala 27:72] - node _T_194 = eq(rdptr, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 176:32] - node _T_195 = eq(rdptr, UInt<1>("h01")) @[el2_ifu_aln_ctl.scala 176:57] - node _T_196 = eq(rdptr, UInt<2>("h02")) @[el2_ifu_aln_ctl.scala 176:83] + node _T_194 = eq(rdptr, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 192:32] + node _T_195 = eq(rdptr, UInt<1>("h01")) @[el2_ifu_aln_ctl.scala 192:57] + node _T_196 = eq(rdptr, UInt<2>("h02")) @[el2_ifu_aln_ctl.scala 192:83] node _T_197 = mux(_T_194, q1off, UInt<1>("h00")) @[Mux.scala 27:72] node _T_198 = mux(_T_195, q2off, UInt<1>("h00")) @[Mux.scala 27:72] node _T_199 = mux(_T_196, q0off, UInt<1>("h00")) @[Mux.scala 27:72] @@ -2384,25 +2399,25 @@ circuit el2_ifu_aln_ctl : node _T_201 = or(_T_200, _T_199) @[Mux.scala 27:72] wire q1ptr : UInt @[Mux.scala 27:72] q1ptr <= _T_201 @[Mux.scala 27:72] - node _T_202 = eq(q0ptr, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 178:26] + node _T_202 = eq(q0ptr, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 194:26] node q0sel = cat(q0ptr, _T_202) @[Cat.scala 29:58] - node _T_203 = eq(q1ptr, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 180:26] + node _T_203 = eq(q1ptr, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 196:26] node q1sel = cat(q1ptr, _T_203) @[Cat.scala 29:58] - node _T_204 = bits(io.ifu_bp_btb_target_f, 31, 1) @[el2_ifu_aln_ctl.scala 183:27] + node _T_204 = bits(io.ifu_bp_btb_target_f, 31, 1) @[el2_ifu_aln_ctl.scala 199:27] node _T_205 = cat(_T_204, io.ifu_bp_poffset_f) @[Cat.scala 29:58] node _T_206 = cat(_T_205, io.ifu_bp_fghr_f) @[Cat.scala 29:58] node _T_207 = cat(io.iccm_rd_ecc_double_err, io.ic_access_fault_f) @[Cat.scala 29:58] node _T_208 = cat(_T_207, io.ic_access_fault_type_f) @[Cat.scala 29:58] node _T_209 = cat(_T_208, _T_206) @[Cat.scala 29:58] - misc_data_in <= _T_209 @[el2_ifu_aln_ctl.scala 182:16] - node _T_210 = bits(qren, 0, 0) @[el2_ifu_aln_ctl.scala 185:31] - node _T_211 = bits(_T_210, 0, 0) @[el2_ifu_aln_ctl.scala 185:41] + misc_data_in <= _T_209 @[el2_ifu_aln_ctl.scala 198:16] + node _T_210 = bits(qren, 0, 0) @[el2_ifu_aln_ctl.scala 201:31] + node _T_211 = bits(_T_210, 0, 0) @[el2_ifu_aln_ctl.scala 201:41] node _T_212 = cat(misc1, misc0) @[Cat.scala 29:58] - node _T_213 = bits(qren, 1, 1) @[el2_ifu_aln_ctl.scala 186:9] - node _T_214 = bits(_T_213, 0, 0) @[el2_ifu_aln_ctl.scala 186:19] + node _T_213 = bits(qren, 1, 1) @[el2_ifu_aln_ctl.scala 202:9] + node _T_214 = bits(_T_213, 0, 0) @[el2_ifu_aln_ctl.scala 202:19] node _T_215 = cat(misc2, misc1) @[Cat.scala 29:58] - node _T_216 = bits(qren, 2, 2) @[el2_ifu_aln_ctl.scala 187:9] - node _T_217 = bits(_T_216, 0, 0) @[el2_ifu_aln_ctl.scala 187:19] + node _T_216 = bits(qren, 2, 2) @[el2_ifu_aln_ctl.scala 203:9] + node _T_217 = bits(_T_216, 0, 0) @[el2_ifu_aln_ctl.scala 203:19] node _T_218 = cat(misc0, misc2) @[Cat.scala 29:58] node _T_219 = mux(_T_211, _T_212, UInt<1>("h00")) @[Mux.scala 27:72] node _T_220 = mux(_T_214, _T_215, UInt<1>("h00")) @[Mux.scala 27:72] @@ -2411,34 +2426,34 @@ circuit el2_ifu_aln_ctl : node _T_223 = or(_T_222, _T_221) @[Mux.scala 27:72] wire misceff : UInt<108> @[Mux.scala 27:72] misceff <= _T_223 @[Mux.scala 27:72] - node misc1eff = bits(misceff, 107, 55) @[el2_ifu_aln_ctl.scala 189:25] - node misc0eff = bits(misceff, 54, 0) @[el2_ifu_aln_ctl.scala 190:25] - node f1dbecc = bits(misc1eff, 52, 52) @[el2_ifu_aln_ctl.scala 193:25] - node _T_224 = bits(misc1eff, 51, 51) @[el2_ifu_aln_ctl.scala 194:21] - f1icaf <= _T_224 @[el2_ifu_aln_ctl.scala 194:10] - node f1ictype = bits(misc1eff, 50, 49) @[el2_ifu_aln_ctl.scala 195:26] - node f1prett = bits(misc1eff, 48, 18) @[el2_ifu_aln_ctl.scala 196:25] - node f1poffset = bits(misc1eff, 19, 8) @[el2_ifu_aln_ctl.scala 197:27] - node f1fghr = bits(misc1eff, 7, 0) @[el2_ifu_aln_ctl.scala 198:24] - node f0dbecc = bits(misc0eff, 54, 54) @[el2_ifu_aln_ctl.scala 200:25] - node _T_225 = bits(misc0eff, 53, 53) @[el2_ifu_aln_ctl.scala 201:21] - f0icaf <= _T_225 @[el2_ifu_aln_ctl.scala 201:10] - node f0ictype = bits(misc0eff, 52, 51) @[el2_ifu_aln_ctl.scala 202:26] - node f0prett = bits(misc0eff, 50, 20) @[el2_ifu_aln_ctl.scala 203:25] - node f0poffset = bits(misc0eff, 19, 8) @[el2_ifu_aln_ctl.scala 204:27] - node f0fghr = bits(misc0eff, 7, 0) @[el2_ifu_aln_ctl.scala 205:24] - node _T_226 = bits(io.ifu_bp_hist1_f, 1, 1) @[el2_ifu_aln_ctl.scala 207:37] - node _T_227 = bits(io.ifu_bp_hist0_f, 1, 1) @[el2_ifu_aln_ctl.scala 207:58] - node _T_228 = bits(io.ifu_bp_pc4_f, 1, 1) @[el2_ifu_aln_ctl.scala 207:77] - node _T_229 = bits(io.ifu_bp_way_f, 1, 1) @[el2_ifu_aln_ctl.scala 207:96] - node _T_230 = bits(io.ifu_bp_valid_f, 1, 1) @[el2_ifu_aln_ctl.scala 207:117] - node _T_231 = bits(io.ifu_bp_ret_f, 1, 1) @[el2_ifu_aln_ctl.scala 208:20] - node _T_232 = bits(io.ifu_bp_hist1_f, 0, 0) @[el2_ifu_aln_ctl.scala 208:42] - node _T_233 = bits(io.ifu_bp_hist0_f, 0, 0) @[el2_ifu_aln_ctl.scala 208:63] - node _T_234 = bits(io.ifu_bp_pc4_f, 0, 0) @[el2_ifu_aln_ctl.scala 208:82] - node _T_235 = bits(io.ifu_bp_way_f, 0, 0) @[el2_ifu_aln_ctl.scala 208:101] - node _T_236 = bits(io.ifu_bp_valid_f, 0, 0) @[el2_ifu_aln_ctl.scala 209:22] - node _T_237 = bits(io.ifu_bp_ret_f, 0, 0) @[el2_ifu_aln_ctl.scala 209:41] + node misc1eff = bits(misceff, 107, 55) @[el2_ifu_aln_ctl.scala 205:25] + node misc0eff = bits(misceff, 54, 0) @[el2_ifu_aln_ctl.scala 206:25] + node f1dbecc = bits(misc1eff, 52, 52) @[el2_ifu_aln_ctl.scala 209:25] + node _T_224 = bits(misc1eff, 51, 51) @[el2_ifu_aln_ctl.scala 210:21] + f1icaf <= _T_224 @[el2_ifu_aln_ctl.scala 210:10] + node f1ictype = bits(misc1eff, 50, 49) @[el2_ifu_aln_ctl.scala 211:26] + node f1prett = bits(misc1eff, 48, 18) @[el2_ifu_aln_ctl.scala 212:25] + node f1poffset = bits(misc1eff, 19, 8) @[el2_ifu_aln_ctl.scala 213:27] + node f1fghr = bits(misc1eff, 7, 0) @[el2_ifu_aln_ctl.scala 214:24] + node f0dbecc = bits(misc0eff, 54, 54) @[el2_ifu_aln_ctl.scala 216:25] + node _T_225 = bits(misc0eff, 53, 53) @[el2_ifu_aln_ctl.scala 217:21] + f0icaf <= _T_225 @[el2_ifu_aln_ctl.scala 217:10] + node f0ictype = bits(misc0eff, 52, 51) @[el2_ifu_aln_ctl.scala 218:26] + node f0prett = bits(misc0eff, 50, 20) @[el2_ifu_aln_ctl.scala 219:25] + node f0poffset = bits(misc0eff, 19, 8) @[el2_ifu_aln_ctl.scala 220:27] + node f0fghr = bits(misc0eff, 7, 0) @[el2_ifu_aln_ctl.scala 221:24] + node _T_226 = bits(io.ifu_bp_hist1_f, 1, 1) @[el2_ifu_aln_ctl.scala 223:37] + node _T_227 = bits(io.ifu_bp_hist0_f, 1, 1) @[el2_ifu_aln_ctl.scala 223:58] + node _T_228 = bits(io.ifu_bp_pc4_f, 1, 1) @[el2_ifu_aln_ctl.scala 223:77] + node _T_229 = bits(io.ifu_bp_way_f, 1, 1) @[el2_ifu_aln_ctl.scala 223:96] + node _T_230 = bits(io.ifu_bp_valid_f, 1, 1) @[el2_ifu_aln_ctl.scala 223:117] + node _T_231 = bits(io.ifu_bp_ret_f, 1, 1) @[el2_ifu_aln_ctl.scala 224:20] + node _T_232 = bits(io.ifu_bp_hist1_f, 0, 0) @[el2_ifu_aln_ctl.scala 224:42] + node _T_233 = bits(io.ifu_bp_hist0_f, 0, 0) @[el2_ifu_aln_ctl.scala 224:63] + node _T_234 = bits(io.ifu_bp_pc4_f, 0, 0) @[el2_ifu_aln_ctl.scala 224:82] + node _T_235 = bits(io.ifu_bp_way_f, 0, 0) @[el2_ifu_aln_ctl.scala 224:101] + node _T_236 = bits(io.ifu_bp_valid_f, 0, 0) @[el2_ifu_aln_ctl.scala 225:22] + node _T_237 = bits(io.ifu_bp_ret_f, 0, 0) @[el2_ifu_aln_ctl.scala 225:41] node _T_238 = cat(_T_235, _T_236) @[Cat.scala 29:58] node _T_239 = cat(_T_238, _T_237) @[Cat.scala 29:58] node _T_240 = cat(_T_232, _T_233) @[Cat.scala 29:58] @@ -2450,15 +2465,15 @@ circuit el2_ifu_aln_ctl : node _T_246 = cat(_T_245, _T_228) @[Cat.scala 29:58] node _T_247 = cat(_T_246, _T_244) @[Cat.scala 29:58] node _T_248 = cat(_T_247, _T_242) @[Cat.scala 29:58] - brdata_in <= _T_248 @[el2_ifu_aln_ctl.scala 207:13] - node _T_249 = bits(qren, 0, 0) @[el2_ifu_aln_ctl.scala 211:33] - node _T_250 = bits(_T_249, 0, 0) @[el2_ifu_aln_ctl.scala 211:37] + brdata_in <= _T_248 @[el2_ifu_aln_ctl.scala 223:13] + node _T_249 = bits(qren, 0, 0) @[el2_ifu_aln_ctl.scala 227:33] + node _T_250 = bits(_T_249, 0, 0) @[el2_ifu_aln_ctl.scala 227:37] node _T_251 = cat(brdata1, brdata0) @[Cat.scala 29:58] - node _T_252 = bits(qren, 1, 1) @[el2_ifu_aln_ctl.scala 212:9] - node _T_253 = bits(_T_252, 0, 0) @[el2_ifu_aln_ctl.scala 212:13] + node _T_252 = bits(qren, 1, 1) @[el2_ifu_aln_ctl.scala 228:9] + node _T_253 = bits(_T_252, 0, 0) @[el2_ifu_aln_ctl.scala 228:13] node _T_254 = cat(brdata2, brdata1) @[Cat.scala 29:58] - node _T_255 = bits(qren, 2, 2) @[el2_ifu_aln_ctl.scala 213:9] - node _T_256 = bits(_T_255, 0, 0) @[el2_ifu_aln_ctl.scala 213:13] + node _T_255 = bits(qren, 2, 2) @[el2_ifu_aln_ctl.scala 229:9] + node _T_256 = bits(_T_255, 0, 0) @[el2_ifu_aln_ctl.scala 229:13] node _T_257 = cat(brdata0, brdata2) @[Cat.scala 29:58] node _T_258 = mux(_T_250, _T_251, UInt<1>("h00")) @[Mux.scala 27:72] node _T_259 = mux(_T_253, _T_254, UInt<1>("h00")) @[Mux.scala 27:72] @@ -2467,154 +2482,154 @@ circuit el2_ifu_aln_ctl : node _T_262 = or(_T_261, _T_260) @[Mux.scala 27:72] wire brdataeff : UInt<24> @[Mux.scala 27:72] brdataeff <= _T_262 @[Mux.scala 27:72] - node brdata0eff = bits(brdataeff, 11, 0) @[el2_ifu_aln_ctl.scala 215:43] - node brdata1eff = bits(brdataeff, 23, 12) @[el2_ifu_aln_ctl.scala 215:61] - node _T_263 = bits(q0sel, 0, 0) @[el2_ifu_aln_ctl.scala 217:37] - node _T_264 = bits(_T_263, 0, 0) @[el2_ifu_aln_ctl.scala 217:41] - node _T_265 = bits(q0sel, 1, 1) @[el2_ifu_aln_ctl.scala 217:68] - node _T_266 = bits(_T_265, 0, 0) @[el2_ifu_aln_ctl.scala 217:72] - node _T_267 = bits(brdata0eff, 11, 6) @[el2_ifu_aln_ctl.scala 217:92] + node brdata0eff = bits(brdataeff, 11, 0) @[el2_ifu_aln_ctl.scala 231:43] + node brdata1eff = bits(brdataeff, 23, 12) @[el2_ifu_aln_ctl.scala 231:61] + node _T_263 = bits(q0sel, 0, 0) @[el2_ifu_aln_ctl.scala 233:37] + node _T_264 = bits(_T_263, 0, 0) @[el2_ifu_aln_ctl.scala 233:41] + node _T_265 = bits(q0sel, 1, 1) @[el2_ifu_aln_ctl.scala 233:68] + node _T_266 = bits(_T_265, 0, 0) @[el2_ifu_aln_ctl.scala 233:72] + node _T_267 = bits(brdata0eff, 11, 6) @[el2_ifu_aln_ctl.scala 233:92] node _T_268 = mux(_T_264, brdata0eff, UInt<1>("h00")) @[Mux.scala 27:72] node _T_269 = mux(_T_266, _T_267, UInt<1>("h00")) @[Mux.scala 27:72] node _T_270 = or(_T_268, _T_269) @[Mux.scala 27:72] wire brdata0final : UInt<12> @[Mux.scala 27:72] brdata0final <= _T_270 @[Mux.scala 27:72] - node _T_271 = bits(q1sel, 0, 0) @[el2_ifu_aln_ctl.scala 218:37] - node _T_272 = bits(_T_271, 0, 0) @[el2_ifu_aln_ctl.scala 218:41] - node _T_273 = bits(q1sel, 1, 1) @[el2_ifu_aln_ctl.scala 218:68] - node _T_274 = bits(_T_273, 0, 0) @[el2_ifu_aln_ctl.scala 218:72] - node _T_275 = bits(brdata1eff, 11, 6) @[el2_ifu_aln_ctl.scala 218:92] + node _T_271 = bits(q1sel, 0, 0) @[el2_ifu_aln_ctl.scala 234:37] + node _T_272 = bits(_T_271, 0, 0) @[el2_ifu_aln_ctl.scala 234:41] + node _T_273 = bits(q1sel, 1, 1) @[el2_ifu_aln_ctl.scala 234:68] + node _T_274 = bits(_T_273, 0, 0) @[el2_ifu_aln_ctl.scala 234:72] + node _T_275 = bits(brdata1eff, 11, 6) @[el2_ifu_aln_ctl.scala 234:92] node _T_276 = mux(_T_272, brdata1eff, UInt<1>("h00")) @[Mux.scala 27:72] node _T_277 = mux(_T_274, _T_275, UInt<1>("h00")) @[Mux.scala 27:72] node _T_278 = or(_T_276, _T_277) @[Mux.scala 27:72] wire brdata1final : UInt<12> @[Mux.scala 27:72] brdata1final <= _T_278 @[Mux.scala 27:72] - node _T_279 = bits(brdata0final, 6, 6) @[el2_ifu_aln_ctl.scala 220:31] - node _T_280 = bits(brdata0final, 0, 0) @[el2_ifu_aln_ctl.scala 220:47] + node _T_279 = bits(brdata0final, 6, 6) @[el2_ifu_aln_ctl.scala 236:31] + node _T_280 = bits(brdata0final, 0, 0) @[el2_ifu_aln_ctl.scala 236:47] node f0ret = cat(_T_279, _T_280) @[Cat.scala 29:58] - node _T_281 = bits(brdata0final, 7, 7) @[el2_ifu_aln_ctl.scala 221:33] - node _T_282 = bits(brdata0final, 1, 1) @[el2_ifu_aln_ctl.scala 221:49] + node _T_281 = bits(brdata0final, 7, 7) @[el2_ifu_aln_ctl.scala 237:33] + node _T_282 = bits(brdata0final, 1, 1) @[el2_ifu_aln_ctl.scala 237:49] node f0brend = cat(_T_281, _T_282) @[Cat.scala 29:58] - node _T_283 = bits(brdata0final, 8, 8) @[el2_ifu_aln_ctl.scala 222:31] - node _T_284 = bits(brdata0final, 2, 2) @[el2_ifu_aln_ctl.scala 222:47] + node _T_283 = bits(brdata0final, 8, 8) @[el2_ifu_aln_ctl.scala 238:31] + node _T_284 = bits(brdata0final, 2, 2) @[el2_ifu_aln_ctl.scala 238:47] node f0way = cat(_T_283, _T_284) @[Cat.scala 29:58] - node _T_285 = bits(brdata0final, 9, 9) @[el2_ifu_aln_ctl.scala 223:31] - node _T_286 = bits(brdata0final, 3, 3) @[el2_ifu_aln_ctl.scala 223:47] + node _T_285 = bits(brdata0final, 9, 9) @[el2_ifu_aln_ctl.scala 239:31] + node _T_286 = bits(brdata0final, 3, 3) @[el2_ifu_aln_ctl.scala 239:47] node f0pc4 = cat(_T_285, _T_286) @[Cat.scala 29:58] - node _T_287 = bits(brdata0final, 10, 10) @[el2_ifu_aln_ctl.scala 224:33] - node _T_288 = bits(brdata0final, 4, 4) @[el2_ifu_aln_ctl.scala 224:50] + node _T_287 = bits(brdata0final, 10, 10) @[el2_ifu_aln_ctl.scala 240:33] + node _T_288 = bits(brdata0final, 4, 4) @[el2_ifu_aln_ctl.scala 240:50] node f0hist0 = cat(_T_287, _T_288) @[Cat.scala 29:58] - node _T_289 = bits(brdata0final, 11, 11) @[el2_ifu_aln_ctl.scala 225:33] - node _T_290 = bits(brdata0final, 5, 5) @[el2_ifu_aln_ctl.scala 225:50] + node _T_289 = bits(brdata0final, 11, 11) @[el2_ifu_aln_ctl.scala 241:33] + node _T_290 = bits(brdata0final, 5, 5) @[el2_ifu_aln_ctl.scala 241:50] node f0hist1 = cat(_T_289, _T_290) @[Cat.scala 29:58] - node _T_291 = bits(brdata1final, 6, 6) @[el2_ifu_aln_ctl.scala 227:31] - node _T_292 = bits(brdata1final, 0, 0) @[el2_ifu_aln_ctl.scala 227:47] + node _T_291 = bits(brdata1final, 6, 6) @[el2_ifu_aln_ctl.scala 243:31] + node _T_292 = bits(brdata1final, 0, 0) @[el2_ifu_aln_ctl.scala 243:47] node f1ret = cat(_T_291, _T_292) @[Cat.scala 29:58] - node _T_293 = bits(brdata1final, 7, 7) @[el2_ifu_aln_ctl.scala 228:33] - node _T_294 = bits(brdata1final, 1, 1) @[el2_ifu_aln_ctl.scala 228:49] + node _T_293 = bits(brdata1final, 7, 7) @[el2_ifu_aln_ctl.scala 244:33] + node _T_294 = bits(brdata1final, 1, 1) @[el2_ifu_aln_ctl.scala 244:49] node f1brend = cat(_T_293, _T_294) @[Cat.scala 29:58] - node _T_295 = bits(brdata1final, 8, 8) @[el2_ifu_aln_ctl.scala 229:31] - node _T_296 = bits(brdata1final, 2, 2) @[el2_ifu_aln_ctl.scala 229:47] + node _T_295 = bits(brdata1final, 8, 8) @[el2_ifu_aln_ctl.scala 245:31] + node _T_296 = bits(brdata1final, 2, 2) @[el2_ifu_aln_ctl.scala 245:47] node f1way = cat(_T_295, _T_296) @[Cat.scala 29:58] - node _T_297 = bits(brdata1final, 9, 9) @[el2_ifu_aln_ctl.scala 230:31] - node _T_298 = bits(brdata1final, 3, 3) @[el2_ifu_aln_ctl.scala 230:47] + node _T_297 = bits(brdata1final, 9, 9) @[el2_ifu_aln_ctl.scala 246:31] + node _T_298 = bits(brdata1final, 3, 3) @[el2_ifu_aln_ctl.scala 246:47] node f1pc4 = cat(_T_297, _T_298) @[Cat.scala 29:58] - node _T_299 = bits(brdata1final, 10, 10) @[el2_ifu_aln_ctl.scala 231:33] - node _T_300 = bits(brdata1final, 4, 4) @[el2_ifu_aln_ctl.scala 231:50] + node _T_299 = bits(brdata1final, 10, 10) @[el2_ifu_aln_ctl.scala 247:33] + node _T_300 = bits(brdata1final, 4, 4) @[el2_ifu_aln_ctl.scala 247:50] node f1hist0 = cat(_T_299, _T_300) @[Cat.scala 29:58] - node _T_301 = bits(brdata1final, 11, 11) @[el2_ifu_aln_ctl.scala 232:33] - node _T_302 = bits(brdata1final, 5, 5) @[el2_ifu_aln_ctl.scala 232:50] + node _T_301 = bits(brdata1final, 11, 11) @[el2_ifu_aln_ctl.scala 248:33] + node _T_302 = bits(brdata1final, 5, 5) @[el2_ifu_aln_ctl.scala 248:50] node f1hist1 = cat(_T_301, _T_302) @[Cat.scala 29:58] - node _T_303 = bits(f2val, 0, 0) @[el2_ifu_aln_ctl.scala 235:20] - f2_valid <= _T_303 @[el2_ifu_aln_ctl.scala 235:12] - node _T_304 = bits(sf1val, 0, 0) @[el2_ifu_aln_ctl.scala 236:22] - sf1_valid <= _T_304 @[el2_ifu_aln_ctl.scala 236:13] - node _T_305 = bits(sf0val, 0, 0) @[el2_ifu_aln_ctl.scala 237:22] - sf0_valid <= _T_305 @[el2_ifu_aln_ctl.scala 237:13] - node _T_306 = bits(sf0val, 0, 0) @[el2_ifu_aln_ctl.scala 239:28] - node _T_307 = eq(_T_306, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 239:21] - node _T_308 = bits(f0val, 0, 0) @[el2_ifu_aln_ctl.scala 239:39] - node consume_fb0 = and(_T_307, _T_308) @[el2_ifu_aln_ctl.scala 239:32] - node _T_309 = bits(sf1val, 0, 0) @[el2_ifu_aln_ctl.scala 240:28] - node _T_310 = eq(_T_309, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 240:21] - node _T_311 = bits(f1val, 0, 0) @[el2_ifu_aln_ctl.scala 240:39] - node consume_fb1 = and(_T_310, _T_311) @[el2_ifu_aln_ctl.scala 240:32] - node _T_312 = eq(consume_fb1, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 242:39] - node _T_313 = and(consume_fb0, _T_312) @[el2_ifu_aln_ctl.scala 242:37] - node _T_314 = eq(io.exu_flush_final, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 242:54] - node _T_315 = and(_T_313, _T_314) @[el2_ifu_aln_ctl.scala 242:52] - io.ifu_fb_consume1 <= _T_315 @[el2_ifu_aln_ctl.scala 242:22] - node _T_316 = and(consume_fb0, consume_fb1) @[el2_ifu_aln_ctl.scala 243:37] - node _T_317 = eq(io.exu_flush_final, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 243:54] - node _T_318 = and(_T_316, _T_317) @[el2_ifu_aln_ctl.scala 243:52] - io.ifu_fb_consume2 <= _T_318 @[el2_ifu_aln_ctl.scala 243:22] - node _T_319 = bits(io.ifu_fetch_val, 0, 0) @[el2_ifu_aln_ctl.scala 245:30] - ifvalid <= _T_319 @[el2_ifu_aln_ctl.scala 245:11] - node _T_320 = eq(sf0_valid, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 247:18] - node _T_321 = and(_T_320, sf1_valid) @[el2_ifu_aln_ctl.scala 247:29] - shift_f1_f0 <= _T_321 @[el2_ifu_aln_ctl.scala 247:15] - node _T_322 = eq(sf0_valid, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 248:18] - node _T_323 = eq(sf1_valid, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 248:31] - node _T_324 = and(_T_322, _T_323) @[el2_ifu_aln_ctl.scala 248:29] - node _T_325 = and(_T_324, f2_valid) @[el2_ifu_aln_ctl.scala 248:42] - shift_f2_f0 <= _T_325 @[el2_ifu_aln_ctl.scala 248:15] - node _T_326 = eq(sf0_valid, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 249:18] - node _T_327 = and(_T_326, sf1_valid) @[el2_ifu_aln_ctl.scala 249:29] - node _T_328 = and(_T_327, f2_valid) @[el2_ifu_aln_ctl.scala 249:42] - shift_f2_f1 <= _T_328 @[el2_ifu_aln_ctl.scala 249:15] - node _T_329 = eq(sf0_valid, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 251:26] - node _T_330 = eq(sf1_valid, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 251:39] - node _T_331 = and(_T_329, _T_330) @[el2_ifu_aln_ctl.scala 251:37] - node _T_332 = eq(f2_valid, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 251:52] - node _T_333 = and(_T_331, _T_332) @[el2_ifu_aln_ctl.scala 251:50] - node _T_334 = and(_T_333, ifvalid) @[el2_ifu_aln_ctl.scala 251:62] - fetch_to_f0 <= _T_334 @[el2_ifu_aln_ctl.scala 251:22] - node _T_335 = eq(sf0_valid, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 252:26] - node _T_336 = eq(sf1_valid, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 252:39] - node _T_337 = and(_T_335, _T_336) @[el2_ifu_aln_ctl.scala 252:37] - node _T_338 = and(_T_337, f2_valid) @[el2_ifu_aln_ctl.scala 252:50] - node _T_339 = and(_T_338, ifvalid) @[el2_ifu_aln_ctl.scala 252:62] - node _T_340 = eq(sf0_valid, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 253:6] - node _T_341 = and(_T_340, sf1_valid) @[el2_ifu_aln_ctl.scala 253:17] - node _T_342 = eq(f2_valid, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 253:32] - node _T_343 = and(_T_341, _T_342) @[el2_ifu_aln_ctl.scala 253:30] - node _T_344 = and(_T_343, ifvalid) @[el2_ifu_aln_ctl.scala 253:42] - node _T_345 = or(_T_339, _T_344) @[el2_ifu_aln_ctl.scala 252:74] - node _T_346 = eq(sf1_valid, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 254:19] - node _T_347 = and(sf0_valid, _T_346) @[el2_ifu_aln_ctl.scala 254:17] - node _T_348 = eq(f2_valid, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 254:32] - node _T_349 = and(_T_347, _T_348) @[el2_ifu_aln_ctl.scala 254:30] - node _T_350 = and(_T_349, ifvalid) @[el2_ifu_aln_ctl.scala 254:42] - node _T_351 = or(_T_345, _T_350) @[el2_ifu_aln_ctl.scala 253:54] - fetch_to_f1 <= _T_351 @[el2_ifu_aln_ctl.scala 252:22] - node _T_352 = eq(sf0_valid, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 256:26] - node _T_353 = and(_T_352, sf1_valid) @[el2_ifu_aln_ctl.scala 256:37] - node _T_354 = and(_T_353, f2_valid) @[el2_ifu_aln_ctl.scala 256:50] - node _T_355 = and(_T_354, ifvalid) @[el2_ifu_aln_ctl.scala 256:62] - node _T_356 = and(sf0_valid, sf1_valid) @[el2_ifu_aln_ctl.scala 257:17] - node _T_357 = eq(f2_valid, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 257:32] - node _T_358 = and(_T_356, _T_357) @[el2_ifu_aln_ctl.scala 257:30] - node _T_359 = and(_T_358, ifvalid) @[el2_ifu_aln_ctl.scala 257:42] - node _T_360 = or(_T_355, _T_359) @[el2_ifu_aln_ctl.scala 256:74] - fetch_to_f2 <= _T_360 @[el2_ifu_aln_ctl.scala 256:22] - node _T_361 = add(f0pc, UInt<1>("h01")) @[el2_ifu_aln_ctl.scala 259:25] - node f0pc_plus1 = tail(_T_361, 1) @[el2_ifu_aln_ctl.scala 259:25] - node _T_362 = add(f1pc, UInt<1>("h01")) @[el2_ifu_aln_ctl.scala 261:25] - node f1pc_plus1 = tail(_T_362, 1) @[el2_ifu_aln_ctl.scala 261:25] + node _T_303 = bits(f2val, 0, 0) @[el2_ifu_aln_ctl.scala 251:20] + f2_valid <= _T_303 @[el2_ifu_aln_ctl.scala 251:12] + node _T_304 = bits(sf1val, 0, 0) @[el2_ifu_aln_ctl.scala 252:22] + sf1_valid <= _T_304 @[el2_ifu_aln_ctl.scala 252:13] + node _T_305 = bits(sf0val, 0, 0) @[el2_ifu_aln_ctl.scala 253:22] + sf0_valid <= _T_305 @[el2_ifu_aln_ctl.scala 253:13] + node _T_306 = bits(sf0val, 0, 0) @[el2_ifu_aln_ctl.scala 255:28] + node _T_307 = eq(_T_306, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 255:21] + node _T_308 = bits(f0val, 0, 0) @[el2_ifu_aln_ctl.scala 255:39] + node consume_fb0 = and(_T_307, _T_308) @[el2_ifu_aln_ctl.scala 255:32] + node _T_309 = bits(sf1val, 0, 0) @[el2_ifu_aln_ctl.scala 256:28] + node _T_310 = eq(_T_309, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 256:21] + node _T_311 = bits(f1val, 0, 0) @[el2_ifu_aln_ctl.scala 256:39] + node consume_fb1 = and(_T_310, _T_311) @[el2_ifu_aln_ctl.scala 256:32] + node _T_312 = eq(consume_fb1, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 258:39] + node _T_313 = and(consume_fb0, _T_312) @[el2_ifu_aln_ctl.scala 258:37] + node _T_314 = eq(io.exu_flush_final, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 258:54] + node _T_315 = and(_T_313, _T_314) @[el2_ifu_aln_ctl.scala 258:52] + io.ifu_fb_consume1 <= _T_315 @[el2_ifu_aln_ctl.scala 258:22] + node _T_316 = and(consume_fb0, consume_fb1) @[el2_ifu_aln_ctl.scala 259:37] + node _T_317 = eq(io.exu_flush_final, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 259:54] + node _T_318 = and(_T_316, _T_317) @[el2_ifu_aln_ctl.scala 259:52] + io.ifu_fb_consume2 <= _T_318 @[el2_ifu_aln_ctl.scala 259:22] + node _T_319 = bits(io.ifu_fetch_val, 0, 0) @[el2_ifu_aln_ctl.scala 261:30] + ifvalid <= _T_319 @[el2_ifu_aln_ctl.scala 261:11] + node _T_320 = eq(sf0_valid, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 263:18] + node _T_321 = and(_T_320, sf1_valid) @[el2_ifu_aln_ctl.scala 263:29] + shift_f1_f0 <= _T_321 @[el2_ifu_aln_ctl.scala 263:15] + node _T_322 = eq(sf0_valid, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 264:18] + node _T_323 = eq(sf1_valid, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 264:31] + node _T_324 = and(_T_322, _T_323) @[el2_ifu_aln_ctl.scala 264:29] + node _T_325 = and(_T_324, f2_valid) @[el2_ifu_aln_ctl.scala 264:42] + shift_f2_f0 <= _T_325 @[el2_ifu_aln_ctl.scala 264:15] + node _T_326 = eq(sf0_valid, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 265:18] + node _T_327 = and(_T_326, sf1_valid) @[el2_ifu_aln_ctl.scala 265:29] + node _T_328 = and(_T_327, f2_valid) @[el2_ifu_aln_ctl.scala 265:42] + shift_f2_f1 <= _T_328 @[el2_ifu_aln_ctl.scala 265:15] + node _T_329 = eq(sf0_valid, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 267:26] + node _T_330 = eq(sf1_valid, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 267:39] + node _T_331 = and(_T_329, _T_330) @[el2_ifu_aln_ctl.scala 267:37] + node _T_332 = eq(f2_valid, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 267:52] + node _T_333 = and(_T_331, _T_332) @[el2_ifu_aln_ctl.scala 267:50] + node _T_334 = and(_T_333, ifvalid) @[el2_ifu_aln_ctl.scala 267:62] + fetch_to_f0 <= _T_334 @[el2_ifu_aln_ctl.scala 267:22] + node _T_335 = eq(sf0_valid, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 268:26] + node _T_336 = eq(sf1_valid, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 268:39] + node _T_337 = and(_T_335, _T_336) @[el2_ifu_aln_ctl.scala 268:37] + node _T_338 = and(_T_337, f2_valid) @[el2_ifu_aln_ctl.scala 268:50] + node _T_339 = and(_T_338, ifvalid) @[el2_ifu_aln_ctl.scala 268:62] + node _T_340 = eq(sf0_valid, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 269:6] + node _T_341 = and(_T_340, sf1_valid) @[el2_ifu_aln_ctl.scala 269:17] + node _T_342 = eq(f2_valid, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 269:32] + node _T_343 = and(_T_341, _T_342) @[el2_ifu_aln_ctl.scala 269:30] + node _T_344 = and(_T_343, ifvalid) @[el2_ifu_aln_ctl.scala 269:42] + node _T_345 = or(_T_339, _T_344) @[el2_ifu_aln_ctl.scala 268:74] + node _T_346 = eq(sf1_valid, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 270:19] + node _T_347 = and(sf0_valid, _T_346) @[el2_ifu_aln_ctl.scala 270:17] + node _T_348 = eq(f2_valid, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 270:32] + node _T_349 = and(_T_347, _T_348) @[el2_ifu_aln_ctl.scala 270:30] + node _T_350 = and(_T_349, ifvalid) @[el2_ifu_aln_ctl.scala 270:42] + node _T_351 = or(_T_345, _T_350) @[el2_ifu_aln_ctl.scala 269:54] + fetch_to_f1 <= _T_351 @[el2_ifu_aln_ctl.scala 268:22] + node _T_352 = eq(sf0_valid, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 272:26] + node _T_353 = and(_T_352, sf1_valid) @[el2_ifu_aln_ctl.scala 272:37] + node _T_354 = and(_T_353, f2_valid) @[el2_ifu_aln_ctl.scala 272:50] + node _T_355 = and(_T_354, ifvalid) @[el2_ifu_aln_ctl.scala 272:62] + node _T_356 = and(sf0_valid, sf1_valid) @[el2_ifu_aln_ctl.scala 273:17] + node _T_357 = eq(f2_valid, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 273:32] + node _T_358 = and(_T_356, _T_357) @[el2_ifu_aln_ctl.scala 273:30] + node _T_359 = and(_T_358, ifvalid) @[el2_ifu_aln_ctl.scala 273:42] + node _T_360 = or(_T_355, _T_359) @[el2_ifu_aln_ctl.scala 272:74] + fetch_to_f2 <= _T_360 @[el2_ifu_aln_ctl.scala 272:22] + node _T_361 = add(f0pc, UInt<1>("h01")) @[el2_ifu_aln_ctl.scala 275:25] + node f0pc_plus1 = tail(_T_361, 1) @[el2_ifu_aln_ctl.scala 275:25] + node _T_362 = add(f1pc, UInt<1>("h01")) @[el2_ifu_aln_ctl.scala 277:25] + node f1pc_plus1 = tail(_T_362, 1) @[el2_ifu_aln_ctl.scala 277:25] node _T_363 = bits(f1_shift_2B, 0, 0) @[Bitwise.scala 72:15] node _T_364 = mux(_T_363, UInt<31>("h07fffffff"), UInt<31>("h00")) @[Bitwise.scala 72:12] - node _T_365 = and(_T_364, f0pc_plus1) @[el2_ifu_aln_ctl.scala 263:38] - node _T_366 = eq(f1_shift_2B, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 263:64] + node _T_365 = and(_T_364, f0pc_plus1) @[el2_ifu_aln_ctl.scala 279:38] + node _T_366 = eq(f1_shift_2B, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 279:64] node _T_367 = bits(_T_366, 0, 0) @[Bitwise.scala 72:15] node _T_368 = mux(_T_367, UInt<31>("h07fffffff"), UInt<31>("h00")) @[Bitwise.scala 72:12] - node _T_369 = and(_T_368, f0pc) @[el2_ifu_aln_ctl.scala 263:78] - node sf1pc = or(_T_365, _T_369) @[el2_ifu_aln_ctl.scala 263:52] - node _T_370 = bits(fetch_to_f1, 0, 0) @[el2_ifu_aln_ctl.scala 265:36] - node _T_371 = bits(shift_f2_f1, 0, 0) @[el2_ifu_aln_ctl.scala 266:17] - node _T_372 = eq(fetch_to_f1, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 267:6] - node _T_373 = eq(shift_f2_f1, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 267:21] - node _T_374 = and(_T_372, _T_373) @[el2_ifu_aln_ctl.scala 267:19] - node _T_375 = bits(_T_374, 0, 0) @[el2_ifu_aln_ctl.scala 267:35] + node _T_369 = and(_T_368, f0pc) @[el2_ifu_aln_ctl.scala 279:78] + node sf1pc = or(_T_365, _T_369) @[el2_ifu_aln_ctl.scala 279:52] + node _T_370 = bits(fetch_to_f1, 0, 0) @[el2_ifu_aln_ctl.scala 281:36] + node _T_371 = bits(shift_f2_f1, 0, 0) @[el2_ifu_aln_ctl.scala 282:17] + node _T_372 = eq(fetch_to_f1, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 283:6] + node _T_373 = eq(shift_f2_f1, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 283:21] + node _T_374 = and(_T_372, _T_373) @[el2_ifu_aln_ctl.scala 283:19] + node _T_375 = bits(_T_374, 0, 0) @[el2_ifu_aln_ctl.scala 283:35] node _T_376 = mux(_T_370, io.ifu_fetch_pc, UInt<1>("h00")) @[Mux.scala 27:72] node _T_377 = mux(_T_371, f2pc, UInt<1>("h00")) @[Mux.scala 27:72] node _T_378 = mux(_T_375, sf1pc, UInt<1>("h00")) @[Mux.scala 27:72] @@ -2622,16 +2637,16 @@ circuit el2_ifu_aln_ctl : node _T_380 = or(_T_379, _T_378) @[Mux.scala 27:72] wire _T_381 : UInt @[Mux.scala 27:72] _T_381 <= _T_380 @[Mux.scala 27:72] - f1pc_in <= _T_381 @[el2_ifu_aln_ctl.scala 265:11] - node _T_382 = bits(fetch_to_f0, 0, 0) @[el2_ifu_aln_ctl.scala 269:36] - node _T_383 = bits(shift_f2_f0, 0, 0) @[el2_ifu_aln_ctl.scala 270:36] - node _T_384 = bits(shift_f1_f0, 0, 0) @[el2_ifu_aln_ctl.scala 271:36] - node _T_385 = eq(fetch_to_f0, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 272:24] - node _T_386 = eq(shift_f2_f0, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 272:39] - node _T_387 = and(_T_385, _T_386) @[el2_ifu_aln_ctl.scala 272:37] - node _T_388 = eq(shift_f1_f0, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 272:54] - node _T_389 = and(_T_387, _T_388) @[el2_ifu_aln_ctl.scala 272:52] - node _T_390 = bits(_T_389, 0, 0) @[el2_ifu_aln_ctl.scala 272:68] + f1pc_in <= _T_381 @[el2_ifu_aln_ctl.scala 281:11] + node _T_382 = bits(fetch_to_f0, 0, 0) @[el2_ifu_aln_ctl.scala 285:36] + node _T_383 = bits(shift_f2_f0, 0, 0) @[el2_ifu_aln_ctl.scala 286:36] + node _T_384 = bits(shift_f1_f0, 0, 0) @[el2_ifu_aln_ctl.scala 287:36] + node _T_385 = eq(fetch_to_f0, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 288:24] + node _T_386 = eq(shift_f2_f0, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 288:39] + node _T_387 = and(_T_385, _T_386) @[el2_ifu_aln_ctl.scala 288:37] + node _T_388 = eq(shift_f1_f0, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 288:54] + node _T_389 = and(_T_387, _T_388) @[el2_ifu_aln_ctl.scala 288:52] + node _T_390 = bits(_T_389, 0, 0) @[el2_ifu_aln_ctl.scala 288:68] node _T_391 = mux(_T_382, io.ifu_fetch_pc, UInt<1>("h00")) @[Mux.scala 27:72] node _T_392 = mux(_T_383, f2pc, UInt<1>("h00")) @[Mux.scala 27:72] node _T_393 = mux(_T_384, sf1pc, UInt<1>("h00")) @[Mux.scala 27:72] @@ -2641,48 +2656,48 @@ circuit el2_ifu_aln_ctl : node _T_397 = or(_T_396, _T_394) @[Mux.scala 27:72] wire _T_398 : UInt @[Mux.scala 27:72] _T_398 <= _T_397 @[Mux.scala 27:72] - f0pc_in <= _T_398 @[el2_ifu_aln_ctl.scala 269:11] - node _T_399 = eq(io.exu_flush_final, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 274:40] - node _T_400 = and(fetch_to_f2, _T_399) @[el2_ifu_aln_ctl.scala 274:38] - node _T_401 = bits(_T_400, 0, 0) @[el2_ifu_aln_ctl.scala 274:61] - node _T_402 = eq(fetch_to_f2, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 275:6] - node _T_403 = eq(shift_f2_f1, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 275:21] - node _T_404 = and(_T_402, _T_403) @[el2_ifu_aln_ctl.scala 275:19] - node _T_405 = eq(shift_f2_f0, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 275:36] - node _T_406 = and(_T_404, _T_405) @[el2_ifu_aln_ctl.scala 275:34] - node _T_407 = eq(io.exu_flush_final, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 275:51] - node _T_408 = and(_T_406, _T_407) @[el2_ifu_aln_ctl.scala 275:49] - node _T_409 = bits(_T_408, 0, 0) @[el2_ifu_aln_ctl.scala 275:72] + f0pc_in <= _T_398 @[el2_ifu_aln_ctl.scala 285:11] + node _T_399 = eq(io.exu_flush_final, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 290:40] + node _T_400 = and(fetch_to_f2, _T_399) @[el2_ifu_aln_ctl.scala 290:38] + node _T_401 = bits(_T_400, 0, 0) @[el2_ifu_aln_ctl.scala 290:61] + node _T_402 = eq(fetch_to_f2, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 291:6] + node _T_403 = eq(shift_f2_f1, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 291:21] + node _T_404 = and(_T_402, _T_403) @[el2_ifu_aln_ctl.scala 291:19] + node _T_405 = eq(shift_f2_f0, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 291:36] + node _T_406 = and(_T_404, _T_405) @[el2_ifu_aln_ctl.scala 291:34] + node _T_407 = eq(io.exu_flush_final, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 291:51] + node _T_408 = and(_T_406, _T_407) @[el2_ifu_aln_ctl.scala 291:49] + node _T_409 = bits(_T_408, 0, 0) @[el2_ifu_aln_ctl.scala 291:72] node _T_410 = mux(_T_401, io.ifu_fetch_val, UInt<1>("h00")) @[Mux.scala 27:72] node _T_411 = mux(_T_409, f2val, UInt<1>("h00")) @[Mux.scala 27:72] node _T_412 = or(_T_410, _T_411) @[Mux.scala 27:72] wire _T_413 : UInt @[Mux.scala 27:72] _T_413 <= _T_412 @[Mux.scala 27:72] - f2val_in <= _T_413 @[el2_ifu_aln_ctl.scala 274:12] - node _T_414 = bits(f1_shift_2B, 0, 0) @[el2_ifu_aln_ctl.scala 277:35] - node _T_415 = bits(f1val, 1, 1) @[el2_ifu_aln_ctl.scala 277:48] - node _T_416 = bits(f1_shift_2B, 0, 0) @[el2_ifu_aln_ctl.scala 277:66] - node _T_417 = eq(_T_416, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 277:53] + f2val_in <= _T_413 @[el2_ifu_aln_ctl.scala 290:12] + node _T_414 = bits(f1_shift_2B, 0, 0) @[el2_ifu_aln_ctl.scala 293:35] + node _T_415 = bits(f1val, 1, 1) @[el2_ifu_aln_ctl.scala 293:48] + node _T_416 = bits(f1_shift_2B, 0, 0) @[el2_ifu_aln_ctl.scala 293:66] + node _T_417 = eq(_T_416, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 293:53] node _T_418 = mux(_T_414, _T_415, UInt<1>("h00")) @[Mux.scala 27:72] node _T_419 = mux(_T_417, f1val, UInt<1>("h00")) @[Mux.scala 27:72] node _T_420 = or(_T_418, _T_419) @[Mux.scala 27:72] wire _T_421 : UInt @[Mux.scala 27:72] _T_421 <= _T_420 @[Mux.scala 27:72] - sf1val <= _T_421 @[el2_ifu_aln_ctl.scala 277:10] - node _T_422 = eq(io.exu_flush_final, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 279:40] - node _T_423 = and(fetch_to_f1, _T_422) @[el2_ifu_aln_ctl.scala 279:38] - node _T_424 = bits(_T_423, 0, 0) @[el2_ifu_aln_ctl.scala 279:61] - node _T_425 = eq(io.exu_flush_final, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 280:20] - node _T_426 = and(shift_f2_f1, _T_425) @[el2_ifu_aln_ctl.scala 280:18] - node _T_427 = bits(_T_426, 0, 0) @[el2_ifu_aln_ctl.scala 280:41] - node _T_428 = eq(fetch_to_f1, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 281:6] - node _T_429 = eq(shift_f2_f1, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 281:21] - node _T_430 = and(_T_428, _T_429) @[el2_ifu_aln_ctl.scala 281:19] - node _T_431 = eq(shift_f1_f0, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 281:36] - node _T_432 = and(_T_430, _T_431) @[el2_ifu_aln_ctl.scala 281:34] - node _T_433 = eq(io.exu_flush_final, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 281:51] - node _T_434 = and(_T_432, _T_433) @[el2_ifu_aln_ctl.scala 281:49] - node _T_435 = bits(_T_434, 0, 0) @[el2_ifu_aln_ctl.scala 281:72] + sf1val <= _T_421 @[el2_ifu_aln_ctl.scala 293:10] + node _T_422 = eq(io.exu_flush_final, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 295:40] + node _T_423 = and(fetch_to_f1, _T_422) @[el2_ifu_aln_ctl.scala 295:38] + node _T_424 = bits(_T_423, 0, 0) @[el2_ifu_aln_ctl.scala 295:61] + node _T_425 = eq(io.exu_flush_final, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 296:20] + node _T_426 = and(shift_f2_f1, _T_425) @[el2_ifu_aln_ctl.scala 296:18] + node _T_427 = bits(_T_426, 0, 0) @[el2_ifu_aln_ctl.scala 296:41] + node _T_428 = eq(fetch_to_f1, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 297:6] + node _T_429 = eq(shift_f2_f1, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 297:21] + node _T_430 = and(_T_428, _T_429) @[el2_ifu_aln_ctl.scala 297:19] + node _T_431 = eq(shift_f1_f0, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 297:36] + node _T_432 = and(_T_430, _T_431) @[el2_ifu_aln_ctl.scala 297:34] + node _T_433 = eq(io.exu_flush_final, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 297:51] + node _T_434 = and(_T_432, _T_433) @[el2_ifu_aln_ctl.scala 297:49] + node _T_435 = bits(_T_434, 0, 0) @[el2_ifu_aln_ctl.scala 297:72] node _T_436 = mux(_T_424, io.ifu_fetch_val, UInt<1>("h00")) @[Mux.scala 27:72] node _T_437 = mux(_T_427, f2val, UInt<1>("h00")) @[Mux.scala 27:72] node _T_438 = mux(_T_435, sf1val, UInt<1>("h00")) @[Mux.scala 27:72] @@ -2690,37 +2705,37 @@ circuit el2_ifu_aln_ctl : node _T_440 = or(_T_439, _T_438) @[Mux.scala 27:72] wire _T_441 : UInt @[Mux.scala 27:72] _T_441 <= _T_440 @[Mux.scala 27:72] - f1val_in <= _T_441 @[el2_ifu_aln_ctl.scala 279:12] - node _T_442 = bits(shift_2B, 0, 0) @[el2_ifu_aln_ctl.scala 283:32] - node _T_443 = bits(f0val, 1, 1) @[el2_ifu_aln_ctl.scala 283:54] + f1val_in <= _T_441 @[el2_ifu_aln_ctl.scala 295:12] + node _T_442 = bits(shift_2B, 0, 0) @[el2_ifu_aln_ctl.scala 299:32] + node _T_443 = bits(f0val, 1, 1) @[el2_ifu_aln_ctl.scala 299:54] node _T_444 = cat(UInt<1>("h00"), _T_443) @[Cat.scala 29:58] - node _T_445 = eq(shift_2B, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 284:6] - node _T_446 = eq(shift_4B, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 284:18] - node _T_447 = and(_T_445, _T_446) @[el2_ifu_aln_ctl.scala 284:16] - node _T_448 = bits(_T_447, 0, 0) @[el2_ifu_aln_ctl.scala 284:29] + node _T_445 = eq(shift_2B, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 300:6] + node _T_446 = eq(shift_4B, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 300:18] + node _T_447 = and(_T_445, _T_446) @[el2_ifu_aln_ctl.scala 300:16] + node _T_448 = bits(_T_447, 0, 0) @[el2_ifu_aln_ctl.scala 300:29] node _T_449 = mux(_T_442, _T_444, UInt<1>("h00")) @[Mux.scala 27:72] node _T_450 = mux(_T_448, f1val, UInt<1>("h00")) @[Mux.scala 27:72] node _T_451 = or(_T_449, _T_450) @[Mux.scala 27:72] wire _T_452 : UInt @[Mux.scala 27:72] _T_452 <= _T_451 @[Mux.scala 27:72] - sf0val <= _T_452 @[el2_ifu_aln_ctl.scala 283:10] - node _T_453 = eq(io.exu_flush_final, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 286:40] - node _T_454 = and(fetch_to_f0, _T_453) @[el2_ifu_aln_ctl.scala 286:38] - node _T_455 = bits(_T_454, 0, 0) @[el2_ifu_aln_ctl.scala 286:61] - node _T_456 = eq(io.exu_flush_final, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 287:20] - node _T_457 = and(shift_f2_f0, _T_456) @[el2_ifu_aln_ctl.scala 287:18] - node _T_458 = bits(_T_457, 0, 0) @[el2_ifu_aln_ctl.scala 287:41] - node _T_459 = eq(io.exu_flush_final, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 288:20] - node _T_460 = and(shift_f1_f0, _T_459) @[el2_ifu_aln_ctl.scala 288:18] - node _T_461 = bits(_T_460, 0, 0) @[el2_ifu_aln_ctl.scala 288:47] - node _T_462 = eq(fetch_to_f0, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 289:6] - node _T_463 = eq(shift_f2_f0, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 289:21] - node _T_464 = and(_T_462, _T_463) @[el2_ifu_aln_ctl.scala 289:19] - node _T_465 = eq(shift_f1_f0, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 289:36] - node _T_466 = and(_T_464, _T_465) @[el2_ifu_aln_ctl.scala 289:34] - node _T_467 = eq(io.exu_flush_final, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 289:51] - node _T_468 = and(_T_466, _T_467) @[el2_ifu_aln_ctl.scala 289:49] - node _T_469 = bits(_T_468, 0, 0) @[el2_ifu_aln_ctl.scala 289:72] + sf0val <= _T_452 @[el2_ifu_aln_ctl.scala 299:10] + node _T_453 = eq(io.exu_flush_final, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 302:40] + node _T_454 = and(fetch_to_f0, _T_453) @[el2_ifu_aln_ctl.scala 302:38] + node _T_455 = bits(_T_454, 0, 0) @[el2_ifu_aln_ctl.scala 302:61] + node _T_456 = eq(io.exu_flush_final, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 303:20] + node _T_457 = and(shift_f2_f0, _T_456) @[el2_ifu_aln_ctl.scala 303:18] + node _T_458 = bits(_T_457, 0, 0) @[el2_ifu_aln_ctl.scala 303:41] + node _T_459 = eq(io.exu_flush_final, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 304:20] + node _T_460 = and(shift_f1_f0, _T_459) @[el2_ifu_aln_ctl.scala 304:18] + node _T_461 = bits(_T_460, 0, 0) @[el2_ifu_aln_ctl.scala 304:47] + node _T_462 = eq(fetch_to_f0, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 305:6] + node _T_463 = eq(shift_f2_f0, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 305:21] + node _T_464 = and(_T_462, _T_463) @[el2_ifu_aln_ctl.scala 305:19] + node _T_465 = eq(shift_f1_f0, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 305:36] + node _T_466 = and(_T_464, _T_465) @[el2_ifu_aln_ctl.scala 305:34] + node _T_467 = eq(io.exu_flush_final, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 305:51] + node _T_468 = and(_T_466, _T_467) @[el2_ifu_aln_ctl.scala 305:49] + node _T_469 = bits(_T_468, 0, 0) @[el2_ifu_aln_ctl.scala 305:72] node _T_470 = mux(_T_455, io.ifu_fetch_val, UInt<1>("h00")) @[Mux.scala 27:72] node _T_471 = mux(_T_458, f2val, UInt<1>("h00")) @[Mux.scala 27:72] node _T_472 = mux(_T_461, sf1val, UInt<1>("h00")) @[Mux.scala 27:72] @@ -2730,15 +2745,15 @@ circuit el2_ifu_aln_ctl : node _T_476 = or(_T_475, _T_473) @[Mux.scala 27:72] wire _T_477 : UInt @[Mux.scala 27:72] _T_477 <= _T_476 @[Mux.scala 27:72] - f0val_in <= _T_477 @[el2_ifu_aln_ctl.scala 286:12] - node _T_478 = bits(qren, 0, 0) @[el2_ifu_aln_ctl.scala 291:28] - node _T_479 = bits(_T_478, 0, 0) @[el2_ifu_aln_ctl.scala 291:32] + f0val_in <= _T_477 @[el2_ifu_aln_ctl.scala 302:12] + node _T_478 = bits(qren, 0, 0) @[el2_ifu_aln_ctl.scala 307:28] + node _T_479 = bits(_T_478, 0, 0) @[el2_ifu_aln_ctl.scala 307:32] node _T_480 = cat(q1, q0) @[Cat.scala 29:58] - node _T_481 = bits(qren, 1, 1) @[el2_ifu_aln_ctl.scala 292:9] - node _T_482 = bits(_T_481, 0, 0) @[el2_ifu_aln_ctl.scala 292:13] + node _T_481 = bits(qren, 1, 1) @[el2_ifu_aln_ctl.scala 308:9] + node _T_482 = bits(_T_481, 0, 0) @[el2_ifu_aln_ctl.scala 308:13] node _T_483 = cat(q2, q1) @[Cat.scala 29:58] - node _T_484 = bits(qren, 2, 2) @[el2_ifu_aln_ctl.scala 293:9] - node _T_485 = bits(_T_484, 0, 0) @[el2_ifu_aln_ctl.scala 293:13] + node _T_484 = bits(qren, 2, 2) @[el2_ifu_aln_ctl.scala 309:9] + node _T_485 = bits(_T_484, 0, 0) @[el2_ifu_aln_ctl.scala 309:13] node _T_486 = cat(q0, q2) @[Cat.scala 29:58] node _T_487 = mux(_T_479, _T_480, UInt<1>("h00")) @[Mux.scala 27:72] node _T_488 = mux(_T_482, _T_483, UInt<1>("h00")) @[Mux.scala 27:72] @@ -2747,261 +2762,261 @@ circuit el2_ifu_aln_ctl : node _T_491 = or(_T_490, _T_489) @[Mux.scala 27:72] wire qeff : UInt<64> @[Mux.scala 27:72] qeff <= _T_491 @[Mux.scala 27:72] - node q1eff = bits(qeff, 63, 32) @[el2_ifu_aln_ctl.scala 294:29] - node q0eff = bits(qeff, 31, 0) @[el2_ifu_aln_ctl.scala 294:42] - node _T_492 = bits(q0sel, 0, 0) @[el2_ifu_aln_ctl.scala 296:29] - node _T_493 = bits(_T_492, 0, 0) @[el2_ifu_aln_ctl.scala 296:33] - node _T_494 = bits(q0sel, 1, 1) @[el2_ifu_aln_ctl.scala 296:53] - node _T_495 = bits(_T_494, 0, 0) @[el2_ifu_aln_ctl.scala 296:57] - node _T_496 = bits(q0eff, 31, 16) @[el2_ifu_aln_ctl.scala 296:70] + node q1eff = bits(qeff, 63, 32) @[el2_ifu_aln_ctl.scala 310:29] + node q0eff = bits(qeff, 31, 0) @[el2_ifu_aln_ctl.scala 310:42] + node _T_492 = bits(q0sel, 0, 0) @[el2_ifu_aln_ctl.scala 312:29] + node _T_493 = bits(_T_492, 0, 0) @[el2_ifu_aln_ctl.scala 312:33] + node _T_494 = bits(q0sel, 1, 1) @[el2_ifu_aln_ctl.scala 312:53] + node _T_495 = bits(_T_494, 0, 0) @[el2_ifu_aln_ctl.scala 312:57] + node _T_496 = bits(q0eff, 31, 16) @[el2_ifu_aln_ctl.scala 312:70] node _T_497 = mux(_T_493, q0eff, UInt<1>("h00")) @[Mux.scala 27:72] node _T_498 = mux(_T_495, _T_496, UInt<1>("h00")) @[Mux.scala 27:72] node _T_499 = or(_T_497, _T_498) @[Mux.scala 27:72] wire _T_500 : UInt<32> @[Mux.scala 27:72] _T_500 <= _T_499 @[Mux.scala 27:72] - q0final <= _T_500 @[el2_ifu_aln_ctl.scala 296:11] - node _T_501 = bits(q1sel, 0, 0) @[el2_ifu_aln_ctl.scala 298:29] - node _T_502 = bits(_T_501, 0, 0) @[el2_ifu_aln_ctl.scala 298:33] - node _T_503 = bits(q1eff, 15, 0) @[el2_ifu_aln_ctl.scala 298:46] - node _T_504 = bits(q1sel, 1, 1) @[el2_ifu_aln_ctl.scala 298:59] - node _T_505 = bits(_T_504, 0, 0) @[el2_ifu_aln_ctl.scala 298:63] - node _T_506 = bits(q1eff, 31, 16) @[el2_ifu_aln_ctl.scala 298:76] + q0final <= _T_500 @[el2_ifu_aln_ctl.scala 312:11] + node _T_501 = bits(q1sel, 0, 0) @[el2_ifu_aln_ctl.scala 314:29] + node _T_502 = bits(_T_501, 0, 0) @[el2_ifu_aln_ctl.scala 314:33] + node _T_503 = bits(q1eff, 15, 0) @[el2_ifu_aln_ctl.scala 314:46] + node _T_504 = bits(q1sel, 1, 1) @[el2_ifu_aln_ctl.scala 314:59] + node _T_505 = bits(_T_504, 0, 0) @[el2_ifu_aln_ctl.scala 314:63] + node _T_506 = bits(q1eff, 31, 16) @[el2_ifu_aln_ctl.scala 314:76] node _T_507 = mux(_T_502, _T_503, UInt<1>("h00")) @[Mux.scala 27:72] node _T_508 = mux(_T_505, _T_506, UInt<1>("h00")) @[Mux.scala 27:72] node _T_509 = or(_T_507, _T_508) @[Mux.scala 27:72] wire _T_510 : UInt<16> @[Mux.scala 27:72] _T_510 <= _T_509 @[Mux.scala 27:72] - q1final <= _T_510 @[el2_ifu_aln_ctl.scala 298:11] - node _T_511 = bits(f0val, 0, 0) @[el2_ifu_aln_ctl.scala 300:34] - node _T_512 = bits(_T_511, 0, 0) @[el2_ifu_aln_ctl.scala 300:38] - node _T_513 = bits(f0val, 1, 1) @[el2_ifu_aln_ctl.scala 300:64] - node _T_514 = not(_T_513) @[el2_ifu_aln_ctl.scala 300:58] - node _T_515 = bits(f0val, 0, 0) @[el2_ifu_aln_ctl.scala 300:75] - node _T_516 = and(_T_514, _T_515) @[el2_ifu_aln_ctl.scala 300:68] - node _T_517 = bits(_T_516, 0, 0) @[el2_ifu_aln_ctl.scala 300:80] + q1final <= _T_510 @[el2_ifu_aln_ctl.scala 314:11] + node _T_511 = bits(f0val, 0, 0) @[el2_ifu_aln_ctl.scala 316:34] + node _T_512 = bits(_T_511, 0, 0) @[el2_ifu_aln_ctl.scala 316:38] + node _T_513 = bits(f0val, 1, 1) @[el2_ifu_aln_ctl.scala 316:64] + node _T_514 = not(_T_513) @[el2_ifu_aln_ctl.scala 316:58] + node _T_515 = bits(f0val, 0, 0) @[el2_ifu_aln_ctl.scala 316:75] + node _T_516 = and(_T_514, _T_515) @[el2_ifu_aln_ctl.scala 316:68] + node _T_517 = bits(_T_516, 0, 0) @[el2_ifu_aln_ctl.scala 316:80] node _T_518 = cat(q1final, q0final) @[Cat.scala 29:58] node _T_519 = mux(_T_512, q0final, UInt<1>("h00")) @[Mux.scala 27:72] node _T_520 = mux(_T_517, _T_518, UInt<1>("h00")) @[Mux.scala 27:72] node _T_521 = or(_T_519, _T_520) @[Mux.scala 27:72] wire aligndata : UInt<48> @[Mux.scala 27:72] aligndata <= _T_521 @[Mux.scala 27:72] - node _T_522 = bits(f0val, 1, 1) @[el2_ifu_aln_ctl.scala 302:30] - node _T_523 = bits(_T_522, 0, 0) @[el2_ifu_aln_ctl.scala 302:34] - node _T_524 = bits(f0val, 1, 1) @[el2_ifu_aln_ctl.scala 302:54] - node _T_525 = eq(_T_524, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 302:48] - node _T_526 = bits(f0val, 0, 0) @[el2_ifu_aln_ctl.scala 302:65] - node _T_527 = and(_T_525, _T_526) @[el2_ifu_aln_ctl.scala 302:58] - node _T_528 = bits(f1val, 0, 0) @[el2_ifu_aln_ctl.scala 302:82] + node _T_522 = bits(f0val, 1, 1) @[el2_ifu_aln_ctl.scala 318:30] + node _T_523 = bits(_T_522, 0, 0) @[el2_ifu_aln_ctl.scala 318:34] + node _T_524 = bits(f0val, 1, 1) @[el2_ifu_aln_ctl.scala 318:54] + node _T_525 = eq(_T_524, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 318:48] + node _T_526 = bits(f0val, 0, 0) @[el2_ifu_aln_ctl.scala 318:65] + node _T_527 = and(_T_525, _T_526) @[el2_ifu_aln_ctl.scala 318:58] + node _T_528 = bits(f1val, 0, 0) @[el2_ifu_aln_ctl.scala 318:82] node _T_529 = cat(_T_528, UInt<1>("h01")) @[Cat.scala 29:58] node _T_530 = mux(_T_523, UInt<2>("h03"), UInt<1>("h00")) @[Mux.scala 27:72] node _T_531 = mux(_T_527, _T_529, UInt<1>("h00")) @[Mux.scala 27:72] node _T_532 = or(_T_530, _T_531) @[Mux.scala 27:72] wire _T_533 : UInt<2> @[Mux.scala 27:72] _T_533 <= _T_532 @[Mux.scala 27:72] - alignval <= _T_533 @[el2_ifu_aln_ctl.scala 302:12] - node _T_534 = bits(f0val, 1, 1) @[el2_ifu_aln_ctl.scala 304:34] - node _T_535 = bits(_T_534, 0, 0) @[el2_ifu_aln_ctl.scala 304:38] - node _T_536 = bits(f0val, 1, 1) @[el2_ifu_aln_ctl.scala 304:63] - node _T_537 = not(_T_536) @[el2_ifu_aln_ctl.scala 304:57] - node _T_538 = bits(f0val, 0, 0) @[el2_ifu_aln_ctl.scala 304:74] - node _T_539 = and(_T_537, _T_538) @[el2_ifu_aln_ctl.scala 304:67] - node _T_540 = bits(_T_539, 0, 0) @[el2_ifu_aln_ctl.scala 304:79] + alignval <= _T_533 @[el2_ifu_aln_ctl.scala 318:12] + node _T_534 = bits(f0val, 1, 1) @[el2_ifu_aln_ctl.scala 320:34] + node _T_535 = bits(_T_534, 0, 0) @[el2_ifu_aln_ctl.scala 320:38] + node _T_536 = bits(f0val, 1, 1) @[el2_ifu_aln_ctl.scala 320:63] + node _T_537 = not(_T_536) @[el2_ifu_aln_ctl.scala 320:57] + node _T_538 = bits(f0val, 0, 0) @[el2_ifu_aln_ctl.scala 320:74] + node _T_539 = and(_T_537, _T_538) @[el2_ifu_aln_ctl.scala 320:67] + node _T_540 = bits(_T_539, 0, 0) @[el2_ifu_aln_ctl.scala 320:79] node _T_541 = cat(f1icaf, f0icaf) @[Cat.scala 29:58] node _T_542 = mux(_T_535, f0icaf, UInt<1>("h00")) @[Mux.scala 27:72] node _T_543 = mux(_T_540, _T_541, UInt<1>("h00")) @[Mux.scala 27:72] node _T_544 = or(_T_542, _T_543) @[Mux.scala 27:72] wire alignicaf : UInt<2> @[Mux.scala 27:72] alignicaf <= _T_544 @[Mux.scala 27:72] - node _T_545 = bits(f0val, 1, 1) @[el2_ifu_aln_ctl.scala 306:35] - node _T_546 = bits(_T_545, 0, 0) @[el2_ifu_aln_ctl.scala 306:39] + node _T_545 = bits(f0val, 1, 1) @[el2_ifu_aln_ctl.scala 322:35] + node _T_546 = bits(_T_545, 0, 0) @[el2_ifu_aln_ctl.scala 322:39] node _T_547 = bits(f0dbecc, 0, 0) @[Bitwise.scala 72:15] node _T_548 = mux(_T_547, UInt<2>("h03"), UInt<2>("h00")) @[Bitwise.scala 72:12] - node _T_549 = bits(f0val, 1, 1) @[el2_ifu_aln_ctl.scala 306:73] - node _T_550 = eq(_T_549, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 306:67] - node _T_551 = bits(f0val, 0, 0) @[el2_ifu_aln_ctl.scala 306:84] - node _T_552 = and(_T_550, _T_551) @[el2_ifu_aln_ctl.scala 306:77] - node _T_553 = bits(_T_552, 0, 0) @[el2_ifu_aln_ctl.scala 306:89] + node _T_549 = bits(f0val, 1, 1) @[el2_ifu_aln_ctl.scala 322:73] + node _T_550 = eq(_T_549, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 322:67] + node _T_551 = bits(f0val, 0, 0) @[el2_ifu_aln_ctl.scala 322:84] + node _T_552 = and(_T_550, _T_551) @[el2_ifu_aln_ctl.scala 322:77] + node _T_553 = bits(_T_552, 0, 0) @[el2_ifu_aln_ctl.scala 322:89] node _T_554 = cat(f1dbecc, f0dbecc) @[Cat.scala 29:58] node _T_555 = mux(_T_546, _T_548, UInt<1>("h00")) @[Mux.scala 27:72] node _T_556 = mux(_T_553, _T_554, UInt<1>("h00")) @[Mux.scala 27:72] node _T_557 = or(_T_555, _T_556) @[Mux.scala 27:72] wire aligndbecc : UInt<2> @[Mux.scala 27:72] aligndbecc <= _T_557 @[Mux.scala 27:72] - node _T_558 = bits(f0val, 1, 1) @[el2_ifu_aln_ctl.scala 308:35] - node _T_559 = bits(_T_558, 0, 0) @[el2_ifu_aln_ctl.scala 308:45] - node _T_560 = bits(f0val, 1, 1) @[el2_ifu_aln_ctl.scala 308:65] - node _T_561 = eq(_T_560, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 308:59] - node _T_562 = bits(f0val, 0, 0) @[el2_ifu_aln_ctl.scala 308:76] - node _T_563 = and(_T_561, _T_562) @[el2_ifu_aln_ctl.scala 308:69] - node _T_564 = bits(_T_563, 0, 0) @[el2_ifu_aln_ctl.scala 308:81] - node _T_565 = bits(f1brend, 0, 0) @[el2_ifu_aln_ctl.scala 308:100] - node _T_566 = bits(f0brend, 0, 0) @[el2_ifu_aln_ctl.scala 308:111] + node _T_558 = bits(f0val, 1, 1) @[el2_ifu_aln_ctl.scala 324:35] + node _T_559 = bits(_T_558, 0, 0) @[el2_ifu_aln_ctl.scala 324:45] + node _T_560 = bits(f0val, 1, 1) @[el2_ifu_aln_ctl.scala 324:65] + node _T_561 = eq(_T_560, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 324:59] + node _T_562 = bits(f0val, 0, 0) @[el2_ifu_aln_ctl.scala 324:76] + node _T_563 = and(_T_561, _T_562) @[el2_ifu_aln_ctl.scala 324:69] + node _T_564 = bits(_T_563, 0, 0) @[el2_ifu_aln_ctl.scala 324:81] + node _T_565 = bits(f1brend, 0, 0) @[el2_ifu_aln_ctl.scala 324:100] + node _T_566 = bits(f0brend, 0, 0) @[el2_ifu_aln_ctl.scala 324:111] node _T_567 = cat(_T_565, _T_566) @[Cat.scala 29:58] node _T_568 = mux(_T_559, f0brend, UInt<1>("h00")) @[Mux.scala 27:72] node _T_569 = mux(_T_564, _T_567, UInt<1>("h00")) @[Mux.scala 27:72] node _T_570 = or(_T_568, _T_569) @[Mux.scala 27:72] wire alignbrend : UInt<2> @[Mux.scala 27:72] alignbrend <= _T_570 @[Mux.scala 27:72] - node _T_571 = bits(f0val, 1, 1) @[el2_ifu_aln_ctl.scala 310:33] - node _T_572 = bits(_T_571, 0, 0) @[el2_ifu_aln_ctl.scala 310:43] - node _T_573 = bits(f0val, 1, 1) @[el2_ifu_aln_ctl.scala 310:61] - node _T_574 = eq(_T_573, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 310:55] - node _T_575 = bits(f0val, 0, 0) @[el2_ifu_aln_ctl.scala 310:72] - node _T_576 = and(_T_574, _T_575) @[el2_ifu_aln_ctl.scala 310:65] - node _T_577 = bits(_T_576, 0, 0) @[el2_ifu_aln_ctl.scala 310:77] - node _T_578 = bits(f1pc4, 0, 0) @[el2_ifu_aln_ctl.scala 310:94] - node _T_579 = bits(f0pc4, 0, 0) @[el2_ifu_aln_ctl.scala 310:103] + node _T_571 = bits(f0val, 1, 1) @[el2_ifu_aln_ctl.scala 326:33] + node _T_572 = bits(_T_571, 0, 0) @[el2_ifu_aln_ctl.scala 326:43] + node _T_573 = bits(f0val, 1, 1) @[el2_ifu_aln_ctl.scala 326:61] + node _T_574 = eq(_T_573, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 326:55] + node _T_575 = bits(f0val, 0, 0) @[el2_ifu_aln_ctl.scala 326:72] + node _T_576 = and(_T_574, _T_575) @[el2_ifu_aln_ctl.scala 326:65] + node _T_577 = bits(_T_576, 0, 0) @[el2_ifu_aln_ctl.scala 326:77] + node _T_578 = bits(f1pc4, 0, 0) @[el2_ifu_aln_ctl.scala 326:94] + node _T_579 = bits(f0pc4, 0, 0) @[el2_ifu_aln_ctl.scala 326:103] node _T_580 = cat(_T_578, _T_579) @[Cat.scala 29:58] node _T_581 = mux(_T_572, f0pc4, UInt<1>("h00")) @[Mux.scala 27:72] node _T_582 = mux(_T_577, _T_580, UInt<1>("h00")) @[Mux.scala 27:72] node _T_583 = or(_T_581, _T_582) @[Mux.scala 27:72] wire alignpc4 : UInt<2> @[Mux.scala 27:72] alignpc4 <= _T_583 @[Mux.scala 27:72] - node _T_584 = bits(f0val, 1, 1) @[el2_ifu_aln_ctl.scala 312:33] - node _T_585 = bits(_T_584, 0, 0) @[el2_ifu_aln_ctl.scala 312:43] - node _T_586 = bits(f0val, 1, 1) @[el2_ifu_aln_ctl.scala 312:61] - node _T_587 = eq(_T_586, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 312:55] - node _T_588 = bits(f0val, 0, 0) @[el2_ifu_aln_ctl.scala 312:72] - node _T_589 = and(_T_587, _T_588) @[el2_ifu_aln_ctl.scala 312:65] - node _T_590 = bits(_T_589, 0, 0) @[el2_ifu_aln_ctl.scala 312:77] - node _T_591 = bits(f1ret, 0, 0) @[el2_ifu_aln_ctl.scala 312:94] - node _T_592 = bits(f0ret, 0, 0) @[el2_ifu_aln_ctl.scala 312:103] + node _T_584 = bits(f0val, 1, 1) @[el2_ifu_aln_ctl.scala 328:33] + node _T_585 = bits(_T_584, 0, 0) @[el2_ifu_aln_ctl.scala 328:43] + node _T_586 = bits(f0val, 1, 1) @[el2_ifu_aln_ctl.scala 328:61] + node _T_587 = eq(_T_586, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 328:55] + node _T_588 = bits(f0val, 0, 0) @[el2_ifu_aln_ctl.scala 328:72] + node _T_589 = and(_T_587, _T_588) @[el2_ifu_aln_ctl.scala 328:65] + node _T_590 = bits(_T_589, 0, 0) @[el2_ifu_aln_ctl.scala 328:77] + node _T_591 = bits(f1ret, 0, 0) @[el2_ifu_aln_ctl.scala 328:94] + node _T_592 = bits(f0ret, 0, 0) @[el2_ifu_aln_ctl.scala 328:103] node _T_593 = cat(_T_591, _T_592) @[Cat.scala 29:58] node _T_594 = mux(_T_585, f0ret, UInt<1>("h00")) @[Mux.scala 27:72] node _T_595 = mux(_T_590, _T_593, UInt<1>("h00")) @[Mux.scala 27:72] node _T_596 = or(_T_594, _T_595) @[Mux.scala 27:72] wire alignret : UInt<2> @[Mux.scala 27:72] alignret <= _T_596 @[Mux.scala 27:72] - node _T_597 = bits(f0val, 1, 1) @[el2_ifu_aln_ctl.scala 314:33] - node _T_598 = bits(_T_597, 0, 0) @[el2_ifu_aln_ctl.scala 314:43] - node _T_599 = bits(f0val, 1, 1) @[el2_ifu_aln_ctl.scala 314:61] - node _T_600 = eq(_T_599, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 314:55] - node _T_601 = bits(f0val, 0, 0) @[el2_ifu_aln_ctl.scala 314:72] - node _T_602 = and(_T_600, _T_601) @[el2_ifu_aln_ctl.scala 314:65] - node _T_603 = bits(_T_602, 0, 0) @[el2_ifu_aln_ctl.scala 314:77] - node _T_604 = bits(f1way, 0, 0) @[el2_ifu_aln_ctl.scala 314:94] - node _T_605 = bits(f0way, 0, 0) @[el2_ifu_aln_ctl.scala 314:103] + node _T_597 = bits(f0val, 1, 1) @[el2_ifu_aln_ctl.scala 330:33] + node _T_598 = bits(_T_597, 0, 0) @[el2_ifu_aln_ctl.scala 330:43] + node _T_599 = bits(f0val, 1, 1) @[el2_ifu_aln_ctl.scala 330:61] + node _T_600 = eq(_T_599, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 330:55] + node _T_601 = bits(f0val, 0, 0) @[el2_ifu_aln_ctl.scala 330:72] + node _T_602 = and(_T_600, _T_601) @[el2_ifu_aln_ctl.scala 330:65] + node _T_603 = bits(_T_602, 0, 0) @[el2_ifu_aln_ctl.scala 330:77] + node _T_604 = bits(f1way, 0, 0) @[el2_ifu_aln_ctl.scala 330:94] + node _T_605 = bits(f0way, 0, 0) @[el2_ifu_aln_ctl.scala 330:103] node _T_606 = cat(_T_604, _T_605) @[Cat.scala 29:58] node _T_607 = mux(_T_598, f0way, UInt<1>("h00")) @[Mux.scala 27:72] node _T_608 = mux(_T_603, _T_606, UInt<1>("h00")) @[Mux.scala 27:72] node _T_609 = or(_T_607, _T_608) @[Mux.scala 27:72] wire alignway : UInt<2> @[Mux.scala 27:72] alignway <= _T_609 @[Mux.scala 27:72] - node _T_610 = bits(f0val, 1, 1) @[el2_ifu_aln_ctl.scala 316:35] - node _T_611 = bits(_T_610, 0, 0) @[el2_ifu_aln_ctl.scala 316:45] - node _T_612 = bits(f0val, 1, 1) @[el2_ifu_aln_ctl.scala 316:65] - node _T_613 = eq(_T_612, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 316:59] - node _T_614 = bits(f0val, 0, 0) @[el2_ifu_aln_ctl.scala 316:76] - node _T_615 = and(_T_613, _T_614) @[el2_ifu_aln_ctl.scala 316:69] - node _T_616 = bits(_T_615, 0, 0) @[el2_ifu_aln_ctl.scala 316:81] - node _T_617 = bits(f1hist1, 0, 0) @[el2_ifu_aln_ctl.scala 316:100] - node _T_618 = bits(f0hist1, 0, 0) @[el2_ifu_aln_ctl.scala 316:111] + node _T_610 = bits(f0val, 1, 1) @[el2_ifu_aln_ctl.scala 332:35] + node _T_611 = bits(_T_610, 0, 0) @[el2_ifu_aln_ctl.scala 332:45] + node _T_612 = bits(f0val, 1, 1) @[el2_ifu_aln_ctl.scala 332:65] + node _T_613 = eq(_T_612, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 332:59] + node _T_614 = bits(f0val, 0, 0) @[el2_ifu_aln_ctl.scala 332:76] + node _T_615 = and(_T_613, _T_614) @[el2_ifu_aln_ctl.scala 332:69] + node _T_616 = bits(_T_615, 0, 0) @[el2_ifu_aln_ctl.scala 332:81] + node _T_617 = bits(f1hist1, 0, 0) @[el2_ifu_aln_ctl.scala 332:100] + node _T_618 = bits(f0hist1, 0, 0) @[el2_ifu_aln_ctl.scala 332:111] node _T_619 = cat(_T_617, _T_618) @[Cat.scala 29:58] node _T_620 = mux(_T_611, f0hist1, UInt<1>("h00")) @[Mux.scala 27:72] node _T_621 = mux(_T_616, _T_619, UInt<1>("h00")) @[Mux.scala 27:72] node _T_622 = or(_T_620, _T_621) @[Mux.scala 27:72] wire alignhist1 : UInt<2> @[Mux.scala 27:72] alignhist1 <= _T_622 @[Mux.scala 27:72] - node _T_623 = bits(f0val, 1, 1) @[el2_ifu_aln_ctl.scala 318:35] - node _T_624 = bits(_T_623, 0, 0) @[el2_ifu_aln_ctl.scala 318:45] - node _T_625 = bits(f0val, 1, 1) @[el2_ifu_aln_ctl.scala 318:65] - node _T_626 = eq(_T_625, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 318:59] - node _T_627 = bits(f0val, 0, 0) @[el2_ifu_aln_ctl.scala 318:76] - node _T_628 = and(_T_626, _T_627) @[el2_ifu_aln_ctl.scala 318:69] - node _T_629 = bits(_T_628, 0, 0) @[el2_ifu_aln_ctl.scala 318:81] - node _T_630 = bits(f1hist0, 0, 0) @[el2_ifu_aln_ctl.scala 318:100] - node _T_631 = bits(f0hist0, 0, 0) @[el2_ifu_aln_ctl.scala 318:111] + node _T_623 = bits(f0val, 1, 1) @[el2_ifu_aln_ctl.scala 334:35] + node _T_624 = bits(_T_623, 0, 0) @[el2_ifu_aln_ctl.scala 334:45] + node _T_625 = bits(f0val, 1, 1) @[el2_ifu_aln_ctl.scala 334:65] + node _T_626 = eq(_T_625, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 334:59] + node _T_627 = bits(f0val, 0, 0) @[el2_ifu_aln_ctl.scala 334:76] + node _T_628 = and(_T_626, _T_627) @[el2_ifu_aln_ctl.scala 334:69] + node _T_629 = bits(_T_628, 0, 0) @[el2_ifu_aln_ctl.scala 334:81] + node _T_630 = bits(f1hist0, 0, 0) @[el2_ifu_aln_ctl.scala 334:100] + node _T_631 = bits(f0hist0, 0, 0) @[el2_ifu_aln_ctl.scala 334:111] node _T_632 = cat(_T_630, _T_631) @[Cat.scala 29:58] node _T_633 = mux(_T_624, f0hist0, UInt<1>("h00")) @[Mux.scala 27:72] node _T_634 = mux(_T_629, _T_632, UInt<1>("h00")) @[Mux.scala 27:72] node _T_635 = or(_T_633, _T_634) @[Mux.scala 27:72] wire alignhist0 : UInt<2> @[Mux.scala 27:72] alignhist0 <= _T_635 @[Mux.scala 27:72] - node _T_636 = bits(f0val, 1, 1) @[el2_ifu_aln_ctl.scala 320:27] - node _T_637 = eq(_T_636, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 320:21] - node _T_638 = bits(f0val, 0, 0) @[el2_ifu_aln_ctl.scala 320:38] - node alignfromf1 = and(_T_637, _T_638) @[el2_ifu_aln_ctl.scala 320:31] - node _T_639 = bits(f0val, 1, 1) @[el2_ifu_aln_ctl.scala 322:33] - node _T_640 = bits(_T_639, 0, 0) @[el2_ifu_aln_ctl.scala 322:43] - node _T_641 = bits(f0val, 1, 1) @[el2_ifu_aln_ctl.scala 322:67] - node _T_642 = eq(_T_641, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 322:61] - node _T_643 = bits(f0val, 0, 0) @[el2_ifu_aln_ctl.scala 322:78] - node _T_644 = and(_T_642, _T_643) @[el2_ifu_aln_ctl.scala 322:71] - node _T_645 = bits(_T_644, 0, 0) @[el2_ifu_aln_ctl.scala 322:83] + node _T_636 = bits(f0val, 1, 1) @[el2_ifu_aln_ctl.scala 336:27] + node _T_637 = eq(_T_636, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 336:21] + node _T_638 = bits(f0val, 0, 0) @[el2_ifu_aln_ctl.scala 336:38] + node alignfromf1 = and(_T_637, _T_638) @[el2_ifu_aln_ctl.scala 336:31] + node _T_639 = bits(f0val, 1, 1) @[el2_ifu_aln_ctl.scala 338:33] + node _T_640 = bits(_T_639, 0, 0) @[el2_ifu_aln_ctl.scala 338:43] + node _T_641 = bits(f0val, 1, 1) @[el2_ifu_aln_ctl.scala 338:67] + node _T_642 = eq(_T_641, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 338:61] + node _T_643 = bits(f0val, 0, 0) @[el2_ifu_aln_ctl.scala 338:78] + node _T_644 = and(_T_642, _T_643) @[el2_ifu_aln_ctl.scala 338:71] + node _T_645 = bits(_T_644, 0, 0) @[el2_ifu_aln_ctl.scala 338:83] node _T_646 = mux(_T_640, f0pc_plus1, UInt<1>("h00")) @[Mux.scala 27:72] node _T_647 = mux(_T_645, f1pc, UInt<1>("h00")) @[Mux.scala 27:72] node _T_648 = or(_T_646, _T_647) @[Mux.scala 27:72] wire secondpc : UInt @[Mux.scala 27:72] secondpc <= _T_648 @[Mux.scala 27:72] - io.ifu_i0_pc <= f0pc @[el2_ifu_aln_ctl.scala 324:16] - io.ifu_i0_pc4 <= first4B @[el2_ifu_aln_ctl.scala 328:17] - node _T_649 = bits(aligndata, 15, 0) @[el2_ifu_aln_ctl.scala 330:31] - io.ifu_i0_cinst <= _T_649 @[el2_ifu_aln_ctl.scala 330:19] - node _T_650 = bits(aligndata, 1, 0) @[el2_ifu_aln_ctl.scala 332:23] - node _T_651 = eq(_T_650, UInt<2>("h03")) @[el2_ifu_aln_ctl.scala 332:29] - first4B <= _T_651 @[el2_ifu_aln_ctl.scala 332:11] - node first2B = not(first4B) @[el2_ifu_aln_ctl.scala 334:17] - node _T_652 = bits(first4B, 0, 0) @[el2_ifu_aln_ctl.scala 336:40] - node _T_653 = bits(alignval, 1, 1) @[el2_ifu_aln_ctl.scala 336:58] - node _T_654 = bits(first2B, 0, 0) @[el2_ifu_aln_ctl.scala 336:71] - node _T_655 = bits(alignval, 0, 0) @[el2_ifu_aln_ctl.scala 336:89] + io.ifu_i0_pc <= f0pc @[el2_ifu_aln_ctl.scala 340:16] + io.ifu_i0_pc4 <= first4B @[el2_ifu_aln_ctl.scala 344:17] + node _T_649 = bits(aligndata, 15, 0) @[el2_ifu_aln_ctl.scala 346:31] + io.ifu_i0_cinst <= _T_649 @[el2_ifu_aln_ctl.scala 346:19] + node _T_650 = bits(aligndata, 1, 0) @[el2_ifu_aln_ctl.scala 348:23] + node _T_651 = eq(_T_650, UInt<2>("h03")) @[el2_ifu_aln_ctl.scala 348:29] + first4B <= _T_651 @[el2_ifu_aln_ctl.scala 348:11] + node first2B = not(first4B) @[el2_ifu_aln_ctl.scala 350:17] + node _T_652 = bits(first4B, 0, 0) @[el2_ifu_aln_ctl.scala 352:40] + node _T_653 = bits(alignval, 1, 1) @[el2_ifu_aln_ctl.scala 352:58] + node _T_654 = bits(first2B, 0, 0) @[el2_ifu_aln_ctl.scala 352:71] + node _T_655 = bits(alignval, 0, 0) @[el2_ifu_aln_ctl.scala 352:89] node _T_656 = mux(_T_652, _T_653, UInt<1>("h00")) @[Mux.scala 27:72] node _T_657 = mux(_T_654, _T_655, UInt<1>("h00")) @[Mux.scala 27:72] node _T_658 = or(_T_656, _T_657) @[Mux.scala 27:72] wire _T_659 : UInt<1> @[Mux.scala 27:72] _T_659 <= _T_658 @[Mux.scala 27:72] - io.ifu_i0_valid <= _T_659 @[el2_ifu_aln_ctl.scala 336:19] - node _T_660 = bits(first4B, 0, 0) @[el2_ifu_aln_ctl.scala 338:39] - node _T_661 = orr(alignicaf) @[el2_ifu_aln_ctl.scala 338:59] - node _T_662 = bits(first2B, 0, 0) @[el2_ifu_aln_ctl.scala 338:72] - node _T_663 = bits(alignicaf, 0, 0) @[el2_ifu_aln_ctl.scala 338:91] + io.ifu_i0_valid <= _T_659 @[el2_ifu_aln_ctl.scala 352:19] + node _T_660 = bits(first4B, 0, 0) @[el2_ifu_aln_ctl.scala 354:39] + node _T_661 = orr(alignicaf) @[el2_ifu_aln_ctl.scala 354:59] + node _T_662 = bits(first2B, 0, 0) @[el2_ifu_aln_ctl.scala 354:72] + node _T_663 = bits(alignicaf, 0, 0) @[el2_ifu_aln_ctl.scala 354:91] node _T_664 = mux(_T_660, _T_661, UInt<1>("h00")) @[Mux.scala 27:72] node _T_665 = mux(_T_662, _T_663, UInt<1>("h00")) @[Mux.scala 27:72] node _T_666 = or(_T_664, _T_665) @[Mux.scala 27:72] wire _T_667 : UInt<1> @[Mux.scala 27:72] _T_667 <= _T_666 @[Mux.scala 27:72] - io.ifu_i0_icaf <= _T_667 @[el2_ifu_aln_ctl.scala 338:18] - node _T_668 = bits(f0val, 1, 1) @[el2_ifu_aln_ctl.scala 340:47] - node _T_669 = eq(_T_668, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 340:41] - node _T_670 = and(first4B, _T_669) @[el2_ifu_aln_ctl.scala 340:39] - node _T_671 = bits(f0val, 0, 0) @[el2_ifu_aln_ctl.scala 340:58] - node _T_672 = and(_T_670, _T_671) @[el2_ifu_aln_ctl.scala 340:51] - node _T_673 = bits(alignicaf, 0, 0) @[el2_ifu_aln_ctl.scala 340:74] - node _T_674 = eq(_T_673, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 340:64] - node _T_675 = and(_T_672, _T_674) @[el2_ifu_aln_ctl.scala 340:62] - node _T_676 = bits(aligndbecc, 0, 0) @[el2_ifu_aln_ctl.scala 340:91] - node _T_677 = eq(_T_676, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 340:80] - node _T_678 = and(_T_675, _T_677) @[el2_ifu_aln_ctl.scala 340:78] - node _T_679 = bits(_T_678, 0, 0) @[el2_ifu_aln_ctl.scala 340:96] - node _T_680 = mux(_T_679, f1ictype, f0ictype) @[el2_ifu_aln_ctl.scala 340:29] - io.ifu_i0_icaf_type <= _T_680 @[el2_ifu_aln_ctl.scala 340:23] - node _T_681 = bits(alignicaf, 1, 1) @[el2_ifu_aln_ctl.scala 342:27] - node _T_682 = bits(aligndbecc, 1, 1) @[el2_ifu_aln_ctl.scala 342:43] - node icaf_eff = or(_T_681, _T_682) @[el2_ifu_aln_ctl.scala 342:31] - node _T_683 = and(first4B, icaf_eff) @[el2_ifu_aln_ctl.scala 344:32] - node _T_684 = and(_T_683, alignfromf1) @[el2_ifu_aln_ctl.scala 344:43] - io.ifu_i0_icaf_f1 <= _T_684 @[el2_ifu_aln_ctl.scala 344:21] - node _T_685 = bits(first4B, 0, 0) @[el2_ifu_aln_ctl.scala 346:40] - node _T_686 = orr(aligndbecc) @[el2_ifu_aln_ctl.scala 346:59] - node _T_687 = bits(first2B, 0, 0) @[el2_ifu_aln_ctl.scala 346:72] - node _T_688 = bits(aligndbecc, 0, 0) @[el2_ifu_aln_ctl.scala 346:90] + io.ifu_i0_icaf <= _T_667 @[el2_ifu_aln_ctl.scala 354:18] + node _T_668 = bits(f0val, 1, 1) @[el2_ifu_aln_ctl.scala 356:47] + node _T_669 = eq(_T_668, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 356:41] + node _T_670 = and(first4B, _T_669) @[el2_ifu_aln_ctl.scala 356:39] + node _T_671 = bits(f0val, 0, 0) @[el2_ifu_aln_ctl.scala 356:58] + node _T_672 = and(_T_670, _T_671) @[el2_ifu_aln_ctl.scala 356:51] + node _T_673 = bits(alignicaf, 0, 0) @[el2_ifu_aln_ctl.scala 356:74] + node _T_674 = eq(_T_673, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 356:64] + node _T_675 = and(_T_672, _T_674) @[el2_ifu_aln_ctl.scala 356:62] + node _T_676 = bits(aligndbecc, 0, 0) @[el2_ifu_aln_ctl.scala 356:91] + node _T_677 = eq(_T_676, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 356:80] + node _T_678 = and(_T_675, _T_677) @[el2_ifu_aln_ctl.scala 356:78] + node _T_679 = bits(_T_678, 0, 0) @[el2_ifu_aln_ctl.scala 356:96] + node _T_680 = mux(_T_679, f1ictype, f0ictype) @[el2_ifu_aln_ctl.scala 356:29] + io.ifu_i0_icaf_type <= _T_680 @[el2_ifu_aln_ctl.scala 356:23] + node _T_681 = bits(alignicaf, 1, 1) @[el2_ifu_aln_ctl.scala 358:27] + node _T_682 = bits(aligndbecc, 1, 1) @[el2_ifu_aln_ctl.scala 358:43] + node icaf_eff = or(_T_681, _T_682) @[el2_ifu_aln_ctl.scala 358:31] + node _T_683 = and(first4B, icaf_eff) @[el2_ifu_aln_ctl.scala 360:32] + node _T_684 = and(_T_683, alignfromf1) @[el2_ifu_aln_ctl.scala 360:43] + io.ifu_i0_icaf_f1 <= _T_684 @[el2_ifu_aln_ctl.scala 360:21] + node _T_685 = bits(first4B, 0, 0) @[el2_ifu_aln_ctl.scala 362:40] + node _T_686 = orr(aligndbecc) @[el2_ifu_aln_ctl.scala 362:59] + node _T_687 = bits(first2B, 0, 0) @[el2_ifu_aln_ctl.scala 362:72] + node _T_688 = bits(aligndbecc, 0, 0) @[el2_ifu_aln_ctl.scala 362:90] node _T_689 = mux(_T_685, _T_686, UInt<1>("h00")) @[Mux.scala 27:72] node _T_690 = mux(_T_687, _T_688, UInt<1>("h00")) @[Mux.scala 27:72] node _T_691 = or(_T_689, _T_690) @[Mux.scala 27:72] wire _T_692 : UInt<1> @[Mux.scala 27:72] _T_692 <= _T_691 @[Mux.scala 27:72] - io.ifu_i0_dbecc <= _T_692 @[el2_ifu_aln_ctl.scala 346:19] - inst decompressed of el2_ifu_compress_ctl @[el2_ifu_aln_ctl.scala 350:28] + io.ifu_i0_dbecc <= _T_692 @[el2_ifu_aln_ctl.scala 362:19] + inst decompressed of el2_ifu_compress_ctl @[el2_ifu_aln_ctl.scala 366:28] decompressed.clock <= clock decompressed.reset <= reset - node _T_693 = bits(first4B, 0, 0) @[el2_ifu_aln_ctl.scala 352:40] - node _T_694 = bits(first2B, 0, 0) @[el2_ifu_aln_ctl.scala 352:66] + node _T_693 = bits(first4B, 0, 0) @[el2_ifu_aln_ctl.scala 368:40] + node _T_694 = bits(first2B, 0, 0) @[el2_ifu_aln_ctl.scala 368:66] node _T_695 = mux(_T_693, aligndata, UInt<1>("h00")) @[Mux.scala 27:72] node _T_696 = mux(_T_694, decompressed.io.dout, UInt<1>("h00")) @[Mux.scala 27:72] node _T_697 = or(_T_695, _T_696) @[Mux.scala 27:72] wire _T_698 : UInt<48> @[Mux.scala 27:72] _T_698 <= _T_697 @[Mux.scala 27:72] - io.ifu_i0_instr <= _T_698 @[el2_ifu_aln_ctl.scala 352:19] + io.ifu_i0_instr <= _T_698 @[el2_ifu_aln_ctl.scala 368:19] node _T_699 = bits(f0pc, 8, 1) @[el2_lib.scala 191:12] node _T_700 = bits(f0pc, 16, 9) @[el2_lib.scala 191:50] node _T_701 = xor(_T_699, _T_700) @[el2_lib.scala 191:46] @@ -3030,112 +3045,112 @@ circuit el2_ifu_aln_ctl : _T_715[2] <= _T_714 @[el2_lib.scala 182:24] node _T_716 = xor(_T_715[0], _T_715[1]) @[el2_lib.scala 182:111] node secondbrtag_hash = xor(_T_716, _T_715[2]) @[el2_lib.scala 182:111] - node _T_717 = bits(alignbrend, 0, 0) @[el2_ifu_aln_ctl.scala 362:42] - node _T_718 = and(first2B, _T_717) @[el2_ifu_aln_ctl.scala 362:30] - node _T_719 = bits(alignbrend, 1, 1) @[el2_ifu_aln_ctl.scala 362:70] - node _T_720 = and(first4B, _T_719) @[el2_ifu_aln_ctl.scala 362:58] - node _T_721 = or(_T_718, _T_720) @[el2_ifu_aln_ctl.scala 362:47] - node _T_722 = bits(alignval, 1, 1) @[el2_ifu_aln_ctl.scala 362:96] - node _T_723 = and(first4B, _T_722) @[el2_ifu_aln_ctl.scala 362:86] - node _T_724 = bits(alignbrend, 0, 0) @[el2_ifu_aln_ctl.scala 362:112] - node _T_725 = and(_T_723, _T_724) @[el2_ifu_aln_ctl.scala 362:100] - node _T_726 = or(_T_721, _T_725) @[el2_ifu_aln_ctl.scala 362:75] - io.i0_brp.valid <= _T_726 @[el2_ifu_aln_ctl.scala 362:19] - node _T_727 = bits(alignret, 0, 0) @[el2_ifu_aln_ctl.scala 364:39] - node _T_728 = and(first2B, _T_727) @[el2_ifu_aln_ctl.scala 364:29] - node _T_729 = bits(alignret, 1, 1) @[el2_ifu_aln_ctl.scala 364:65] - node _T_730 = and(first4B, _T_729) @[el2_ifu_aln_ctl.scala 364:55] - node _T_731 = or(_T_728, _T_730) @[el2_ifu_aln_ctl.scala 364:44] - io.i0_brp.ret <= _T_731 @[el2_ifu_aln_ctl.scala 364:17] - node _T_732 = bits(alignpc4, 0, 0) @[el2_ifu_aln_ctl.scala 366:39] - node _T_733 = and(first2B, _T_732) @[el2_ifu_aln_ctl.scala 366:29] - node _T_734 = bits(alignpc4, 1, 1) @[el2_ifu_aln_ctl.scala 366:65] - node _T_735 = and(first4B, _T_734) @[el2_ifu_aln_ctl.scala 366:55] - node i0_brp_pc4 = or(_T_733, _T_735) @[el2_ifu_aln_ctl.scala 366:44] - node _T_736 = bits(alignbrend, 0, 0) @[el2_ifu_aln_ctl.scala 368:45] - node _T_737 = or(first2B, _T_736) @[el2_ifu_aln_ctl.scala 368:33] - node _T_738 = bits(_T_737, 0, 0) @[el2_ifu_aln_ctl.scala 368:50] - node _T_739 = bits(alignway, 0, 0) @[el2_ifu_aln_ctl.scala 368:66] - node _T_740 = bits(alignway, 1, 1) @[el2_ifu_aln_ctl.scala 368:80] - node _T_741 = mux(_T_738, _T_739, _T_740) @[el2_ifu_aln_ctl.scala 368:23] - io.i0_brp.way <= _T_741 @[el2_ifu_aln_ctl.scala 368:17] - node _T_742 = bits(alignhist1, 0, 0) @[el2_ifu_aln_ctl.scala 370:46] - node _T_743 = and(first2B, _T_742) @[el2_ifu_aln_ctl.scala 370:34] - node _T_744 = bits(alignhist1, 1, 1) @[el2_ifu_aln_ctl.scala 370:74] - node _T_745 = and(first4B, _T_744) @[el2_ifu_aln_ctl.scala 370:62] - node _T_746 = or(_T_743, _T_745) @[el2_ifu_aln_ctl.scala 370:51] - node _T_747 = bits(alignhist0, 0, 0) @[el2_ifu_aln_ctl.scala 371:26] - node _T_748 = and(first2B, _T_747) @[el2_ifu_aln_ctl.scala 371:14] - node _T_749 = bits(alignhist0, 1, 1) @[el2_ifu_aln_ctl.scala 371:54] - node _T_750 = and(first4B, _T_749) @[el2_ifu_aln_ctl.scala 371:42] - node _T_751 = or(_T_748, _T_750) @[el2_ifu_aln_ctl.scala 371:31] + node _T_717 = bits(alignbrend, 0, 0) @[el2_ifu_aln_ctl.scala 378:42] + node _T_718 = and(first2B, _T_717) @[el2_ifu_aln_ctl.scala 378:30] + node _T_719 = bits(alignbrend, 1, 1) @[el2_ifu_aln_ctl.scala 378:70] + node _T_720 = and(first4B, _T_719) @[el2_ifu_aln_ctl.scala 378:58] + node _T_721 = or(_T_718, _T_720) @[el2_ifu_aln_ctl.scala 378:47] + node _T_722 = bits(alignval, 1, 1) @[el2_ifu_aln_ctl.scala 378:96] + node _T_723 = and(first4B, _T_722) @[el2_ifu_aln_ctl.scala 378:86] + node _T_724 = bits(alignbrend, 0, 0) @[el2_ifu_aln_ctl.scala 378:112] + node _T_725 = and(_T_723, _T_724) @[el2_ifu_aln_ctl.scala 378:100] + node _T_726 = or(_T_721, _T_725) @[el2_ifu_aln_ctl.scala 378:75] + io.i0_brp.valid <= _T_726 @[el2_ifu_aln_ctl.scala 378:19] + node _T_727 = bits(alignret, 0, 0) @[el2_ifu_aln_ctl.scala 380:39] + node _T_728 = and(first2B, _T_727) @[el2_ifu_aln_ctl.scala 380:29] + node _T_729 = bits(alignret, 1, 1) @[el2_ifu_aln_ctl.scala 380:65] + node _T_730 = and(first4B, _T_729) @[el2_ifu_aln_ctl.scala 380:55] + node _T_731 = or(_T_728, _T_730) @[el2_ifu_aln_ctl.scala 380:44] + io.i0_brp.ret <= _T_731 @[el2_ifu_aln_ctl.scala 380:17] + node _T_732 = bits(alignpc4, 0, 0) @[el2_ifu_aln_ctl.scala 382:39] + node _T_733 = and(first2B, _T_732) @[el2_ifu_aln_ctl.scala 382:29] + node _T_734 = bits(alignpc4, 1, 1) @[el2_ifu_aln_ctl.scala 382:65] + node _T_735 = and(first4B, _T_734) @[el2_ifu_aln_ctl.scala 382:55] + node i0_brp_pc4 = or(_T_733, _T_735) @[el2_ifu_aln_ctl.scala 382:44] + node _T_736 = bits(alignbrend, 0, 0) @[el2_ifu_aln_ctl.scala 384:45] + node _T_737 = or(first2B, _T_736) @[el2_ifu_aln_ctl.scala 384:33] + node _T_738 = bits(_T_737, 0, 0) @[el2_ifu_aln_ctl.scala 384:50] + node _T_739 = bits(alignway, 0, 0) @[el2_ifu_aln_ctl.scala 384:66] + node _T_740 = bits(alignway, 1, 1) @[el2_ifu_aln_ctl.scala 384:80] + node _T_741 = mux(_T_738, _T_739, _T_740) @[el2_ifu_aln_ctl.scala 384:23] + io.i0_brp.way <= _T_741 @[el2_ifu_aln_ctl.scala 384:17] + node _T_742 = bits(alignhist1, 0, 0) @[el2_ifu_aln_ctl.scala 386:46] + node _T_743 = and(first2B, _T_742) @[el2_ifu_aln_ctl.scala 386:34] + node _T_744 = bits(alignhist1, 1, 1) @[el2_ifu_aln_ctl.scala 386:74] + node _T_745 = and(first4B, _T_744) @[el2_ifu_aln_ctl.scala 386:62] + node _T_746 = or(_T_743, _T_745) @[el2_ifu_aln_ctl.scala 386:51] + node _T_747 = bits(alignhist0, 0, 0) @[el2_ifu_aln_ctl.scala 387:26] + node _T_748 = and(first2B, _T_747) @[el2_ifu_aln_ctl.scala 387:14] + node _T_749 = bits(alignhist0, 1, 1) @[el2_ifu_aln_ctl.scala 387:54] + node _T_750 = and(first4B, _T_749) @[el2_ifu_aln_ctl.scala 387:42] + node _T_751 = or(_T_748, _T_750) @[el2_ifu_aln_ctl.scala 387:31] node _T_752 = cat(_T_746, _T_751) @[Cat.scala 29:58] - io.i0_brp.hist <= _T_752 @[el2_ifu_aln_ctl.scala 370:18] - node i0_ends_f1 = and(first4B, alignfromf1) @[el2_ifu_aln_ctl.scala 373:28] - node _T_753 = bits(i0_ends_f1, 0, 0) @[el2_ifu_aln_ctl.scala 374:39] - node _T_754 = mux(_T_753, f1poffset, f0poffset) @[el2_ifu_aln_ctl.scala 374:27] - io.i0_brp.toffset <= _T_754 @[el2_ifu_aln_ctl.scala 374:21] - node _T_755 = bits(i0_ends_f1, 0, 0) @[el2_ifu_aln_ctl.scala 376:37] - node _T_756 = mux(_T_755, f1prett, f0prett) @[el2_ifu_aln_ctl.scala 376:25] - io.i0_brp.prett <= _T_756 @[el2_ifu_aln_ctl.scala 376:19] - node _T_757 = bits(alignval, 1, 1) @[el2_ifu_aln_ctl.scala 378:51] - node _T_758 = and(first4B, _T_757) @[el2_ifu_aln_ctl.scala 378:41] - node _T_759 = bits(alignbrend, 0, 0) @[el2_ifu_aln_ctl.scala 378:67] - node _T_760 = and(_T_758, _T_759) @[el2_ifu_aln_ctl.scala 378:55] - io.i0_brp.br_start_error <= _T_760 @[el2_ifu_aln_ctl.scala 378:29] - node _T_761 = bits(alignbrend, 0, 0) @[el2_ifu_aln_ctl.scala 380:57] - node _T_762 = or(first2B, _T_761) @[el2_ifu_aln_ctl.scala 380:45] - node _T_763 = bits(_T_762, 0, 0) @[el2_ifu_aln_ctl.scala 380:62] - node _T_764 = bits(f0pc, 1, 1) @[el2_ifu_aln_ctl.scala 380:77] - node _T_765 = bits(secondpc, 1, 1) @[el2_ifu_aln_ctl.scala 380:90] - node _T_766 = mux(_T_763, _T_764, _T_765) @[el2_ifu_aln_ctl.scala 380:35] - io.i0_brp.bank <= _T_766 @[el2_ifu_aln_ctl.scala 380:29] - node _T_767 = and(io.i0_brp.valid, i0_brp_pc4) @[el2_ifu_aln_ctl.scala 382:42] - node _T_768 = and(_T_767, first2B) @[el2_ifu_aln_ctl.scala 382:56] - node _T_769 = eq(i0_brp_pc4, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 382:89] - node _T_770 = and(io.i0_brp.valid, _T_769) @[el2_ifu_aln_ctl.scala 382:87] - node _T_771 = and(_T_770, first4B) @[el2_ifu_aln_ctl.scala 382:101] - node _T_772 = or(_T_768, _T_771) @[el2_ifu_aln_ctl.scala 382:68] - io.i0_brp.br_error <= _T_772 @[el2_ifu_aln_ctl.scala 382:22] - node _T_773 = bits(alignbrend, 0, 0) @[el2_ifu_aln_ctl.scala 384:50] - node _T_774 = or(first2B, _T_773) @[el2_ifu_aln_ctl.scala 384:38] - node _T_775 = bits(_T_774, 0, 0) @[el2_ifu_aln_ctl.scala 384:55] - node _T_776 = mux(_T_775, firstpc_hash, secondpc_hash) @[el2_ifu_aln_ctl.scala 384:28] - io.ifu_i0_bp_index <= _T_776 @[el2_ifu_aln_ctl.scala 384:22] - node _T_777 = and(first4B, alignfromf1) @[el2_ifu_aln_ctl.scala 386:37] - node _T_778 = bits(_T_777, 0, 0) @[el2_ifu_aln_ctl.scala 386:52] - node _T_779 = mux(_T_778, f1fghr, f0fghr) @[el2_ifu_aln_ctl.scala 386:27] - io.ifu_i0_bp_fghr <= _T_779 @[el2_ifu_aln_ctl.scala 386:21] - node _T_780 = bits(alignbrend, 0, 0) @[el2_ifu_aln_ctl.scala 388:49] - node _T_781 = or(first2B, _T_780) @[el2_ifu_aln_ctl.scala 388:37] - node _T_782 = bits(_T_781, 0, 0) @[el2_ifu_aln_ctl.scala 388:54] - node _T_783 = mux(_T_782, firstbrtag_hash, secondbrtag_hash) @[el2_ifu_aln_ctl.scala 388:27] - io.ifu_i0_bp_btag <= _T_783 @[el2_ifu_aln_ctl.scala 388:21] - decompressed.io.din <= aligndata @[el2_ifu_aln_ctl.scala 390:23] - node _T_784 = not(error_stall) @[el2_ifu_aln_ctl.scala 392:39] - node i0_shift = and(io.dec_i0_decode_d, _T_784) @[el2_ifu_aln_ctl.scala 392:37] - io.ifu_pmu_instr_aligned <= i0_shift @[el2_ifu_aln_ctl.scala 394:28] - node _T_785 = and(i0_shift, first2B) @[el2_ifu_aln_ctl.scala 396:24] - shift_2B <= _T_785 @[el2_ifu_aln_ctl.scala 396:12] - node _T_786 = and(i0_shift, first4B) @[el2_ifu_aln_ctl.scala 397:24] - shift_4B <= _T_786 @[el2_ifu_aln_ctl.scala 397:12] - node _T_787 = bits(shift_2B, 0, 0) @[el2_ifu_aln_ctl.scala 399:37] - node _T_788 = bits(f0val, 0, 0) @[el2_ifu_aln_ctl.scala 399:52] - node _T_789 = bits(shift_4B, 0, 0) @[el2_ifu_aln_ctl.scala 399:66] - node _T_790 = bits(f0val, 0, 0) @[el2_ifu_aln_ctl.scala 399:83] - node _T_791 = eq(_T_790, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 399:77] - node _T_792 = bits(f0val, 0, 0) @[el2_ifu_aln_ctl.scala 399:94] - node _T_793 = and(_T_791, _T_792) @[el2_ifu_aln_ctl.scala 399:87] + io.i0_brp.hist <= _T_752 @[el2_ifu_aln_ctl.scala 386:18] + node i0_ends_f1 = and(first4B, alignfromf1) @[el2_ifu_aln_ctl.scala 389:28] + node _T_753 = bits(i0_ends_f1, 0, 0) @[el2_ifu_aln_ctl.scala 390:39] + node _T_754 = mux(_T_753, f1poffset, f0poffset) @[el2_ifu_aln_ctl.scala 390:27] + io.i0_brp.toffset <= _T_754 @[el2_ifu_aln_ctl.scala 390:21] + node _T_755 = bits(i0_ends_f1, 0, 0) @[el2_ifu_aln_ctl.scala 392:37] + node _T_756 = mux(_T_755, f1prett, f0prett) @[el2_ifu_aln_ctl.scala 392:25] + io.i0_brp.prett <= _T_756 @[el2_ifu_aln_ctl.scala 392:19] + node _T_757 = bits(alignval, 1, 1) @[el2_ifu_aln_ctl.scala 394:51] + node _T_758 = and(first4B, _T_757) @[el2_ifu_aln_ctl.scala 394:41] + node _T_759 = bits(alignbrend, 0, 0) @[el2_ifu_aln_ctl.scala 394:67] + node _T_760 = and(_T_758, _T_759) @[el2_ifu_aln_ctl.scala 394:55] + io.i0_brp.br_start_error <= _T_760 @[el2_ifu_aln_ctl.scala 394:29] + node _T_761 = bits(alignbrend, 0, 0) @[el2_ifu_aln_ctl.scala 396:57] + node _T_762 = or(first2B, _T_761) @[el2_ifu_aln_ctl.scala 396:45] + node _T_763 = bits(_T_762, 0, 0) @[el2_ifu_aln_ctl.scala 396:62] + node _T_764 = bits(f0pc, 1, 1) @[el2_ifu_aln_ctl.scala 396:77] + node _T_765 = bits(secondpc, 1, 1) @[el2_ifu_aln_ctl.scala 396:90] + node _T_766 = mux(_T_763, _T_764, _T_765) @[el2_ifu_aln_ctl.scala 396:35] + io.i0_brp.bank <= _T_766 @[el2_ifu_aln_ctl.scala 396:29] + node _T_767 = and(io.i0_brp.valid, i0_brp_pc4) @[el2_ifu_aln_ctl.scala 398:42] + node _T_768 = and(_T_767, first2B) @[el2_ifu_aln_ctl.scala 398:56] + node _T_769 = eq(i0_brp_pc4, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 398:89] + node _T_770 = and(io.i0_brp.valid, _T_769) @[el2_ifu_aln_ctl.scala 398:87] + node _T_771 = and(_T_770, first4B) @[el2_ifu_aln_ctl.scala 398:101] + node _T_772 = or(_T_768, _T_771) @[el2_ifu_aln_ctl.scala 398:68] + io.i0_brp.br_error <= _T_772 @[el2_ifu_aln_ctl.scala 398:22] + node _T_773 = bits(alignbrend, 0, 0) @[el2_ifu_aln_ctl.scala 400:50] + node _T_774 = or(first2B, _T_773) @[el2_ifu_aln_ctl.scala 400:38] + node _T_775 = bits(_T_774, 0, 0) @[el2_ifu_aln_ctl.scala 400:55] + node _T_776 = mux(_T_775, firstpc_hash, secondpc_hash) @[el2_ifu_aln_ctl.scala 400:28] + io.ifu_i0_bp_index <= _T_776 @[el2_ifu_aln_ctl.scala 400:22] + node _T_777 = and(first4B, alignfromf1) @[el2_ifu_aln_ctl.scala 402:37] + node _T_778 = bits(_T_777, 0, 0) @[el2_ifu_aln_ctl.scala 402:52] + node _T_779 = mux(_T_778, f1fghr, f0fghr) @[el2_ifu_aln_ctl.scala 402:27] + io.ifu_i0_bp_fghr <= _T_779 @[el2_ifu_aln_ctl.scala 402:21] + node _T_780 = bits(alignbrend, 0, 0) @[el2_ifu_aln_ctl.scala 404:49] + node _T_781 = or(first2B, _T_780) @[el2_ifu_aln_ctl.scala 404:37] + node _T_782 = bits(_T_781, 0, 0) @[el2_ifu_aln_ctl.scala 404:54] + node _T_783 = mux(_T_782, firstbrtag_hash, secondbrtag_hash) @[el2_ifu_aln_ctl.scala 404:27] + io.ifu_i0_bp_btag <= _T_783 @[el2_ifu_aln_ctl.scala 404:21] + decompressed.io.din <= aligndata @[el2_ifu_aln_ctl.scala 406:23] + node _T_784 = not(error_stall) @[el2_ifu_aln_ctl.scala 408:39] + node i0_shift = and(io.dec_i0_decode_d, _T_784) @[el2_ifu_aln_ctl.scala 408:37] + io.ifu_pmu_instr_aligned <= i0_shift @[el2_ifu_aln_ctl.scala 410:28] + node _T_785 = and(i0_shift, first2B) @[el2_ifu_aln_ctl.scala 412:24] + shift_2B <= _T_785 @[el2_ifu_aln_ctl.scala 412:12] + node _T_786 = and(i0_shift, first4B) @[el2_ifu_aln_ctl.scala 413:24] + shift_4B <= _T_786 @[el2_ifu_aln_ctl.scala 413:12] + node _T_787 = bits(shift_2B, 0, 0) @[el2_ifu_aln_ctl.scala 415:37] + node _T_788 = bits(f0val, 0, 0) @[el2_ifu_aln_ctl.scala 415:52] + node _T_789 = bits(shift_4B, 0, 0) @[el2_ifu_aln_ctl.scala 415:66] + node _T_790 = bits(f0val, 0, 0) @[el2_ifu_aln_ctl.scala 415:83] + node _T_791 = eq(_T_790, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 415:77] + node _T_792 = bits(f0val, 0, 0) @[el2_ifu_aln_ctl.scala 415:94] + node _T_793 = and(_T_791, _T_792) @[el2_ifu_aln_ctl.scala 415:87] node _T_794 = mux(_T_787, _T_788, UInt<1>("h00")) @[Mux.scala 27:72] node _T_795 = mux(_T_789, _T_793, UInt<1>("h00")) @[Mux.scala 27:72] node _T_796 = or(_T_794, _T_795) @[Mux.scala 27:72] wire _T_797 : UInt<1> @[Mux.scala 27:72] _T_797 <= _T_796 @[Mux.scala 27:72] - f0_shift_2B <= _T_797 @[el2_ifu_aln_ctl.scala 399:15] - node _T_798 = bits(f0val, 0, 0) @[el2_ifu_aln_ctl.scala 400:24] - node _T_799 = bits(f0val, 1, 1) @[el2_ifu_aln_ctl.scala 400:36] - node _T_800 = eq(_T_799, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 400:30] - node _T_801 = and(_T_798, _T_800) @[el2_ifu_aln_ctl.scala 400:28] - node _T_802 = and(_T_801, shift_4B) @[el2_ifu_aln_ctl.scala 400:40] - f1_shift_2B <= _T_802 @[el2_ifu_aln_ctl.scala 400:15] + f0_shift_2B <= _T_797 @[el2_ifu_aln_ctl.scala 415:15] + node _T_798 = bits(f0val, 0, 0) @[el2_ifu_aln_ctl.scala 416:24] + node _T_799 = bits(f0val, 1, 1) @[el2_ifu_aln_ctl.scala 416:36] + node _T_800 = eq(_T_799, UInt<1>("h00")) @[el2_ifu_aln_ctl.scala 416:30] + node _T_801 = and(_T_798, _T_800) @[el2_ifu_aln_ctl.scala 416:28] + node _T_802 = and(_T_801, shift_4B) @[el2_ifu_aln_ctl.scala 416:40] + f1_shift_2B <= _T_802 @[el2_ifu_aln_ctl.scala 416:15] diff --git a/el2_ifu_aln_ctl.v b/el2_ifu_aln_ctl.v index 60956567..277c332e 100644 --- a/el2_ifu_aln_ctl.v +++ b/el2_ifu_aln_ctl.v @@ -578,31 +578,31 @@ module el2_ifu_aln_ctl( reg [63:0] _RAND_19; reg [63:0] _RAND_20; `endif // RANDOMIZE_REG_INIT - wire [15:0] decompressed_io_din; // @[el2_ifu_aln_ctl.scala 350:28] - wire [31:0] decompressed_io_dout; // @[el2_ifu_aln_ctl.scala 350:28] - reg error_stall; // @[el2_ifu_aln_ctl.scala 112:51] - wire _T = error_stall | io_ifu_async_error_start; // @[el2_ifu_aln_ctl.scala 110:34] - wire _T_1 = ~io_exu_flush_final; // @[el2_ifu_aln_ctl.scala 110:64] - wire error_stall_in = _T & _T_1; // @[el2_ifu_aln_ctl.scala 110:62] - reg [1:0] wrptr; // @[el2_ifu_aln_ctl.scala 113:48] - reg [1:0] rdptr; // @[el2_ifu_aln_ctl.scala 114:48] - reg [1:0] f2val; // @[el2_ifu_aln_ctl.scala 116:48] - reg [1:0] f1val; // @[el2_ifu_aln_ctl.scala 117:48] - reg [1:0] f0val; // @[el2_ifu_aln_ctl.scala 118:48] - reg q2off; // @[el2_ifu_aln_ctl.scala 120:48] - reg q1off; // @[el2_ifu_aln_ctl.scala 121:48] - reg q0off; // @[el2_ifu_aln_ctl.scala 122:48] - wire _T_784 = ~error_stall; // @[el2_ifu_aln_ctl.scala 392:39] - wire i0_shift = io_dec_i0_decode_d & _T_784; // @[el2_ifu_aln_ctl.scala 392:37] - wire _T_186 = rdptr == 2'h0; // @[el2_ifu_aln_ctl.scala 172:31] + wire [15:0] decompressed_io_din; // @[el2_ifu_aln_ctl.scala 366:28] + wire [31:0] decompressed_io_dout; // @[el2_ifu_aln_ctl.scala 366:28] + reg error_stall; // @[el2_ifu_aln_ctl.scala 128:51] + wire _T = error_stall | io_ifu_async_error_start; // @[el2_ifu_aln_ctl.scala 126:34] + wire _T_1 = ~io_exu_flush_final; // @[el2_ifu_aln_ctl.scala 126:64] + wire error_stall_in = _T & _T_1; // @[el2_ifu_aln_ctl.scala 126:62] + reg [1:0] wrptr; // @[el2_ifu_aln_ctl.scala 129:48] + reg [1:0] rdptr; // @[el2_ifu_aln_ctl.scala 130:48] + reg [1:0] f2val; // @[el2_ifu_aln_ctl.scala 132:48] + reg [1:0] f1val; // @[el2_ifu_aln_ctl.scala 133:48] + reg [1:0] f0val; // @[el2_ifu_aln_ctl.scala 134:48] + reg q2off; // @[el2_ifu_aln_ctl.scala 136:48] + reg q1off; // @[el2_ifu_aln_ctl.scala 137:48] + reg q0off; // @[el2_ifu_aln_ctl.scala 138:48] + wire _T_784 = ~error_stall; // @[el2_ifu_aln_ctl.scala 408:39] + wire i0_shift = io_dec_i0_decode_d & _T_784; // @[el2_ifu_aln_ctl.scala 408:37] + wire _T_186 = rdptr == 2'h0; // @[el2_ifu_aln_ctl.scala 188:31] wire _T_189 = _T_186 & q0off; // @[Mux.scala 27:72] - wire _T_187 = rdptr == 2'h1; // @[el2_ifu_aln_ctl.scala 173:11] + wire _T_187 = rdptr == 2'h1; // @[el2_ifu_aln_ctl.scala 189:11] wire _T_190 = _T_187 & q1off; // @[Mux.scala 27:72] wire _T_192 = _T_189 | _T_190; // @[Mux.scala 27:72] - wire _T_188 = rdptr == 2'h2; // @[el2_ifu_aln_ctl.scala 174:11] + wire _T_188 = rdptr == 2'h2; // @[el2_ifu_aln_ctl.scala 190:11] wire _T_191 = _T_188 & q2off; // @[Mux.scala 27:72] wire q0ptr = _T_192 | _T_191; // @[Mux.scala 27:72] - wire _T_202 = ~q0ptr; // @[el2_ifu_aln_ctl.scala 178:26] + wire _T_202 = ~q0ptr; // @[el2_ifu_aln_ctl.scala 194:26] wire [1:0] q0sel = {q0ptr,_T_202}; // @[Cat.scala 29:58] wire [2:0] qren = {_T_188,_T_187,_T_186}; // @[Cat.scala 29:58] reg [31:0] q1; // @[Reg.scala 27:20] @@ -616,22 +616,22 @@ module el2_ifu_aln_ctl( wire [63:0] _T_486 = {q0,q2}; // @[Cat.scala 29:58] wire [63:0] _T_489 = qren[2] ? _T_486 : 64'h0; // @[Mux.scala 27:72] wire [63:0] qeff = _T_490 | _T_489; // @[Mux.scala 27:72] - wire [31:0] q0eff = qeff[31:0]; // @[el2_ifu_aln_ctl.scala 294:42] + wire [31:0] q0eff = qeff[31:0]; // @[el2_ifu_aln_ctl.scala 310:42] wire [31:0] _T_497 = q0sel[0] ? q0eff : 32'h0; // @[Mux.scala 27:72] wire [15:0] _T_498 = q0sel[1] ? q0eff[31:16] : 16'h0; // @[Mux.scala 27:72] wire [31:0] _GEN_12 = {{16'd0}, _T_498}; // @[Mux.scala 27:72] wire [31:0] q0final = _T_497 | _GEN_12; // @[Mux.scala 27:72] wire [31:0] _T_519 = f0val[0] ? q0final : 32'h0; // @[Mux.scala 27:72] - wire _T_514 = ~f0val[1]; // @[el2_ifu_aln_ctl.scala 300:58] - wire _T_516 = _T_514 & f0val[0]; // @[el2_ifu_aln_ctl.scala 300:68] + wire _T_514 = ~f0val[1]; // @[el2_ifu_aln_ctl.scala 316:58] + wire _T_516 = _T_514 & f0val[0]; // @[el2_ifu_aln_ctl.scala 316:68] wire _T_197 = _T_186 & q1off; // @[Mux.scala 27:72] wire _T_198 = _T_187 & q2off; // @[Mux.scala 27:72] wire _T_200 = _T_197 | _T_198; // @[Mux.scala 27:72] wire _T_199 = _T_188 & q0off; // @[Mux.scala 27:72] wire q1ptr = _T_200 | _T_199; // @[Mux.scala 27:72] - wire _T_203 = ~q1ptr; // @[el2_ifu_aln_ctl.scala 180:26] + wire _T_203 = ~q1ptr; // @[el2_ifu_aln_ctl.scala 196:26] wire [1:0] q1sel = {q1ptr,_T_203}; // @[Cat.scala 29:58] - wire [31:0] q1eff = qeff[63:32]; // @[el2_ifu_aln_ctl.scala 294:29] + wire [31:0] q1eff = qeff[63:32]; // @[el2_ifu_aln_ctl.scala 310:29] wire [15:0] _T_507 = q1sel[0] ? q1eff[15:0] : 16'h0; // @[Mux.scala 27:72] wire [15:0] _T_508 = q1sel[1] ? q1eff[31:16] : 16'h0; // @[Mux.scala 27:72] wire [15:0] q1final = _T_507 | _T_508; // @[Mux.scala 27:72] @@ -639,91 +639,91 @@ module el2_ifu_aln_ctl( wire [47:0] _T_520 = _T_516 ? _T_518 : 48'h0; // @[Mux.scala 27:72] wire [47:0] _GEN_13 = {{16'd0}, _T_519}; // @[Mux.scala 27:72] wire [47:0] aligndata = _GEN_13 | _T_520; // @[Mux.scala 27:72] - wire first4B = aligndata[1:0] == 2'h3; // @[el2_ifu_aln_ctl.scala 332:29] - wire first2B = ~first4B; // @[el2_ifu_aln_ctl.scala 334:17] - wire shift_2B = i0_shift & first2B; // @[el2_ifu_aln_ctl.scala 396:24] + wire first4B = aligndata[1:0] == 2'h3; // @[el2_ifu_aln_ctl.scala 348:29] + wire first2B = ~first4B; // @[el2_ifu_aln_ctl.scala 350:17] + wire shift_2B = i0_shift & first2B; // @[el2_ifu_aln_ctl.scala 412:24] wire [1:0] _T_444 = {1'h0,f0val[1]}; // @[Cat.scala 29:58] wire [1:0] _T_449 = shift_2B ? _T_444 : 2'h0; // @[Mux.scala 27:72] - wire _T_445 = ~shift_2B; // @[el2_ifu_aln_ctl.scala 284:6] - wire shift_4B = i0_shift & first4B; // @[el2_ifu_aln_ctl.scala 397:24] - wire _T_446 = ~shift_4B; // @[el2_ifu_aln_ctl.scala 284:18] - wire _T_447 = _T_445 & _T_446; // @[el2_ifu_aln_ctl.scala 284:16] + wire _T_445 = ~shift_2B; // @[el2_ifu_aln_ctl.scala 300:6] + wire shift_4B = i0_shift & first4B; // @[el2_ifu_aln_ctl.scala 413:24] + wire _T_446 = ~shift_4B; // @[el2_ifu_aln_ctl.scala 300:18] + wire _T_447 = _T_445 & _T_446; // @[el2_ifu_aln_ctl.scala 300:16] wire [1:0] _T_450 = _T_447 ? f1val : 2'h0; // @[Mux.scala 27:72] wire [1:0] sf0val = _T_449 | _T_450; // @[Mux.scala 27:72] - wire sf0_valid = sf0val[0]; // @[el2_ifu_aln_ctl.scala 237:22] - wire _T_352 = ~sf0_valid; // @[el2_ifu_aln_ctl.scala 256:26] - wire _T_801 = f0val[0] & _T_514; // @[el2_ifu_aln_ctl.scala 400:28] - wire f1_shift_2B = _T_801 & shift_4B; // @[el2_ifu_aln_ctl.scala 400:40] + wire sf0_valid = sf0val[0]; // @[el2_ifu_aln_ctl.scala 253:22] + wire _T_352 = ~sf0_valid; // @[el2_ifu_aln_ctl.scala 272:26] + wire _T_801 = f0val[0] & _T_514; // @[el2_ifu_aln_ctl.scala 416:28] + wire f1_shift_2B = _T_801 & shift_4B; // @[el2_ifu_aln_ctl.scala 416:40] wire _T_418 = f1_shift_2B & f1val[1]; // @[Mux.scala 27:72] - wire _T_417 = ~f1_shift_2B; // @[el2_ifu_aln_ctl.scala 277:53] + wire _T_417 = ~f1_shift_2B; // @[el2_ifu_aln_ctl.scala 293:53] wire [1:0] _T_419 = _T_417 ? f1val : 2'h0; // @[Mux.scala 27:72] wire [1:0] _GEN_14 = {{1'd0}, _T_418}; // @[Mux.scala 27:72] wire [1:0] sf1val = _GEN_14 | _T_419; // @[Mux.scala 27:72] - wire sf1_valid = sf1val[0]; // @[el2_ifu_aln_ctl.scala 236:22] - wire _T_353 = _T_352 & sf1_valid; // @[el2_ifu_aln_ctl.scala 256:37] - wire f2_valid = f2val[0]; // @[el2_ifu_aln_ctl.scala 235:20] - wire _T_354 = _T_353 & f2_valid; // @[el2_ifu_aln_ctl.scala 256:50] - wire ifvalid = io_ifu_fetch_val[0]; // @[el2_ifu_aln_ctl.scala 245:30] - wire _T_355 = _T_354 & ifvalid; // @[el2_ifu_aln_ctl.scala 256:62] - wire _T_356 = sf0_valid & sf1_valid; // @[el2_ifu_aln_ctl.scala 257:17] - wire _T_357 = ~f2_valid; // @[el2_ifu_aln_ctl.scala 257:32] - wire _T_358 = _T_356 & _T_357; // @[el2_ifu_aln_ctl.scala 257:30] - wire _T_359 = _T_358 & ifvalid; // @[el2_ifu_aln_ctl.scala 257:42] - wire fetch_to_f2 = _T_355 | _T_359; // @[el2_ifu_aln_ctl.scala 256:74] + wire sf1_valid = sf1val[0]; // @[el2_ifu_aln_ctl.scala 252:22] + wire _T_353 = _T_352 & sf1_valid; // @[el2_ifu_aln_ctl.scala 272:37] + wire f2_valid = f2val[0]; // @[el2_ifu_aln_ctl.scala 251:20] + wire _T_354 = _T_353 & f2_valid; // @[el2_ifu_aln_ctl.scala 272:50] + wire ifvalid = io_ifu_fetch_val[0]; // @[el2_ifu_aln_ctl.scala 261:30] + wire _T_355 = _T_354 & ifvalid; // @[el2_ifu_aln_ctl.scala 272:62] + wire _T_356 = sf0_valid & sf1_valid; // @[el2_ifu_aln_ctl.scala 273:17] + wire _T_357 = ~f2_valid; // @[el2_ifu_aln_ctl.scala 273:32] + wire _T_358 = _T_356 & _T_357; // @[el2_ifu_aln_ctl.scala 273:30] + wire _T_359 = _T_358 & ifvalid; // @[el2_ifu_aln_ctl.scala 273:42] + wire fetch_to_f2 = _T_355 | _T_359; // @[el2_ifu_aln_ctl.scala 272:74] reg [30:0] f2pc; // @[Reg.scala 27:20] - wire _T_336 = ~sf1_valid; // @[el2_ifu_aln_ctl.scala 252:39] - wire _T_337 = _T_352 & _T_336; // @[el2_ifu_aln_ctl.scala 252:37] - wire _T_338 = _T_337 & f2_valid; // @[el2_ifu_aln_ctl.scala 252:50] - wire _T_339 = _T_338 & ifvalid; // @[el2_ifu_aln_ctl.scala 252:62] - wire _T_343 = _T_353 & _T_357; // @[el2_ifu_aln_ctl.scala 253:30] - wire _T_344 = _T_343 & ifvalid; // @[el2_ifu_aln_ctl.scala 253:42] - wire _T_345 = _T_339 | _T_344; // @[el2_ifu_aln_ctl.scala 252:74] - wire _T_347 = sf0_valid & _T_336; // @[el2_ifu_aln_ctl.scala 254:17] - wire _T_349 = _T_347 & _T_357; // @[el2_ifu_aln_ctl.scala 254:30] - wire _T_350 = _T_349 & ifvalid; // @[el2_ifu_aln_ctl.scala 254:42] - wire fetch_to_f1 = _T_345 | _T_350; // @[el2_ifu_aln_ctl.scala 253:54] - wire _T_25 = fetch_to_f1 | _T_354; // @[el2_ifu_aln_ctl.scala 141:33] - wire f1_shift_wr_en = _T_25 | f1_shift_2B; // @[el2_ifu_aln_ctl.scala 141:47] + wire _T_336 = ~sf1_valid; // @[el2_ifu_aln_ctl.scala 268:39] + wire _T_337 = _T_352 & _T_336; // @[el2_ifu_aln_ctl.scala 268:37] + wire _T_338 = _T_337 & f2_valid; // @[el2_ifu_aln_ctl.scala 268:50] + wire _T_339 = _T_338 & ifvalid; // @[el2_ifu_aln_ctl.scala 268:62] + wire _T_343 = _T_353 & _T_357; // @[el2_ifu_aln_ctl.scala 269:30] + wire _T_344 = _T_343 & ifvalid; // @[el2_ifu_aln_ctl.scala 269:42] + wire _T_345 = _T_339 | _T_344; // @[el2_ifu_aln_ctl.scala 268:74] + wire _T_347 = sf0_valid & _T_336; // @[el2_ifu_aln_ctl.scala 270:17] + wire _T_349 = _T_347 & _T_357; // @[el2_ifu_aln_ctl.scala 270:30] + wire _T_350 = _T_349 & ifvalid; // @[el2_ifu_aln_ctl.scala 270:42] + wire fetch_to_f1 = _T_345 | _T_350; // @[el2_ifu_aln_ctl.scala 269:54] + wire _T_25 = fetch_to_f1 | _T_354; // @[el2_ifu_aln_ctl.scala 157:33] + wire f1_shift_wr_en = _T_25 | f1_shift_2B; // @[el2_ifu_aln_ctl.scala 157:47] reg [30:0] f1pc; // @[Reg.scala 27:20] wire [30:0] _T_376 = fetch_to_f1 ? io_ifu_fetch_pc : 31'h0; // @[Mux.scala 27:72] wire [30:0] _T_377 = _T_354 ? f2pc : 31'h0; // @[Mux.scala 27:72] wire [30:0] _T_379 = _T_376 | _T_377; // @[Mux.scala 27:72] - wire _T_372 = ~fetch_to_f1; // @[el2_ifu_aln_ctl.scala 267:6] - wire _T_373 = ~_T_354; // @[el2_ifu_aln_ctl.scala 267:21] - wire _T_374 = _T_372 & _T_373; // @[el2_ifu_aln_ctl.scala 267:19] + wire _T_372 = ~fetch_to_f1; // @[el2_ifu_aln_ctl.scala 283:6] + wire _T_373 = ~_T_354; // @[el2_ifu_aln_ctl.scala 283:21] + wire _T_374 = _T_372 & _T_373; // @[el2_ifu_aln_ctl.scala 283:19] wire [30:0] _T_364 = f1_shift_2B ? 31'h7fffffff : 31'h0; // @[Bitwise.scala 72:12] reg [30:0] f0pc; // @[Reg.scala 27:20] - wire [30:0] f0pc_plus1 = f0pc + 31'h1; // @[el2_ifu_aln_ctl.scala 259:25] - wire [30:0] _T_365 = _T_364 & f0pc_plus1; // @[el2_ifu_aln_ctl.scala 263:38] + wire [30:0] f0pc_plus1 = f0pc + 31'h1; // @[el2_ifu_aln_ctl.scala 275:25] + wire [30:0] _T_365 = _T_364 & f0pc_plus1; // @[el2_ifu_aln_ctl.scala 279:38] wire [30:0] _T_368 = _T_417 ? 31'h7fffffff : 31'h0; // @[Bitwise.scala 72:12] - wire [30:0] _T_369 = _T_368 & f0pc; // @[el2_ifu_aln_ctl.scala 263:78] - wire [30:0] sf1pc = _T_365 | _T_369; // @[el2_ifu_aln_ctl.scala 263:52] + wire [30:0] _T_369 = _T_368 & f0pc; // @[el2_ifu_aln_ctl.scala 279:78] + wire [30:0] sf1pc = _T_365 | _T_369; // @[el2_ifu_aln_ctl.scala 279:52] wire [30:0] _T_378 = _T_374 ? sf1pc : 31'h0; // @[Mux.scala 27:72] wire [30:0] f1pc_in = _T_379 | _T_378; // @[Mux.scala 27:72] - wire _T_333 = _T_337 & _T_357; // @[el2_ifu_aln_ctl.scala 251:50] - wire fetch_to_f0 = _T_333 & ifvalid; // @[el2_ifu_aln_ctl.scala 251:62] - wire _T_27 = fetch_to_f0 | _T_338; // @[el2_ifu_aln_ctl.scala 142:33] - wire _T_28 = _T_27 | _T_353; // @[el2_ifu_aln_ctl.scala 142:47] - wire _T_29 = _T_28 | shift_2B; // @[el2_ifu_aln_ctl.scala 142:61] - wire f0_shift_wr_en = _T_29 | shift_4B; // @[el2_ifu_aln_ctl.scala 142:72] + wire _T_333 = _T_337 & _T_357; // @[el2_ifu_aln_ctl.scala 267:50] + wire fetch_to_f0 = _T_333 & ifvalid; // @[el2_ifu_aln_ctl.scala 267:62] + wire _T_27 = fetch_to_f0 | _T_338; // @[el2_ifu_aln_ctl.scala 158:33] + wire _T_28 = _T_27 | _T_353; // @[el2_ifu_aln_ctl.scala 158:47] + wire _T_29 = _T_28 | shift_2B; // @[el2_ifu_aln_ctl.scala 158:61] + wire f0_shift_wr_en = _T_29 | shift_4B; // @[el2_ifu_aln_ctl.scala 158:72] wire [30:0] _T_391 = fetch_to_f0 ? io_ifu_fetch_pc : 31'h0; // @[Mux.scala 27:72] wire [30:0] _T_392 = _T_338 ? f2pc : 31'h0; // @[Mux.scala 27:72] wire [30:0] _T_395 = _T_391 | _T_392; // @[Mux.scala 27:72] wire [30:0] _T_393 = _T_353 ? sf1pc : 31'h0; // @[Mux.scala 27:72] wire [30:0] _T_396 = _T_395 | _T_393; // @[Mux.scala 27:72] - wire _T_385 = ~fetch_to_f0; // @[el2_ifu_aln_ctl.scala 272:24] - wire _T_386 = ~_T_338; // @[el2_ifu_aln_ctl.scala 272:39] - wire _T_387 = _T_385 & _T_386; // @[el2_ifu_aln_ctl.scala 272:37] - wire _T_388 = ~_T_353; // @[el2_ifu_aln_ctl.scala 272:54] - wire _T_389 = _T_387 & _T_388; // @[el2_ifu_aln_ctl.scala 272:52] + wire _T_385 = ~fetch_to_f0; // @[el2_ifu_aln_ctl.scala 288:24] + wire _T_386 = ~_T_338; // @[el2_ifu_aln_ctl.scala 288:39] + wire _T_387 = _T_385 & _T_386; // @[el2_ifu_aln_ctl.scala 288:37] + wire _T_388 = ~_T_353; // @[el2_ifu_aln_ctl.scala 288:54] + wire _T_389 = _T_387 & _T_388; // @[el2_ifu_aln_ctl.scala 288:52] wire [30:0] _T_394 = _T_389 ? f0pc_plus1 : 31'h0; // @[Mux.scala 27:72] wire [30:0] f0pc_in = _T_396 | _T_394; // @[Mux.scala 27:72] - wire _T_35 = wrptr == 2'h2; // @[el2_ifu_aln_ctl.scala 145:21] - wire _T_36 = _T_35 & ifvalid; // @[el2_ifu_aln_ctl.scala 145:29] - wire _T_37 = wrptr == 2'h1; // @[el2_ifu_aln_ctl.scala 145:46] - wire _T_38 = _T_37 & ifvalid; // @[el2_ifu_aln_ctl.scala 145:54] - wire _T_39 = wrptr == 2'h0; // @[el2_ifu_aln_ctl.scala 145:71] - wire _T_40 = _T_39 & ifvalid; // @[el2_ifu_aln_ctl.scala 145:79] + wire _T_35 = wrptr == 2'h2; // @[el2_ifu_aln_ctl.scala 161:21] + wire _T_36 = _T_35 & ifvalid; // @[el2_ifu_aln_ctl.scala 161:29] + wire _T_37 = wrptr == 2'h1; // @[el2_ifu_aln_ctl.scala 161:46] + wire _T_38 = _T_37 & ifvalid; // @[el2_ifu_aln_ctl.scala 161:54] + wire _T_39 = wrptr == 2'h0; // @[el2_ifu_aln_ctl.scala 161:71] + wire _T_40 = _T_39 & ifvalid; // @[el2_ifu_aln_ctl.scala 161:79] wire [2:0] qwen = {_T_36,_T_38,_T_40}; // @[Cat.scala 29:58] reg [11:0] brdata2; // @[Reg.scala 27:20] wire [5:0] _T_242 = {io_ifu_bp_hist1_f[0],io_ifu_bp_hist0_f[0],io_ifu_bp_pc4_f[0],io_ifu_bp_way_f[0],io_ifu_bp_valid_f[0],io_ifu_bp_ret_f[0]}; // @[Cat.scala 29:58] @@ -734,18 +734,18 @@ module el2_ifu_aln_ctl( wire [54:0] misc_data_in = {io_iccm_rd_ecc_double_err,io_ic_access_fault_f,io_ic_access_fault_type_f,io_ifu_bp_btb_target_f[31:1],io_ifu_bp_poffset_f,io_ifu_bp_fghr_f}; // @[Cat.scala 29:58] reg [54:0] _T_16; // @[Reg.scala 27:20] reg [54:0] _T_18; // @[Reg.scala 27:20] - wire _T_44 = qren[0] & io_ifu_fb_consume1; // @[el2_ifu_aln_ctl.scala 147:34] - wire _T_46 = _T_44 & _T_1; // @[el2_ifu_aln_ctl.scala 147:55] - wire _T_49 = qren[1] & io_ifu_fb_consume1; // @[el2_ifu_aln_ctl.scala 148:14] - wire _T_51 = _T_49 & _T_1; // @[el2_ifu_aln_ctl.scala 148:35] - wire _T_59 = qren[0] & io_ifu_fb_consume2; // @[el2_ifu_aln_ctl.scala 150:14] - wire _T_61 = _T_59 & _T_1; // @[el2_ifu_aln_ctl.scala 150:35] - wire _T_69 = qren[2] & io_ifu_fb_consume2; // @[el2_ifu_aln_ctl.scala 152:14] - wire _T_71 = _T_69 & _T_1; // @[el2_ifu_aln_ctl.scala 152:35] - wire _T_73 = ~io_ifu_fb_consume1; // @[el2_ifu_aln_ctl.scala 153:6] - wire _T_74 = ~io_ifu_fb_consume2; // @[el2_ifu_aln_ctl.scala 153:28] - wire _T_75 = _T_73 & _T_74; // @[el2_ifu_aln_ctl.scala 153:26] - wire _T_77 = _T_75 & _T_1; // @[el2_ifu_aln_ctl.scala 153:48] + wire _T_44 = qren[0] & io_ifu_fb_consume1; // @[el2_ifu_aln_ctl.scala 163:34] + wire _T_46 = _T_44 & _T_1; // @[el2_ifu_aln_ctl.scala 163:55] + wire _T_49 = qren[1] & io_ifu_fb_consume1; // @[el2_ifu_aln_ctl.scala 164:14] + wire _T_51 = _T_49 & _T_1; // @[el2_ifu_aln_ctl.scala 164:35] + wire _T_59 = qren[0] & io_ifu_fb_consume2; // @[el2_ifu_aln_ctl.scala 166:14] + wire _T_61 = _T_59 & _T_1; // @[el2_ifu_aln_ctl.scala 166:35] + wire _T_69 = qren[2] & io_ifu_fb_consume2; // @[el2_ifu_aln_ctl.scala 168:14] + wire _T_71 = _T_69 & _T_1; // @[el2_ifu_aln_ctl.scala 168:35] + wire _T_73 = ~io_ifu_fb_consume1; // @[el2_ifu_aln_ctl.scala 169:6] + wire _T_74 = ~io_ifu_fb_consume2; // @[el2_ifu_aln_ctl.scala 169:28] + wire _T_75 = _T_73 & _T_74; // @[el2_ifu_aln_ctl.scala 169:26] + wire _T_77 = _T_75 & _T_1; // @[el2_ifu_aln_ctl.scala 169:48] wire [1:0] _T_80 = _T_51 ? 2'h2 : 2'h0; // @[Mux.scala 27:72] wire [1:0] _T_82 = _T_61 ? 2'h2 : 2'h0; // @[Mux.scala 27:72] wire [1:0] _T_85 = _T_77 ? rdptr : 2'h0; // @[Mux.scala 27:72] @@ -755,57 +755,57 @@ module el2_ifu_aln_ctl( wire [1:0] _GEN_16 = {{1'd0}, _T_71}; // @[Mux.scala 27:72] wire [1:0] _T_90 = _T_88 | _GEN_16; // @[Mux.scala 27:72] wire [1:0] rdptr_in = _T_90 | _T_85; // @[Mux.scala 27:72] - wire _T_95 = qwen[0] & _T_1; // @[el2_ifu_aln_ctl.scala 155:34] - wire _T_99 = qwen[1] & _T_1; // @[el2_ifu_aln_ctl.scala 156:14] - wire _T_105 = ~ifvalid; // @[el2_ifu_aln_ctl.scala 158:6] - wire _T_107 = _T_105 & _T_1; // @[el2_ifu_aln_ctl.scala 158:15] + wire _T_95 = qwen[0] & _T_1; // @[el2_ifu_aln_ctl.scala 171:34] + wire _T_99 = qwen[1] & _T_1; // @[el2_ifu_aln_ctl.scala 172:14] + wire _T_105 = ~ifvalid; // @[el2_ifu_aln_ctl.scala 174:6] + wire _T_107 = _T_105 & _T_1; // @[el2_ifu_aln_ctl.scala 174:15] wire [1:0] _T_110 = _T_99 ? 2'h2 : 2'h0; // @[Mux.scala 27:72] wire [1:0] _T_112 = _T_107 ? wrptr : 2'h0; // @[Mux.scala 27:72] wire [1:0] _GEN_17 = {{1'd0}, _T_95}; // @[Mux.scala 27:72] wire [1:0] _T_113 = _GEN_17 | _T_110; // @[Mux.scala 27:72] wire [1:0] wrptr_in = _T_113 | _T_112; // @[Mux.scala 27:72] - wire _T_118 = ~qwen[2]; // @[el2_ifu_aln_ctl.scala 160:26] - wire _T_120 = _T_118 & _T_188; // @[el2_ifu_aln_ctl.scala 160:35] + wire _T_118 = ~qwen[2]; // @[el2_ifu_aln_ctl.scala 176:26] + wire _T_120 = _T_118 & _T_188; // @[el2_ifu_aln_ctl.scala 176:35] wire _T_794 = shift_2B & f0val[0]; // @[Mux.scala 27:72] - wire _T_791 = ~f0val[0]; // @[el2_ifu_aln_ctl.scala 399:77] - wire _T_793 = _T_791 & f0val[0]; // @[el2_ifu_aln_ctl.scala 399:87] + wire _T_791 = ~f0val[0]; // @[el2_ifu_aln_ctl.scala 415:77] + wire _T_793 = _T_791 & f0val[0]; // @[el2_ifu_aln_ctl.scala 415:87] wire _T_795 = shift_4B & _T_793; // @[Mux.scala 27:72] wire f0_shift_2B = _T_794 | _T_795; // @[Mux.scala 27:72] - wire _T_122 = q2off | f0_shift_2B; // @[el2_ifu_aln_ctl.scala 160:74] - wire _T_126 = _T_118 & _T_187; // @[el2_ifu_aln_ctl.scala 161:15] - wire _T_128 = q2off | f1_shift_2B; // @[el2_ifu_aln_ctl.scala 161:54] - wire _T_132 = _T_118 & _T_186; // @[el2_ifu_aln_ctl.scala 162:15] + wire _T_122 = q2off | f0_shift_2B; // @[el2_ifu_aln_ctl.scala 176:74] + wire _T_126 = _T_118 & _T_187; // @[el2_ifu_aln_ctl.scala 177:15] + wire _T_128 = q2off | f1_shift_2B; // @[el2_ifu_aln_ctl.scala 177:54] + wire _T_132 = _T_118 & _T_186; // @[el2_ifu_aln_ctl.scala 178:15] wire _T_134 = _T_120 & _T_122; // @[Mux.scala 27:72] wire _T_135 = _T_126 & _T_128; // @[Mux.scala 27:72] wire _T_136 = _T_132 & q2off; // @[Mux.scala 27:72] wire _T_137 = _T_134 | _T_135; // @[Mux.scala 27:72] wire q2off_in = _T_137 | _T_136; // @[Mux.scala 27:72] - wire _T_141 = ~qwen[1]; // @[el2_ifu_aln_ctl.scala 164:26] - wire _T_143 = _T_141 & _T_187; // @[el2_ifu_aln_ctl.scala 164:35] - wire _T_145 = q1off | f0_shift_2B; // @[el2_ifu_aln_ctl.scala 164:74] - wire _T_149 = _T_141 & _T_186; // @[el2_ifu_aln_ctl.scala 165:15] - wire _T_151 = q1off | f1_shift_2B; // @[el2_ifu_aln_ctl.scala 165:54] - wire _T_155 = _T_141 & _T_188; // @[el2_ifu_aln_ctl.scala 166:15] + wire _T_141 = ~qwen[1]; // @[el2_ifu_aln_ctl.scala 180:26] + wire _T_143 = _T_141 & _T_187; // @[el2_ifu_aln_ctl.scala 180:35] + wire _T_145 = q1off | f0_shift_2B; // @[el2_ifu_aln_ctl.scala 180:74] + wire _T_149 = _T_141 & _T_186; // @[el2_ifu_aln_ctl.scala 181:15] + wire _T_151 = q1off | f1_shift_2B; // @[el2_ifu_aln_ctl.scala 181:54] + wire _T_155 = _T_141 & _T_188; // @[el2_ifu_aln_ctl.scala 182:15] wire _T_157 = _T_143 & _T_145; // @[Mux.scala 27:72] wire _T_158 = _T_149 & _T_151; // @[Mux.scala 27:72] wire _T_159 = _T_155 & q1off; // @[Mux.scala 27:72] wire _T_160 = _T_157 | _T_158; // @[Mux.scala 27:72] wire q1off_in = _T_160 | _T_159; // @[Mux.scala 27:72] - wire _T_164 = ~qwen[0]; // @[el2_ifu_aln_ctl.scala 168:26] - wire _T_166 = _T_164 & _T_186; // @[el2_ifu_aln_ctl.scala 168:35] - wire _T_168 = q0off | f0_shift_2B; // @[el2_ifu_aln_ctl.scala 168:76] - wire _T_172 = _T_164 & _T_188; // @[el2_ifu_aln_ctl.scala 169:15] - wire _T_174 = q0off | f1_shift_2B; // @[el2_ifu_aln_ctl.scala 169:56] - wire _T_178 = _T_164 & _T_187; // @[el2_ifu_aln_ctl.scala 170:15] + wire _T_164 = ~qwen[0]; // @[el2_ifu_aln_ctl.scala 184:26] + wire _T_166 = _T_164 & _T_186; // @[el2_ifu_aln_ctl.scala 184:35] + wire _T_168 = q0off | f0_shift_2B; // @[el2_ifu_aln_ctl.scala 184:76] + wire _T_172 = _T_164 & _T_188; // @[el2_ifu_aln_ctl.scala 185:15] + wire _T_174 = q0off | f1_shift_2B; // @[el2_ifu_aln_ctl.scala 185:56] + wire _T_178 = _T_164 & _T_187; // @[el2_ifu_aln_ctl.scala 186:15] wire _T_180 = _T_166 & _T_168; // @[Mux.scala 27:72] wire _T_181 = _T_172 & _T_174; // @[Mux.scala 27:72] wire _T_182 = _T_178 & q0off; // @[Mux.scala 27:72] wire _T_183 = _T_180 | _T_181; // @[Mux.scala 27:72] wire q0off_in = _T_183 | _T_182; // @[Mux.scala 27:72] - wire [53:0] misc1 = _T_16[53:0]; // @[el2_ifu_aln_ctl.scala 133:9] - wire [53:0] misc0 = _T_18[53:0]; // @[el2_ifu_aln_ctl.scala 134:9] + wire [53:0] misc1 = _T_16[53:0]; // @[el2_ifu_aln_ctl.scala 149:9] + wire [53:0] misc0 = _T_18[53:0]; // @[el2_ifu_aln_ctl.scala 150:9] wire [107:0] _T_212 = {misc1,misc0}; // @[Cat.scala 29:58] - wire [53:0] misc2 = _T_14[53:0]; // @[el2_ifu_aln_ctl.scala 132:9] + wire [53:0] misc2 = _T_14[53:0]; // @[el2_ifu_aln_ctl.scala 148:9] wire [107:0] _T_215 = {misc2,misc1}; // @[Cat.scala 29:58] wire [107:0] _T_218 = {misc0,misc2}; // @[Cat.scala 29:58] wire [107:0] _T_219 = qren[0] ? _T_212 : 108'h0; // @[Mux.scala 27:72] @@ -813,20 +813,20 @@ module el2_ifu_aln_ctl( wire [107:0] _T_221 = qren[2] ? _T_218 : 108'h0; // @[Mux.scala 27:72] wire [107:0] _T_222 = _T_219 | _T_220; // @[Mux.scala 27:72] wire [107:0] misceff = _T_222 | _T_221; // @[Mux.scala 27:72] - wire [52:0] misc1eff = misceff[107:55]; // @[el2_ifu_aln_ctl.scala 189:25] - wire [54:0] misc0eff = misceff[54:0]; // @[el2_ifu_aln_ctl.scala 190:25] - wire f1dbecc = misc1eff[52]; // @[el2_ifu_aln_ctl.scala 193:25] - wire f1icaf = misc1eff[51]; // @[el2_ifu_aln_ctl.scala 194:21] - wire [1:0] f1ictype = misc1eff[50:49]; // @[el2_ifu_aln_ctl.scala 195:26] - wire [30:0] f1prett = misc1eff[48:18]; // @[el2_ifu_aln_ctl.scala 196:25] - wire [11:0] f1poffset = misc1eff[19:8]; // @[el2_ifu_aln_ctl.scala 197:27] - wire [7:0] f1fghr = misc1eff[7:0]; // @[el2_ifu_aln_ctl.scala 198:24] - wire f0dbecc = misc0eff[54]; // @[el2_ifu_aln_ctl.scala 200:25] - wire f0icaf = misc0eff[53]; // @[el2_ifu_aln_ctl.scala 201:21] - wire [1:0] f0ictype = misc0eff[52:51]; // @[el2_ifu_aln_ctl.scala 202:26] - wire [30:0] f0prett = misc0eff[50:20]; // @[el2_ifu_aln_ctl.scala 203:25] - wire [11:0] f0poffset = misc0eff[19:8]; // @[el2_ifu_aln_ctl.scala 204:27] - wire [7:0] f0fghr = misc0eff[7:0]; // @[el2_ifu_aln_ctl.scala 205:24] + wire [52:0] misc1eff = misceff[107:55]; // @[el2_ifu_aln_ctl.scala 205:25] + wire [54:0] misc0eff = misceff[54:0]; // @[el2_ifu_aln_ctl.scala 206:25] + wire f1dbecc = misc1eff[52]; // @[el2_ifu_aln_ctl.scala 209:25] + wire f1icaf = misc1eff[51]; // @[el2_ifu_aln_ctl.scala 210:21] + wire [1:0] f1ictype = misc1eff[50:49]; // @[el2_ifu_aln_ctl.scala 211:26] + wire [30:0] f1prett = misc1eff[48:18]; // @[el2_ifu_aln_ctl.scala 212:25] + wire [11:0] f1poffset = misc1eff[19:8]; // @[el2_ifu_aln_ctl.scala 213:27] + wire [7:0] f1fghr = misc1eff[7:0]; // @[el2_ifu_aln_ctl.scala 214:24] + wire f0dbecc = misc0eff[54]; // @[el2_ifu_aln_ctl.scala 216:25] + wire f0icaf = misc0eff[53]; // @[el2_ifu_aln_ctl.scala 217:21] + wire [1:0] f0ictype = misc0eff[52:51]; // @[el2_ifu_aln_ctl.scala 218:26] + wire [30:0] f0prett = misc0eff[50:20]; // @[el2_ifu_aln_ctl.scala 219:25] + wire [11:0] f0poffset = misc0eff[19:8]; // @[el2_ifu_aln_ctl.scala 220:27] + wire [7:0] f0fghr = misc0eff[7:0]; // @[el2_ifu_aln_ctl.scala 221:24] wire [23:0] _T_251 = {brdata1,brdata0}; // @[Cat.scala 29:58] wire [23:0] _T_254 = {brdata2,brdata1}; // @[Cat.scala 29:58] wire [23:0] _T_257 = {brdata0,brdata2}; // @[Cat.scala 29:58] @@ -835,8 +835,8 @@ module el2_ifu_aln_ctl( wire [23:0] _T_260 = qren[2] ? _T_257 : 24'h0; // @[Mux.scala 27:72] wire [23:0] _T_261 = _T_258 | _T_259; // @[Mux.scala 27:72] wire [23:0] brdataeff = _T_261 | _T_260; // @[Mux.scala 27:72] - wire [11:0] brdata0eff = brdataeff[11:0]; // @[el2_ifu_aln_ctl.scala 215:43] - wire [11:0] brdata1eff = brdataeff[23:12]; // @[el2_ifu_aln_ctl.scala 215:61] + wire [11:0] brdata0eff = brdataeff[11:0]; // @[el2_ifu_aln_ctl.scala 231:43] + wire [11:0] brdata1eff = brdataeff[23:12]; // @[el2_ifu_aln_ctl.scala 231:61] wire [11:0] _T_268 = q0sel[0] ? brdata0eff : 12'h0; // @[Mux.scala 27:72] wire [5:0] _T_269 = q0sel[1] ? brdata0eff[11:6] : 6'h0; // @[Mux.scala 27:72] wire [11:0] _GEN_18 = {{6'd0}, _T_269}; // @[Mux.scala 27:72] @@ -857,32 +857,32 @@ module el2_ifu_aln_ctl( wire [1:0] f1pc4 = {brdata1final[9],brdata1final[3]}; // @[Cat.scala 29:58] wire [1:0] f1hist0 = {brdata1final[10],brdata1final[4]}; // @[Cat.scala 29:58] wire [1:0] f1hist1 = {brdata1final[11],brdata1final[5]}; // @[Cat.scala 29:58] - wire consume_fb0 = _T_352 & f0val[0]; // @[el2_ifu_aln_ctl.scala 239:32] - wire consume_fb1 = _T_336 & f1val[0]; // @[el2_ifu_aln_ctl.scala 240:32] - wire _T_312 = ~consume_fb1; // @[el2_ifu_aln_ctl.scala 242:39] - wire _T_313 = consume_fb0 & _T_312; // @[el2_ifu_aln_ctl.scala 242:37] - wire _T_316 = consume_fb0 & consume_fb1; // @[el2_ifu_aln_ctl.scala 243:37] - wire _T_400 = fetch_to_f2 & _T_1; // @[el2_ifu_aln_ctl.scala 274:38] - wire _T_402 = ~fetch_to_f2; // @[el2_ifu_aln_ctl.scala 275:6] - wire _T_404 = _T_402 & _T_373; // @[el2_ifu_aln_ctl.scala 275:19] - wire _T_406 = _T_404 & _T_386; // @[el2_ifu_aln_ctl.scala 275:34] - wire _T_408 = _T_406 & _T_1; // @[el2_ifu_aln_ctl.scala 275:49] + wire consume_fb0 = _T_352 & f0val[0]; // @[el2_ifu_aln_ctl.scala 255:32] + wire consume_fb1 = _T_336 & f1val[0]; // @[el2_ifu_aln_ctl.scala 256:32] + wire _T_312 = ~consume_fb1; // @[el2_ifu_aln_ctl.scala 258:39] + wire _T_313 = consume_fb0 & _T_312; // @[el2_ifu_aln_ctl.scala 258:37] + wire _T_316 = consume_fb0 & consume_fb1; // @[el2_ifu_aln_ctl.scala 259:37] + wire _T_400 = fetch_to_f2 & _T_1; // @[el2_ifu_aln_ctl.scala 290:38] + wire _T_402 = ~fetch_to_f2; // @[el2_ifu_aln_ctl.scala 291:6] + wire _T_404 = _T_402 & _T_373; // @[el2_ifu_aln_ctl.scala 291:19] + wire _T_406 = _T_404 & _T_386; // @[el2_ifu_aln_ctl.scala 291:34] + wire _T_408 = _T_406 & _T_1; // @[el2_ifu_aln_ctl.scala 291:49] wire [1:0] _T_410 = _T_400 ? io_ifu_fetch_val : 2'h0; // @[Mux.scala 27:72] wire [1:0] _T_411 = _T_408 ? f2val : 2'h0; // @[Mux.scala 27:72] wire [1:0] f2val_in = _T_410 | _T_411; // @[Mux.scala 27:72] - wire _T_423 = fetch_to_f1 & _T_1; // @[el2_ifu_aln_ctl.scala 279:38] - wire _T_426 = _T_354 & _T_1; // @[el2_ifu_aln_ctl.scala 280:18] - wire _T_432 = _T_374 & _T_388; // @[el2_ifu_aln_ctl.scala 281:34] - wire _T_434 = _T_432 & _T_1; // @[el2_ifu_aln_ctl.scala 281:49] + wire _T_423 = fetch_to_f1 & _T_1; // @[el2_ifu_aln_ctl.scala 295:38] + wire _T_426 = _T_354 & _T_1; // @[el2_ifu_aln_ctl.scala 296:18] + wire _T_432 = _T_374 & _T_388; // @[el2_ifu_aln_ctl.scala 297:34] + wire _T_434 = _T_432 & _T_1; // @[el2_ifu_aln_ctl.scala 297:49] wire [1:0] _T_436 = _T_423 ? io_ifu_fetch_val : 2'h0; // @[Mux.scala 27:72] wire [1:0] _T_437 = _T_426 ? f2val : 2'h0; // @[Mux.scala 27:72] wire [1:0] _T_438 = _T_434 ? sf1val : 2'h0; // @[Mux.scala 27:72] wire [1:0] _T_439 = _T_436 | _T_437; // @[Mux.scala 27:72] wire [1:0] f1val_in = _T_439 | _T_438; // @[Mux.scala 27:72] - wire _T_454 = fetch_to_f0 & _T_1; // @[el2_ifu_aln_ctl.scala 286:38] - wire _T_457 = _T_338 & _T_1; // @[el2_ifu_aln_ctl.scala 287:18] - wire _T_460 = _T_353 & _T_1; // @[el2_ifu_aln_ctl.scala 288:18] - wire _T_468 = _T_389 & _T_1; // @[el2_ifu_aln_ctl.scala 289:49] + wire _T_454 = fetch_to_f0 & _T_1; // @[el2_ifu_aln_ctl.scala 302:38] + wire _T_457 = _T_338 & _T_1; // @[el2_ifu_aln_ctl.scala 303:18] + wire _T_460 = _T_353 & _T_1; // @[el2_ifu_aln_ctl.scala 304:18] + wire _T_468 = _T_389 & _T_1; // @[el2_ifu_aln_ctl.scala 305:49] wire [1:0] _T_470 = _T_454 ? io_ifu_fetch_val : 2'h0; // @[Mux.scala 27:72] wire [1:0] _T_471 = _T_457 ? f2val : 2'h0; // @[Mux.scala 27:72] wire [1:0] _T_472 = _T_460 ? sf1val : 2'h0; // @[Mux.scala 27:72] @@ -933,18 +933,18 @@ module el2_ifu_aln_ctl( wire [30:0] secondpc = _T_646 | _T_647; // @[Mux.scala 27:72] wire _T_656 = first4B & alignval[1]; // @[Mux.scala 27:72] wire _T_657 = first2B & alignval[0]; // @[Mux.scala 27:72] - wire _T_661 = |alignicaf; // @[el2_ifu_aln_ctl.scala 338:59] + wire _T_661 = |alignicaf; // @[el2_ifu_aln_ctl.scala 354:59] wire _T_664 = first4B & _T_661; // @[Mux.scala 27:72] wire _T_665 = first2B & alignicaf[0]; // @[Mux.scala 27:72] - wire _T_670 = first4B & _T_514; // @[el2_ifu_aln_ctl.scala 340:39] - wire _T_672 = _T_670 & f0val[0]; // @[el2_ifu_aln_ctl.scala 340:51] - wire _T_674 = ~alignicaf[0]; // @[el2_ifu_aln_ctl.scala 340:64] - wire _T_675 = _T_672 & _T_674; // @[el2_ifu_aln_ctl.scala 340:62] - wire _T_677 = ~aligndbecc[0]; // @[el2_ifu_aln_ctl.scala 340:80] - wire _T_678 = _T_675 & _T_677; // @[el2_ifu_aln_ctl.scala 340:78] - wire icaf_eff = alignicaf[1] | aligndbecc[1]; // @[el2_ifu_aln_ctl.scala 342:31] - wire _T_683 = first4B & icaf_eff; // @[el2_ifu_aln_ctl.scala 344:32] - wire _T_686 = |aligndbecc; // @[el2_ifu_aln_ctl.scala 346:59] + wire _T_670 = first4B & _T_514; // @[el2_ifu_aln_ctl.scala 356:39] + wire _T_672 = _T_670 & f0val[0]; // @[el2_ifu_aln_ctl.scala 356:51] + wire _T_674 = ~alignicaf[0]; // @[el2_ifu_aln_ctl.scala 356:64] + wire _T_675 = _T_672 & _T_674; // @[el2_ifu_aln_ctl.scala 356:62] + wire _T_677 = ~aligndbecc[0]; // @[el2_ifu_aln_ctl.scala 356:80] + wire _T_678 = _T_675 & _T_677; // @[el2_ifu_aln_ctl.scala 356:78] + wire icaf_eff = alignicaf[1] | aligndbecc[1]; // @[el2_ifu_aln_ctl.scala 358:31] + wire _T_683 = first4B & icaf_eff; // @[el2_ifu_aln_ctl.scala 360:32] + wire _T_686 = |aligndbecc; // @[el2_ifu_aln_ctl.scala 362:59] wire _T_689 = first4B & _T_686; // @[Mux.scala 27:72] wire _T_690 = first2B & aligndbecc[0]; // @[Mux.scala 27:72] wire [47:0] _T_695 = first4B ? aligndata : 48'h0; // @[Mux.scala 27:72] @@ -959,58 +959,58 @@ module el2_ifu_aln_ctl( wire [4:0] firstbrtag_hash = _T_711 ^ f0pc[23:19]; // @[el2_lib.scala 182:111] wire [4:0] _T_716 = secondpc[13:9] ^ secondpc[18:14]; // @[el2_lib.scala 182:111] wire [4:0] secondbrtag_hash = _T_716 ^ secondpc[23:19]; // @[el2_lib.scala 182:111] - wire _T_718 = first2B & alignbrend[0]; // @[el2_ifu_aln_ctl.scala 362:30] - wire _T_720 = first4B & alignbrend[1]; // @[el2_ifu_aln_ctl.scala 362:58] - wire _T_721 = _T_718 | _T_720; // @[el2_ifu_aln_ctl.scala 362:47] - wire _T_725 = _T_656 & alignbrend[0]; // @[el2_ifu_aln_ctl.scala 362:100] - wire _T_728 = first2B & alignret[0]; // @[el2_ifu_aln_ctl.scala 364:29] - wire _T_730 = first4B & alignret[1]; // @[el2_ifu_aln_ctl.scala 364:55] - wire _T_733 = first2B & alignpc4[0]; // @[el2_ifu_aln_ctl.scala 366:29] - wire _T_735 = first4B & alignpc4[1]; // @[el2_ifu_aln_ctl.scala 366:55] - wire i0_brp_pc4 = _T_733 | _T_735; // @[el2_ifu_aln_ctl.scala 366:44] - wire _T_737 = first2B | alignbrend[0]; // @[el2_ifu_aln_ctl.scala 368:33] - wire _T_743 = first2B & alignhist1[0]; // @[el2_ifu_aln_ctl.scala 370:34] - wire _T_745 = first4B & alignhist1[1]; // @[el2_ifu_aln_ctl.scala 370:62] - wire _T_746 = _T_743 | _T_745; // @[el2_ifu_aln_ctl.scala 370:51] - wire _T_748 = first2B & alignhist0[0]; // @[el2_ifu_aln_ctl.scala 371:14] - wire _T_750 = first4B & alignhist0[1]; // @[el2_ifu_aln_ctl.scala 371:42] - wire _T_751 = _T_748 | _T_750; // @[el2_ifu_aln_ctl.scala 371:31] - wire i0_ends_f1 = first4B & _T_516; // @[el2_ifu_aln_ctl.scala 373:28] - wire _T_767 = io_i0_brp_valid & i0_brp_pc4; // @[el2_ifu_aln_ctl.scala 382:42] - wire _T_768 = _T_767 & first2B; // @[el2_ifu_aln_ctl.scala 382:56] - wire _T_769 = ~i0_brp_pc4; // @[el2_ifu_aln_ctl.scala 382:89] - wire _T_770 = io_i0_brp_valid & _T_769; // @[el2_ifu_aln_ctl.scala 382:87] - wire _T_771 = _T_770 & first4B; // @[el2_ifu_aln_ctl.scala 382:101] - wire [7:0] _T_776 = _T_737 ? firstpc_hash : secondpc_hash; // @[el2_ifu_aln_ctl.scala 384:28] - el2_ifu_compress_ctl decompressed ( // @[el2_ifu_aln_ctl.scala 350:28] + wire _T_718 = first2B & alignbrend[0]; // @[el2_ifu_aln_ctl.scala 378:30] + wire _T_720 = first4B & alignbrend[1]; // @[el2_ifu_aln_ctl.scala 378:58] + wire _T_721 = _T_718 | _T_720; // @[el2_ifu_aln_ctl.scala 378:47] + wire _T_725 = _T_656 & alignbrend[0]; // @[el2_ifu_aln_ctl.scala 378:100] + wire _T_728 = first2B & alignret[0]; // @[el2_ifu_aln_ctl.scala 380:29] + wire _T_730 = first4B & alignret[1]; // @[el2_ifu_aln_ctl.scala 380:55] + wire _T_733 = first2B & alignpc4[0]; // @[el2_ifu_aln_ctl.scala 382:29] + wire _T_735 = first4B & alignpc4[1]; // @[el2_ifu_aln_ctl.scala 382:55] + wire i0_brp_pc4 = _T_733 | _T_735; // @[el2_ifu_aln_ctl.scala 382:44] + wire _T_737 = first2B | alignbrend[0]; // @[el2_ifu_aln_ctl.scala 384:33] + wire _T_743 = first2B & alignhist1[0]; // @[el2_ifu_aln_ctl.scala 386:34] + wire _T_745 = first4B & alignhist1[1]; // @[el2_ifu_aln_ctl.scala 386:62] + wire _T_746 = _T_743 | _T_745; // @[el2_ifu_aln_ctl.scala 386:51] + wire _T_748 = first2B & alignhist0[0]; // @[el2_ifu_aln_ctl.scala 387:14] + wire _T_750 = first4B & alignhist0[1]; // @[el2_ifu_aln_ctl.scala 387:42] + wire _T_751 = _T_748 | _T_750; // @[el2_ifu_aln_ctl.scala 387:31] + wire i0_ends_f1 = first4B & _T_516; // @[el2_ifu_aln_ctl.scala 389:28] + wire _T_767 = io_i0_brp_valid & i0_brp_pc4; // @[el2_ifu_aln_ctl.scala 398:42] + wire _T_768 = _T_767 & first2B; // @[el2_ifu_aln_ctl.scala 398:56] + wire _T_769 = ~i0_brp_pc4; // @[el2_ifu_aln_ctl.scala 398:89] + wire _T_770 = io_i0_brp_valid & _T_769; // @[el2_ifu_aln_ctl.scala 398:87] + wire _T_771 = _T_770 & first4B; // @[el2_ifu_aln_ctl.scala 398:101] + wire [7:0] _T_776 = _T_737 ? firstpc_hash : secondpc_hash; // @[el2_ifu_aln_ctl.scala 400:28] + el2_ifu_compress_ctl decompressed ( // @[el2_ifu_aln_ctl.scala 366:28] .io_din(decompressed_io_din), .io_dout(decompressed_io_dout) ); - assign io_ifu_i0_valid = _T_656 | _T_657; // @[el2_ifu_aln_ctl.scala 336:19] - assign io_ifu_i0_icaf = _T_664 | _T_665; // @[el2_ifu_aln_ctl.scala 338:18] - assign io_ifu_i0_icaf_type = _T_678 ? f1ictype : f0ictype; // @[el2_ifu_aln_ctl.scala 340:23] - assign io_ifu_i0_icaf_f1 = _T_683 & _T_516; // @[el2_ifu_aln_ctl.scala 344:21] - assign io_ifu_i0_dbecc = _T_689 | _T_690; // @[el2_ifu_aln_ctl.scala 346:19] - assign io_ifu_i0_instr = _T_697[31:0]; // @[el2_ifu_aln_ctl.scala 352:19] - assign io_ifu_i0_pc = {{1'd0}, f0pc}; // @[el2_ifu_aln_ctl.scala 324:16] - assign io_ifu_i0_pc4 = aligndata[1:0] == 2'h3; // @[el2_ifu_aln_ctl.scala 328:17] - assign io_ifu_fb_consume1 = _T_313 & _T_1; // @[el2_ifu_aln_ctl.scala 242:22] - assign io_ifu_fb_consume2 = _T_316 & _T_1; // @[el2_ifu_aln_ctl.scala 243:22] - assign io_ifu_i0_bp_index = _T_776[6:0]; // @[el2_ifu_aln_ctl.scala 384:22] - assign io_ifu_i0_bp_fghr = i0_ends_f1 ? f1fghr : f0fghr; // @[el2_ifu_aln_ctl.scala 386:21] - assign io_ifu_i0_bp_btag = _T_737 ? firstbrtag_hash : secondbrtag_hash; // @[el2_ifu_aln_ctl.scala 388:21] - assign io_ifu_pmu_instr_aligned = io_dec_i0_decode_d & _T_784; // @[el2_ifu_aln_ctl.scala 394:28] - assign io_ifu_i0_cinst = aligndata[15:0]; // @[el2_ifu_aln_ctl.scala 330:19] - assign io_i0_brp_valid = _T_721 | _T_725; // @[el2_ifu_aln_ctl.scala 362:19] - assign io_i0_brp_toffset = i0_ends_f1 ? f1poffset : f0poffset; // @[el2_ifu_aln_ctl.scala 374:21] - assign io_i0_brp_hist = {_T_746,_T_751}; // @[el2_ifu_aln_ctl.scala 370:18] - assign io_i0_brp_br_error = _T_768 | _T_771; // @[el2_ifu_aln_ctl.scala 382:22] - assign io_i0_brp_br_start_error = _T_656 & alignbrend[0]; // @[el2_ifu_aln_ctl.scala 378:29] - assign io_i0_brp_bank = _T_737 ? f0pc[1] : secondpc[1]; // @[el2_ifu_aln_ctl.scala 380:29] - assign io_i0_brp_prett = i0_ends_f1 ? f1prett : f0prett; // @[el2_ifu_aln_ctl.scala 376:19] - assign io_i0_brp_way = _T_737 ? alignway[0] : alignway[1]; // @[el2_ifu_aln_ctl.scala 368:17] - assign io_i0_brp_ret = _T_728 | _T_730; // @[el2_ifu_aln_ctl.scala 364:17] - assign decompressed_io_din = aligndata[15:0]; // @[el2_ifu_aln_ctl.scala 390:23] + assign io_ifu_i0_valid = _T_656 | _T_657; // @[el2_ifu_aln_ctl.scala 47:19 el2_ifu_aln_ctl.scala 352:19] + assign io_ifu_i0_icaf = _T_664 | _T_665; // @[el2_ifu_aln_ctl.scala 48:18 el2_ifu_aln_ctl.scala 354:18] + assign io_ifu_i0_icaf_type = _T_678 ? f1ictype : f0ictype; // @[el2_ifu_aln_ctl.scala 49:23 el2_ifu_aln_ctl.scala 356:23] + assign io_ifu_i0_icaf_f1 = _T_683 & _T_516; // @[el2_ifu_aln_ctl.scala 50:21 el2_ifu_aln_ctl.scala 360:21] + assign io_ifu_i0_dbecc = _T_689 | _T_690; // @[el2_ifu_aln_ctl.scala 51:19 el2_ifu_aln_ctl.scala 362:19] + assign io_ifu_i0_instr = _T_697[31:0]; // @[el2_ifu_aln_ctl.scala 52:19 el2_ifu_aln_ctl.scala 368:19] + assign io_ifu_i0_pc = {{1'd0}, f0pc}; // @[el2_ifu_aln_ctl.scala 53:16 el2_ifu_aln_ctl.scala 340:16] + assign io_ifu_i0_pc4 = aligndata[1:0] == 2'h3; // @[el2_ifu_aln_ctl.scala 54:17 el2_ifu_aln_ctl.scala 344:17] + assign io_ifu_fb_consume1 = _T_313 & _T_1; // @[el2_ifu_aln_ctl.scala 55:22 el2_ifu_aln_ctl.scala 258:22] + assign io_ifu_fb_consume2 = _T_316 & _T_1; // @[el2_ifu_aln_ctl.scala 56:22 el2_ifu_aln_ctl.scala 259:22] + assign io_ifu_i0_bp_index = _T_776[6:0]; // @[el2_ifu_aln_ctl.scala 57:22 el2_ifu_aln_ctl.scala 400:22] + assign io_ifu_i0_bp_fghr = i0_ends_f1 ? f1fghr : f0fghr; // @[el2_ifu_aln_ctl.scala 58:21 el2_ifu_aln_ctl.scala 402:21] + assign io_ifu_i0_bp_btag = _T_737 ? firstbrtag_hash : secondbrtag_hash; // @[el2_ifu_aln_ctl.scala 59:21 el2_ifu_aln_ctl.scala 404:21] + assign io_ifu_pmu_instr_aligned = io_dec_i0_decode_d & _T_784; // @[el2_ifu_aln_ctl.scala 60:28 el2_ifu_aln_ctl.scala 410:28] + assign io_ifu_i0_cinst = aligndata[15:0]; // @[el2_ifu_aln_ctl.scala 61:19 el2_ifu_aln_ctl.scala 346:19] + assign io_i0_brp_valid = _T_721 | _T_725; // @[el2_ifu_aln_ctl.scala 378:19] + assign io_i0_brp_toffset = i0_ends_f1 ? f1poffset : f0poffset; // @[el2_ifu_aln_ctl.scala 390:21] + assign io_i0_brp_hist = {_T_746,_T_751}; // @[el2_ifu_aln_ctl.scala 386:18] + assign io_i0_brp_br_error = _T_768 | _T_771; // @[el2_ifu_aln_ctl.scala 398:22] + assign io_i0_brp_br_start_error = _T_656 & alignbrend[0]; // @[el2_ifu_aln_ctl.scala 394:29] + assign io_i0_brp_bank = _T_737 ? f0pc[1] : secondpc[1]; // @[el2_ifu_aln_ctl.scala 396:29] + assign io_i0_brp_prett = i0_ends_f1 ? f1prett : f0prett; // @[el2_ifu_aln_ctl.scala 392:19] + assign io_i0_brp_way = _T_737 ? alignway[0] : alignway[1]; // @[el2_ifu_aln_ctl.scala 384:17] + assign io_i0_brp_ret = _T_728 | _T_730; // @[el2_ifu_aln_ctl.scala 380:17] + assign decompressed_io_din = aligndata[15:0]; // @[el2_ifu_aln_ctl.scala 406:23] `ifdef RANDOMIZE_GARBAGE_ASSIGN `define RANDOMIZE `endif diff --git a/src/main/scala/ifu/el2_ifu_aln_ctl.scala b/src/main/scala/ifu/el2_ifu_aln_ctl.scala index a3d38af7..ae1dd7c4 100644 --- a/src/main/scala/ifu/el2_ifu_aln_ctl.scala +++ b/src/main/scala/ifu/el2_ifu_aln_ctl.scala @@ -26,6 +26,7 @@ class el2_ifu_aln_ctl extends Module with el2_lib { val ifu_fetch_data_f = Input(UInt(32.W)) val ifu_fetch_val = Input(UInt(2.W)) val ifu_fetch_pc = Input(UInt(31.W)) + ///////////////////////////////////////////////// val ifu_i0_valid = Output(Bool()) val ifu_i0_icaf = Output(Bool()) val ifu_i0_icaf_type = Output(UInt(2.W)) @@ -43,6 +44,21 @@ class el2_ifu_aln_ctl extends Module with el2_lib { val ifu_i0_cinst = Output(UInt(16.W)) val i0_brp = Output(new el2_br_pkt_t) }) + io.ifu_i0_valid := 0.U + io.ifu_i0_icaf := 0.U + io.ifu_i0_icaf_type := 0.U + io.ifu_i0_icaf_f1 := 0.U + io.ifu_i0_dbecc := 0.U + io.ifu_i0_instr := 0.U + io.ifu_i0_pc := 0.U + io.ifu_i0_pc4 := 0.U + io.ifu_fb_consume1 := 0.U + io.ifu_fb_consume2 := 0.U + io.ifu_i0_bp_index := 0.U + io.ifu_i0_bp_fghr := 0.U + io.ifu_i0_bp_btag := 0.U + io.ifu_pmu_instr_aligned := 0.U + io.ifu_i0_cinst := 0.U val MHI = 46+BHT_GHR_SIZE // 54 val MSIZE = 47+BHT_GHR_SIZE // 55 val BRDATA_SIZE = 12 diff --git a/target/scala-2.12/classes/ifu/el2_ifu_aln_ctl$$anon$1.class b/target/scala-2.12/classes/ifu/el2_ifu_aln_ctl$$anon$1.class index 33fa224da5de8a3d68cd7181173ba972fde5e2f7..bdc81000a80c64ebd84d995f88a9b252b8ccac4e 100644 GIT binary patch delta 205 zcmWN?Jqtlm7zgmjId_yU_c~$l&hd83OUfd%%$V)u3-|zLk6BmU$)s*6AHb$$#>!62 z{=entwY~P+&BVOSjzTlRvIB4sD!`EQc@7qtKn-ngk#F5hCP8so~tPD|3HYqPhRFHEj$|Y&J ZrII{TS-z=a#HeaCsAdew@u%@l;18QjI5hwO delta 201 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 literal 175650 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

_ zbvO_&!o`E!eS%HMYOf#vv>!!Z#*?*PU;ZUu3jS0|6Pwqcf7zd+PpgsjUZ36(pNf8s zARE1Yy<>hAd~5I{o4mfgqrMgVOIDICUjN>4{|Y`1HJ|2h&LYpdORF4!KnvtJPJ1b@MrJOJO$nHx)m~=9Q9TaPu>##{&$6h zuO{A@+#S^fW5T{*1Ya}=FO2w>9QW21p*DD$WcoX6i=)Qm?gG0;Ui8N1u8NHqpEKm7 zH$Hb=e8d=CC#SqIx+`NO#wmfE_QvV1jguo*c*En3)7>+YbC)o=OXD!Kn@rAntCTwr zX>xz}(9T`Kj!plTNrV)ts{{}Nb*v~ck&2`SsYPm%c)&)aHkm*o$+IMi{6wOa+N6#$ ziquthkr?GW66;fy#Q6*%2|k-ieV;E#149^TXy{BD8PZ7;!(r0Y@FQtfs3K`zD222r zw2&kgI!2NT{X$y%Mv*qYV@NySy`;VGRnkF?CLPsrq!SE*JF7pEuEtuhp=A_FF+NRt z7%!2Yrs|}ZsW0hmT2A_yPLaN*o1~w)7U^#uNd}mAlY!=+$Y4t)GQ`rI47DsG4_S_r zVU}xTxL*Vr;n$mt^lwH+`>!Np{LhiG0Rd!uKua2DeaD+?>xK17oj3$!R$--i% z$)e&L$>I`2$dZz;k!7VSlI3&|$t=B@tSEDltPH70vO))wRb_uA%gPldYr=|=wdEDE zuKZLxiD zJ(C=&Q-U0*Q;Hm}lR}QvSxk=AIYW-u4J9Y)_9rjaeTuwP_e*lJUI;l=uN!%#-VSoQ z-eqzoCYqd$8AD!;*-l=M8%*9vC`H~(I7?nn_>#O;e;Rqafq}f!Uj@>`n$S|Ap_J%(P6_ID zQYqDYmO}ehP=fjSrZ#%rYf<+zh4egi%V&BfXTk zM_VZgQ(~0{(<&jIc4I~e#)d}7G?5sgEBRq#NM zVIi0TuwS!T=H-L){M*ZFdE-D1|I|p3d5Y+E2;Oc~+es2R86N37^16;jOy!Kt- z;zIG-_kfEHeFwPrflCN|0l4$P#h2{>+y}rlC>syl1>owJ!!kYuu301Kg*;H7#EcxX*xV5*`QK=fE`&uK?T^z%`4k3fz~#wTvtV+(qD8 zM0N-6E8vnMn*#SWaEXy~fcplx){&!t`yX(vBKH9IEpTlkR|EGQaBZSYzCa9v`H0(TX-&au;h`x&@y zu|t9T1-P!UZv%G?xbCq>fcq7=l(-1segm#&Tyfy81J@%i4Y=Qd>m4@?xEsLrihCEh zo51yrI||$_;QGWr0NfwI^^Xq%?ly4!;%5_+g#b4&ek2LAD8LPfzW|&MaD(Gt0?q*3 zpoB=^3IR7XAs9Gc;D#im1E&HvEMXjQM&KTLuox*r(n&os;=vG7gv^JdhZB#&c_uh- zRN{6x&kW~{Olk_81-LOuHGuO2ZgkT7!1)6=F6lUM0l#i$QMgV;HITOzF2~Q zo0@VBxKhBSrhEz<1#Wr|U*JjuH>3My;K~4(*2@fBFmSVaUIi`$xS7570v8J0oL*~z zD+}E0US9)O4!Fm9y$M_xaC7@Wd@bdHOYZ~mwS)sVuix*$RRHeseqRDt5xDvNp9HQF za0~k{1gI1iV-hSX30JnAC2H+k9?y2;LfNKcc_VkXxH3Dwi`~ct@ z1Gh8%SKyiew_`zZ;F<#W^y7a3*9^E_i^73x4&0ta0l>8YZg<8M;93H=H)9ZRiNHOx zQDa4)Zp2Cgq~ zr&osp*AKW?R->Q$19x^c`gs6wX9%$c7z~C&gjg+>VV2=Uu}p;fgJML1f6(Pe9JGul zWDgt?qFSZ^CKC(sCxN6ed`(gjII%c6_>Un>!n zR0hFS;WGk0tHTXQO=7l8h4bM1mMqiY(+_wP{FuiPi)A_x-w=Og2vL;2#xleNSlDPa z7BLnz7Kb0JovY%8tKo)=cEiQF;TpQ(n!DjzyWx`abLJ3ps6%ISsAUYi+^Ddzim`?< z+8AeSXl!n5ZA>yha1P-ugtrmiL3kI> zdk^7#g!9OKfN%lfLxhhIK1TQi;Zuaq5I)B%zCidA;UdCU2wx+7gYZ9uZ}H^s5WYva zgzy8xWrQmTKO!77sD%84M^_PkM)(Ec8p5wA>Nh;Pj_^Ce4TPHrw-Ek7xDB8XI9XBf z$OplIPzb?{;ESLl7!gbe76d;8e}n*pK!n05%8F0~e=Uko452te351gP*C0G9g+LKX zBa}f1MhL-ELh-09LOFymg!1@@aD)o@Yej@g_-kc6s#2&CQ6liD8bWo12M}r?)I_L- zP#Yl2i%<_C1|b$94j~>P0iixZ1B3?=8X`18XpGPVp(#Q$gysk>5LzN6 zA|xTSLTHW92B9s0!50IHS`nsDJ2b03{f)%LQep4 z7-6$-TS7J>Y(m)K`yL_N@n{>ulL%W7oeapN2;(5wZ|kAxuLUgRlajE5cfYRD|gW%MgYm zG(gBiXok=oVKl-pg!%~m5c(qwKzJHq5JEP>E`(bD1vnj_TmZ3dvW zA%-!AvBWUmFo6`>j<5q^C&I2mPm@Bs@n{diGYESTo<-P)f6d0D96Z{ON6#S~KsbnS z2;q5z!w5(4ycZCTA{;~RIKl~p7ZF}UIEnBw!YPDT5KiM2XAsUJyo&G|!s`fcAiRli z4o`jy;cbL>5Z*<258-`;^9UaxTtN5`;Uk2P5k5gFpW@MH2%jT-f$$~5MTD;qzDD>4 zPyQbseT(oN!uJS2B3wfF0pT*j6@;GKvIyl6!VtLS!bJ7VxC79kEH9w7mtK0*V82N4<~G(u>M&;+3=0BMW0 zVlqNIghvtDBlJa>gwP3L141mqD1^oc;}IqzbVgW@5Qi`lp%KCaghvp%AUurF5W$8p z4xu-~LkI}~N-w21QFbEiM%at6AK`g~7Z8pkyo_)f;Z=mi2yY;~h43!I1%!_gK128t z;cJ9%5iTKQB3wbZif|3#I>Jqa+WVT92L;}9kyJc=+C zAr(M*5|3sg%t4rkun=J>!b*g-2pbT#AnX88*wG&RH5=g|0=nG?-R|=e!YPC^2(KZ$ z37~Alqqh;>L-+vUBZSWp(Ct3oBm9Vfe)hTHbCVbzz;3L+VSr*7Y#5>#h8cz{hLL!b zXhN86k#1g8-&3KJrEKR VS|YSS7>W=NU`d0U0)sCh{|6ClUd{jj diff --git a/target/scala-2.12/classes/ifu/ifu_aln$.class b/target/scala-2.12/classes/ifu/ifu_aln$.class index bf7d233e2b907f7240f1f31d51ea64769e46c11b..566ff2dbce79c13d6ae79b2f8a5ee79b5bae512f 100644 GIT binary patch delta 99 zcmZ21w^(k&3ogdRlV5V#0!as6@yT}Fo>10&ZYv<`7Pk$M6z74+OHR(?u>kUy^SFXl hNls?twFI+b7?(_*%j?U!gh3t1f6rS1Bs2JS0|0trAj|*& delta 99 zcmZ21w^(k&3ogdVlV5V#0!as6@yT}Fo>10&ZYv<`7Pk$M6z74+OHR(?u>kUy^SFXl hNls?twFI+b7^h60%j?TJg+U$2f6rS1Bs2JS0{~UBAN&9S diff --git a/target/scala-2.12/classes/ifu/ifu_aln$delayedInit$body.class b/target/scala-2.12/classes/ifu/ifu_aln$delayedInit$body.class index 091e464dcc46825edf644f6bed9e8fd3427d4396..dcce67b69e28cd224e296552678f329e138c6d6d 100644 GIT binary patch delta 19 ZcmaFB`hazVGZW+D$u3L*KyoURHvmUZ2BrW2 delta 19 ZcmaFB`hazVGZW+F$u3L*KyoURHvmRY28I9t