From 719ed25213637796729fb0d05fd87e083f5ebf14 Mon Sep 17 00:00:00 2001 From: felsabbagh3 Date: Sun, 31 Mar 2019 16:30:37 -0400 Subject: [PATCH] Cleanup --- rtl/VX_alu.v | 2 +- rtl/VX_f_d_reg.v | 12 +- rtl/VX_memory.v | 22 +- rtl/obj_dir/VVortex | Bin 471740 -> 467636 bytes rtl/obj_dir/VVortex.cpp | 2649 +++++++++++++---------------- rtl/obj_dir/VVortex.h | 9 +- rtl/obj_dir/VVortex__ALL.a | Bin 163824 -> 161032 bytes rtl/obj_dir/VVortex__ALLcls.d | 1 - rtl/obj_dir/VVortex__ALLcls.o | Bin 160588 -> 157800 bytes rtl/obj_dir/VVortex__ALLsup.d | 1 - rtl/obj_dir/VVortex__Syms.h | 2 +- rtl/obj_dir/VVortex__verFiles.dat | 22 +- rtl/obj_dir/test_bench.d | 1 - rtl/obj_dir/test_bench.o | Bin 50284 -> 49948 bytes rtl/results.txt | 2 - rtl/test_bench.h | 15 +- 16 files changed, 1207 insertions(+), 1531 deletions(-) diff --git a/rtl/VX_alu.v b/rtl/VX_alu.v index 7a35fc9b..ed3aca0f 100644 --- a/rtl/VX_alu.v +++ b/rtl/VX_alu.v @@ -63,7 +63,7 @@ module VX_alu( `CSR_ALU_RW: out_alu_result = in_csr_data; `CSR_ALU_RS: out_alu_result = in_csr_data; `CSR_ALU_RC: out_alu_result = in_csr_data; - `MUL: begin out_alu_result = mult_signed_result[31:0]; $display("(%x) %x * %x = %x", in_curr_PC, ALU_in1, ALU_in2, out_alu_result); end + `MUL: begin out_alu_result = mult_signed_result[31:0]; end `MULH: out_alu_result = mult_signed_result[63:32]; `MULHSU: out_alu_result = mult_signed_un_result[63:32]; `MULHU: out_alu_result = mult_unsigned_result[63:32]; diff --git a/rtl/VX_f_d_reg.v b/rtl/VX_f_d_reg.v index 92f2f0fa..41315262 100644 --- a/rtl/VX_f_d_reg.v +++ b/rtl/VX_f_d_reg.v @@ -26,9 +26,9 @@ module VX_f_d_reg ( integer reset_cur_thread = 0; - always @(in_instruction) begin - $display("in_instruction: %h",in_instruction); - end + // always @(in_instruction) begin + // $display("in_instruction: %h",in_instruction); + // end always @(posedge clk or posedge reset) begin if(reset) begin @@ -38,9 +38,9 @@ module VX_f_d_reg ( valid[reset_cur_thread] <= 1'b0; end else if (in_fwd_stall == 1'b1 || in_freeze == 1'b1 || in_clone_stall) begin - if (in_clone_stall) begin - $display("STALL BECAUSE OF CLONE"); - end + // if (in_clone_stall) begin + // $display("STALL BECAUSE OF CLONE"); + // end end else begin instruction <= in_instruction; valid <= in_valid; diff --git a/rtl/VX_memory.v b/rtl/VX_memory.v index 0721bebf..89553f45 100644 --- a/rtl/VX_memory.v +++ b/rtl/VX_memory.v @@ -36,11 +36,11 @@ module VX_memory ( output wire[31:0] out_cache_driver_in_data[`NT_M1:0] ); - always @(in_mem_read, in_cache_driver_out_data) begin - if (in_mem_read == `LW_MEM_READ) begin - $display("PC: %h ----> Received: %h for addr: ", in_curr_PC, in_cache_driver_out_data[0], in_alu_result[0]); - end - end + // always @(in_mem_read, in_cache_driver_out_data) begin + // if (in_mem_read == `LW_MEM_READ) begin + // $display("PC: %h ----> Received: %h for addr: ", in_curr_PC, in_cache_driver_out_data[0], in_alu_result[0]); + // end + // end assign out_delay = 1'b0; @@ -59,14 +59,14 @@ module VX_memory ( assign out_PC_next = in_PC_next; assign out_valid = in_valid; - always @(*) begin + // always @(*) begin - if (in_cache_driver_out_data[0] != 32'hbabebabe) - begin - $display("MEM: data read from cache_driver: %h", in_cache_driver_out_data[0]); - end + // if (in_cache_driver_out_data[0] != 32'hbabebabe) + // begin + // $display("MEM: data read from cache_driver: %h", in_cache_driver_out_data[0]); + // end - end + // end assign out_branch_dest = $signed(in_curr_PC) + ($signed(in_branch_offset) << 1); diff --git a/rtl/obj_dir/VVortex b/rtl/obj_dir/VVortex index 2566dea156e366811ab4d8f60858b0d221b43fb6..f8434f5e9e40f85ad4131e26b9ae4a905ce48410 100755 GIT binary patch delta 108659 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 Csu2eO delta 113556 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 diff --git a/rtl/obj_dir/VVortex.cpp b/rtl/obj_dir/VVortex.cpp index c705fccd..6a529e7f 100644 --- a/rtl/obj_dir/VVortex.cpp +++ b/rtl/obj_dir/VVortex.cpp @@ -255,6 +255,30 @@ void VVortex::_settle__TOP__1(VVortex__Syms* __restrict vlSymsp) { vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__vx_register_file_master__out_regs[0U] = vlTOPp->Vortex__DOT__vx_decode__DOT__vx_register_file_master__DOT__registers [0U]; + vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid[7U] + = vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid + [7U]; + vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid[6U] + = vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid + [6U]; + vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid[5U] + = vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid + [5U]; + vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid[4U] + = vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid + [4U]; + vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid[3U] + = vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid + [3U]; + vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid[2U] + = vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid + [2U]; + vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid[1U] + = vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid + [1U]; + vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid[0U] + = vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid + [0U]; vlTOPp->Vortex__DOT__vx_decode__DOT__rd2_register[0U] = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__vx_register_file_master__out_src2_data; vlTOPp->Vortex__DOT__vx_decode__DOT__rd2_register[1U] @@ -371,41 +395,10 @@ void VVortex::_settle__TOP__1(VVortex__Syms* __restrict vlSymsp) { ((0x6bU == (0x7fU & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) & (4U == (7U & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction >> 0xcU)))); - vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid[7U] - = vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid - [7U]; - vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid[6U] - = vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid - [6U]; - vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid[5U] - = vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid - [5U]; - vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid[4U] - = vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid - [4U]; - vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid[3U] - = vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid - [3U]; - vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid[2U] - = vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid - [2U]; - vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid[1U] - = vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid - [1U]; - vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid[0U] - = vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid - [0U]; vlTOPp->Vortex__DOT__vx_decode__DOT__is_jalrs = ((0x6bU == (0x7fU & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) & (6U == (7U & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction >> 0xcU)))); - // ALWAYS at VX_memory.v:62 - if (VL_UNLIKELY((0xbabebabeU != vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_cache_driver_out_data - [0U]))) { - VL_WRITEF("MEM: data read from cache_driver: %x\n", - 32,vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_cache_driver_out_data - [0U]); - } vlTOPp->Vortex__DOT____Vcellout__vx_memory__out_mem_result[7U] = vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_cache_driver_out_data [7U]; @@ -542,6 +535,22 @@ void VVortex::_settle__TOP__1(VVortex__Syms* __restrict vlSymsp) { vlTOPp->Vortex__DOT__vx_decode__DOT__clone_regsiters[0U] = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__vx_register_file_master__out_regs [0U]; + vlTOPp->Vortex__DOT__f_d_valid[7U] = vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid + [7U]; + vlTOPp->Vortex__DOT__f_d_valid[6U] = vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid + [6U]; + vlTOPp->Vortex__DOT__f_d_valid[5U] = vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid + [5U]; + vlTOPp->Vortex__DOT__f_d_valid[4U] = vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid + [4U]; + vlTOPp->Vortex__DOT__f_d_valid[3U] = vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid + [3U]; + vlTOPp->Vortex__DOT__f_d_valid[2U] = vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid + [2U]; + vlTOPp->Vortex__DOT__f_d_valid[1U] = vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid + [1U]; + vlTOPp->Vortex__DOT__f_d_valid[0U] = vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid + [0U]; vlTOPp->Vortex__DOT__m_w_alu_result[7U] = vlTOPp->Vortex__DOT____Vcellout__vx_m_w_reg__out_alu_result [7U]; vlTOPp->Vortex__DOT__m_w_alu_result[6U] = vlTOPp->Vortex__DOT____Vcellout__vx_m_w_reg__out_alu_result @@ -709,22 +718,6 @@ void VVortex::_settle__TOP__1(VVortex__Syms* __restrict vlSymsp) { >> 0x14U))) : 0xdeadbeefU) : 0xdeadbeefU)))))); - vlTOPp->Vortex__DOT__f_d_valid[7U] = vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid - [7U]; - vlTOPp->Vortex__DOT__f_d_valid[6U] = vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid - [6U]; - vlTOPp->Vortex__DOT__f_d_valid[5U] = vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid - [5U]; - vlTOPp->Vortex__DOT__f_d_valid[4U] = vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid - [4U]; - vlTOPp->Vortex__DOT__f_d_valid[3U] = vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid - [3U]; - vlTOPp->Vortex__DOT__f_d_valid[2U] = vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid - [2U]; - vlTOPp->Vortex__DOT__f_d_valid[1U] = vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid - [1U]; - vlTOPp->Vortex__DOT__f_d_valid[0U] = vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid - [0U]; // ALWAYS at VX_decode.v:374 if ((0x40U & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) { if ((0x20U & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) { @@ -1578,6 +1571,22 @@ void VVortex::_settle__TOP__1(VVortex__Syms* __restrict vlSymsp) { vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__gen_code_label__BRA__7__KET____DOT__vx_register_file_slave__in_regs[0U] = vlTOPp->Vortex__DOT__vx_decode__DOT__clone_regsiters [0U]; + vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid[7U] + = vlTOPp->Vortex__DOT__f_d_valid[7U]; + vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid[6U] + = vlTOPp->Vortex__DOT__f_d_valid[6U]; + vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid[5U] + = vlTOPp->Vortex__DOT__f_d_valid[5U]; + vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid[4U] + = vlTOPp->Vortex__DOT__f_d_valid[4U]; + vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid[3U] + = vlTOPp->Vortex__DOT__f_d_valid[3U]; + vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid[2U] + = vlTOPp->Vortex__DOT__f_d_valid[2U]; + vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid[1U] + = vlTOPp->Vortex__DOT__f_d_valid[1U]; + vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid[0U] + = vlTOPp->Vortex__DOT__f_d_valid[0U]; vlTOPp->Vortex__DOT____Vcellinp__vx_writeback__in_alu_result[7U] = vlTOPp->Vortex__DOT__m_w_alu_result[7U]; vlTOPp->Vortex__DOT____Vcellinp__vx_writeback__in_alu_result[6U] @@ -1642,22 +1651,6 @@ void VVortex::_settle__TOP__1(VVortex__Syms* __restrict vlSymsp) { = vlTOPp->Vortex__DOT__m_w_mem_result[1U]; vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_writeback_mem_data[0U] = vlTOPp->Vortex__DOT__m_w_mem_result[0U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid[7U] - = vlTOPp->Vortex__DOT__f_d_valid[7U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid[6U] - = vlTOPp->Vortex__DOT__f_d_valid[6U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid[5U] - = vlTOPp->Vortex__DOT__f_d_valid[5U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid[4U] - = vlTOPp->Vortex__DOT__f_d_valid[4U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid[3U] - = vlTOPp->Vortex__DOT__f_d_valid[3U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid[2U] - = vlTOPp->Vortex__DOT__f_d_valid[2U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid[1U] - = vlTOPp->Vortex__DOT__f_d_valid[1U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid[0U] - = vlTOPp->Vortex__DOT__f_d_valid[0U]; vlTOPp->Vortex__DOT__vx_decode__DOT__temp_final_alu = ((0x63U == (0x7fU & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) ? ((5U > (IData)(vlTOPp->Vortex__DOT__decode_branch_type)) @@ -1771,6 +1764,30 @@ void VVortex::_settle__TOP__1(VVortex__Syms* __restrict vlSymsp) { = vlTOPp->Vortex__DOT__memory_mem_result[1U]; vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_memory_mem_data[0U] = vlTOPp->Vortex__DOT__memory_mem_result[0U]; + vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_valid[7U] + = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid + [7U]; + vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_valid[6U] + = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid + [6U]; + vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_valid[5U] + = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid + [5U]; + vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_valid[4U] + = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid + [4U]; + vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_valid[3U] + = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid + [3U]; + vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_valid[2U] + = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid + [2U]; + vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_valid[1U] + = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid + [1U]; + vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_valid[0U] + = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid + [0U]; // ALWAYS at VX_decode.v:374 if ((0x40U & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) { if ((0x20U & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) { @@ -1836,30 +1853,6 @@ void VVortex::_settle__TOP__1(VVortex__Syms* __restrict vlSymsp) { } else { vlTOPp->Vortex__DOT__decode_jal = 0U; } - vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_valid[7U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid - [7U]; - vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_valid[6U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid - [6U]; - vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_valid[5U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid - [5U]; - vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_valid[4U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid - [4U]; - vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_valid[3U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid - [3U]; - vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_valid[2U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid - [2U]; - vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_valid[1U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid - [1U]; - vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_valid[0U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid - [0U]; // ALWAYS at VX_decode.v:433 if ((0x40U & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) { if ((0x20U & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) { @@ -1945,10 +1938,21 @@ void VVortex::_settle__TOP__1(VVortex__Syms* __restrict vlSymsp) { VL_INLINE_OPT void VVortex::_sequent__TOP__2(VVortex__Syms* __restrict vlSymsp) { VL_DEBUG_IF(VL_DBG_MSGF("+ VVortex::_sequent__TOP__2\n"); ); VVortex* __restrict vlTOPp VL_ATTR_UNUSED = vlSymsp->TOPp; + // Variables + // Begin mtask footprint all: + VL_SIG8(__Vdlyvset__Vortex__DOT__vx_f_d_reg__DOT__valid__v0,0,0); + VL_SIG8(__Vdlyvval__Vortex__DOT__vx_f_d_reg__DOT__valid__v8,0,0); + VL_SIG8(__Vdlyvset__Vortex__DOT__vx_f_d_reg__DOT__valid__v8,0,0); + VL_SIG8(__Vdlyvval__Vortex__DOT__vx_f_d_reg__DOT__valid__v9,0,0); + VL_SIG8(__Vdlyvval__Vortex__DOT__vx_f_d_reg__DOT__valid__v10,0,0); + VL_SIG8(__Vdlyvval__Vortex__DOT__vx_f_d_reg__DOT__valid__v11,0,0); + VL_SIG8(__Vdlyvval__Vortex__DOT__vx_f_d_reg__DOT__valid__v12,0,0); + VL_SIG8(__Vdlyvval__Vortex__DOT__vx_f_d_reg__DOT__valid__v13,0,0); + VL_SIG8(__Vdlyvval__Vortex__DOT__vx_f_d_reg__DOT__valid__v14,0,0); + VL_SIG8(__Vdlyvval__Vortex__DOT__vx_f_d_reg__DOT__valid__v15,0,0); // Body - vlTOPp->__Vdlyvset__Vortex__DOT__vx_f_d_reg__DOT__valid__v0 = 0U; - vlTOPp->__Vdlyvset__Vortex__DOT__vx_f_d_reg__DOT__valid__v8 = 0U; - vlTOPp->__Vdlyvset__Vortex__DOT__vx_f_d_reg__DOT__valid__v9 = 0U; + __Vdlyvset__Vortex__DOT__vx_f_d_reg__DOT__valid__v0 = 0U; + __Vdlyvset__Vortex__DOT__vx_f_d_reg__DOT__valid__v8 = 0U; // ALWAYS at VX_fetch.v:163 vlTOPp->Vortex__DOT__vx_fetch__DOT__old = ((IData)(vlTOPp->reset) ? 0U @@ -1970,6 +1974,39 @@ VL_INLINE_OPT void VVortex::_sequent__TOP__2(VVortex__Syms* __restrict vlSymsp) // ALWAYS at VX_fetch.v:163 vlTOPp->Vortex__DOT__vx_fetch__DOT__stall_reg = ((~ (IData)(vlTOPp->reset)) & (IData)(vlTOPp->Vortex__DOT__vx_fetch__DOT__stall)); + // ALWAYS at VX_f_d_reg.v:33 + if (vlTOPp->reset) { + __Vdlyvset__Vortex__DOT__vx_f_d_reg__DOT__valid__v0 = 1U; + } else { + if ((1U & (~ ((IData)(vlTOPp->Vortex__DOT__forwarding_fwd_stall) + | (IData)(vlTOPp->Vortex__DOT__decode_clone_stall))))) { + __Vdlyvval__Vortex__DOT__vx_f_d_reg__DOT__valid__v8 + = vlTOPp->Vortex__DOT____Vcellinp__vx_f_d_reg__in_valid + [7U]; + __Vdlyvset__Vortex__DOT__vx_f_d_reg__DOT__valid__v8 = 1U; + __Vdlyvval__Vortex__DOT__vx_f_d_reg__DOT__valid__v9 + = vlTOPp->Vortex__DOT____Vcellinp__vx_f_d_reg__in_valid + [6U]; + __Vdlyvval__Vortex__DOT__vx_f_d_reg__DOT__valid__v10 + = vlTOPp->Vortex__DOT____Vcellinp__vx_f_d_reg__in_valid + [5U]; + __Vdlyvval__Vortex__DOT__vx_f_d_reg__DOT__valid__v11 + = vlTOPp->Vortex__DOT____Vcellinp__vx_f_d_reg__in_valid + [4U]; + __Vdlyvval__Vortex__DOT__vx_f_d_reg__DOT__valid__v12 + = vlTOPp->Vortex__DOT____Vcellinp__vx_f_d_reg__in_valid + [3U]; + __Vdlyvval__Vortex__DOT__vx_f_d_reg__DOT__valid__v13 + = vlTOPp->Vortex__DOT____Vcellinp__vx_f_d_reg__in_valid + [2U]; + __Vdlyvval__Vortex__DOT__vx_f_d_reg__DOT__valid__v14 + = vlTOPp->Vortex__DOT____Vcellinp__vx_f_d_reg__in_valid + [1U]; + __Vdlyvval__Vortex__DOT__vx_f_d_reg__DOT__valid__v15 + = vlTOPp->Vortex__DOT____Vcellinp__vx_f_d_reg__in_valid + [0U]; + } + } // ALWAYS at VX_fetch.v:163 vlTOPp->Vortex__DOT__vx_fetch__DOT__state = ((IData)(vlTOPp->reset) ? 0U @@ -1989,6 +2026,59 @@ VL_INLINE_OPT void VVortex::_sequent__TOP__2(VVortex__Syms* __restrict vlSymsp) : ((IData)(4U) + vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__jal_dest)); + // ALWAYSPOST at VX_f_d_reg.v:38 + if (__Vdlyvset__Vortex__DOT__vx_f_d_reg__DOT__valid__v0) { + vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid[0U] = 0U; + vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid[1U] = 0U; + vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid[2U] = 0U; + vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid[3U] = 0U; + vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid[4U] = 0U; + vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid[5U] = 0U; + vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid[6U] = 0U; + vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid[7U] = 0U; + } + if (__Vdlyvset__Vortex__DOT__vx_f_d_reg__DOT__valid__v8) { + vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid[7U] + = __Vdlyvval__Vortex__DOT__vx_f_d_reg__DOT__valid__v8; + vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid[6U] + = __Vdlyvval__Vortex__DOT__vx_f_d_reg__DOT__valid__v9; + vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid[5U] + = __Vdlyvval__Vortex__DOT__vx_f_d_reg__DOT__valid__v10; + vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid[4U] + = __Vdlyvval__Vortex__DOT__vx_f_d_reg__DOT__valid__v11; + vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid[3U] + = __Vdlyvval__Vortex__DOT__vx_f_d_reg__DOT__valid__v12; + vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid[2U] + = __Vdlyvval__Vortex__DOT__vx_f_d_reg__DOT__valid__v13; + vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid[1U] + = __Vdlyvval__Vortex__DOT__vx_f_d_reg__DOT__valid__v14; + vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid[0U] + = __Vdlyvval__Vortex__DOT__vx_f_d_reg__DOT__valid__v15; + } + vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid[7U] + = vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid + [7U]; + vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid[6U] + = vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid + [6U]; + vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid[5U] + = vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid + [5U]; + vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid[4U] + = vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid + [4U]; + vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid[3U] + = vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid + [3U]; + vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid[2U] + = vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid + [2U]; + vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid[1U] + = vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid + [1U]; + vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid[0U] + = vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid + [0U]; // ALWAYS at VX_fetch.v:163 vlTOPp->Vortex__DOT__vx_fetch__DOT__prev_debug = 0U; // ALWAYS at VX_fetch.v:92 @@ -2012,6 +2102,78 @@ VL_INLINE_OPT void VVortex::_sequent__TOP__2(VVortex__Syms* __restrict vlSymsp) : ((1U & (IData)(vlTOPp->Vortex__DOT__vx_fetch__DOT__state)) ? vlTOPp->Vortex__DOT__vx_fetch__DOT__JAL_reg : vlTOPp->Vortex__DOT__vx_fetch__DOT__real_PC))))))); + vlTOPp->Vortex__DOT__f_d_valid[7U] = vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid + [7U]; + vlTOPp->Vortex__DOT__f_d_valid[6U] = vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid + [6U]; + vlTOPp->Vortex__DOT__f_d_valid[5U] = vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid + [5U]; + vlTOPp->Vortex__DOT__f_d_valid[4U] = vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid + [4U]; + vlTOPp->Vortex__DOT__f_d_valid[3U] = vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid + [3U]; + vlTOPp->Vortex__DOT__f_d_valid[2U] = vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid + [2U]; + vlTOPp->Vortex__DOT__f_d_valid[1U] = vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid + [1U]; + vlTOPp->Vortex__DOT__f_d_valid[0U] = vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid + [0U]; + vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid[7U] + = vlTOPp->Vortex__DOT__f_d_valid[7U]; + vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid[6U] + = vlTOPp->Vortex__DOT__f_d_valid[6U]; + vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid[5U] + = vlTOPp->Vortex__DOT__f_d_valid[5U]; + vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid[4U] + = vlTOPp->Vortex__DOT__f_d_valid[4U]; + vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid[3U] + = vlTOPp->Vortex__DOT__f_d_valid[3U]; + vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid[2U] + = vlTOPp->Vortex__DOT__f_d_valid[2U]; + vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid[1U] + = vlTOPp->Vortex__DOT__f_d_valid[1U]; + vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid[0U] + = vlTOPp->Vortex__DOT__f_d_valid[0U]; + vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_valid[7U] + = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid + [7U]; + vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_valid[6U] + = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid + [6U]; + vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_valid[5U] + = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid + [5U]; + vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_valid[4U] + = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid + [4U]; + vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_valid[3U] + = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid + [3U]; + vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_valid[2U] + = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid + [2U]; + vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_valid[1U] + = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid + [1U]; + vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_valid[0U] + = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid + [0U]; + vlTOPp->Vortex__DOT__decode_valid[7U] = vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_valid + [7U]; + vlTOPp->Vortex__DOT__decode_valid[6U] = vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_valid + [6U]; + vlTOPp->Vortex__DOT__decode_valid[5U] = vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_valid + [5U]; + vlTOPp->Vortex__DOT__decode_valid[4U] = vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_valid + [4U]; + vlTOPp->Vortex__DOT__decode_valid[3U] = vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_valid + [3U]; + vlTOPp->Vortex__DOT__decode_valid[2U] = vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_valid + [2U]; + vlTOPp->Vortex__DOT__decode_valid[1U] = vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_valid + [1U]; + vlTOPp->Vortex__DOT__decode_valid[0U] = vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_valid + [0U]; } VL_INLINE_OPT void VVortex::_sequent__TOP__3(VVortex__Syms* __restrict vlSymsp) { @@ -6401,74 +6563,57 @@ VL_INLINE_OPT void VVortex::_sequent__TOP__3(VVortex__Syms* __restrict vlSymsp) vlTOPp->Vortex__DOT____Vcellinp__vx_e_m_reg__in_b_reg_data[0U] = vlTOPp->Vortex__DOT__execute_b_reg_data[0U]; // ALWAYS at VX_alu.v:48 - if ((0x10U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - if ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__0__KET____DOT__vx_alu__out_alu_result = 0U; - } else { - if ((4U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__0__KET____DOT__vx_alu__out_alu_result - = ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__ALU_in2) - ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [0U] : VL_MODDIV_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [0U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__ALU_in2)) - : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__ALU_in2) - ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [0U] : VL_MODDIVS_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [0U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__ALU_in2))) - : ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__ALU_in2) - ? 0xffffffffU : VL_DIV_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [0U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__ALU_in2)) - : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__ALU_in2) - ? 0xffffffffU : VL_DIVS_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [0U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__ALU_in2)))); - } else { - if ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__0__KET____DOT__vx_alu__out_alu_result - = ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? (IData)((((QData)((IData)( - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [0U])) - * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__ALU_in2))) - >> 0x20U)) : (IData)( - (((((QData)((IData)( - VL_NEGATE_I((IData)( + vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__0__KET____DOT__vx_alu__out_alu_result + = ((0x10U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? 0U : ((4U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__ALU_in2) + ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [0U] : VL_MODDIV_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [0U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__ALU_in2)) + : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__ALU_in2) + ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [0U] : VL_MODDIVS_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [0U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__ALU_in2))) + : ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__ALU_in2) + ? 0xffffffffU : + VL_DIV_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [0U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__ALU_in2)) + : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__ALU_in2) + ? 0xffffffffU : + VL_DIVS_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [0U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__ALU_in2)))) + : ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? (IData)((((QData)((IData)( + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [0U])) + * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__ALU_in2))) + >> 0x20U)) + : (IData)((((((QData)((IData)( + VL_NEGATE_I((IData)( (1U & (vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data [0U] >> 0x1fU)))))) - << 0x20U) - | (QData)((IData)( - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [0U]))) - * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__ALU_in2))) - >> 0x20U))); - } else { - if (VL_LIKELY((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__0__KET____DOT__vx_alu__out_alu_result - = (IData)((vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__mult_signed_result - >> 0x20U)); - } else { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__0__KET____DOT__vx_alu__out_alu_result - = (IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__mult_signed_result); - VL_WRITEF("(%x) %x * %x = %x\n", - 32,vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__curr_PC, - 32,vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [0U],32,vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__ALU_in2, - 32,vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__0__KET____DOT__vx_alu__out_alu_result); - } - } - } - } - } else { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__0__KET____DOT__vx_alu__out_alu_result - = ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + << 0x20U) + | (QData)((IData)( + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [0U]))) + * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__ALU_in2))) + >> 0x20U))) + : ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? (IData)((vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__mult_signed_result + >> 0x20U)) + : (IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__mult_signed_result))))) + : ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) ? ((4U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) ? ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) ? vlTOPp->Vortex__DOT__csr_decode_csr_data @@ -6543,77 +6688,59 @@ VL_INLINE_OPT void VVortex::_sequent__TOP__3(VVortex__Syms* __restrict vlSymsp) : (vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data [0U] - + vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__ALU_in2))))); - } + + vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__ALU_in2)))))); // ALWAYS at VX_alu.v:48 - if ((0x10U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - if ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__1__KET____DOT__vx_alu__out_alu_result = 0U; - } else { - if ((4U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__1__KET____DOT__vx_alu__out_alu_result - = ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__ALU_in2) - ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [1U] : VL_MODDIV_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [1U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__ALU_in2)) - : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__ALU_in2) - ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [1U] : VL_MODDIVS_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [1U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__ALU_in2))) - : ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__ALU_in2) - ? 0xffffffffU : VL_DIV_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [1U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__ALU_in2)) - : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__ALU_in2) - ? 0xffffffffU : VL_DIVS_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [1U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__ALU_in2)))); - } else { - if ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__1__KET____DOT__vx_alu__out_alu_result - = ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? (IData)((((QData)((IData)( - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [1U])) - * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__ALU_in2))) - >> 0x20U)) : (IData)( - (((((QData)((IData)( - VL_NEGATE_I((IData)( + vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__1__KET____DOT__vx_alu__out_alu_result + = ((0x10U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? 0U : ((4U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__ALU_in2) + ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [1U] : VL_MODDIV_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [1U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__ALU_in2)) + : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__ALU_in2) + ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [1U] : VL_MODDIVS_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [1U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__ALU_in2))) + : ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__ALU_in2) + ? 0xffffffffU : + VL_DIV_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [1U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__ALU_in2)) + : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__ALU_in2) + ? 0xffffffffU : + VL_DIVS_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [1U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__ALU_in2)))) + : ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? (IData)((((QData)((IData)( + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [1U])) + * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__ALU_in2))) + >> 0x20U)) + : (IData)((((((QData)((IData)( + VL_NEGATE_I((IData)( (1U & (vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data [1U] >> 0x1fU)))))) - << 0x20U) - | (QData)((IData)( - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [1U]))) - * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__ALU_in2))) - >> 0x20U))); - } else { - if (VL_LIKELY((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__1__KET____DOT__vx_alu__out_alu_result - = (IData)((vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__mult_signed_result - >> 0x20U)); - } else { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__1__KET____DOT__vx_alu__out_alu_result - = (IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__mult_signed_result); - VL_WRITEF("(%x) %x * %x = %x\n", - 32,vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__curr_PC, - 32,vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [1U],32,vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__ALU_in2, - 32,vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__1__KET____DOT__vx_alu__out_alu_result); - } - } - } - } - } else { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__1__KET____DOT__vx_alu__out_alu_result - = ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + << 0x20U) + | (QData)((IData)( + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [1U]))) + * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__ALU_in2))) + >> 0x20U))) + : ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? (IData)((vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__mult_signed_result + >> 0x20U)) + : (IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__mult_signed_result))))) + : ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) ? ((4U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) ? ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) ? vlTOPp->Vortex__DOT__csr_decode_csr_data @@ -6688,77 +6815,59 @@ VL_INLINE_OPT void VVortex::_sequent__TOP__3(VVortex__Syms* __restrict vlSymsp) : (vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data [1U] - + vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__ALU_in2))))); - } + + vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__ALU_in2)))))); // ALWAYS at VX_alu.v:48 - if ((0x10U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - if ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__2__KET____DOT__vx_alu__out_alu_result = 0U; - } else { - if ((4U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__2__KET____DOT__vx_alu__out_alu_result - = ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__2__KET____DOT__vx_alu__DOT__ALU_in2) - ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [2U] : VL_MODDIV_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [2U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__2__KET____DOT__vx_alu__DOT__ALU_in2)) - : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__2__KET____DOT__vx_alu__DOT__ALU_in2) - ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [2U] : VL_MODDIVS_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [2U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__2__KET____DOT__vx_alu__DOT__ALU_in2))) - : ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__2__KET____DOT__vx_alu__DOT__ALU_in2) - ? 0xffffffffU : VL_DIV_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [2U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__2__KET____DOT__vx_alu__DOT__ALU_in2)) - : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__2__KET____DOT__vx_alu__DOT__ALU_in2) - ? 0xffffffffU : VL_DIVS_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [2U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__2__KET____DOT__vx_alu__DOT__ALU_in2)))); - } else { - if ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__2__KET____DOT__vx_alu__out_alu_result - = ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? (IData)((((QData)((IData)( - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [2U])) - * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__2__KET____DOT__vx_alu__DOT__ALU_in2))) - >> 0x20U)) : (IData)( - (((((QData)((IData)( - VL_NEGATE_I((IData)( + vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__2__KET____DOT__vx_alu__out_alu_result + = ((0x10U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? 0U : ((4U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__2__KET____DOT__vx_alu__DOT__ALU_in2) + ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [2U] : VL_MODDIV_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [2U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__2__KET____DOT__vx_alu__DOT__ALU_in2)) + : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__2__KET____DOT__vx_alu__DOT__ALU_in2) + ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [2U] : VL_MODDIVS_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [2U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__2__KET____DOT__vx_alu__DOT__ALU_in2))) + : ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__2__KET____DOT__vx_alu__DOT__ALU_in2) + ? 0xffffffffU : + VL_DIV_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [2U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__2__KET____DOT__vx_alu__DOT__ALU_in2)) + : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__2__KET____DOT__vx_alu__DOT__ALU_in2) + ? 0xffffffffU : + VL_DIVS_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [2U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__2__KET____DOT__vx_alu__DOT__ALU_in2)))) + : ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? (IData)((((QData)((IData)( + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [2U])) + * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__2__KET____DOT__vx_alu__DOT__ALU_in2))) + >> 0x20U)) + : (IData)((((((QData)((IData)( + VL_NEGATE_I((IData)( (1U & (vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data [2U] >> 0x1fU)))))) - << 0x20U) - | (QData)((IData)( - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [2U]))) - * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__2__KET____DOT__vx_alu__DOT__ALU_in2))) - >> 0x20U))); - } else { - if (VL_LIKELY((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__2__KET____DOT__vx_alu__out_alu_result - = (IData)((vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__2__KET____DOT__vx_alu__DOT__mult_signed_result - >> 0x20U)); - } else { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__2__KET____DOT__vx_alu__out_alu_result - = (IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__2__KET____DOT__vx_alu__DOT__mult_signed_result); - VL_WRITEF("(%x) %x * %x = %x\n", - 32,vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__curr_PC, - 32,vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [2U],32,vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__2__KET____DOT__vx_alu__DOT__ALU_in2, - 32,vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__2__KET____DOT__vx_alu__out_alu_result); - } - } - } - } - } else { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__2__KET____DOT__vx_alu__out_alu_result - = ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + << 0x20U) + | (QData)((IData)( + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [2U]))) + * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__2__KET____DOT__vx_alu__DOT__ALU_in2))) + >> 0x20U))) + : ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? (IData)((vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__2__KET____DOT__vx_alu__DOT__mult_signed_result + >> 0x20U)) + : (IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__2__KET____DOT__vx_alu__DOT__mult_signed_result))))) + : ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) ? ((4U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) ? ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) ? vlTOPp->Vortex__DOT__csr_decode_csr_data @@ -6833,77 +6942,59 @@ VL_INLINE_OPT void VVortex::_sequent__TOP__3(VVortex__Syms* __restrict vlSymsp) : (vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data [2U] - + vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__2__KET____DOT__vx_alu__DOT__ALU_in2))))); - } + + vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__2__KET____DOT__vx_alu__DOT__ALU_in2)))))); // ALWAYS at VX_alu.v:48 - if ((0x10U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - if ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__3__KET____DOT__vx_alu__out_alu_result = 0U; - } else { - if ((4U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__3__KET____DOT__vx_alu__out_alu_result - = ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__3__KET____DOT__vx_alu__DOT__ALU_in2) - ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [3U] : VL_MODDIV_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [3U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__3__KET____DOT__vx_alu__DOT__ALU_in2)) - : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__3__KET____DOT__vx_alu__DOT__ALU_in2) - ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [3U] : VL_MODDIVS_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [3U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__3__KET____DOT__vx_alu__DOT__ALU_in2))) - : ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__3__KET____DOT__vx_alu__DOT__ALU_in2) - ? 0xffffffffU : VL_DIV_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [3U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__3__KET____DOT__vx_alu__DOT__ALU_in2)) - : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__3__KET____DOT__vx_alu__DOT__ALU_in2) - ? 0xffffffffU : VL_DIVS_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [3U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__3__KET____DOT__vx_alu__DOT__ALU_in2)))); - } else { - if ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__3__KET____DOT__vx_alu__out_alu_result - = ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? (IData)((((QData)((IData)( - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [3U])) - * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__3__KET____DOT__vx_alu__DOT__ALU_in2))) - >> 0x20U)) : (IData)( - (((((QData)((IData)( - VL_NEGATE_I((IData)( + vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__3__KET____DOT__vx_alu__out_alu_result + = ((0x10U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? 0U : ((4U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__3__KET____DOT__vx_alu__DOT__ALU_in2) + ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [3U] : VL_MODDIV_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [3U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__3__KET____DOT__vx_alu__DOT__ALU_in2)) + : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__3__KET____DOT__vx_alu__DOT__ALU_in2) + ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [3U] : VL_MODDIVS_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [3U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__3__KET____DOT__vx_alu__DOT__ALU_in2))) + : ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__3__KET____DOT__vx_alu__DOT__ALU_in2) + ? 0xffffffffU : + VL_DIV_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [3U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__3__KET____DOT__vx_alu__DOT__ALU_in2)) + : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__3__KET____DOT__vx_alu__DOT__ALU_in2) + ? 0xffffffffU : + VL_DIVS_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [3U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__3__KET____DOT__vx_alu__DOT__ALU_in2)))) + : ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? (IData)((((QData)((IData)( + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [3U])) + * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__3__KET____DOT__vx_alu__DOT__ALU_in2))) + >> 0x20U)) + : (IData)((((((QData)((IData)( + VL_NEGATE_I((IData)( (1U & (vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data [3U] >> 0x1fU)))))) - << 0x20U) - | (QData)((IData)( - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [3U]))) - * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__3__KET____DOT__vx_alu__DOT__ALU_in2))) - >> 0x20U))); - } else { - if (VL_LIKELY((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__3__KET____DOT__vx_alu__out_alu_result - = (IData)((vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__3__KET____DOT__vx_alu__DOT__mult_signed_result - >> 0x20U)); - } else { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__3__KET____DOT__vx_alu__out_alu_result - = (IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__3__KET____DOT__vx_alu__DOT__mult_signed_result); - VL_WRITEF("(%x) %x * %x = %x\n", - 32,vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__curr_PC, - 32,vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [3U],32,vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__3__KET____DOT__vx_alu__DOT__ALU_in2, - 32,vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__3__KET____DOT__vx_alu__out_alu_result); - } - } - } - } - } else { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__3__KET____DOT__vx_alu__out_alu_result - = ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + << 0x20U) + | (QData)((IData)( + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [3U]))) + * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__3__KET____DOT__vx_alu__DOT__ALU_in2))) + >> 0x20U))) + : ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? (IData)((vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__3__KET____DOT__vx_alu__DOT__mult_signed_result + >> 0x20U)) + : (IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__3__KET____DOT__vx_alu__DOT__mult_signed_result))))) + : ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) ? ((4U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) ? ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) ? vlTOPp->Vortex__DOT__csr_decode_csr_data @@ -6978,77 +7069,59 @@ VL_INLINE_OPT void VVortex::_sequent__TOP__3(VVortex__Syms* __restrict vlSymsp) : (vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data [3U] - + vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__3__KET____DOT__vx_alu__DOT__ALU_in2))))); - } + + vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__3__KET____DOT__vx_alu__DOT__ALU_in2)))))); // ALWAYS at VX_alu.v:48 - if ((0x10U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - if ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__4__KET____DOT__vx_alu__out_alu_result = 0U; - } else { - if ((4U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__4__KET____DOT__vx_alu__out_alu_result - = ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__4__KET____DOT__vx_alu__DOT__ALU_in2) - ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [4U] : VL_MODDIV_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [4U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__4__KET____DOT__vx_alu__DOT__ALU_in2)) - : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__4__KET____DOT__vx_alu__DOT__ALU_in2) - ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [4U] : VL_MODDIVS_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [4U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__4__KET____DOT__vx_alu__DOT__ALU_in2))) - : ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__4__KET____DOT__vx_alu__DOT__ALU_in2) - ? 0xffffffffU : VL_DIV_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [4U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__4__KET____DOT__vx_alu__DOT__ALU_in2)) - : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__4__KET____DOT__vx_alu__DOT__ALU_in2) - ? 0xffffffffU : VL_DIVS_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [4U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__4__KET____DOT__vx_alu__DOT__ALU_in2)))); - } else { - if ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__4__KET____DOT__vx_alu__out_alu_result - = ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? (IData)((((QData)((IData)( - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [4U])) - * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__4__KET____DOT__vx_alu__DOT__ALU_in2))) - >> 0x20U)) : (IData)( - (((((QData)((IData)( - VL_NEGATE_I((IData)( + vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__4__KET____DOT__vx_alu__out_alu_result + = ((0x10U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? 0U : ((4U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__4__KET____DOT__vx_alu__DOT__ALU_in2) + ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [4U] : VL_MODDIV_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [4U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__4__KET____DOT__vx_alu__DOT__ALU_in2)) + : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__4__KET____DOT__vx_alu__DOT__ALU_in2) + ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [4U] : VL_MODDIVS_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [4U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__4__KET____DOT__vx_alu__DOT__ALU_in2))) + : ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__4__KET____DOT__vx_alu__DOT__ALU_in2) + ? 0xffffffffU : + VL_DIV_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [4U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__4__KET____DOT__vx_alu__DOT__ALU_in2)) + : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__4__KET____DOT__vx_alu__DOT__ALU_in2) + ? 0xffffffffU : + VL_DIVS_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [4U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__4__KET____DOT__vx_alu__DOT__ALU_in2)))) + : ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? (IData)((((QData)((IData)( + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [4U])) + * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__4__KET____DOT__vx_alu__DOT__ALU_in2))) + >> 0x20U)) + : (IData)((((((QData)((IData)( + VL_NEGATE_I((IData)( (1U & (vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data [4U] >> 0x1fU)))))) - << 0x20U) - | (QData)((IData)( - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [4U]))) - * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__4__KET____DOT__vx_alu__DOT__ALU_in2))) - >> 0x20U))); - } else { - if (VL_LIKELY((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__4__KET____DOT__vx_alu__out_alu_result - = (IData)((vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__4__KET____DOT__vx_alu__DOT__mult_signed_result - >> 0x20U)); - } else { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__4__KET____DOT__vx_alu__out_alu_result - = (IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__4__KET____DOT__vx_alu__DOT__mult_signed_result); - VL_WRITEF("(%x) %x * %x = %x\n", - 32,vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__curr_PC, - 32,vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [4U],32,vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__4__KET____DOT__vx_alu__DOT__ALU_in2, - 32,vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__4__KET____DOT__vx_alu__out_alu_result); - } - } - } - } - } else { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__4__KET____DOT__vx_alu__out_alu_result - = ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + << 0x20U) + | (QData)((IData)( + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [4U]))) + * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__4__KET____DOT__vx_alu__DOT__ALU_in2))) + >> 0x20U))) + : ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? (IData)((vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__4__KET____DOT__vx_alu__DOT__mult_signed_result + >> 0x20U)) + : (IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__4__KET____DOT__vx_alu__DOT__mult_signed_result))))) + : ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) ? ((4U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) ? ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) ? vlTOPp->Vortex__DOT__csr_decode_csr_data @@ -7123,77 +7196,59 @@ VL_INLINE_OPT void VVortex::_sequent__TOP__3(VVortex__Syms* __restrict vlSymsp) : (vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data [4U] - + vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__4__KET____DOT__vx_alu__DOT__ALU_in2))))); - } + + vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__4__KET____DOT__vx_alu__DOT__ALU_in2)))))); // ALWAYS at VX_alu.v:48 - if ((0x10U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - if ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__5__KET____DOT__vx_alu__out_alu_result = 0U; - } else { - if ((4U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__5__KET____DOT__vx_alu__out_alu_result - = ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__5__KET____DOT__vx_alu__DOT__ALU_in2) - ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [5U] : VL_MODDIV_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [5U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__5__KET____DOT__vx_alu__DOT__ALU_in2)) - : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__5__KET____DOT__vx_alu__DOT__ALU_in2) - ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [5U] : VL_MODDIVS_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [5U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__5__KET____DOT__vx_alu__DOT__ALU_in2))) - : ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__5__KET____DOT__vx_alu__DOT__ALU_in2) - ? 0xffffffffU : VL_DIV_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [5U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__5__KET____DOT__vx_alu__DOT__ALU_in2)) - : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__5__KET____DOT__vx_alu__DOT__ALU_in2) - ? 0xffffffffU : VL_DIVS_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [5U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__5__KET____DOT__vx_alu__DOT__ALU_in2)))); - } else { - if ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__5__KET____DOT__vx_alu__out_alu_result - = ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? (IData)((((QData)((IData)( - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [5U])) - * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__5__KET____DOT__vx_alu__DOT__ALU_in2))) - >> 0x20U)) : (IData)( - (((((QData)((IData)( - VL_NEGATE_I((IData)( + vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__5__KET____DOT__vx_alu__out_alu_result + = ((0x10U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? 0U : ((4U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__5__KET____DOT__vx_alu__DOT__ALU_in2) + ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [5U] : VL_MODDIV_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [5U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__5__KET____DOT__vx_alu__DOT__ALU_in2)) + : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__5__KET____DOT__vx_alu__DOT__ALU_in2) + ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [5U] : VL_MODDIVS_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [5U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__5__KET____DOT__vx_alu__DOT__ALU_in2))) + : ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__5__KET____DOT__vx_alu__DOT__ALU_in2) + ? 0xffffffffU : + VL_DIV_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [5U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__5__KET____DOT__vx_alu__DOT__ALU_in2)) + : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__5__KET____DOT__vx_alu__DOT__ALU_in2) + ? 0xffffffffU : + VL_DIVS_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [5U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__5__KET____DOT__vx_alu__DOT__ALU_in2)))) + : ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? (IData)((((QData)((IData)( + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [5U])) + * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__5__KET____DOT__vx_alu__DOT__ALU_in2))) + >> 0x20U)) + : (IData)((((((QData)((IData)( + VL_NEGATE_I((IData)( (1U & (vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data [5U] >> 0x1fU)))))) - << 0x20U) - | (QData)((IData)( - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [5U]))) - * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__5__KET____DOT__vx_alu__DOT__ALU_in2))) - >> 0x20U))); - } else { - if (VL_LIKELY((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__5__KET____DOT__vx_alu__out_alu_result - = (IData)((vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__5__KET____DOT__vx_alu__DOT__mult_signed_result - >> 0x20U)); - } else { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__5__KET____DOT__vx_alu__out_alu_result - = (IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__5__KET____DOT__vx_alu__DOT__mult_signed_result); - VL_WRITEF("(%x) %x * %x = %x\n", - 32,vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__curr_PC, - 32,vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [5U],32,vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__5__KET____DOT__vx_alu__DOT__ALU_in2, - 32,vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__5__KET____DOT__vx_alu__out_alu_result); - } - } - } - } - } else { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__5__KET____DOT__vx_alu__out_alu_result - = ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + << 0x20U) + | (QData)((IData)( + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [5U]))) + * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__5__KET____DOT__vx_alu__DOT__ALU_in2))) + >> 0x20U))) + : ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? (IData)((vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__5__KET____DOT__vx_alu__DOT__mult_signed_result + >> 0x20U)) + : (IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__5__KET____DOT__vx_alu__DOT__mult_signed_result))))) + : ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) ? ((4U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) ? ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) ? vlTOPp->Vortex__DOT__csr_decode_csr_data @@ -7268,77 +7323,59 @@ VL_INLINE_OPT void VVortex::_sequent__TOP__3(VVortex__Syms* __restrict vlSymsp) : (vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data [5U] - + vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__5__KET____DOT__vx_alu__DOT__ALU_in2))))); - } + + vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__5__KET____DOT__vx_alu__DOT__ALU_in2)))))); // ALWAYS at VX_alu.v:48 - if ((0x10U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - if ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__6__KET____DOT__vx_alu__out_alu_result = 0U; - } else { - if ((4U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__6__KET____DOT__vx_alu__out_alu_result - = ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__6__KET____DOT__vx_alu__DOT__ALU_in2) - ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [6U] : VL_MODDIV_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [6U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__6__KET____DOT__vx_alu__DOT__ALU_in2)) - : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__6__KET____DOT__vx_alu__DOT__ALU_in2) - ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [6U] : VL_MODDIVS_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [6U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__6__KET____DOT__vx_alu__DOT__ALU_in2))) - : ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__6__KET____DOT__vx_alu__DOT__ALU_in2) - ? 0xffffffffU : VL_DIV_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [6U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__6__KET____DOT__vx_alu__DOT__ALU_in2)) - : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__6__KET____DOT__vx_alu__DOT__ALU_in2) - ? 0xffffffffU : VL_DIVS_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [6U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__6__KET____DOT__vx_alu__DOT__ALU_in2)))); - } else { - if ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__6__KET____DOT__vx_alu__out_alu_result - = ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? (IData)((((QData)((IData)( - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [6U])) - * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__6__KET____DOT__vx_alu__DOT__ALU_in2))) - >> 0x20U)) : (IData)( - (((((QData)((IData)( - VL_NEGATE_I((IData)( + vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__6__KET____DOT__vx_alu__out_alu_result + = ((0x10U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? 0U : ((4U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__6__KET____DOT__vx_alu__DOT__ALU_in2) + ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [6U] : VL_MODDIV_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [6U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__6__KET____DOT__vx_alu__DOT__ALU_in2)) + : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__6__KET____DOT__vx_alu__DOT__ALU_in2) + ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [6U] : VL_MODDIVS_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [6U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__6__KET____DOT__vx_alu__DOT__ALU_in2))) + : ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__6__KET____DOT__vx_alu__DOT__ALU_in2) + ? 0xffffffffU : + VL_DIV_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [6U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__6__KET____DOT__vx_alu__DOT__ALU_in2)) + : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__6__KET____DOT__vx_alu__DOT__ALU_in2) + ? 0xffffffffU : + VL_DIVS_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [6U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__6__KET____DOT__vx_alu__DOT__ALU_in2)))) + : ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? (IData)((((QData)((IData)( + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [6U])) + * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__6__KET____DOT__vx_alu__DOT__ALU_in2))) + >> 0x20U)) + : (IData)((((((QData)((IData)( + VL_NEGATE_I((IData)( (1U & (vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data [6U] >> 0x1fU)))))) - << 0x20U) - | (QData)((IData)( - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [6U]))) - * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__6__KET____DOT__vx_alu__DOT__ALU_in2))) - >> 0x20U))); - } else { - if (VL_LIKELY((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__6__KET____DOT__vx_alu__out_alu_result - = (IData)((vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__6__KET____DOT__vx_alu__DOT__mult_signed_result - >> 0x20U)); - } else { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__6__KET____DOT__vx_alu__out_alu_result - = (IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__6__KET____DOT__vx_alu__DOT__mult_signed_result); - VL_WRITEF("(%x) %x * %x = %x\n", - 32,vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__curr_PC, - 32,vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [6U],32,vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__6__KET____DOT__vx_alu__DOT__ALU_in2, - 32,vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__6__KET____DOT__vx_alu__out_alu_result); - } - } - } - } - } else { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__6__KET____DOT__vx_alu__out_alu_result - = ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + << 0x20U) + | (QData)((IData)( + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [6U]))) + * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__6__KET____DOT__vx_alu__DOT__ALU_in2))) + >> 0x20U))) + : ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? (IData)((vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__6__KET____DOT__vx_alu__DOT__mult_signed_result + >> 0x20U)) + : (IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__6__KET____DOT__vx_alu__DOT__mult_signed_result))))) + : ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) ? ((4U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) ? ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) ? vlTOPp->Vortex__DOT__csr_decode_csr_data @@ -7413,77 +7450,59 @@ VL_INLINE_OPT void VVortex::_sequent__TOP__3(VVortex__Syms* __restrict vlSymsp) : (vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data [6U] - + vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__6__KET____DOT__vx_alu__DOT__ALU_in2))))); - } + + vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__6__KET____DOT__vx_alu__DOT__ALU_in2)))))); // ALWAYS at VX_alu.v:48 - if ((0x10U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - if ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__7__KET____DOT__vx_alu__out_alu_result = 0U; - } else { - if ((4U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__7__KET____DOT__vx_alu__out_alu_result - = ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__7__KET____DOT__vx_alu__DOT__ALU_in2) - ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [7U] : VL_MODDIV_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [7U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__7__KET____DOT__vx_alu__DOT__ALU_in2)) - : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__7__KET____DOT__vx_alu__DOT__ALU_in2) - ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [7U] : VL_MODDIVS_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [7U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__7__KET____DOT__vx_alu__DOT__ALU_in2))) - : ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__7__KET____DOT__vx_alu__DOT__ALU_in2) - ? 0xffffffffU : VL_DIV_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [7U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__7__KET____DOT__vx_alu__DOT__ALU_in2)) - : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__7__KET____DOT__vx_alu__DOT__ALU_in2) - ? 0xffffffffU : VL_DIVS_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [7U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__7__KET____DOT__vx_alu__DOT__ALU_in2)))); - } else { - if ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__7__KET____DOT__vx_alu__out_alu_result - = ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? (IData)((((QData)((IData)( - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [7U])) - * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__7__KET____DOT__vx_alu__DOT__ALU_in2))) - >> 0x20U)) : (IData)( - (((((QData)((IData)( - VL_NEGATE_I((IData)( + vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__7__KET____DOT__vx_alu__out_alu_result + = ((0x10U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? 0U : ((4U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__7__KET____DOT__vx_alu__DOT__ALU_in2) + ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [7U] : VL_MODDIV_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [7U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__7__KET____DOT__vx_alu__DOT__ALU_in2)) + : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__7__KET____DOT__vx_alu__DOT__ALU_in2) + ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [7U] : VL_MODDIVS_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [7U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__7__KET____DOT__vx_alu__DOT__ALU_in2))) + : ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__7__KET____DOT__vx_alu__DOT__ALU_in2) + ? 0xffffffffU : + VL_DIV_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [7U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__7__KET____DOT__vx_alu__DOT__ALU_in2)) + : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__7__KET____DOT__vx_alu__DOT__ALU_in2) + ? 0xffffffffU : + VL_DIVS_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [7U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__7__KET____DOT__vx_alu__DOT__ALU_in2)))) + : ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? (IData)((((QData)((IData)( + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [7U])) + * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__7__KET____DOT__vx_alu__DOT__ALU_in2))) + >> 0x20U)) + : (IData)((((((QData)((IData)( + VL_NEGATE_I((IData)( (1U & (vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data [7U] >> 0x1fU)))))) - << 0x20U) - | (QData)((IData)( - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [7U]))) - * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__7__KET____DOT__vx_alu__DOT__ALU_in2))) - >> 0x20U))); - } else { - if (VL_LIKELY((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__7__KET____DOT__vx_alu__out_alu_result - = (IData)((vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__7__KET____DOT__vx_alu__DOT__mult_signed_result - >> 0x20U)); - } else { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__7__KET____DOT__vx_alu__out_alu_result - = (IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__7__KET____DOT__vx_alu__DOT__mult_signed_result); - VL_WRITEF("(%x) %x * %x = %x\n", - 32,vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__curr_PC, - 32,vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [7U],32,vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__7__KET____DOT__vx_alu__DOT__ALU_in2, - 32,vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__7__KET____DOT__vx_alu__out_alu_result); - } - } - } - } - } else { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__7__KET____DOT__vx_alu__out_alu_result - = ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + << 0x20U) + | (QData)((IData)( + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [7U]))) + * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__7__KET____DOT__vx_alu__DOT__ALU_in2))) + >> 0x20U))) + : ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? (IData)((vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__7__KET____DOT__vx_alu__DOT__mult_signed_result + >> 0x20U)) + : (IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__7__KET____DOT__vx_alu__DOT__mult_signed_result))))) + : ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) ? ((4U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) ? ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) ? vlTOPp->Vortex__DOT__csr_decode_csr_data @@ -7558,8 +7577,7 @@ VL_INLINE_OPT void VVortex::_sequent__TOP__3(VVortex__Syms* __restrict vlSymsp) : (vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data [7U] - + vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__7__KET____DOT__vx_alu__DOT__ALU_in2))))); - } + + vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__7__KET____DOT__vx_alu__DOT__ALU_in2)))))); vlTOPp->Vortex__DOT____Vcellout__vx_execute__out_alu_result[0U] = vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__0__KET____DOT__vx_alu__out_alu_result; vlTOPp->Vortex__DOT____Vcellout__vx_execute__out_alu_result[1U] @@ -7764,13 +7782,6 @@ VL_INLINE_OPT void VVortex::_combo__TOP__5(VVortex__Syms* __restrict vlSymsp) { = vlTOPp->in_cache_driver_out_data[1U]; vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_cache_driver_out_data[0U] = vlTOPp->in_cache_driver_out_data[0U]; - // ALWAYS at VX_memory.v:62 - if (VL_UNLIKELY((0xbabebabeU != vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_cache_driver_out_data - [0U]))) { - VL_WRITEF("MEM: data read from cache_driver: %x\n", - 32,vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_cache_driver_out_data - [0U]); - } vlTOPp->Vortex__DOT____Vcellout__vx_memory__out_mem_result[7U] = vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_cache_driver_out_data [7U]; @@ -7795,14 +7806,6 @@ VL_INLINE_OPT void VVortex::_combo__TOP__5(VVortex__Syms* __restrict vlSymsp) { vlTOPp->Vortex__DOT____Vcellout__vx_memory__out_mem_result[0U] = vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_cache_driver_out_data [0U]; - // ALWAYS at VX_memory.v:39 - if (VL_UNLIKELY((2U == (IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__mem_read)))) { - VL_WRITEF("PC: %x ----> Received: %x for addr: %x\n", - 32,vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__curr_PC, - 32,vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_cache_driver_out_data - [0U],32,vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_alu_result - [0U]); - } vlTOPp->Vortex__DOT__memory_mem_result[7U] = vlTOPp->Vortex__DOT____Vcellout__vx_memory__out_mem_result [7U]; vlTOPp->Vortex__DOT__memory_mem_result[6U] = vlTOPp->Vortex__DOT____Vcellout__vx_memory__out_mem_result @@ -7992,60 +7995,42 @@ void VVortex::_initial__TOP__6(VVortex__Syms* __restrict vlSymsp) { VL_INLINE_OPT void VVortex::_sequent__TOP__7(VVortex__Syms* __restrict vlSymsp) { VL_DEBUG_IF(VL_DBG_MSGF("+ VVortex::_sequent__TOP__7\n"); ); VVortex* __restrict vlTOPp VL_ATTR_UNUSED = vlSymsp->TOPp; - // Variables - // Begin mtask footprint all: - VL_SIG8(__Vdlyvval__Vortex__DOT__vx_f_d_reg__DOT__valid__v8,0,0); - VL_SIG8(__Vdlyvval__Vortex__DOT__vx_f_d_reg__DOT__valid__v9,0,0); - VL_SIG8(__Vdlyvval__Vortex__DOT__vx_f_d_reg__DOT__valid__v10,0,0); - VL_SIG8(__Vdlyvval__Vortex__DOT__vx_f_d_reg__DOT__valid__v11,0,0); - VL_SIG8(__Vdlyvval__Vortex__DOT__vx_f_d_reg__DOT__valid__v12,0,0); - VL_SIG8(__Vdlyvval__Vortex__DOT__vx_f_d_reg__DOT__valid__v13,0,0); - VL_SIG8(__Vdlyvval__Vortex__DOT__vx_f_d_reg__DOT__valid__v14,0,0); - VL_SIG8(__Vdlyvval__Vortex__DOT__vx_f_d_reg__DOT__valid__v15,0,0); // Body + vlTOPp->Vortex__DOT____Vcellinp__vx_d_e_reg__in_valid[7U] + = vlTOPp->Vortex__DOT__decode_valid[7U]; + vlTOPp->Vortex__DOT____Vcellinp__vx_d_e_reg__in_valid[6U] + = vlTOPp->Vortex__DOT__decode_valid[6U]; + vlTOPp->Vortex__DOT____Vcellinp__vx_d_e_reg__in_valid[5U] + = vlTOPp->Vortex__DOT__decode_valid[5U]; + vlTOPp->Vortex__DOT____Vcellinp__vx_d_e_reg__in_valid[4U] + = vlTOPp->Vortex__DOT__decode_valid[4U]; + vlTOPp->Vortex__DOT____Vcellinp__vx_d_e_reg__in_valid[3U] + = vlTOPp->Vortex__DOT__decode_valid[3U]; + vlTOPp->Vortex__DOT____Vcellinp__vx_d_e_reg__in_valid[2U] + = vlTOPp->Vortex__DOT__decode_valid[2U]; + vlTOPp->Vortex__DOT____Vcellinp__vx_d_e_reg__in_valid[1U] + = vlTOPp->Vortex__DOT__decode_valid[1U]; + vlTOPp->Vortex__DOT____Vcellinp__vx_d_e_reg__in_valid[0U] + = vlTOPp->Vortex__DOT__decode_valid[0U]; + // ALWAYS at VX_f_d_reg.v:33 + if (vlTOPp->reset) { + vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__curr_PC = 0U; + } else { + if ((1U & (~ ((IData)(vlTOPp->Vortex__DOT__forwarding_fwd_stall) + | (IData)(vlTOPp->Vortex__DOT__decode_clone_stall))))) { + vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__curr_PC + = vlTOPp->Vortex__DOT__vx_fetch__DOT__temp_PC; + } + } // ALWAYS at VX_f_d_reg.v:33 if (vlTOPp->reset) { vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction = 0U; - vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__curr_PC = 0U; - vlTOPp->__Vdlyvset__Vortex__DOT__vx_f_d_reg__DOT__valid__v0 = 1U; } else { - if (((IData)(vlTOPp->Vortex__DOT__forwarding_fwd_stall) - | (IData)(vlTOPp->Vortex__DOT__decode_clone_stall))) { - if (VL_UNLIKELY(vlTOPp->Vortex__DOT__decode_clone_stall)) { - VL_WRITEF("STALL BECAUSE OF CLONE\n"); - } - } else { + if ((1U & (~ ((IData)(vlTOPp->Vortex__DOT__forwarding_fwd_stall) + | (IData)(vlTOPp->Vortex__DOT__decode_clone_stall))))) { vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction = ((IData)(vlTOPp->Vortex__DOT__vx_fetch__DOT__stall) ? 0U : vlTOPp->fe_instruction); - __Vdlyvval__Vortex__DOT__vx_f_d_reg__DOT__valid__v8 - = vlTOPp->Vortex__DOT____Vcellinp__vx_f_d_reg__in_valid - [7U]; - vlTOPp->__Vdlyvset__Vortex__DOT__vx_f_d_reg__DOT__valid__v8 = 1U; - vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__curr_PC - = vlTOPp->Vortex__DOT__vx_fetch__DOT__temp_PC; - __Vdlyvval__Vortex__DOT__vx_f_d_reg__DOT__valid__v9 - = vlTOPp->Vortex__DOT____Vcellinp__vx_f_d_reg__in_valid - [6U]; - vlTOPp->__Vdlyvset__Vortex__DOT__vx_f_d_reg__DOT__valid__v9 = 1U; - __Vdlyvval__Vortex__DOT__vx_f_d_reg__DOT__valid__v10 - = vlTOPp->Vortex__DOT____Vcellinp__vx_f_d_reg__in_valid - [5U]; - __Vdlyvval__Vortex__DOT__vx_f_d_reg__DOT__valid__v11 - = vlTOPp->Vortex__DOT____Vcellinp__vx_f_d_reg__in_valid - [4U]; - __Vdlyvval__Vortex__DOT__vx_f_d_reg__DOT__valid__v12 - = vlTOPp->Vortex__DOT____Vcellinp__vx_f_d_reg__in_valid - [3U]; - __Vdlyvval__Vortex__DOT__vx_f_d_reg__DOT__valid__v13 - = vlTOPp->Vortex__DOT____Vcellinp__vx_f_d_reg__in_valid - [2U]; - __Vdlyvval__Vortex__DOT__vx_f_d_reg__DOT__valid__v14 - = vlTOPp->Vortex__DOT____Vcellinp__vx_f_d_reg__in_valid - [1U]; - __Vdlyvval__Vortex__DOT__vx_f_d_reg__DOT__valid__v15 - = vlTOPp->Vortex__DOT____Vcellinp__vx_f_d_reg__in_valid - [0U]; } } // ALWAYS at VX_fetch.v:124 @@ -8058,62 +8043,7 @@ VL_INLINE_OPT void VVortex::_sequent__TOP__7(VVortex__Syms* __restrict vlSymsp) & (~ (IData)(vlTOPp->Vortex__DOT__vx_fetch__DOT__delay_reg))) ? vlTOPp->Vortex__DOT__memory_branch_dest : vlTOPp->Vortex__DOT__vx_fetch__DOT__PC_to_use)); - // ALWAYSPOST at VX_f_d_reg.v:38 - if (vlTOPp->__Vdlyvset__Vortex__DOT__vx_f_d_reg__DOT__valid__v0) { - vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid[0U] = 0U; - vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid[1U] = 0U; - vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid[2U] = 0U; - vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid[3U] = 0U; - vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid[4U] = 0U; - vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid[5U] = 0U; - vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid[6U] = 0U; - vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid[7U] = 0U; - } - if (vlTOPp->__Vdlyvset__Vortex__DOT__vx_f_d_reg__DOT__valid__v8) { - vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid[7U] - = __Vdlyvval__Vortex__DOT__vx_f_d_reg__DOT__valid__v8; - } - if (vlTOPp->__Vdlyvset__Vortex__DOT__vx_f_d_reg__DOT__valid__v9) { - vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid[6U] - = __Vdlyvval__Vortex__DOT__vx_f_d_reg__DOT__valid__v9; - vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid[5U] - = __Vdlyvval__Vortex__DOT__vx_f_d_reg__DOT__valid__v10; - vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid[4U] - = __Vdlyvval__Vortex__DOT__vx_f_d_reg__DOT__valid__v11; - vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid[3U] - = __Vdlyvval__Vortex__DOT__vx_f_d_reg__DOT__valid__v12; - vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid[2U] - = __Vdlyvval__Vortex__DOT__vx_f_d_reg__DOT__valid__v13; - vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid[1U] - = __Vdlyvval__Vortex__DOT__vx_f_d_reg__DOT__valid__v14; - vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid[0U] - = __Vdlyvval__Vortex__DOT__vx_f_d_reg__DOT__valid__v15; - } vlTOPp->curr_PC = vlTOPp->Vortex__DOT__vx_fetch__DOT__temp_PC; - vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid[7U] - = vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid - [7U]; - vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid[6U] - = vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid - [6U]; - vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid[5U] - = vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid - [5U]; - vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid[4U] - = vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid - [4U]; - vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid[3U] - = vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid - [3U]; - vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid[2U] - = vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid - [2U]; - vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid[1U] - = vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid - [1U]; - vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid[0U] - = vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid - [0U]; vlTOPp->Vortex__DOT__vx_decode__DOT__is_itype = ((0x13U == (0x7fU & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) | (3U == (0x7fU & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction))); @@ -8180,22 +8110,6 @@ VL_INLINE_OPT void VVortex::_sequent__TOP__7(VVortex__Syms* __restrict vlSymsp) >> 0x14U)) == (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__rd)) & (0U != (0x1fU & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction >> 0x14U)))) & (0U != (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__wb))); - vlTOPp->Vortex__DOT__f_d_valid[7U] = vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid - [7U]; - vlTOPp->Vortex__DOT__f_d_valid[6U] = vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid - [6U]; - vlTOPp->Vortex__DOT__f_d_valid[5U] = vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid - [5U]; - vlTOPp->Vortex__DOT__f_d_valid[4U] = vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid - [4U]; - vlTOPp->Vortex__DOT__f_d_valid[3U] = vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid - [3U]; - vlTOPp->Vortex__DOT__f_d_valid[2U] = vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid - [2U]; - vlTOPp->Vortex__DOT__f_d_valid[1U] = vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid - [1U]; - vlTOPp->Vortex__DOT__f_d_valid[0U] = vlTOPp->Vortex__DOT____Vcellout__vx_f_d_reg__out_valid - [0U]; // ALWAYS at VX_decode.v:422 vlTOPp->Vortex__DOT__decode_itype_immed = ((0x40U & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) @@ -8424,6 +8338,71 @@ VL_INLINE_OPT void VVortex::_sequent__TOP__7(VVortex__Syms* __restrict vlSymsp) } else { vlTOPp->Vortex__DOT__decode_jal_offset = 0xdeadbeefU; } + // ALWAYS at VX_decode.v:374 + if ((0x40U & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) { + if ((0x20U & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) { + if ((0x10U & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) { + vlTOPp->Vortex__DOT__decode_jal = ( + (~ + (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction + >> 3U)) + & ((~ + (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction + >> 2U)) + & ((vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction + >> 1U) + & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction + & (((0U + == + (7U + & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction + >> 0xcU))) + & (2U + > + (0xfffU + & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction + >> 0x14U)))) + & vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid + [0U]))))); + } else { + if ((8U & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) { + if ((4U & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) { + vlTOPp->Vortex__DOT__decode_jal + = ((vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction + >> 1U) & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction + & vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid + [0U])); + } else { + if ((2U & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) { + if ((1U & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) { + if (((IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__is_jalrs) + | (IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__is_jmprt))) { + vlTOPp->Vortex__DOT__decode_jal + = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid + [0U]; + } + } else { + vlTOPp->Vortex__DOT__decode_jal = 0U; + } + } else { + vlTOPp->Vortex__DOT__decode_jal = 0U; + } + } + } else { + vlTOPp->Vortex__DOT__decode_jal + = ((vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction + >> 2U) & ((vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction + >> 1U) & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction + & vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid + [0U]))); + } + } + } else { + vlTOPp->Vortex__DOT__decode_jal = 0U; + } + } else { + vlTOPp->Vortex__DOT__decode_jal = 0U; + } // ALWAYS at VX_decode.v:433 if ((0x40U & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) { if ((0x20U & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) { @@ -8483,6 +8462,54 @@ VL_INLINE_OPT void VVortex::_sequent__TOP__7(VVortex__Syms* __restrict vlSymsp) } else { vlTOPp->Vortex__DOT__decode_branch_type = 0U; } + // ALWAYS at VX_decode.v:433 + if ((0x40U & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) { + if ((0x20U & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) { + if ((0x10U & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) { + vlTOPp->Vortex__DOT__decode_branch_stall = 0U; + } else { + if ((8U & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) { + if ((4U & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) { + vlTOPp->Vortex__DOT__decode_branch_stall + = ((vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction + >> 1U) & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction + & vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid + [0U])); + } else { + if ((2U & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) { + if ((1U & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) { + if (((IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__is_jalrs) + | (IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__is_jmprt))) { + vlTOPp->Vortex__DOT__decode_branch_stall + = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid + [0U]; + } + } else { + vlTOPp->Vortex__DOT__decode_branch_stall = 0U; + } + } else { + vlTOPp->Vortex__DOT__decode_branch_stall = 0U; + } + } + } else { + vlTOPp->Vortex__DOT__decode_branch_stall + = ((4U & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) + ? ((vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction + >> 1U) & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction + & vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid + [0U])) : + ((vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction + >> 1U) & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction + & vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid + [0U]))); + } + } + } else { + vlTOPp->Vortex__DOT__decode_branch_stall = 0U; + } + } else { + vlTOPp->Vortex__DOT__decode_branch_stall = 0U; + } vlTOPp->Vortex__DOT__decode_change_mask = ((IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__is_jalrs) | (IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__is_jmprt)); vlTOPp->Vortex__DOT__vx_forwarding__DOT__src1_mem_fwd @@ -8498,22 +8525,6 @@ VL_INLINE_OPT void VVortex::_sequent__TOP__7(VVortex__Syms* __restrict vlSymsp) >> 0x14U)))) & (0U != (IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__wb))) & (~ (IData)(vlTOPp->Vortex__DOT__vx_forwarding__DOT__src2_exe_fwd))); - vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid[7U] - = vlTOPp->Vortex__DOT__f_d_valid[7U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid[6U] - = vlTOPp->Vortex__DOT__f_d_valid[6U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid[5U] - = vlTOPp->Vortex__DOT__f_d_valid[5U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid[4U] - = vlTOPp->Vortex__DOT__f_d_valid[4U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid[3U] - = vlTOPp->Vortex__DOT__f_d_valid[3U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid[2U] - = vlTOPp->Vortex__DOT__f_d_valid[2U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid[1U] - = vlTOPp->Vortex__DOT__f_d_valid[1U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid[0U] - = vlTOPp->Vortex__DOT__f_d_valid[0U]; vlTOPp->Vortex__DOT__vx_decode__DOT__temp_final_alu = ((0x63U == (0x7fU & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) ? ((5U > (IData)(vlTOPp->Vortex__DOT__decode_branch_type)) @@ -8619,143 +8630,6 @@ VL_INLINE_OPT void VVortex::_sequent__TOP__7(VVortex__Syms* __restrict vlSymsp) != (IData)(vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__wb))) & (~ (IData)(vlTOPp->Vortex__DOT__vx_forwarding__DOT__src2_exe_fwd))) & (~ (IData)(vlTOPp->Vortex__DOT__vx_forwarding__DOT__src2_mem_fwd))); - // ALWAYS at VX_decode.v:374 - if ((0x40U & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) { - if ((0x20U & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) { - if ((0x10U & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) { - vlTOPp->Vortex__DOT__decode_jal = ( - (~ - (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 3U)) - & ((~ - (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 2U)) - & ((vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 1U) - & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - & (((0U - == - (7U - & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0xcU))) - & (2U - > - (0xfffU - & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0x14U)))) - & vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid - [0U]))))); - } else { - if ((8U & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) { - if ((4U & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) { - vlTOPp->Vortex__DOT__decode_jal - = ((vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 1U) & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - & vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid - [0U])); - } else { - if ((2U & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) { - if ((1U & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) { - if (((IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__is_jalrs) - | (IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__is_jmprt))) { - vlTOPp->Vortex__DOT__decode_jal - = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid - [0U]; - } - } else { - vlTOPp->Vortex__DOT__decode_jal = 0U; - } - } else { - vlTOPp->Vortex__DOT__decode_jal = 0U; - } - } - } else { - vlTOPp->Vortex__DOT__decode_jal - = ((vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 2U) & ((vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 1U) & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - & vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid - [0U]))); - } - } - } else { - vlTOPp->Vortex__DOT__decode_jal = 0U; - } - } else { - vlTOPp->Vortex__DOT__decode_jal = 0U; - } - vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_valid[7U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid - [7U]; - vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_valid[6U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid - [6U]; - vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_valid[5U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid - [5U]; - vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_valid[4U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid - [4U]; - vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_valid[3U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid - [3U]; - vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_valid[2U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid - [2U]; - vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_valid[1U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid - [1U]; - vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_valid[0U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid - [0U]; - // ALWAYS at VX_decode.v:433 - if ((0x40U & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) { - if ((0x20U & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) { - if ((0x10U & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) { - vlTOPp->Vortex__DOT__decode_branch_stall = 0U; - } else { - if ((8U & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) { - if ((4U & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) { - vlTOPp->Vortex__DOT__decode_branch_stall - = ((vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 1U) & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - & vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid - [0U])); - } else { - if ((2U & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) { - if ((1U & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) { - if (((IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__is_jalrs) - | (IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__is_jmprt))) { - vlTOPp->Vortex__DOT__decode_branch_stall - = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid - [0U]; - } - } else { - vlTOPp->Vortex__DOT__decode_branch_stall = 0U; - } - } else { - vlTOPp->Vortex__DOT__decode_branch_stall = 0U; - } - } - } else { - vlTOPp->Vortex__DOT__decode_branch_stall - = ((4U & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? ((vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 1U) & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - & vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid - [0U])) : - ((vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 1U) & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - & vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid - [0U]))); - } - } - } else { - vlTOPp->Vortex__DOT__decode_branch_stall = 0U; - } - } else { - vlTOPp->Vortex__DOT__decode_branch_stall = 0U; - } vlTOPp->Vortex__DOT__forwarding_src1_fwd = (((IData)(vlTOPp->Vortex__DOT__vx_forwarding__DOT__src1_exe_fwd) | (IData)(vlTOPp->Vortex__DOT__vx_forwarding__DOT__src1_mem_fwd)) | (IData)(vlTOPp->Vortex__DOT__vx_forwarding__DOT__src1_wb_fwd)); @@ -8763,45 +8637,13 @@ VL_INLINE_OPT void VVortex::_sequent__TOP__7(VVortex__Syms* __restrict vlSymsp) = (((IData)(vlTOPp->Vortex__DOT__forwarding_fwd_stall) | (IData)(vlTOPp->Vortex__DOT__execute_branch_stall)) | (IData)(vlTOPp->Vortex__DOT__decode_clone_stall)); - vlTOPp->Vortex__DOT__forwarding_src2_fwd = (((IData)(vlTOPp->Vortex__DOT__vx_forwarding__DOT__src2_exe_fwd) - | (IData)(vlTOPp->Vortex__DOT__vx_forwarding__DOT__src2_mem_fwd)) - | (IData)(vlTOPp->Vortex__DOT__vx_forwarding__DOT__src2_wb_fwd)); - vlTOPp->Vortex__DOT__decode_valid[7U] = vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_valid - [7U]; - vlTOPp->Vortex__DOT__decode_valid[6U] = vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_valid - [6U]; - vlTOPp->Vortex__DOT__decode_valid[5U] = vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_valid - [5U]; - vlTOPp->Vortex__DOT__decode_valid[4U] = vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_valid - [4U]; - vlTOPp->Vortex__DOT__decode_valid[3U] = vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_valid - [3U]; - vlTOPp->Vortex__DOT__decode_valid[2U] = vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_valid - [2U]; - vlTOPp->Vortex__DOT__decode_valid[1U] = vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_valid - [1U]; - vlTOPp->Vortex__DOT__decode_valid[0U] = vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_valid - [0U]; vlTOPp->Vortex__DOT__vx_fetch__DOT__stall = ((((IData)(vlTOPp->Vortex__DOT__decode_clone_stall) | (IData)(vlTOPp->Vortex__DOT__decode_branch_stall)) | (IData)(vlTOPp->Vortex__DOT__forwarding_fwd_stall)) | (IData)(vlTOPp->Vortex__DOT__execute_branch_stall)); - vlTOPp->Vortex__DOT____Vcellinp__vx_d_e_reg__in_valid[7U] - = vlTOPp->Vortex__DOT__decode_valid[7U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_d_e_reg__in_valid[6U] - = vlTOPp->Vortex__DOT__decode_valid[6U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_d_e_reg__in_valid[5U] - = vlTOPp->Vortex__DOT__decode_valid[5U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_d_e_reg__in_valid[4U] - = vlTOPp->Vortex__DOT__decode_valid[4U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_d_e_reg__in_valid[3U] - = vlTOPp->Vortex__DOT__decode_valid[3U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_d_e_reg__in_valid[2U] - = vlTOPp->Vortex__DOT__decode_valid[2U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_d_e_reg__in_valid[1U] - = vlTOPp->Vortex__DOT__decode_valid[1U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_d_e_reg__in_valid[0U] - = vlTOPp->Vortex__DOT__decode_valid[0U]; + vlTOPp->Vortex__DOT__forwarding_src2_fwd = (((IData)(vlTOPp->Vortex__DOT__vx_forwarding__DOT__src2_exe_fwd) + | (IData)(vlTOPp->Vortex__DOT__vx_forwarding__DOT__src2_mem_fwd)) + | (IData)(vlTOPp->Vortex__DOT__vx_forwarding__DOT__src2_wb_fwd)); } void VVortex::_settle__TOP__8(VVortex__Syms* __restrict vlSymsp) { @@ -8876,8 +8718,8 @@ void VVortex::_settle__TOP__8(VVortex__Syms* __restrict vlSymsp) { : vlTOPp->Vortex__DOT__vx_csr_handler__DOT__csr [vlTOPp->Vortex__DOT__vx_csr_handler__DOT__decode_csr_address])))); - vlTOPp->out_cache_driver_in_mem_write = vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__mem_write; vlTOPp->out_cache_driver_in_mem_read = vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__mem_read; + vlTOPp->out_cache_driver_in_mem_write = vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__mem_write; vlTOPp->Vortex__DOT__memory_branch_dest = (vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__curr_PC + (vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__branch_offset << 1U)); @@ -9475,14 +9317,6 @@ void VVortex::_settle__TOP__8(VVortex__Syms* __restrict vlSymsp) { vlTOPp->Vortex__DOT____Vcellout__vx_memory__out_valid[0U] = vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_valid [0U]; - // ALWAYS at VX_memory.v:39 - if (VL_UNLIKELY((2U == (IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__mem_read)))) { - VL_WRITEF("PC: %x ----> Received: %x for addr: %x\n", - 32,vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__curr_PC, - 32,vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_cache_driver_out_data - [0U],32,vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_alu_result - [0U]); - } // ALWAYS at VX_memory.v:74 vlTOPp->Vortex__DOT__memory_branch_dir = (1U & ((4U @@ -9841,9 +9675,6 @@ void VVortex::_settle__TOP__8(VVortex__Syms* __restrict vlSymsp) { vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data [7U]), VL_EXTENDS_QI(64,32, vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__7__KET____DOT__vx_alu__DOT__ALU_in2)); - // ALWAYS at VX_f_d_reg.v:29 - VL_WRITEF("in_instruction: %x\n",32,((IData)(vlTOPp->Vortex__DOT__vx_fetch__DOT__stall) - ? 0U : vlTOPp->fe_instruction)); vlTOPp->Vortex__DOT____Vcellinp__vx_m_w_reg__in_valid[7U] = vlTOPp->Vortex__DOT__memory_valid[7U]; vlTOPp->Vortex__DOT____Vcellinp__vx_m_w_reg__in_valid[6U] @@ -9926,74 +9757,57 @@ void VVortex::_settle__TOP__8(VVortex__Syms* __restrict vlSymsp) { vlTOPp->Vortex__DOT____Vcellinp__vx_e_m_reg__in_b_reg_data[0U] = vlTOPp->Vortex__DOT__execute_b_reg_data[0U]; // ALWAYS at VX_alu.v:48 - if ((0x10U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - if ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__0__KET____DOT__vx_alu__out_alu_result = 0U; - } else { - if ((4U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__0__KET____DOT__vx_alu__out_alu_result - = ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__ALU_in2) - ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [0U] : VL_MODDIV_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [0U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__ALU_in2)) - : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__ALU_in2) - ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [0U] : VL_MODDIVS_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [0U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__ALU_in2))) - : ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__ALU_in2) - ? 0xffffffffU : VL_DIV_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [0U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__ALU_in2)) - : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__ALU_in2) - ? 0xffffffffU : VL_DIVS_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [0U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__ALU_in2)))); - } else { - if ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__0__KET____DOT__vx_alu__out_alu_result - = ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? (IData)((((QData)((IData)( - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [0U])) - * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__ALU_in2))) - >> 0x20U)) : (IData)( - (((((QData)((IData)( - VL_NEGATE_I((IData)( + vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__0__KET____DOT__vx_alu__out_alu_result + = ((0x10U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? 0U : ((4U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__ALU_in2) + ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [0U] : VL_MODDIV_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [0U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__ALU_in2)) + : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__ALU_in2) + ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [0U] : VL_MODDIVS_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [0U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__ALU_in2))) + : ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__ALU_in2) + ? 0xffffffffU : + VL_DIV_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [0U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__ALU_in2)) + : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__ALU_in2) + ? 0xffffffffU : + VL_DIVS_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [0U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__ALU_in2)))) + : ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? (IData)((((QData)((IData)( + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [0U])) + * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__ALU_in2))) + >> 0x20U)) + : (IData)((((((QData)((IData)( + VL_NEGATE_I((IData)( (1U & (vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data [0U] >> 0x1fU)))))) - << 0x20U) - | (QData)((IData)( - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [0U]))) - * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__ALU_in2))) - >> 0x20U))); - } else { - if (VL_LIKELY((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__0__KET____DOT__vx_alu__out_alu_result - = (IData)((vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__mult_signed_result - >> 0x20U)); - } else { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__0__KET____DOT__vx_alu__out_alu_result - = (IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__mult_signed_result); - VL_WRITEF("(%x) %x * %x = %x\n", - 32,vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__curr_PC, - 32,vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [0U],32,vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__ALU_in2, - 32,vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__0__KET____DOT__vx_alu__out_alu_result); - } - } - } - } - } else { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__0__KET____DOT__vx_alu__out_alu_result - = ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + << 0x20U) + | (QData)((IData)( + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [0U]))) + * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__ALU_in2))) + >> 0x20U))) + : ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? (IData)((vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__mult_signed_result + >> 0x20U)) + : (IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__mult_signed_result))))) + : ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) ? ((4U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) ? ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) ? vlTOPp->Vortex__DOT__csr_decode_csr_data @@ -10068,77 +9882,59 @@ void VVortex::_settle__TOP__8(VVortex__Syms* __restrict vlSymsp) { : (vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data [0U] - + vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__ALU_in2))))); - } + + vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__ALU_in2)))))); // ALWAYS at VX_alu.v:48 - if ((0x10U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - if ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__1__KET____DOT__vx_alu__out_alu_result = 0U; - } else { - if ((4U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__1__KET____DOT__vx_alu__out_alu_result - = ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__ALU_in2) - ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [1U] : VL_MODDIV_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [1U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__ALU_in2)) - : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__ALU_in2) - ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [1U] : VL_MODDIVS_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [1U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__ALU_in2))) - : ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__ALU_in2) - ? 0xffffffffU : VL_DIV_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [1U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__ALU_in2)) - : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__ALU_in2) - ? 0xffffffffU : VL_DIVS_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [1U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__ALU_in2)))); - } else { - if ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__1__KET____DOT__vx_alu__out_alu_result - = ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? (IData)((((QData)((IData)( - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [1U])) - * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__ALU_in2))) - >> 0x20U)) : (IData)( - (((((QData)((IData)( - VL_NEGATE_I((IData)( + vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__1__KET____DOT__vx_alu__out_alu_result + = ((0x10U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? 0U : ((4U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__ALU_in2) + ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [1U] : VL_MODDIV_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [1U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__ALU_in2)) + : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__ALU_in2) + ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [1U] : VL_MODDIVS_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [1U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__ALU_in2))) + : ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__ALU_in2) + ? 0xffffffffU : + VL_DIV_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [1U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__ALU_in2)) + : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__ALU_in2) + ? 0xffffffffU : + VL_DIVS_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [1U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__ALU_in2)))) + : ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? (IData)((((QData)((IData)( + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [1U])) + * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__ALU_in2))) + >> 0x20U)) + : (IData)((((((QData)((IData)( + VL_NEGATE_I((IData)( (1U & (vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data [1U] >> 0x1fU)))))) - << 0x20U) - | (QData)((IData)( - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [1U]))) - * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__ALU_in2))) - >> 0x20U))); - } else { - if (VL_LIKELY((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__1__KET____DOT__vx_alu__out_alu_result - = (IData)((vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__mult_signed_result - >> 0x20U)); - } else { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__1__KET____DOT__vx_alu__out_alu_result - = (IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__mult_signed_result); - VL_WRITEF("(%x) %x * %x = %x\n", - 32,vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__curr_PC, - 32,vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [1U],32,vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__ALU_in2, - 32,vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__1__KET____DOT__vx_alu__out_alu_result); - } - } - } - } - } else { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__1__KET____DOT__vx_alu__out_alu_result - = ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + << 0x20U) + | (QData)((IData)( + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [1U]))) + * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__ALU_in2))) + >> 0x20U))) + : ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? (IData)((vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__mult_signed_result + >> 0x20U)) + : (IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__mult_signed_result))))) + : ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) ? ((4U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) ? ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) ? vlTOPp->Vortex__DOT__csr_decode_csr_data @@ -10213,77 +10009,59 @@ void VVortex::_settle__TOP__8(VVortex__Syms* __restrict vlSymsp) { : (vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data [1U] - + vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__ALU_in2))))); - } + + vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__ALU_in2)))))); // ALWAYS at VX_alu.v:48 - if ((0x10U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - if ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__2__KET____DOT__vx_alu__out_alu_result = 0U; - } else { - if ((4U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__2__KET____DOT__vx_alu__out_alu_result - = ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__2__KET____DOT__vx_alu__DOT__ALU_in2) - ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [2U] : VL_MODDIV_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [2U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__2__KET____DOT__vx_alu__DOT__ALU_in2)) - : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__2__KET____DOT__vx_alu__DOT__ALU_in2) - ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [2U] : VL_MODDIVS_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [2U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__2__KET____DOT__vx_alu__DOT__ALU_in2))) - : ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__2__KET____DOT__vx_alu__DOT__ALU_in2) - ? 0xffffffffU : VL_DIV_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [2U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__2__KET____DOT__vx_alu__DOT__ALU_in2)) - : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__2__KET____DOT__vx_alu__DOT__ALU_in2) - ? 0xffffffffU : VL_DIVS_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [2U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__2__KET____DOT__vx_alu__DOT__ALU_in2)))); - } else { - if ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__2__KET____DOT__vx_alu__out_alu_result - = ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? (IData)((((QData)((IData)( - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [2U])) - * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__2__KET____DOT__vx_alu__DOT__ALU_in2))) - >> 0x20U)) : (IData)( - (((((QData)((IData)( - VL_NEGATE_I((IData)( + vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__2__KET____DOT__vx_alu__out_alu_result + = ((0x10U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? 0U : ((4U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__2__KET____DOT__vx_alu__DOT__ALU_in2) + ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [2U] : VL_MODDIV_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [2U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__2__KET____DOT__vx_alu__DOT__ALU_in2)) + : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__2__KET____DOT__vx_alu__DOT__ALU_in2) + ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [2U] : VL_MODDIVS_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [2U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__2__KET____DOT__vx_alu__DOT__ALU_in2))) + : ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__2__KET____DOT__vx_alu__DOT__ALU_in2) + ? 0xffffffffU : + VL_DIV_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [2U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__2__KET____DOT__vx_alu__DOT__ALU_in2)) + : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__2__KET____DOT__vx_alu__DOT__ALU_in2) + ? 0xffffffffU : + VL_DIVS_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [2U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__2__KET____DOT__vx_alu__DOT__ALU_in2)))) + : ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? (IData)((((QData)((IData)( + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [2U])) + * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__2__KET____DOT__vx_alu__DOT__ALU_in2))) + >> 0x20U)) + : (IData)((((((QData)((IData)( + VL_NEGATE_I((IData)( (1U & (vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data [2U] >> 0x1fU)))))) - << 0x20U) - | (QData)((IData)( - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [2U]))) - * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__2__KET____DOT__vx_alu__DOT__ALU_in2))) - >> 0x20U))); - } else { - if (VL_LIKELY((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__2__KET____DOT__vx_alu__out_alu_result - = (IData)((vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__2__KET____DOT__vx_alu__DOT__mult_signed_result - >> 0x20U)); - } else { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__2__KET____DOT__vx_alu__out_alu_result - = (IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__2__KET____DOT__vx_alu__DOT__mult_signed_result); - VL_WRITEF("(%x) %x * %x = %x\n", - 32,vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__curr_PC, - 32,vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [2U],32,vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__2__KET____DOT__vx_alu__DOT__ALU_in2, - 32,vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__2__KET____DOT__vx_alu__out_alu_result); - } - } - } - } - } else { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__2__KET____DOT__vx_alu__out_alu_result - = ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + << 0x20U) + | (QData)((IData)( + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [2U]))) + * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__2__KET____DOT__vx_alu__DOT__ALU_in2))) + >> 0x20U))) + : ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? (IData)((vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__2__KET____DOT__vx_alu__DOT__mult_signed_result + >> 0x20U)) + : (IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__2__KET____DOT__vx_alu__DOT__mult_signed_result))))) + : ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) ? ((4U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) ? ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) ? vlTOPp->Vortex__DOT__csr_decode_csr_data @@ -10358,77 +10136,59 @@ void VVortex::_settle__TOP__8(VVortex__Syms* __restrict vlSymsp) { : (vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data [2U] - + vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__2__KET____DOT__vx_alu__DOT__ALU_in2))))); - } + + vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__2__KET____DOT__vx_alu__DOT__ALU_in2)))))); // ALWAYS at VX_alu.v:48 - if ((0x10U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - if ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__3__KET____DOT__vx_alu__out_alu_result = 0U; - } else { - if ((4U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__3__KET____DOT__vx_alu__out_alu_result - = ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__3__KET____DOT__vx_alu__DOT__ALU_in2) - ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [3U] : VL_MODDIV_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [3U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__3__KET____DOT__vx_alu__DOT__ALU_in2)) - : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__3__KET____DOT__vx_alu__DOT__ALU_in2) - ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [3U] : VL_MODDIVS_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [3U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__3__KET____DOT__vx_alu__DOT__ALU_in2))) - : ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__3__KET____DOT__vx_alu__DOT__ALU_in2) - ? 0xffffffffU : VL_DIV_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [3U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__3__KET____DOT__vx_alu__DOT__ALU_in2)) - : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__3__KET____DOT__vx_alu__DOT__ALU_in2) - ? 0xffffffffU : VL_DIVS_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [3U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__3__KET____DOT__vx_alu__DOT__ALU_in2)))); - } else { - if ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__3__KET____DOT__vx_alu__out_alu_result - = ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? (IData)((((QData)((IData)( - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [3U])) - * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__3__KET____DOT__vx_alu__DOT__ALU_in2))) - >> 0x20U)) : (IData)( - (((((QData)((IData)( - VL_NEGATE_I((IData)( + vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__3__KET____DOT__vx_alu__out_alu_result + = ((0x10U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? 0U : ((4U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__3__KET____DOT__vx_alu__DOT__ALU_in2) + ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [3U] : VL_MODDIV_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [3U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__3__KET____DOT__vx_alu__DOT__ALU_in2)) + : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__3__KET____DOT__vx_alu__DOT__ALU_in2) + ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [3U] : VL_MODDIVS_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [3U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__3__KET____DOT__vx_alu__DOT__ALU_in2))) + : ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__3__KET____DOT__vx_alu__DOT__ALU_in2) + ? 0xffffffffU : + VL_DIV_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [3U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__3__KET____DOT__vx_alu__DOT__ALU_in2)) + : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__3__KET____DOT__vx_alu__DOT__ALU_in2) + ? 0xffffffffU : + VL_DIVS_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [3U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__3__KET____DOT__vx_alu__DOT__ALU_in2)))) + : ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? (IData)((((QData)((IData)( + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [3U])) + * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__3__KET____DOT__vx_alu__DOT__ALU_in2))) + >> 0x20U)) + : (IData)((((((QData)((IData)( + VL_NEGATE_I((IData)( (1U & (vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data [3U] >> 0x1fU)))))) - << 0x20U) - | (QData)((IData)( - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [3U]))) - * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__3__KET____DOT__vx_alu__DOT__ALU_in2))) - >> 0x20U))); - } else { - if (VL_LIKELY((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__3__KET____DOT__vx_alu__out_alu_result - = (IData)((vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__3__KET____DOT__vx_alu__DOT__mult_signed_result - >> 0x20U)); - } else { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__3__KET____DOT__vx_alu__out_alu_result - = (IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__3__KET____DOT__vx_alu__DOT__mult_signed_result); - VL_WRITEF("(%x) %x * %x = %x\n", - 32,vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__curr_PC, - 32,vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [3U],32,vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__3__KET____DOT__vx_alu__DOT__ALU_in2, - 32,vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__3__KET____DOT__vx_alu__out_alu_result); - } - } - } - } - } else { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__3__KET____DOT__vx_alu__out_alu_result - = ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + << 0x20U) + | (QData)((IData)( + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [3U]))) + * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__3__KET____DOT__vx_alu__DOT__ALU_in2))) + >> 0x20U))) + : ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? (IData)((vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__3__KET____DOT__vx_alu__DOT__mult_signed_result + >> 0x20U)) + : (IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__3__KET____DOT__vx_alu__DOT__mult_signed_result))))) + : ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) ? ((4U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) ? ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) ? vlTOPp->Vortex__DOT__csr_decode_csr_data @@ -10503,77 +10263,59 @@ void VVortex::_settle__TOP__8(VVortex__Syms* __restrict vlSymsp) { : (vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data [3U] - + vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__3__KET____DOT__vx_alu__DOT__ALU_in2))))); - } + + vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__3__KET____DOT__vx_alu__DOT__ALU_in2)))))); // ALWAYS at VX_alu.v:48 - if ((0x10U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - if ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__4__KET____DOT__vx_alu__out_alu_result = 0U; - } else { - if ((4U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__4__KET____DOT__vx_alu__out_alu_result - = ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__4__KET____DOT__vx_alu__DOT__ALU_in2) - ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [4U] : VL_MODDIV_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [4U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__4__KET____DOT__vx_alu__DOT__ALU_in2)) - : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__4__KET____DOT__vx_alu__DOT__ALU_in2) - ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [4U] : VL_MODDIVS_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [4U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__4__KET____DOT__vx_alu__DOT__ALU_in2))) - : ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__4__KET____DOT__vx_alu__DOT__ALU_in2) - ? 0xffffffffU : VL_DIV_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [4U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__4__KET____DOT__vx_alu__DOT__ALU_in2)) - : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__4__KET____DOT__vx_alu__DOT__ALU_in2) - ? 0xffffffffU : VL_DIVS_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [4U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__4__KET____DOT__vx_alu__DOT__ALU_in2)))); - } else { - if ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__4__KET____DOT__vx_alu__out_alu_result - = ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? (IData)((((QData)((IData)( - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [4U])) - * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__4__KET____DOT__vx_alu__DOT__ALU_in2))) - >> 0x20U)) : (IData)( - (((((QData)((IData)( - VL_NEGATE_I((IData)( + vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__4__KET____DOT__vx_alu__out_alu_result + = ((0x10U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? 0U : ((4U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__4__KET____DOT__vx_alu__DOT__ALU_in2) + ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [4U] : VL_MODDIV_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [4U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__4__KET____DOT__vx_alu__DOT__ALU_in2)) + : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__4__KET____DOT__vx_alu__DOT__ALU_in2) + ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [4U] : VL_MODDIVS_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [4U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__4__KET____DOT__vx_alu__DOT__ALU_in2))) + : ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__4__KET____DOT__vx_alu__DOT__ALU_in2) + ? 0xffffffffU : + VL_DIV_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [4U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__4__KET____DOT__vx_alu__DOT__ALU_in2)) + : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__4__KET____DOT__vx_alu__DOT__ALU_in2) + ? 0xffffffffU : + VL_DIVS_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [4U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__4__KET____DOT__vx_alu__DOT__ALU_in2)))) + : ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? (IData)((((QData)((IData)( + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [4U])) + * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__4__KET____DOT__vx_alu__DOT__ALU_in2))) + >> 0x20U)) + : (IData)((((((QData)((IData)( + VL_NEGATE_I((IData)( (1U & (vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data [4U] >> 0x1fU)))))) - << 0x20U) - | (QData)((IData)( - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [4U]))) - * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__4__KET____DOT__vx_alu__DOT__ALU_in2))) - >> 0x20U))); - } else { - if (VL_LIKELY((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__4__KET____DOT__vx_alu__out_alu_result - = (IData)((vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__4__KET____DOT__vx_alu__DOT__mult_signed_result - >> 0x20U)); - } else { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__4__KET____DOT__vx_alu__out_alu_result - = (IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__4__KET____DOT__vx_alu__DOT__mult_signed_result); - VL_WRITEF("(%x) %x * %x = %x\n", - 32,vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__curr_PC, - 32,vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [4U],32,vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__4__KET____DOT__vx_alu__DOT__ALU_in2, - 32,vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__4__KET____DOT__vx_alu__out_alu_result); - } - } - } - } - } else { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__4__KET____DOT__vx_alu__out_alu_result - = ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + << 0x20U) + | (QData)((IData)( + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [4U]))) + * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__4__KET____DOT__vx_alu__DOT__ALU_in2))) + >> 0x20U))) + : ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? (IData)((vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__4__KET____DOT__vx_alu__DOT__mult_signed_result + >> 0x20U)) + : (IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__4__KET____DOT__vx_alu__DOT__mult_signed_result))))) + : ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) ? ((4U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) ? ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) ? vlTOPp->Vortex__DOT__csr_decode_csr_data @@ -10648,77 +10390,59 @@ void VVortex::_settle__TOP__8(VVortex__Syms* __restrict vlSymsp) { : (vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data [4U] - + vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__4__KET____DOT__vx_alu__DOT__ALU_in2))))); - } + + vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__4__KET____DOT__vx_alu__DOT__ALU_in2)))))); // ALWAYS at VX_alu.v:48 - if ((0x10U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - if ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__5__KET____DOT__vx_alu__out_alu_result = 0U; - } else { - if ((4U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__5__KET____DOT__vx_alu__out_alu_result - = ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__5__KET____DOT__vx_alu__DOT__ALU_in2) - ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [5U] : VL_MODDIV_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [5U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__5__KET____DOT__vx_alu__DOT__ALU_in2)) - : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__5__KET____DOT__vx_alu__DOT__ALU_in2) - ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [5U] : VL_MODDIVS_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [5U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__5__KET____DOT__vx_alu__DOT__ALU_in2))) - : ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__5__KET____DOT__vx_alu__DOT__ALU_in2) - ? 0xffffffffU : VL_DIV_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [5U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__5__KET____DOT__vx_alu__DOT__ALU_in2)) - : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__5__KET____DOT__vx_alu__DOT__ALU_in2) - ? 0xffffffffU : VL_DIVS_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [5U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__5__KET____DOT__vx_alu__DOT__ALU_in2)))); - } else { - if ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__5__KET____DOT__vx_alu__out_alu_result - = ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? (IData)((((QData)((IData)( - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [5U])) - * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__5__KET____DOT__vx_alu__DOT__ALU_in2))) - >> 0x20U)) : (IData)( - (((((QData)((IData)( - VL_NEGATE_I((IData)( + vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__5__KET____DOT__vx_alu__out_alu_result + = ((0x10U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? 0U : ((4U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__5__KET____DOT__vx_alu__DOT__ALU_in2) + ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [5U] : VL_MODDIV_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [5U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__5__KET____DOT__vx_alu__DOT__ALU_in2)) + : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__5__KET____DOT__vx_alu__DOT__ALU_in2) + ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [5U] : VL_MODDIVS_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [5U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__5__KET____DOT__vx_alu__DOT__ALU_in2))) + : ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__5__KET____DOT__vx_alu__DOT__ALU_in2) + ? 0xffffffffU : + VL_DIV_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [5U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__5__KET____DOT__vx_alu__DOT__ALU_in2)) + : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__5__KET____DOT__vx_alu__DOT__ALU_in2) + ? 0xffffffffU : + VL_DIVS_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [5U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__5__KET____DOT__vx_alu__DOT__ALU_in2)))) + : ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? (IData)((((QData)((IData)( + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [5U])) + * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__5__KET____DOT__vx_alu__DOT__ALU_in2))) + >> 0x20U)) + : (IData)((((((QData)((IData)( + VL_NEGATE_I((IData)( (1U & (vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data [5U] >> 0x1fU)))))) - << 0x20U) - | (QData)((IData)( - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [5U]))) - * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__5__KET____DOT__vx_alu__DOT__ALU_in2))) - >> 0x20U))); - } else { - if (VL_LIKELY((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__5__KET____DOT__vx_alu__out_alu_result - = (IData)((vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__5__KET____DOT__vx_alu__DOT__mult_signed_result - >> 0x20U)); - } else { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__5__KET____DOT__vx_alu__out_alu_result - = (IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__5__KET____DOT__vx_alu__DOT__mult_signed_result); - VL_WRITEF("(%x) %x * %x = %x\n", - 32,vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__curr_PC, - 32,vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [5U],32,vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__5__KET____DOT__vx_alu__DOT__ALU_in2, - 32,vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__5__KET____DOT__vx_alu__out_alu_result); - } - } - } - } - } else { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__5__KET____DOT__vx_alu__out_alu_result - = ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + << 0x20U) + | (QData)((IData)( + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [5U]))) + * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__5__KET____DOT__vx_alu__DOT__ALU_in2))) + >> 0x20U))) + : ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? (IData)((vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__5__KET____DOT__vx_alu__DOT__mult_signed_result + >> 0x20U)) + : (IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__5__KET____DOT__vx_alu__DOT__mult_signed_result))))) + : ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) ? ((4U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) ? ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) ? vlTOPp->Vortex__DOT__csr_decode_csr_data @@ -10793,77 +10517,59 @@ void VVortex::_settle__TOP__8(VVortex__Syms* __restrict vlSymsp) { : (vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data [5U] - + vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__5__KET____DOT__vx_alu__DOT__ALU_in2))))); - } + + vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__5__KET____DOT__vx_alu__DOT__ALU_in2)))))); // ALWAYS at VX_alu.v:48 - if ((0x10U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - if ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__6__KET____DOT__vx_alu__out_alu_result = 0U; - } else { - if ((4U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__6__KET____DOT__vx_alu__out_alu_result - = ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__6__KET____DOT__vx_alu__DOT__ALU_in2) - ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [6U] : VL_MODDIV_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [6U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__6__KET____DOT__vx_alu__DOT__ALU_in2)) - : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__6__KET____DOT__vx_alu__DOT__ALU_in2) - ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [6U] : VL_MODDIVS_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [6U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__6__KET____DOT__vx_alu__DOT__ALU_in2))) - : ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__6__KET____DOT__vx_alu__DOT__ALU_in2) - ? 0xffffffffU : VL_DIV_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [6U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__6__KET____DOT__vx_alu__DOT__ALU_in2)) - : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__6__KET____DOT__vx_alu__DOT__ALU_in2) - ? 0xffffffffU : VL_DIVS_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [6U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__6__KET____DOT__vx_alu__DOT__ALU_in2)))); - } else { - if ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__6__KET____DOT__vx_alu__out_alu_result - = ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? (IData)((((QData)((IData)( - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [6U])) - * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__6__KET____DOT__vx_alu__DOT__ALU_in2))) - >> 0x20U)) : (IData)( - (((((QData)((IData)( - VL_NEGATE_I((IData)( + vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__6__KET____DOT__vx_alu__out_alu_result + = ((0x10U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? 0U : ((4U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__6__KET____DOT__vx_alu__DOT__ALU_in2) + ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [6U] : VL_MODDIV_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [6U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__6__KET____DOT__vx_alu__DOT__ALU_in2)) + : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__6__KET____DOT__vx_alu__DOT__ALU_in2) + ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [6U] : VL_MODDIVS_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [6U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__6__KET____DOT__vx_alu__DOT__ALU_in2))) + : ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__6__KET____DOT__vx_alu__DOT__ALU_in2) + ? 0xffffffffU : + VL_DIV_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [6U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__6__KET____DOT__vx_alu__DOT__ALU_in2)) + : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__6__KET____DOT__vx_alu__DOT__ALU_in2) + ? 0xffffffffU : + VL_DIVS_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [6U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__6__KET____DOT__vx_alu__DOT__ALU_in2)))) + : ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? (IData)((((QData)((IData)( + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [6U])) + * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__6__KET____DOT__vx_alu__DOT__ALU_in2))) + >> 0x20U)) + : (IData)((((((QData)((IData)( + VL_NEGATE_I((IData)( (1U & (vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data [6U] >> 0x1fU)))))) - << 0x20U) - | (QData)((IData)( - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [6U]))) - * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__6__KET____DOT__vx_alu__DOT__ALU_in2))) - >> 0x20U))); - } else { - if (VL_LIKELY((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__6__KET____DOT__vx_alu__out_alu_result - = (IData)((vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__6__KET____DOT__vx_alu__DOT__mult_signed_result - >> 0x20U)); - } else { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__6__KET____DOT__vx_alu__out_alu_result - = (IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__6__KET____DOT__vx_alu__DOT__mult_signed_result); - VL_WRITEF("(%x) %x * %x = %x\n", - 32,vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__curr_PC, - 32,vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [6U],32,vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__6__KET____DOT__vx_alu__DOT__ALU_in2, - 32,vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__6__KET____DOT__vx_alu__out_alu_result); - } - } - } - } - } else { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__6__KET____DOT__vx_alu__out_alu_result - = ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + << 0x20U) + | (QData)((IData)( + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [6U]))) + * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__6__KET____DOT__vx_alu__DOT__ALU_in2))) + >> 0x20U))) + : ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? (IData)((vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__6__KET____DOT__vx_alu__DOT__mult_signed_result + >> 0x20U)) + : (IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__6__KET____DOT__vx_alu__DOT__mult_signed_result))))) + : ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) ? ((4U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) ? ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) ? vlTOPp->Vortex__DOT__csr_decode_csr_data @@ -10938,77 +10644,59 @@ void VVortex::_settle__TOP__8(VVortex__Syms* __restrict vlSymsp) { : (vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data [6U] - + vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__6__KET____DOT__vx_alu__DOT__ALU_in2))))); - } + + vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__6__KET____DOT__vx_alu__DOT__ALU_in2)))))); // ALWAYS at VX_alu.v:48 - if ((0x10U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - if ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__7__KET____DOT__vx_alu__out_alu_result = 0U; - } else { - if ((4U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__7__KET____DOT__vx_alu__out_alu_result - = ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__7__KET____DOT__vx_alu__DOT__ALU_in2) - ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [7U] : VL_MODDIV_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [7U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__7__KET____DOT__vx_alu__DOT__ALU_in2)) - : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__7__KET____DOT__vx_alu__DOT__ALU_in2) - ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [7U] : VL_MODDIVS_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [7U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__7__KET____DOT__vx_alu__DOT__ALU_in2))) - : ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__7__KET____DOT__vx_alu__DOT__ALU_in2) - ? 0xffffffffU : VL_DIV_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [7U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__7__KET____DOT__vx_alu__DOT__ALU_in2)) - : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__7__KET____DOT__vx_alu__DOT__ALU_in2) - ? 0xffffffffU : VL_DIVS_III(32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [7U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__7__KET____DOT__vx_alu__DOT__ALU_in2)))); - } else { - if ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__7__KET____DOT__vx_alu__out_alu_result - = ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? (IData)((((QData)((IData)( - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [7U])) - * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__7__KET____DOT__vx_alu__DOT__ALU_in2))) - >> 0x20U)) : (IData)( - (((((QData)((IData)( - VL_NEGATE_I((IData)( + vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__7__KET____DOT__vx_alu__out_alu_result + = ((0x10U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? 0U : ((4U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__7__KET____DOT__vx_alu__DOT__ALU_in2) + ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [7U] : VL_MODDIV_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [7U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__7__KET____DOT__vx_alu__DOT__ALU_in2)) + : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__7__KET____DOT__vx_alu__DOT__ALU_in2) + ? vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [7U] : VL_MODDIVS_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [7U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__7__KET____DOT__vx_alu__DOT__ALU_in2))) + : ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__7__KET____DOT__vx_alu__DOT__ALU_in2) + ? 0xffffffffU : + VL_DIV_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [7U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__7__KET____DOT__vx_alu__DOT__ALU_in2)) + : ((0U == vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__7__KET____DOT__vx_alu__DOT__ALU_in2) + ? 0xffffffffU : + VL_DIVS_III(32, + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [7U], vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__7__KET____DOT__vx_alu__DOT__ALU_in2)))) + : ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? (IData)((((QData)((IData)( + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [7U])) + * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__7__KET____DOT__vx_alu__DOT__ALU_in2))) + >> 0x20U)) + : (IData)((((((QData)((IData)( + VL_NEGATE_I((IData)( (1U & (vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data [7U] >> 0x1fU)))))) - << 0x20U) - | (QData)((IData)( - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [7U]))) - * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__7__KET____DOT__vx_alu__DOT__ALU_in2))) - >> 0x20U))); - } else { - if (VL_LIKELY((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)))) { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__7__KET____DOT__vx_alu__out_alu_result - = (IData)((vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__7__KET____DOT__vx_alu__DOT__mult_signed_result - >> 0x20U)); - } else { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__7__KET____DOT__vx_alu__out_alu_result - = (IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__7__KET____DOT__vx_alu__DOT__mult_signed_result); - VL_WRITEF("(%x) %x * %x = %x\n", - 32,vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__curr_PC, - 32,vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [7U],32,vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__7__KET____DOT__vx_alu__DOT__ALU_in2, - 32,vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__7__KET____DOT__vx_alu__out_alu_result); - } - } - } - } - } else { - vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__7__KET____DOT__vx_alu__out_alu_result - = ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + << 0x20U) + | (QData)((IData)( + vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data + [7U]))) + * (QData)((IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__7__KET____DOT__vx_alu__DOT__ALU_in2))) + >> 0x20U))) + : ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) + ? (IData)((vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__7__KET____DOT__vx_alu__DOT__mult_signed_result + >> 0x20U)) + : (IData)(vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__7__KET____DOT__vx_alu__DOT__mult_signed_result))))) + : ((8U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) ? ((4U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) ? ((2U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) ? vlTOPp->Vortex__DOT__csr_decode_csr_data @@ -11083,8 +10771,7 @@ void VVortex::_settle__TOP__8(VVortex__Syms* __restrict vlSymsp) { : (vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data [7U] - + vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__7__KET____DOT__vx_alu__DOT__ALU_in2))))); - } + + vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__7__KET____DOT__vx_alu__DOT__ALU_in2)))))); vlTOPp->Vortex__DOT____Vcellout__vx_execute__out_alu_result[0U] = vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__0__KET____DOT__vx_alu__out_alu_result; vlTOPp->Vortex__DOT____Vcellout__vx_execute__out_alu_result[1U] @@ -12510,9 +12197,6 @@ VL_INLINE_OPT void VVortex::_combo__TOP__9(VVortex__Syms* __restrict vlSymsp) { [0U])) : vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_execute_alu_result [0U]))); - // ALWAYS at VX_f_d_reg.v:29 - VL_WRITEF("in_instruction: %x\n",32,((IData)(vlTOPp->Vortex__DOT__vx_fetch__DOT__stall) - ? 0U : vlTOPp->fe_instruction)); vlTOPp->Vortex__DOT__forwarding_src1_fwd_data[7U] = vlTOPp->Vortex__DOT____Vcellout__vx_forwarding__out_src1_fwd_data [7U]; @@ -13555,7 +13239,4 @@ void VVortex::_ctor_var_reset() { __Vtable1_Vortex__DOT__vx_decode__DOT__mul_alu[5] = 0x15U; __Vtable1_Vortex__DOT__vx_decode__DOT__mul_alu[6] = 0x16U; __Vtable1_Vortex__DOT__vx_decode__DOT__mul_alu[7] = 0x17U; - __Vdlyvset__Vortex__DOT__vx_f_d_reg__DOT__valid__v0 = VL_RAND_RESET_I(1); - __Vdlyvset__Vortex__DOT__vx_f_d_reg__DOT__valid__v8 = VL_RAND_RESET_I(1); - __Vdlyvset__Vortex__DOT__vx_f_d_reg__DOT__valid__v9 = VL_RAND_RESET_I(1); } diff --git a/rtl/obj_dir/VVortex.h b/rtl/obj_dir/VVortex.h index 3d0ba3fa..270bfeaf 100644 --- a/rtl/obj_dir/VVortex.h +++ b/rtl/obj_dir/VVortex.h @@ -8,7 +8,7 @@ #ifndef _VVortex_H_ #define _VVortex_H_ -#include "verilated_heavy.h" +#include "verilated.h" class VVortex__Syms; @@ -200,9 +200,6 @@ VL_MODULE(VVortex) { struct { // Begin mtask footprint all: VL_SIG8(__Vtableidx1,2,0); - VL_SIG8(__Vdlyvset__Vortex__DOT__vx_f_d_reg__DOT__valid__v0,0,0); - VL_SIG8(__Vdlyvset__Vortex__DOT__vx_f_d_reg__DOT__valid__v8,0,0); - VL_SIG8(__Vdlyvset__Vortex__DOT__vx_f_d_reg__DOT__valid__v9,0,0); VL_SIG8(__Vclklast__TOP__clk,0,0); VL_SIG8(__Vclklast__TOP__reset,0,0); VL_SIG(Vortex__DOT__vx_decode__DOT____Vcellout__vx_register_file_master__out_src2_data,31,0); @@ -263,11 +260,11 @@ VL_MODULE(VVortex) { VL_SIG8(Vortex__DOT____Vcellout__vx_memory__out_cache_driver_in_valid[8],0,0); VL_SIG(Vortex__DOT____Vcellout__vx_memory__out_cache_driver_in_data[8],31,0); VL_SIG(Vortex__DOT____Vcellout__vx_memory__out_cache_driver_in_address[8],31,0); - }; - struct { VL_SIG8(Vortex__DOT____Vcellout__vx_memory__out_valid[8],0,0); VL_SIG(Vortex__DOT____Vcellout__vx_memory__out_mem_result[8],31,0); VL_SIG(Vortex__DOT____Vcellout__vx_memory__out_alu_result[8],31,0); + }; + struct { VL_SIG(Vortex__DOT____Vcellinp__vx_memory__in_cache_driver_out_data[8],31,0); VL_SIG8(Vortex__DOT____Vcellinp__vx_memory__in_valid[8],0,0); VL_SIG(Vortex__DOT____Vcellinp__vx_memory__in_rd2[8],31,0); diff --git a/rtl/obj_dir/VVortex__ALL.a b/rtl/obj_dir/VVortex__ALL.a index de1fba7383be905a14db6daafff1ba5c48e5c02b..a25a88770572445b469b0cdd13598c3970990b7f 100644 GIT binary patch literal 161032 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 literal 163824 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ʴjaR4Td`&%|`Ve)$>VwpMs`pdlRcVREsqvb$jI&Tjs_}fC^}kE? zK5D!gE$3_MQ>u4Ux2dibtsV;_=_#dTNV^bSEr+3f>0#7DR3T%V2IWaVSrzBDUPViE z&~L-YdLddXRBdYHiW=EnY@|$$0LoLVYNTRQBdcnpw%ABUjR496 zjcTNPQzI*CWLL3~t9HRrBUlyZ$~HB!q(*iY8(C8$fbw*y8p&*GWKoUO6dSpsMgZk; zRW))|me<}p_?GlkLSuR@4ZfJWZ-bu54<={A63PktH<( zD37PAk=0F&n4fGdHnONj0OfgCHL|j)5%ZI(Vj~M`1W=xWQX@;78ZkeqC^j;$MgR*r zEaTkbrbf(9%8QN6sS!Z=^&d5|u&ELAld@tXm(&PgA%|t0o8Q!k`AMeO$gCOxEab3^ zb91uHX|a{z%KGRPm0XAU6n`vv&}^2`AQezqWgK;{r2 z@M{J61Cu83BL(>b6DI7Jt45_Z=(yv!tSsb4sGC#|Qy*15M14f{IqE~I2dNLL9-!W@ zx}UmHbpC+OIYjw;Rp{hQlz*2BndnCc-l;++`XO3W;Ne&izpX+h`XTwXZ?^k`48ebxp z&+1U)8{~ytA9c6tUg}77H+7flh`L>M7d5`(EXWK3QP-%RrLI;z zL%m(~H1#&sQ`B2kPf%B>9;dEQJw{zFI)6ZBeX%qCPR^D212Xjm@kJFf7Yp&XDH zh|?t66Nks+FPwy-Krz%NOc!=m+E%vcGah-PpNLBZd2V#-KzQ|^-0w& z)Gex;shd?Fr#`N_iMmPkQR<_rk5C^`eTe#y>Vwn=RqvfNeqscTj5qTZ!?C-qL%HPkh#tEsD1Z>Qd_dKUq`k)N`ums4uC$L_Mo|mU>3@4E40?Y3eD} zQ`8fxC#c6&k5iAS9-|&rJxV>IdW3pd^)U62>LKcLs?Sjmsve{sP(476AJ1+-{daVg z!LX;qRTk{5q8YwOR~g{0>{CB1)a|Ofs86YGr*2byin>*G z8}&)mt<){5Pf|ClZlOM|x|zC3^>ON>s+*{fs6I-4Nc9owgQ^cv?^k`0x>5Ch>IT(~ z)OD&GsQ0O^qu!%>AN6k4d#Gzw@21|Rx|VvU>Rr?|s&`UXtFEEmuDY6fo9On_Pt#Ru zbaX_|Dqpg*icE61pT102sSX+BtfHp2Q&*|pMqQzLD|NZ*D(W)T71SBk<AtNPT`Aa$?m0qSnm{nU}_KI$&jz0~chyQxp9j;PyI zcTu;hZl^w}`V@7G>Ne_T)veUWRiC78Qr$v*RCP1;5!J`352#oGZlK<+x{kV5^*-uds`pUuRK1(JMs+Q9wd!5e+g0zR-X^;J zwEV1O2x~E*AL8O=JFCdU1?{Jwp{wA{Tx5{5ikhmSu2OA-?pR-;dOO#btF}RRtS?h- zgYM87)i&r3eN}3fTX>dVQ*DFpSbs%z8P~6>wn2BSUr~LPU0qVWM!l%|3iX2ORqA=w zE7WtUm#8nPUZkE?y+A#qdY*b(^&It->PyrUs%NRkRnJi4<@iEwntD|A6!nPe3F=|h zHY8%GJ`X<#jj17HMwGCrKA5m??*wBYm+b}ltLDk3UllxWM zFgDgVsy@o~4XSMz8|&*-+b}ltKGimi4ZTOT4P!&^R&B%B(6y=?Xn&V#8^*@^ovQb7 zeT`}x#>V<;)i#U`yXl#l68T)}zY!myvCNTSXQ84?xCNTSPQ84?xCa_T%{;=)2OI~3xd-lVk$Y;OT zgnah1qG0xWOu)oW;-`EX!wdWhfr0!dVR88Ji%(5T3DdG7RGx z8zVbJHcEDoY=mq-*)Uln*-&8lGZ@`N9nqQpN`^r`WB-K=V|~W{l&pp992rLbEZ?7y zVF1wBACqAm(AXc5HIoenChw927N6bEZ8}8ONQR+7*o)6LkYRYxSREOL2#xI{!!V(- zJ!E}kyUBXVYRS6ETF4@@W-<&NS{=v9FnnmNi3~%C#*UI<7}3}fvR1M~WGBfEl3_^E z$}V!7Vp!4G0vU!Djm?u`c+uD#*;cYkWL0FdWEEsHWaVVjfhBKgd^1EozjObNZ_1Cz zt3TTNF1X9`_fcLV1Aurv>*_zr?A}X7*z8{8>9_|-##dySytZS6ub&cS3sm#KCoudJjuPvQ_uiA9?;UJ_$*4`3mO zrF!uhd%p#*=-K-%Xei!lnSA=Do7CyzGZWh5;>lj!fcmRbxy9mY#Lt&$xiTOr#|wnWxQwn)}Mwm?=#Hcz&XY>sRX*(I{wWV2+oWHV&D z$fn75l1-7-kWG+PlZ}&YC&PCKY@2Q)8ztLHHbPcKHcVDQHbhoVc8;u!Y>+HNHb7=S zXNY3~^Gw#hwV$z6UH-hignw8*wQwFUkzxIb!eb*zGJfoQNXl8KPm+5lD|7w`$(oS3 zXC4Rj?@MybE=hXL(#-Pm_pMqUPc}`3)Qcl4Hiu&P63>{trY1EP75fQr3I6reRXA&9 z53IiG49f0!GJfb1N>?G5otjjOlyf_hGFdIlf-YtDThmxRnyE;(0^X5Be`PD6@tTaz zpG%VY^M8;eBYl4l844Y^)j%rlmnFpliLpL1+@2WgCBrR>v2HTE zO~JN`0+VfR_bKXe_7f+%2kcHosr|%>QoC1CYCmzJ)b3W49+FT1wTfN4Ur}m5aiY}j zSd`jNoG7(>7NzzRCra(EMJe9ahTTGk-L{|)3QmTfokd*=-BhU|`a3yKm7}Uvz4BE=n&rwR;z(f9BNgUX)Hbwfh&P zpK@w!uOTp|m25cw&!fs>0YRK$1 z2CSOQZezggi>0tK4RD*K^^w_a3|KFj z-Nt}*li6(ySVU&GF<@O}b{hlM9+>!Ja*H8Xl-D~=ZZd?v&S`R+A@mNX$&H54-A#9eVmD_IhE#T_TflDI4GXdz4DuDGL_EQ!11DJZfe?ut8_$db4#?l?-;$o3r} zOX9A$;}BUAcf}nC$&$EBj#IKE?vmq_EQ!11I3-KsE;&xglDJEbQ?i|G-yX6g?vmq_ zEQ!11I3-KsE;&xglDJEbQ?exPlH-&tiM!-DB}?KiIZnyS*}iRLN!%sJDOnPC$#F`S z#9eVm1z8ez#U15=ReqvlRH6(-RogV$;P*e`$+%}$0+!{!5kA(gQHw-KpE#@eC9v9F zoWF5$sTyTwPzGZMV>fRsld1z>A3^?Ud>#1ggT~BCJF2`aI;EX5L|1Yb$$Uw46?a?>ai7F(Au5SG*2t3RD(<*KmPA)^$0}J8U5Wp(jwHGg z|07GHEAcqVx9qaY`9nMd$7J_@UBx|01!mPA*wAIZ+Kjuo;&vZcUe z%Q3i$&OhUn!BuqrD^3|)Md!clbSl|7(fLKE46dT{UvkReDmwqPQwCSj`O8ix-0ni4 z5@&^oLHf^amqb_6f3hUHiaS=wlISY#SRzZJtGHv4EQzk-js>zLx{5pI$&%VeY5YGBcHd=zGn{R?X&NhgL(Vxd*)!?z9Xz7iT>m` zBTJ$`InKzE=ugg5WJ&ZV=P9xz`V;>qOQJvVZ?Yu%6aVJ6N}@mUZ!&LRAIp0Cdda+f z-DKXrh|Js9Mds~mC-e55BJ=jOktNZoocGw~Bs!Jz9$6Bd%6X40iB9FbN0vmVvOma@ z=v4LxSr?Dp3bJ;x^1x&?1HdNT7qRbTIu=9O0e=0tfB(gN>6})DAXA*1-0S zl3CP_d?REQwSx_lS=0_TL}pPt*f}zb+QA0NENTZEAhW0)te>og?dv16s2%xw$t-FI z>n5|P9V{ZVs2!|}%%XO%b~20F!A_A`)DG50=KhD*gW;WN|2s+M{?|h0{)g9ut*ras zaWeNmye@3{-2d>(urc>Pyf$pi{SU7W8*~4|>%+#}|L_X2G50^bMr_ReuYt_{53dtj zKKDPoQf$oq53dy)bN|Du#m3zK@OrT^_dmR1Y|Q-+uNfP2|EnQ$|HJFXme2hUuN)h5 z|HEs?#@zq#>aj8RKfHcy%>56qARBZ4!)wUK-2ckR-2d=8vgLFCyGmbk|63z-|GUDn z?L1~y$=v@|$lU*y$lU)H$=v@I$lU+t$=v_u$lU)fk-7iPlDYrQkh%X&lezy*k-7g( zkh%Yjlezzmk-7hklDYqlkh%X2lezy5k-7h!BXj>7By;~8AanogCv*SnBXj@jC3FAl zCUgIb$lU+B$lU+h$=v@=k-7i1k-7ij(>CV2?tdrA-2d=-8_VbZhfmxXbN|Co8)NQ&_~eZ-_dk60#+dsbK7C`%{STkNG3Ne|=KhCIzpU*Mo{)bQK7<2!_XLO9Y|KU?Q#@zp|(%0Po*2vud zuCT28-zu5=-wK)g-x8Vo-y)g&-vXKY-#nT7-yE6y-z75lzgaT(zZo+3ziBe}zbP{J zzX>w;zi~46zcDiRzfm&xzY#L`zhN@>zacXBzjI{ne}iQ1e*<#YeTXB>^W z|KU@P#@zq#IY(pefB2-MG50@w*3p>zA3p79%>8dCnfo6;@o4$n|L~bdWA1=KeQG=KeQ8=Kj}D=Kj}5=Kj}9=Kj}B z=KdFvx&L*Mx&O73x&NIabN_1#OujNSfH4~WeoMEg^zXOW^F_rE6uw0A;3?K|4EFr6 zj^xNUYCaJSOET^OE$F%vv3?xlM4TVdOvO)zCRWB^1&2E3g%Y;YDmn%Cj-zvW*fznl6wffU&0$?GBWt@Zgf-Z4f#`^pbQc2J8p?Q?ohnV8r z2<-hfv}_?el=UIi$*=yH9@igR5WL}M6vLOZ@&144MXw~~yHl{nE%ZqAA<{w)>#RQc zG=`)fl|k`LB;VG!Z#DV|p1wjV|B(-eRP+&h$O-HrGJC}7zSY9}ZI4y^GW+QU zQ*#CjIjo9vuvXBe9?uv%k2@~;ti{Gw%xWtJZ>$xVx026D7qT6=U}a% z%Tz0-HfzO%wxa#UT7mgT`N&>zD=?{RP+nZrR=}Ek;769JR!nTx3Ot@KU+aV6>u(Fp zc*>_&k=eHerjZTGr;=no=-->emQaX`M|dSk7?9IJf1ySNpYxHc#sWYSi^ zntZHDmKGR{X#+Gc_+vQ{bS{+X&$^w{lY)MOPw{2@6*YP8A-U8m{)SkQ8LwVUP)>gJ z*3NG}yW=VON+BBYmUUS#+Yh28&+^FcV4=*i1T)8xJqaSnJHPR)t&&egNe20;C0WX6 zq%_@xBL8iD4c5lrSdXt+@ljYofMvfa^0Q~qq{@e$Y=2sQ?&L}Nu_mn%%Q$xgdC`6T z{s=YzwxJbEeaTXOZX|vP`Q@WkS{AL94_wJI^%F%MS{(EE$xO36d#C4Zuwl*Vqh#K` z5i)PzFqyY+h|Jq}j?CLP7+5}^%xOpYAJw=9?};Td+EM-$WXXJXlz%x{GMgRcw~{4u z*-`#wWXVi+l>ZU3WF9-p|1eoHiyh^w0xNV_H@sL3ijgOusR zWqJm=rlEtyhR`zkIJ7|daW)z%zX3!0iw&XM@{0j#2uo{G#SIv0EH;E~DxWu1Ls*)j zsv9uWP;3Z0Oumb%hOjh4TW`QnU9ll}L)-%>KUhvf+it+nzG6dgHTgEG8p6_AwEYGQ z?I|_{KbB9psv#`RP<1d=ICDskNV(grZ^Np>nS%ta2JGGeIZhg|8wY?E0}U+FY@m+d zxBUjT5}fZY@T95P^c1Om=h>XTn+o81wBy_C%E2*6%KW_JW&6=Zft0QO=syCVR5 z5t-c)fNdeOI|8uszzSz9K9>!5rj^X1Ww4WE7Q2GAkWK4#0<4+L;ySS7WEN$CHIZ4& z19p@w2}9(I5oC5XlzjCEu|W%G>{1A@-+)~Q0U8b1MG&CDfL#Fr>I~TB4`81GyY>O> zF<=)yfZYb{swd#g;>~u+FPyQf9@qkzUG>1`$?U2JHb-VxJ+Mn;cGUx$C9|s@*bJFn z^}wbB%b&HY9`@}6WOmg9yPwRidSIu??5YQLip;KhV82UdS3R)*NM=_(u=kPKRS&E! zu)>*@5Gctukbu^7 zxV%s=zffB*KT%s>`N%gmtS$ciOZnWV{>beIr1TaQg^$7#-YI`7Wk()QKfP+JCcj$I z`Sc6-&ZgE*?wH(SKiG%cmN7Z*-)}Cr0Oz-|)nD zJ|BO*ES|Vs7W?JKAS<8nE+pxKj%?P8p@zMGDb4s)efyWt+5cO=mEGJ8XH3`efl3*?FI6~Hr%kh(V)-dDUK{c!cuC&>TA|? zgf;bEvnIraR@1_Un&!18ETtx_zGh8Ltf}vsH6d`cnr1iDG@~_PDK%mBHEU{SP5sxb z36Z7MG_j$kajgkUsR^sES<^|@G;qzD5PDioBO7WO)|#-Cny@;l38ysq-Qu=jzaigi z(OGu2A?n4?lVe0fsKsYW@jK;#T7;$)KUf~9#b`=fom!Np6hC1e@>-mx6u)I2s6}c@ z@uTK}TCAq@WT1s!3)Zr$ac`@PM<8dR*Mc>$lVldGfwhoXum;vlX2BZRaWV_mz?#S` zSOYssX2BZR5i$#sz((0-3zEP_$Sg<#8z!?L32cbWf+VnWWELcW4U$=q1U5isK@wO$ znYZtf3?JI|^Y+b>dHZI_ynWMT-o7a^Z{Gx&w{M)x+cy@Nc%DUZy4UgB?ZFo;j#G*s zaSzlYIi>hD_dqR{Q@Y~RqB*7befN;p;yI=Gq4z*7qEm`rd=J!OI;Bg2ia+WV3EQ|r z@72^F$;!#>>WF-0WOj7~%aGaC5$r1Ku&X238kt=k!LE?m)e&qpFbNAVtJwK;mHvRt zH}vj8$2ApSF4tMsmq`}%@nUGxb?wxF)!Y8}w?BrQ@k7WU zlQ6QBNf=FI8RrINx%{iwt$hI5Y9!ke)v`bn3L{nt_9Cj#t6!W$Mww=z?Sj@2=lWsb zYoYAA&c9D^apyI9#OE>MTptR)F%;a;?_R9kq~AGYkm(Isnkkul(R4Qo{>o+*N62v_ zT}DQkyP#Q_S`0wpTHiIv>mL0~ zW99#PGI=YuODb7@b5Uj)G4H&5Q~WvGFB1~uO+H#3pw|vv2n!6z8zR)=N z)#`XQ&cU3_%oMkLwqz4!5d53Z%KyLhzrXD0wg(VW zxotQ4xagEvmx&>%Q;)8qU2cc``n;{ko4j=_KVKvU^f>FiBB{xzD{hhr6XcO;BJ?B& z+cHh0>65Zt{&Fb6qs!WKVm)3z&7t-$SIG1atnkY;_RezQylr>6sd)^JviCccKQDJo z$SN~MT6r^y9W7mp_Xma1pC30@?m3Q9|00wsD8%X)N9vBcS|)T@flTOV8aGS+%{PjMGG4$-ijPI(q&|nU-F_^`Drjsqs#KEXRA zyh*fxe0s`0Yu8MT7R=pbGC(~Vt0h`M&iLU9X=#WS$|b4Mg0gh9fHgnpXrWB%ywPYO zgS>uyu%6@SN<|CEBfo8ip5$O#en~>pSJ$NM^NtqQU}ZzJVA~zh0vsho3&<+pA(dsE zyMkgz<*+O|joS6a`-8&B@Z*uXU(YH^`KjD$L9~F3v96X6in0Rv0IH_ZQ~7GFrdMS7 z{fic?MTi#AB8?W7P_0D^NQP71BAVeB!lWm5TI@u$uz+%MA;e!q3n(EUAO+3M%kuis zLSppxuzBWCYD2VOxl+3d(E_r{X9ZbVL92{&mtf-gM+-@vGW4u_?i$g;ENa_yBh8?N zvXSr?(E>`yw{}2t)3Ut2izOTBRbeAdq0~kfyCt<+KKR25*)0i)>h`2lHn>Z*xMsjKEV*7{WwMbJG&3&4UlNwvlEfAuG zFaBI{w1B)xw19lrW`%ULVD5%!0S(4#i58GEez;#+8lr_hNous9EFCRi%?~H3Bq;{(E_r{=#y67j$+r1 z7Hp>>T2S}vIfYVwDz{n?EvP%{Y8ek=1u|HqY4lVE@-*Eh%kN*bU@bzlfEH=A(28m; zT0k=o!^n7orr}~TfG0~ohd-BSq5Jz5Ent2-9W7uc zT%Mwo7N@S7$dtNjHe#(`HBkiJL$rXL@k7WU!z;3su_;Ys8Rr^gSrjdluDuS~)?GTS z5=09q6Am3@lqVu-TgH+!y$=R%AX>2MQ_;d66!d5T>r?&SjkTNfJBJMNQ}42jb1)@C zPnxckWl^-Sq2gW0aU)$uMj1k(SsB97G`cLKTe37ygU3AQXhEGIL^UFy8iXki=jUME^W9vQkqPjav=qh^}k zD$C~|EmXnEhG@aIJ1#-k?jc%0RvCTL$}3Rpy3vB|G(-#Pem&(V<)?D11<``Kqpp_U zs%HiA%XykcPh}ua(`B;!{zVJcB18*lkwyy{RBO=!lHrth_1n@6zYr!pvD2bP3u}@C z7ef3+w15&aKmwY(BFpPX3yIO&!{%8?$T+MAX-3~aOfbTe7BjlWh_b4(=c!Y z(SlWAiWbb>5G|m=SS`^4a>fsjNJ~SsFf2)p7L=u< z1+4i&M+-wz=Z!`S=aBb0(E{?w&=q=;gKZf#)AXP$pMSJ404p1!1>5ep1Yx^}XaQMe z^hqo4N3rWh3%1h`EvWnT^r4iW%B>be3+j%#TAndt1@ZuprqNRw$kTMMEWdxzg0%?I z0$QZeLN}_lXaUJ^%8SqpzYr!pvD2bP3tcED7ef3+w15&aKmwX;m*w@Ng~aIXVe_0q zsSVMBLw~*8+(Sq)|YeWmJsBP1YbP}zS zjfB657EnT-(E-i1$nyFwmTaU~g^kpVQX5_Dmegt)Xki8N9FC^3VPrf(({M2vz>}q) z!=FpE(D!|d7Vw;TI$FRJ>GB@8v^aIuM5feLvk7bcs)-`#9-;;0j2}V<8D5d4j7@18 zOL;+CmPOG*>DrGV+qz4qRf1>%Wx}C@jPd{vZOd4arVqiu4MYo8eJWZwh=Lw1V126J z`>}SDe&>)up7D{TJmaHjEaP0GEQ_Lr4HY*a$BlFu8D$8CW@QLR)9A8{ZpqR-4IcBH zqXl(>5G|mo#nD2YRFaAoka?46L2Y@opyrCA1(=foqT-f6hiIW$8k&A?LAOAN77o3# zI9fp7Bw9c|Y_pW;d)kVB?8hYI8YAWfsEGLWa~?Xvv-MGMv`? zS!I-lmB}cLrpsXB`9}*$of0kRp1Vf0kU?#mZltT00TD=Em-xbXki`&ui5W8tlgyFIb@J$d}JvP6loeudB#VU zMbW~Bif57IM!JlQGK502@`Q}0(PbIklBIbXJmxt^3+een-xV1=5B}<&|s{V zXaPCnho_~bAzGM{q(%$M($NCe{Gg+S390i&qlIzg{r}s0|M;qoGJpKiVhb%csHmvy zHYh4usL;|1+PX=btEo#WTCl9r4Yg3|N-5UhCn~fFaFa9la$9PtMT@&pQBiR>DlKWn z7+MTiv8F4lS(kOwiZ$tGYue?jsBHUvzn^D*oOAEZO-Q%?wfB|GGv__eJoC(tGxN-x znR7<47RZC8E9N9a*;q9be+S&>Z!PShlp*rR_Mw#6cgjC=yv03?3q6bpIc-v#%Dvldh%S_{-jtc9ISR;>kkZI{rzS#cfpP4uLq=@i@v^a& zB>vSDFbZoylaE;os~9m@3k;9tdj&(w`zKvk30!crs>vlhr)###_r!CDY;32TAkut1d5 zd<@n?BNUBW3sM5sS~!7@Dt>~Jyv|x6AImIZEogJ2wLpa#3~Pa$=HA87)LILR;1z2@ zu(-9rkUzJzun=jE)>^0~?+Dfcd9ZZFoMb2)t7hV_f&2Weg(^xZvKF-5IRvrXt+hZ_ ztUgKNmoVCh)`C_Vtp#a*`T2|$x^hj0)`B!g3C12Hp8z%hiJv*eLZ0~N!F}PZ1=Wbw z0yPqAVGfg3Yk^+d<;|iRVIXul(QZ+!g_(?pfsmBe0%Kr-glJ|4+>xyXC-g#FJe7=9 zWGyIHtg2`&kQJ*mJ~6D)h<_SIJb!D!r3q_6YHk>7VJcHATS!x=6$*)z)&gT-j}Fny zWVjDYvE@GE>Om}P(tMZuc%OY0eF@5?~&bza+NUW6lT6o-xk( z7>MgJCmCsY%xM5!Jmxfo&K`3)Lf$;)a*i_am@6TamB*Y`CYpt2p=Ii{GSN(rIju}I z!(&b>6IFW5X=S2m9&=imXsXAYRwkO_F{hP@CVMRCcl<5I`VDz3=r`!GpkKeof_}$5 z7WC`$SkUjN$AW&n#F`KA%bnLebp81i=Wd2Mlu9kBHNURiG&rZD3KwR>Nwe;RS#rGA z)b%ek>Au{$6F6brZw^X_C2!HHHR)c3`vk;w59**72QA^*bYKpoUtc7DvWl)X=wdcN z=DHz`d^SFezUjc^YaS}lr_yXVVb&c7`=$*;sfuk~^PZdc+%EU3g-Ou$VEQE7)W94# z@^TI+m0NOL6|Dql(t`qNN+#W(OAmhb_Z#}nl9RdgNu*i{O}EtWso1PqJ>iW==E$RE|lW*z~l~3SBdh+U7z8AU!!$~SvcLJZd_-Ws!{&6OK zbl}Cr<&`10fIpQ>AI;Sb{~VO7TFk9GmfLU=!_lVaP&mD2$q}=zr($zV z@W~+fa9r?VEBJ7(u4nrGT>8lLL%F)%iTlkVsq7N@*&&9(9?TO6{N}7jV zgX%?t>Z^Twy0^MwhkNDUer;P)UuYb7aUcF~om^`+;4K>bXE)l1{O{LKfc(%L%57<# zIzjJ16Ro$suDtQ@_5|Zka$7pKpXnGI$}>*&jH}BtZa>3GTv48Js%KnQo^d-~(!hM8 zV=m7))iW+E&$xZOlUP%NaSED)`JrL)gmP>w<*aZF$B}j;qQuhH_k9o-vf;((;U< z92b>m4CPo`o-veTm1WHN24|vUr)w$aBG9&^=WqLV(Zs|gdG@R%!f6CL-MD_;{0 zdCV21i3UC9O3g(5z)Flyl^vZAbUuKaz39fzy=M+@X>Y!}4XC(~rC;Hb2kZG0V@no1I9!oZx&6(CY>{ z_2!&AJ&0Ep+2YWiT=UPqZoF?Lntx&`k7@pio%9Bx=AYOJk7@pi9ru{#pV*McH2=f~ zJ*N35*6%T=m5H_?E2^{8%0yc|=Cm@=7LPftOcZ&{X@%E6c+6>Kq9%_ytuUZ@%xPt! zMvn#k_IP73=-2MCpxV?n<*j|Kg9cr56*otRi&345=^ZQb2!KLWC0 zsJrz6R5!|)-tPwQzTo{{@OB38_k))&?;WQSS|G~`Yjxg(t%vBvPkAEeJ=l6!U=29f z%B3v+$ab*xh+f!8#sze@-VwYzgZInMd$4srEjj!sr}kiLQ}Qy3U0#2%b&qH5ZvDKA z)!oXEd|5?i#3FRJ@+Lh~Gt%a~5c6&LH9~jm7o7KC>&#f(gRQ(%15bq)n9QR(v(;LDl2idGQ>Td1jl{TzY z5WFMCbFg(^;_6uJs=M`HL;P_eep`&^U~5<6sy}ws-TI3V|FjT)XN>1y>w(18VC<^9 z_1{AL(?k4SF&=aTiL0U5Rd?&r5Py7#zdOc*{vvU8Ja*OH`tKqBi$eVN7!P`w#MOz| zRd?$zL;N#B{5>%q^ht@Uld-Gr*8d3c&vfy-TerE&?{4KjVta=U(uDGz(k|Wl(AS~T~u&Iy2@YAb)y^yQ!rUkIw#|_wr)BV_Dy~#3G z+_&h~iTb%oe4tghn;LJ0vA4hJ>F4nGyZz1tI)}meOSd8i?tO~~y^tsiue>+yEO@XA zfEhb|)FoFt$3l=tn9H+#qT1pl=%?URdRdhuPk_?2EfAQzA8#r<;em|k?qMc)8Y5^Yg7908~} z-XF_hRK9E_d3&i1$VD6(OkJ;hAxv4LjU&hE0*k3TGVo$Ar&kfIJ8`zT;5`t$KM3CL;63QPO&u(LBt*@!X{nN^nZe9l zQwIwiq5Qm7HZ7G9HB(MDEhQf{Q+_rrB_B02-E3M)K5C{u*|d~=)J#3IX({=rnfhn3 z7=kQE&CHj~7VwfmcvGGFTHX!)_)vlt2fXH8liBcVvbU>h@J6@qg>Dw5O5%-fzb~NF z&7$`PluBB3Pe7@yMZXhJeIKx-_U(XDf6M!=fHET%ZFgv{wGUY;{jCRPFoYI->!CX0 z=OCEN90bst_@V>8_i&e6MB?`zeCU+s$DganZbka}eKL=)b<&bnFI3e|1j!p8frkHuarZ z9qlKUj-vU3U~&(ivDGMTTzMipcclTKeGAxC`Rh-!Gw`kx>1BMdI@o z6A$^dL+NB9VH}W!ow~#B%T@7Q9?qo?qjh0PD%JTBIN!%QK&rZfxvZ8ibZGvn&4UYb z*YsbXHh2Cbg6OZ#ZR&$}Q{S!C_@3srhw$-=iu)d7NII8eNcH}KN!6PkJF{lN4=e6s za81R1KdPC2C=#aX=$hikp+pa)hJOkIB0axrSqrh zC%l;3M-o$=`%WKt_CGag(-UVdc*e>2>GU2iL`niCzZ?WiS1IoU|qT3znT4|Ns z8O?yhow4b$O1b;5DnRx1W$gAle%txYUz+rx0i170MAWw?$5;*wzy?UL=nHydEM4*) znRxPgn(ONY5%nd3>l0{Vlg9qONv}^0@k!&7{#>>XjQaNDTMH1l$u9H50oh{(j;gCLS{BecJPB*7w<-Z=Xqb#PJS` zcbIfnE)Cn}KrVd%C6!AjQrBz&+;2li`^kFE7Rlsl0#KRXY(zbYkwAlh_GwB_1 ze22w%nDowEdZ$V6%B6Ri^zK}Gw@Ggwc&?xcY9ak9q2(s~{{C32+ct1-0ZUQ2Y#m@% zTwE^K6`)!!9QMeIPrY+2*gtS~cmaF7WmfFXGMp`HOFWxfY&N%;bQH%Ui$^BCHJ9FM z(%W+BZ6>{WfU|(Oaz$0&H1P8RO*M;?f$ANcS&v6%1G@^iwDvzm|J|h8-R#n{P0)8?Pd&C&$wmjlY zKU5V7YgKg1t;E#=+0>`q=F7(?Ye2hAyPogwWo?kvC2K2I9&4F>td1w@w5Y;Xlk14& zEbUX!3gfy|ygg`z(Rz`}z8{|U2e5LRn)^F36mzY8xCn!P;g`j{wYk54N_BG|>#>Gb z*WJ!ae02KHHa)AK&{{>cVwsU^NJr(;i{qFD405du^x~{6Tx|9eKZ^o;AmQp9XCD{` zwnFuI_O!Wwx@3VpjR7En56{;CfC#o zn=z$C7Z)(dwKC9)lruG)|q zxT1hXZ-O0AC7wta$$Z3y0v5d^-dlib13BNK!!{5YRFa;kH2ej)QUj%LP!7cWg5p9J z_ws^!Saq9QfU0i)W0TeyDelE8yO#8+!hlK}fDcZkWa4%|XLEAj%6*EP6dji9z-p<; z8^{VvEOkFR_Oh(lLy8D^YaOGx6&J5lrA^x9vdRlbo>KRt4u=&^R_qJ)!m(9T{FhLK zlP4Dtf@V!GUMLq2l?x4}R|^>%UE!Cn7xqW*-XJ!`z_3-Hq~1q}{Oe?*nbevKMD{oM3NLK)~h1;vrw z$cdjVnOo8B#GBp7iJwJp2`DFi7Tpj~PW&voKA@cVS@cr@<;2gTpA0A`eir>iKsoWV zXro1SinQsmTd{tSc_Z?rcgb1s=}L~+LAPvJaH8T}_=LwiX=AuMI^HTpj@8#Y`ryNd zIx%_A$l!lAuJPSWa{e5xyyKO_a!wM?S>*hJ?bFcR(B75~auqzX&5IqbrXyb_J>4h8 zdjX&BqyS8Bbv^KYm?)_Sv;&5%*4c;4{lA^G={Kh%4>iaG*>R#9F7^#G>Z_=w-0`mi zFAGRp@+N#f^y!$r_>*MNP%P-+#QmbOyE!W<_g*RPw6)M;-Bi*BK|rO=F)Ae`51sCx zn9wBIO--ZlYlR^uoc$QSWh(3Y_#zCfjFc>0iN$J5;Z^)#s+Pi33X%HadKNx!!E5-? zozROn`oYBpUhz+1;4csu2AD#vrTohEn3E|ZTPVY6Et;@T#5r*?E`hg0mvmj-+cxHk zcmmm83%2n28$XqQ6{~KjqUMmvlMRQ$;i_cpRTe+h!CqzYGkZ9tE`HV=HhPPntpgjq z#m`oX-R9zF+s4ZY#Lqhddz;~6sgN0{in?i8S4De2jVoDXZS8|km%GI1uDGvtCy<&2 zUAlYZ3C>0&mRs8eGZr4sty!=i(~|D0rYE>S*o}2P7oU^$;X~O)R%6p+ECRbo3k3~# z0i;AI#3)WU`?s2jKCQcWDKn>1nrPpPHRp=^Zf7r;=Hy8)*@@RIcsQ2HpH)xqf#jgU zCa{n_*V+dkCK<@JYIHY?$nCEQCFIt#b)C+Y4$ALm(|c@0mdygr=R{ouJu+QXf`YE+ zcGpyxJvpX$uGYQ*C}`wndF&%X>hw*&gXxIQ zMP>~9e|s7RFFI}RrXS?!`QIWT`oJv%Zz{-#T9l878fibnREzTB1iF6! zN`qx96{WA@zII9Kndy&KMd&fpxDy(08Q74BwdpZ6?>K5rB zld^;Pbc^Ia8|k1AouZ#$P-4_!(j1Gz$NPcb%__mqzSBzmdW?T7 zJIr{LjODA!w!0eu3IE167@+PJ0Qy8g-Aw@W*8z360nlRsbvFXgUj@|N3P2wZsJj_} zJ{C}SI{@voXvKZCw`%?tt@q`}Lh={Q1v$-zocioV?LR?JE2W(c*^AmA38>Fr)c)gu z`s_vRhXd-f7q$N=pgwz1`@;eC*^AnL7*Llz$E`deB7iD4_q>mfF5B#6jM({9+HPgd?XF^Wcx=S4u;67 zmSb`{rk`hL(u4P>CfTW*tndz*)?P_+14=^nVlLnkubXgp!O}s%-aEjv;F;J=yk{b< zDFoe}N6_@1>PT2?qIcmQ!NzjgwMn08?U=}-N@Dv;U{g`{g?!UWV3j4X86~ipC9qi~ zusJ2Lc^0eKD?3W@kUsNrDJGo3$~85i&6)kC?!dtJ0CqH?L@@;&s@QwS9+nd(y01zy z>+x(;*EPUTJ%c+ z<(6BEeleijy=&1g1e61K9^+G)>M}{Ubd-z#GC8wS_ww3?fiURwrn>}UzB zuLO3i1lC^y8!UkhmB5aBjGJ+(G+wL)Lw^nSM$GC-Cv8^84 z=dmpwK~(kvM=8;>9eYao!cu{g~h zNptro(wr=5?uw;3Bx&yQTU26c_LNKWu%x+j6lqS9GUnUXYh|BaSypQIV((%65qC70e3OS7w7n)@Wp&7(;3q@>Uk%jZ!={1%s3 zn)`~=boON~>R_7r^;~(lVwl?{FrQ!|`9?Bx1zvO8>p{0GhthP@jXbw>#$<=+!S2GD zeWqofER+)KvcoYp;dsoMeWqoP$DG+`TG~D4%s$hy+hfk`GcCJ3=FC3RveRSE>@zKG z7Q@i)t-h%9U_iaq7jN zZ1$Klt4vFi#ZaE!K8iZu8c=T^MV%K1)Z0f<=S2ba_EFS1FQDE&iaIY0sJD-z&IYLB@-8Lir5u1`j* z_SjC_eoV`t$J#vBZ!z>HzDtfee-lvOB}bi41k`uQQRlA%dccasU4JZ~zDtfee-%*Q zB}bi)2h?}TQRia;?Fw@HESmFuGVVfOcCJsxUFb2_C*v;knCp{q7kbR~$+!zW=K5sZ zg&y1N%Wjg#nmjhaVkl4FB}bk0b`%EcyX2_zZv*PPu>Rc93-z7(#9}KAP zlB3QK1k`uQQRm+T)OE?Ir==Fn`92w=oyT0CjM2_x<9%MYc`W6ztsZlIGDbU(xjq@A zoyT0CjM2_xu205j=P}nOo0jz+bA7UDY4q3(uS;|>rrjY=)40jjPV`OBr+4ObNFMp?0!qO&GS)l01lczib=bQAk^yr%H?!nS zkiDsFFNjYJvC%;{W*4O8I(@*mvB#C|1rqT#?X!Ovi}({h+~)QIH)L$G8k8C`Ml7Qd zhKzzT(h03*_cP2QkAY$lo!S2kHJ9t4+BdvvZqUH+;phHt(7^EFF*j(S*?7zi8fZ2i zbAtw&jmO-efo9_|H)vq^@R%DkFnoB-4H~9pvF`%ipkZ1TdCUzOre&eW+@N7vYCYx# z4bxKNF*j(KmMV|ALBq6M;xRX9n3nk#L&xUF3>c#U^&@+=;{+^!Iqv4gP<3&>i!xWjoGa+T4kynM!HXd{fWxZ@Rg+0h3Ah zvKu+?k$m3`p6GoMV%+0)-ld$DdRQOyp>ZbQr?Hg=&+@i%5ZwRdxpD;C_&;cWGJ^$t(hfQ8EcTrC#Kd6v9%skYlhfrkEu07Y?a5V?n<*i)FKFYb`;U zzEZ~KB}3V)T3W&hwaBFU00}OsyAUvplBO3$d9VQ|pD;43DYxLafqbYP}Gf<}tNih)uN^R$)Jb zrYQRj!V1+8Ad_Fl8zihyF|vYqWjKP^`c3nAnNH(5?S0L|3R;>JM9oZ|pdJoUK@&zH zXmL^yvu*MO@gX$0DrnLu1T9JmVwsve!JM2!Q9+YOA!uPz5G%~&3F@|g6*OfOf@+h3 z*cwcppdNToK~qN|s3s|hP0i#9=Hx(w3Ys1srpup_ulnhI3@TCl@U_P zhLm))kd$Z^`Y7L!ix4GaqvV`mMfqZ7J+31sxxD9(GOZkO)G&uU?H`u1o|5bsZk}+QVXd?CD7Ft zQgce6_ghG9DS?()NDV207F$TIC_>+=kW~+Ov)@uHO3-rxs#cVsFAk_$QG!kis9I5i zo*huNq69rFplU@4Ix(PXMF~2=qUfH!;RsJL)kV?TPhzOh1a>vu*Y;Rs+u$)B?TM}Tn2z?uKIJhT?TLNTV>;Rs`-I1Iv?tbRv0Sr`_SCt-V>;RsTkA0$ z?TM}Sn2z?uR(VWEdtxg*rlUQv1a=EsmGewpFh}-7MMyl#+sZA>NV!U zT0K!DJe^fwG`~0Z@-#;7F1oe3Jda~sVY*64sWr`2GB$96uo-EU;K5fgIO^Bn;~99_ zKSU){nkFgHMM?}FHl9{~_m&bHmAhy$EIxY}v^O%kc z#CCX0#|2{BJr?vkg3Sf0bI`BHV?n>e9t-*%@>tOCfX9Mblf8Lq{npJBF1A9ny!vp#QH6k zyIaRCmgyuhTd~{tZXLIXP4JkGTg1kDOvf!^DUa#6MeL+cL&q&*Cp@O(7O~?V({YQ~ zkj1b|dK>S&$0y6p_p}&#Vy_8o-#eqH8Ph`to0{GXZu|!HJ#jHk-Q50485v`+u6g|r zqS*B$m8|NE6Lk#dDUcE#43YjcLY?yG0ylUc(ZCq)=PaMtYFbnaVJn8C33$Z77~ z0!{5#&mwr`t7n46zk0@yKlfM9HY3f^e)X)0yyx1&%SD=V-d)Fm?SFjIxJON%Jh=>A zd^b}3bn!wZxX=HqXN{Ed2Bappp1d_;DEDnGceJ|)Snl?#XJp03GD*CF(Uw`oldWTO z$d6VUzj`K3Ilq>%UhT81sqm|3(i|liZw~Sa;OmLvXHKz;P5i6jzHnbXQ;l%HbW$U{ zW5RrI6_eGkp3!T&ycJXfqmuONdh>~;Cf%ZZ^=vug;e%eJ{OTEF;86h4%rdwmfA!22 z&xN*lmNFKrDjb|IRaN}z8CkI~>J!6itN0gFgf1l(jZ$}&uFWdI-$!A@9ugVVYzc10 zjZ$;NeD!P*Q!86Y3#kD1?utzhWXMC9=vlCZZ98S&x;FB=P6 z;-5nSqp%h<`IxmZixGphP>}DL3@wxI3>olR5x6EpQFvK|_-DXPSPMl7SCV5iStcXi zP2t7j-4xVtAg8%^Dm1m$ z!W4MLS`aL5EimNIZ7objnxnNACXqLct|hGn^59h|%t?l_@v0Q@Pk{UUt%dQFQe-V? zxzk!;L$THZS#cs>5>GMOh}Hrlv!8ukB+V~>@_!I3bmf`~tpzd~3C?B6WHL-3C$7mb zr+9IUBz%G*{IFc6Z`T40P^hOWug=q{;MA#PhcnT$->Jq~?aP7LGEtvW3(O4i*wAtp&!&W$2pB5x65a zF;__E*+S}Jtl}nidMr4XA(JMMlVr4Da#B1d!zPv!H}v6&_A^RrA$q~A1+H4htp%=c zoBUyBJ&c-UidhSX7#c=RMq&17Es)dPMTT64uE|hTPF#~Yz=&5vmYdv{PQ8n41w*GM zLTiC>?5#t_T!ya7&PfU;vyTEsVJ&F#F>9fN5r@t99)_05cZLjDM}dn)TJh7xVhr4b zwNRAsZgPw!%Vfk7iWiF|9Pu;DImx)TG`5&ATMN<%thGQ@lh(p6Bo(t3$Xv!+5Lv-m z5OE1>f#R@01UIJn7_0?(auQoxkP@)g!dK97$E^kOI%|P^OgUjKXmg{rK!q6$Yk{2R z-ks3YS_^IPinSnE+*)ABpW9m4fiy>JEo>+62-X65uyn7VHHy=TSzOY z6$*)z)&gT-4<*sea=0TmF;__E*+N>zSjA23^jI(!T6_Z7yeWPb4Av9G&nA}3&<#D| zSgeIDFPOE!C(m(ffzPP1(+(QPMolustcAr44WlNbFnhEX$Z75(1D03dVr@$Nbn(Jw zxCv{abm|MqRxosGBD5A5$KE<*#I89n8*548ucd%dSPPnb%vz{n#9%EjJeKb&hL*{9 zh74Fofs3~di=Qqw@xV=33q=XfC&y^AOhzoBc(GW*5kIqx)h)Q%(%53gY%NG5u+{=q zO#hhd) z8>?pGuY~*jt%YfnQe-V?xpN3&xm#<2tXO@L#HTXah}MEu8m$Fse)%bk6}oawh1P;J zM+wG@Wqks8x32h^Q!M0(e=^(`&RS57Xf049u@)vVS+y4EwO!r>su2c4mlN$4#abB8 zco+ytX)Q1Y7D$L@QgBDM7M#!vZSkBuiC9I}f^x;Giq-;Iu}TA16T>QvBz%G*p1-x= z(uB1jH8+g4aGa@?EuSsM*KRFlsUivqx)z zoaQbvV0lG~fTFNACH|vu6V^iM)O*QRFm!4nv=$i0-a2H=W$2m=Wn(Q#{72x9##+$i zW7a|sBMzJI!wfBx?+h8Rjsn+YC<;qY;y(m8VJ#FTe1III$ub$SgyO|w2}k_QGFG?X zYD;5_8MCz@jlfz9R5fWWbRm(LwLs=F)`G|i)`EyjSPK+~1)`+pW3U!v2V=}ykP@)g z!n?8AJHEC+US}_M8N zwHDgRJA$=99xPokCmG7ds+stA!+rkN!Y)cFvKF-5IRvrXt+hZ_tUgKNI~i?6Ye6fG z)`B#@d>dnhu3S^0wIIz=g0aWQCx8t=;%82=kSG2fa9=oUK{cYaK#jy&*v@3tTAQv_%~C8tCfNWHm9&}!KDdnL27OoYoUp$l`W+8)Cz?}N^5~Jut$ezrV;MQP0SV2 zdA5)m7^}F6ogNFuLW@rT`*6h1g28%%_}Rp;fCo49;bXBDw!L810(XGNtp)BC$6;S+ z92+&s6tfmqGc=5vjKb{ES|F#niwsy^fs3^%@zcc#U$_Ztp>*mi$W}0PY9h227{}f^ zWW)v@FB@w~;$KbyqgY$efkZUdqri`Oc65dwk$xLy`FDn#^Lj32UJ! z;YH*aO_s@sB@{0fOE}_Zma)18S6doe%$ThOX$00u{TaXg4*21(~lhy)xowYzdmRZ7D(B?*KfeJGi)&e=ry|vKP zS_?JsinSnE+*)ABpW9lfLYkws7A_(02-X65uyn4&tE3uXAaps=Zc(g-X^e+~kd)Q}V_<=VXl5$hk*x(M z^g>%aQy8nrT2QW7Rnb}?D^_WIVpydS|741I{?>v^6V`&%+%VR{B&JrjkS0(o6cQ<| z1;)T09io}>a7S)pu8_{Ng_L5f;wE-_EEo$dJ^}2*5kCtC>j~m#6T<=?+|Y-Q#ah_@ zf>{eZ#TB;}c-{-!e*T24hf$MEu~G8`L&K=aD9j$M1#+6Z$bjV)xLBJKKV6eK4mV*f zlumt!Yz0H7CPHh0aqO)_Mr`2mvayyV{y_>Dg|(o`$E<~ZMjSTZ#~4~B-x)Gs9R)7- z_=uk_wz9xYSPMl7A0@|VvP?!Sp?I-a!Vy2SjMXi;+S1r!#%wJ}Be2#2RZUt8y+|Zx zEs(j4wIH&BwIJdW)&j+0fhei@7_5c0P&95WNC{YL;i-=&tp)NrYk_<$vxK#v&5hOq z6=pE31#+5uk3dsvE%d-E)`DPhYk?tuZfoH%(j2X|aEQDkSPSIA(iL-(p=_+0iT?oH z=Wi`^QA&}upykdXh~;jr1+rrGNfO`3Xd_w+T4}Tvr1|AL7%Oz;nhLE2X^s+%W1l_& zYyc8JbBcvL@$Z5A!dVNd5v>JkB-TPZlT~YhUfbpErW#=&bUD#(QLKesjE8}cl-2@c zV1a~aW+&W{tpz9aLR&m-j8$YUC|9hiXf2Qxt290_tkQ^o2Sq%8Yr&-nYe8ym7;9lW zQ!86Y+o%-^iImm?V_=UC(acu3BR4TuNaxu?+QL}HP3-hoFcw;T0@#NmeijVY6U5IZ zh6Oyhp${L6wXov_vlc4RIOEm=&up7~1dU^(CYfT^!e)ksQIk=aJz5LoG16fg>FL6eVJ3k{4ItObV0 z^1YU!W%8XN1NQj9#fBpB)5Uk*;U=twqJ&qGV>DSNBbHFSSS;a)pIOH07F=ypCUP$RJxE@852EzoPby!lik41_Kx z+AWH;Fpu#t5R%ebU<@pf5Y5biJF>OlgkETiXBJ}>SqsV)t14OxWW_3tPYkOx;-5(o z&)-^bX~J5Nnj6Min8DP_7E&d(LLrgTT3`(9(IJ|d26yBp<_hUNTS!wGtGJ1s9t*}o zi%$UiaKz7o!Fq!D*~GAb2RHQLv=(qsR{AKO3!g88EipaIMeGuf>5gq;RUXrQS;T5Q zrcYmq)p|_VScxt4n9ih#E%KQ5m&6u(%=v)XQ$sl)193g(BqI%vISrtT$DF3n*<&t8 z$eYJp&QS&)b0vhb@|e@gM6=K=v`n2=CYtFnrKqDqfBtxPn{V@@j*P4$@5 z%0yE<=Cm@=WRC^?j=!Z?zaftW{RTZ2^y~Ln(C?VXf_{A-3;G@PSkSN6Vt8`+6&OPD z&C4s{k&nl-iQ;{Oe2mC11cn!~@q<_$zroa!gnfxRQxPr{6W*MTPPBHTyNqIt29ln(Y-%1CF9bIruhSIRODE{$q z2lk3kQEeBzB~{}qv6HItLyIP#qJToxikTZki<5r@Gi^|9mfJjt{a*;e{x4CDF19%( znU4!IK`hP*Gj+$hr7*LIv2F=h`;*1s)@o~(`aFSen2ubZ{OFmDHw-Q|pNXF?4(h=jV}0^tnkL^z0fnj+ z*XLT%;wYIzeQxz27WqUSO2Zu171-LU{EeiktnN8xIHE&}(d*C#)0 zXYxlNC8j0269uuINfPTJ!`SMRA6UdmISME&wBq{QEh!&Ls&m+bSgsOvC=JV1;y*y< zvE85iV5-S?Q9z+;#r3&bwAe@HP@h{oh&3fqhtjZ^CH{^i^Pn&j#A1{%P?ne3GL(ijEb;GzJI4CtM{!NQjRFc)E3VH~qQwp}hx&{>h(#MwhthHxx_C)Z zlDS`)31VqU7^pjz#Kg}c#?~#kTA#JxKK1(K2P#c|8>GaveeRT$qog`~3maC60Akw_T<$;#1@fZZ1s6kQdmdph5lE20jiVcIMH`AO!Z z!b}h=7{Wl^u~Z{|7BQA*;A(wd0`60}_Xf>0kHaK~7m{7AjYS5iQsYQ^=rRJ52z=1`xF z9>kJ{s6%Pk%p(4&N#$5?$IQfT!YTG=B`6q%f{}k2eV*Z(AJ}%4zG5-{1>W=xRFtdm; z|AedcIS<^YUY~aUnM_zGO2;K(x+XJ3hOyPBoqtk5VWAb*XS-y%pUj~?dpwBwr>HXs z7rQsae~ipyt4}-sq<})zitBT&XmOOxLA9+O#Qam#>4S^;r}%r5%tOLV5c5xApzfG| zil0S{`6pbh&pF^e_4>5)Pe_SrsS~9mk^o(teJ3YDWI^>itBT?Wcd)8L!lk^ zAm*Q<&SAKie~SMAna5V2cK%5Lg{l?T=W5YnADM${TRe#Qr>N5f7xPc?cO;nyg_$7c zpTa=hG5-`lix~4yxLTjHz zyT}|0?T`mC{}gq0!^Qkl{5#1!w)(X5PYNhht++l{i55G^98`-ui20|e(*`$}p^N!v zlDS`)31a>!4AdR-Pw}&eG5>_C^*IyVr(U0S{s}2DEp?)_O%kAsJr!gaTYcL3Cj}H1 zT5)~ulq^SN4uy8WgP4DcI$PjkH-`8(lX-0QY3H95P^emQeXbBK){{A?w%LQ2e~LOy za54WBe`AvQm@pH>{8JdHJLaF_XAxum30LcL2DneXKJEMyQes-_M5#d%po=pgWEfk0 z+W9916c$=>eYQ!KSCKgsT9*eg{}gpr!^PeP@vk8B*y_{HKPjM4wc`3*E?O)jb5O0x zgP4DcI?Lf={we;YN#;IbCW!f`Fi>~QKgG`?#{3hm)@LQSPrW|v{1Z}QTIxh;u_Qnj z?+78o*y_{HKPjNF(2DDGhh({y%%RZsc@XnYQD-4s%s<6nL*}v7r=5RNK%r{I^|?&6 zxP;6>we=pv{8QAaf{Xd5_~$2?j|wwE%s+*Jx?}z+eikw2pK!H4r-A#_>(kCZAtk1z zPL$?J0(9}{o(yBFPdoplfWks6uFvg~<(Xs-h1TIg%s)k)S#a^7U;H!3Jhu9@^G^yW zRIRu^mx>nC$Q)E_^dRP+qE01T%s<6HHObs7%mgw26b9;!`KS0<#F&4=z5gb89w(pc zLlk+J{Km!BXEts--C>J7w$)<`J+{STwH}K+R^zeF9;@>9#O3iG%#AB}1%*Od1bESsQKzhuT8a@N*F;{B%45Y_g zso^t_9&@FJ&p>+2l^Q++=`mMo_za}ST&bCjQ$6NN&1{_FF;{A4<7AKZaT%cR)&=|H zPusaI2oKiLW(U&JX61?XX0rYPk9WgkdFIpPCzCPUJcm#@3Syp)ARG>Yi%0ZuWB0(& zn_YeNQE+J;CQ)>G9a#Q&>`um@!(q{ZAl5?Q;#s`->Be+8J{ldyBhCmquwCE@JsE=z zJ)#3aod1D~14iPf8`I&$XmmJvVniL-UQPZ48G{Z-LAbm0As$M$3lIvf=p2x2V- zE}rF!pKeTt@uSh<7~+he1N$93;U{Czp-*%mh=mfk*h3(Gx-lIlj7Eo}h%<>-8 zmyAJ&W1<5=ti`~^%T~lsSM7~Sl03KJG-r5Ua(y)1@a#D7NFUrWq5UG1AfEGkK|Ru@ zh7-hI$>e*If(AtpL98HnK}X68VwZ<~0ZBnaB8VWCSG=I!vVz#3n*5=ppyMKlAl7WW zprd64v9mV$14%(AL=ZtNlz2gXWd(60F!`>eppznqAeLvmpkrkPahNgreMv#7@eahA zj~CQmRuIQ9eEuvcXuJp_i1i@2@`Z}~E75r7{xd&#V_F79C^n+DXzL=jPj+b$(*{qh z!()0Q65Hc3?I4J?drUhnV!J)29V)S19@CDV*iMh>07R_KV@^}ka@1p5B;@P$n3gxO zBOcSrB-Z0GZ7IYKdrX@lu|poyHcsq-$Mgmw)@8ApTnj<-h`DPI3ferJ%ah73-uuCm zdVr-~9qnI;?-Zq@Y=oK-Z*HT+`-%CP@P-`Ct=5{cyk+h16XuIKzR#TbbLU06Ie7AP~HX>J&BuDyt$3M z5iEKlpu80L4S;m zg4u|*9_2rm6!aMnW-|;@LEU8qvF%0q&n5-k<-u%*K`Q76Wd-pLi1OQ$g0^`un_-X& zI#5;+@53m6cT&)u9?WJKq=FtQD~P>8l>bap(5F3^%`iv>Jy=!{`=ls;S5nX&9?WJK zq=NRB6~x{!%5O^w+UmhZ+h7dLX7VV6o*=AR#QS(zCbJY_y|Ch&HNk`3t z9&?2jHUFo_T>hixCq3q}5;YHa%xM)h_j}A~6*d2p*V$oK{iuH$CRGikf$O z%xM)hf5T%=tEl z>-3naN$h(bQ#Fb0^O&kh?7JRQHHkgoF;$b;{T@>_iFH^EyV9GWs!VfVVRZ&ZMw8#l zrZYXDS#my&Cd29RR*IO8Z^V%c3+!+se0FciP?T+x(pUnfjZKU~lR74xnqlW$S>e=~ z!pVgv5;5UlC@-8vflYN~g|m<-oLqSH5flE!^1@m6Ccn9?aMlWilMBxvV#2>vUN|co zyY|WoXEUI1a^Y!6O!&_7!r8h^etlWtY1W$%{GWXVuA>ynPLpYfQ>Ym~jqW3F(c z>^6_N+KjSyddxMSDEn!Tx%L`m@9>zrL89zdk2$TP?DxISPOB)}=`p8Ol>MH^oK{hG zpU0e5QTDqYb6Q2&2R!Dqin8~6%xM*6JBT$OXonSe%|jLER;8BInqSv$8l2Nng*)49 zIBC|MFiVab9PKpe!Q8qN7%Hpvh7}ev4Km;S>o7C;M{`+ zTvOK$i7J*%cYN*^wELOT7B8?!Yh4op%!0801wFo*>XsxuD3{wV$KFh^GHmK zZHna5M^G2JbgxPG#6pitXiqNP1MPC@qbR9dx}Ty@G z>}{#rolEaF>0M*2he>C#mG3Mnf#Q1DEjen7rGHqFT)NGqcjnSNO?t-|>tU8?vAsx( z;(AyuX>N;Yu|<(wdYega&!xAU^wwDDpoDJCrME)6TzUseDwp1+^{^0Or(O@T+ox_z zEDhO{Qnw|S-eS_xz!fF>rFHCWV!d5)=}wRm*j!Ws#hkk&M@_Nx4=IvMH<|S2TzWG; z@r$ov$Dc>~uBq^7p)269XgZUM%wgF!@*swD`7Af3!EO-$+9Y$o zFcZYS0AZl+uwdvfLlQ|UE0S{tJg{VVm*fAmgWn_*$Sw4lDoFS?$rGP@! zimQEvXt9{gLAA{u#GZaphtjaIL;Q=9%*TY8Aa(=@19iui5%IH#v9krP)@Kd4PrW{M zC(lAiiD{`@P6%Rq1zdaqm<(g9&y*Be4FwbyT5)~0NtUa~915+=gV<6b>QEYXOo;yy zGLNl3D@C>W6i}#IaeXcqE#{FqsMh2`?CBSEC=DAs#6Ks=+$YQgu_Hhjs5`cdh@VA_ zoh@*+KC8fe>h-BRd1gUMOiSHzLJ-?4;NqJhWEfk0>Q0^+6i`@b#r3&EvRp~#P-y!+ zh%FVO4y9qog!reCd2IEmJ9(y3K%r{I^|?&6m_p{D+IkP-fwibZY1r5y{>e$^qryxO zPr8MHx?{_T_*ul**#cMV^Ad2MdVT6no=K1r(^9vb5XAO=xcJg48OBzhx|3%-1r!!q zaeZ!=ET_mE3a!I~c+xHEP#SjZi~l6QI6Job)SWyhD4ba@t!Tk(^(4tL3MeeJ;`-bpS?(iqD6}IU#FJ`KhtjZPU;IbO9IMZ745wOg z70Dzm-%A07sueRgh!#i498}xpK|E^~btnxFv&G+&WIis;1o1ps7^pjrEQp^)jNJfm zwLa&8`_$`GPm&yll$e$>Rml^?^JlmwbBGLMt4}>ia)1H~3$3_5+a=3gWDbSa<3T(# z7Ii2M52D4tkIZAMPd!P}K>>xT71!rl(P9sogKAqnh%@D)4yEBiviRGR%tOLV5IfR^ zfx6@IwfI@YcuEgf>vImcPrW|%B*|__iD@ZQo;*Qp?}uwLyT~xM`jq)$ekTPK7FuzA z?v^aKkvSCFVGrgq48j{5;bOQ9Y+?#&mzXj3bwQ?E}u|Ads7mO4>d zEeX)Y{F4l0t4}-sq=3RgE3VI-lI7)O4uy8WgP4DcIxFB}{we-tWFA|6+W9916slHS zpDRR*#bgeuZT2AMpQ6rExR`&6e^HY8m@pH>{8JdHJLaF_XAxum30LcL2DneXKJEMy zQes-_L}{TUKo|2*GK{T0?fjDh3Ja~cKHDVARb&o@*5yIWKSiAyxR`&6{}M8ftv>Di zlL87=E3VJwqQyKi2i2N9i20|eGaoMIpW>gBWbPAYf|!2_19ivzQ~WGq%s=63eO7|| z)a%pEKOrTirB0M)Ndj~+|0KiM>eJ3YDWI^>itBTSWVw>eq0shu5c5w_X9ir%KgBHX? zF6N)&KgsWEj;%iJ{F4F-RV%K~rJ}`gG6&TfJ&5@yf^ga$F6N)&A4)R!3Nt~>KZSw1 zWBw_A7BS|ZaJ4?Cg4@<-*3Ca(4A0yy>~2Pku$)~x32#CZNpx%TmoA-}N_AF(*F4y+ z?>&CtCS37}Vs7tZk-K5Y?A5~+#1?r>4_6Rd=rKK9L9EtedbomEjmPwG1+glR>EQ}u zmw0SF*7a4F`5tTZn9kFvpB}DYT($Ly>EQ}uYA+Jg!xhBT<{+krD~Rd1MNAJ@5YxVo zm>#YmruPrA9bOl$17h1f=1R@%U5Nc?nh#fMW^b*>T&bD8H6C-NX7*Nj%$1ti%PsyY z&y||l%cBR1xl%KGc_czHS88T2k7_99O3m!$c3#C?shPdpE3B9+HM5r+kri{LX7+NI zvtq8)%wBGxR?L-}*~|Uein&rVd%5{rF;{A4FL#zJ)`yn3>4{qxJX3rmrJv0@EiJYD zk(6U(40qunR1Q9cDz^Y#e0M|qbYolZbw@DXKD$wLD19WQ4{=7&f#q-VN68p;I4n94 z!~z6deD6d2bYnV<>PSj2;*6jJ+XZ&&lQHPfBRUYo>Iqzvp(L!Hz>VpkJE%t}haSWk zK?k;1?9C@*(BX*aKoDyqaPd|K@zagzpgX%q(BTl`jGzPWBkaZ}W6+^jbRdXD5V%;M z5kK9S4k^SP@kmM+;*6jJ?{DnCCu7jzsOUft3m9-shLW&A12?9__|fRlfjA@Rz;l zU@k*fv!-VOhSP}ssmbq13OX)=2x6hc3(|uI!wF(%ZSvcbf=-Aaf>@sMg8JUfHb0yo zjs$pRU{cUY5kwGcK3>qVvVu6wV6S9SkRC}Pi1i>ZNY7skrxC|6?2Aka(jzGZvAzR0 z9C-M@BPlP~k(3Ap%_AwKva{`lI+C*4CPXR;h3e&2*4U|%5=T;+Y-G~H$k+=Wi(KMJ z%6c1_v@r6E5|K+BNoll^Ned&7cqFC4MkXzcjLnEKwM!gHS!*McO631Ll7f>rI246_ zMfT`OAG#6o<~IKMkEGm$dhvsoJCZ^$o1x3@cyvcn)+7b#kraa23|$rEjxS(~Xo<5e zdL-q>q#!+#LNJ@5tAc*ud-zg<^hnC;q#!+#LNJ@5tAgA?iP9SBk(7@l1?iC#g4qmR z735A=loq5%QvNO}NROlt%x37SAa^9Av>-i_azj#(9!VjX&Cpdr`^%P*9!Xi16r@K| z2xc>MRggRU@qb5Bcm(JFj-=?3lof0`)6xIe${~~}3vcm}6msF|1Kd+OlCr$4aCany zTzJe86aEEh^TVEZ(IY9#$_jT!Qpknp4Kd;FOu;aRY4k|S(z3$ckrZ;_$wy4MJH#-I za6OW;xUBGfut0eBf?RmS5)yeb&vclbw6msDqLrl0ki1L3&Qg{Ss%tumqLgboHnh>r>TWSp!WXQN~ zNEy#g4>{%_4-3%yd6F5c%ZOHM*5Rnix}jY9=IgOmMH8YGuncU)3CJAGUeE6{&#m&`OY3eVPTIJxP!<4oOg^M~Aq z<3Ih)^k?5Rbj?Gl)N}Xztf?t=I`=rIu&%5>dU%RtH!m6VM*Kg(3!X!nfPV@3DLfPL z|1|!`9fiYASANVWW$#O!KJQKNk?X^RF2KK}#fv8VGlWkx#u+#T@y~zD``>@l%?&FX z&%bW%+SL13-h9LAYa3RssJ!u}6)RU)uDD^vnm0C7UU$=)kFUJ>!z+giuem(1)TQg* zR=MKZhHEQtUU}_`%Ij~w>Bh?IuDx#6%K8;I-vB9Zt9*UqS*e+?Z+sIxm2akVsX&V^ zXHeyA{N7RdzLnRl1osMouD|K#%4=7wuu-pCT)l8%6GQhQCGIagqGKcWV6C4-4S&Zl z^4o0qaOwBhaF|j273t3}wDLFZlZzIlZ`-eyR`Eg$<~`MLUg_onf;q3>XQtOsAm zbnGL*&-TY9`J$fg$yvL4cywCo##`_CU#%p<0<2{D8cgB0_CmQcZKh}8P!RkBH`^du@@3%kHcuPT< z-ggdZysm>9@AE&J7pU;CbKjW{_eBb;* zrEN=xUJCXILJ8#Ugi-k|X=oT2gd zzE0y+f->HxUaRq<=^Ah4xf-wTFE!qarfEF$8jbhNt2JI7DBJf3UZwHg`bv#=?khCj z&tInTJ_ySE9eAn6I~SDkX1zq?O{~y(Prq2>eeG>IMV;Aq!9Ztu*1>>eeLwogl%)4IP{zCK z4=K^}iziZYAFlat37@?XlXTh*H1pJ@w!3D zztdhfS-Q;PZ?o60u=JTBh-Pf zRQlB_Etfk$Sr4tSCwc!|k9j^ekIudZ^p&7*0euzd#(6TQnf(dSzrgiHpf3ZR1&aC1 z?9)IohR^Q3FqL{W=pxXUgI)%TN3XNr3d(fOvvdY1{$@{wL%s@oeH!Q+as7)6WC?Bd zqo6Or_5GkP1#JK&|Mj4h`$163eUGKJpp<(FDETh5*KYu&+-K*i+$TW)64!Ttz5(>3 zpcSC+2YnN0EhxtP*%yH#>g-vd7lFRmUjJ^6UjGvG9N;&A&H(*uP!z@N%Rt`>`ZCa2 zpeHbYBmH+ve-6s>?y>ZTmOg0dcP-sx={GI?iqadippF-KMdK&m zM=gD$rN0L=@n2f{150;XdZ(qIwDet;{t1y7@5h$zvGg8GS6TX(mi{v;3EtT|EzMba zv!x%jlw0V?H``Kf*5dUaPzj{mwnTc+(soPlwseK1ueS6_R3iEJS{kuZ@%K@C{Wtdd zGJE}Id;Kzd{U;cj$7EAxu(zK=LTlz{%pMAYe*V4n5e#g?!S=wyr-&y)z zOW$VcbW0~#`Y&ko)FWr<2Q8gx=`UZW;oB^Ix1}jd?|ZF=ueS8HmiA6p{Ogw9Y3XuH zFR=7AmiAXF{{xnO$6P+STmZcxJ^zD|u%+f!ep?r^6dZ(pJEq#rpeJ@hJ zFI)O4OW$MZ6ifegyz=d^^kz%BR>J(wv2=o^&z!FKQA>Yd={=S%w{)JRe`)D6r)j)< zE!|-0<(5vf^bAY?W1R9oVCkKfayg!QVOk>;(-EP6NU8ntpP+9>crWM$pg#e<2=w!y zxD{r96!a~iSA)(3y%h9f(DOj&g0>-_5P3$ErOPd?vb56Dl%;*hANjj1ZL_q=(&d&` zSz2jn%F;gMSK?dRW@(e9%Pp<4w9?X)rG1Dj@hxq$w8_%tmR4C>X=%#RKI9wTGrBD8 z0EOr?+Ck^TL~FBnlcmcot+KSzQglxe54W+z0};9CE_hvcE868b5bU07UTv@4bHsl` zd7cAB-1D%B?i%w%{{9W+#c=mLiyP*6?VeBFYOme%s4MNYd;T=vUc2W_Y{!i6o}aK@ zMZSIB!L>bJyXPaT?6rH|^N_uE&qv5xF|Nx$5B(8z=JjMN?@`=un9`-(^VS!kEO_mn zANERoS;Ft0CtYRv-Sf*Ch(mdm_~(y@lz8o)Ki1p$?s-`#X z)?0q}ym6tucFz~N_Dp&1dE9L_zI%SQ5n&8>&ud?W`mI2mwOoA1uLl1Tj+=}>EECCf z(}jAy6oldKd03|{FZcZVc6+Vdsnq{i{w6E$i}u<*uf9>Pn^Nxi?`C_=M#*0d!(ovaen&a*Q*Qozf%zY#e(o(6@BOX6hU;lvx?_XGd_4}?^oPOt`zrOC1M6POB(6I968*f;HJr*A)aOGR= z_KUd})nC_e)6MlCzxL+(n^%5pWkWg{K5ym6uU%b$U35JJIdFmByK&Kql^R=wtS3>Btm(fxfdp+j=+3@GNWo6R<9g^cV7K{els=FRE9emVN#R>=%O_Wwxfl^1pRNephU&&c!3}CzZcw1nxp@=A9z{g{R1W z!3g{Xg*mq*`@*?%ac|cxS$I|bd*A!s8*aGa#v9q*7NQL4$%Yp!^|!f`2e z@2M%m6~c;sW?}vNs;{i6e_#5l^kQU&S{I^M2zq5v zXGOUFy2fkkKeY10*vNI=wGG#;5@u>n*x|@sd-?(md z{k5ytrBm;^{POyhjn}PQ+fXm@E{44N4>vZ}uU&cb$8N%Ca6`i<>OVfGh)+i0v+#S} z+_zjXzcT#hUUbpCITu{GVE#pwl^4yq009@wVd&gBb1t4Y5AsmhWG&0q*x}eItP<(`(vWS*CHO`q$*+GOoagY7vY~j z%Hu!vrLL@(Q~lZZ)>p~CU+&N~*oB*0a-!D!9NwOO%9EYBxph6Y<`v!VoFFHmYt8#7 z*XC}S%;~DWIATCJHyxnuAErFy`>(1MTb9nSg6t>uYm{46{%0*f86zOrsH3J z%ti9os+ZLcb?vUr0_Q0$iil-4`Hi$cEYfWm&)IZR6E4?%5U097tk24^`V{Ru*bi;c zmS*1rIsx?4peTdcn?TWSX0HQ9+nN0#P?*fK)1YWavnxT-DseXOzdAr-5OgD)8{SS~3?0P?IJ#l!{|BKfZ+HLz diff --git a/rtl/obj_dir/VVortex__ALLcls.d b/rtl/obj_dir/VVortex__ALLcls.d index 2b0cb0f7..1e080335 100644 --- a/rtl/obj_dir/VVortex__ALLcls.d +++ b/rtl/obj_dir/VVortex__ALLcls.d @@ -1,5 +1,4 @@ VVortex__ALLcls.o: VVortex__ALLcls.cpp VVortex.cpp VVortex.h \ - /usr/local/Cellar/verilator/4.010/share/verilator/include/verilated_heavy.h \ /usr/local/Cellar/verilator/4.010/share/verilator/include/verilated.h \ /usr/local/Cellar/verilator/4.010/share/verilator/include/verilatedos.h \ VVortex__Syms.h diff --git a/rtl/obj_dir/VVortex__ALLcls.o b/rtl/obj_dir/VVortex__ALLcls.o index 6a830deebbbc6e76bb6e7e6127403ab43faac742..321f92408be926b039a9372cef340fd359bd8f86 100644 GIT binary patch literal 157800 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

+g7}f$g&HYE9skIim;T3B^u(-9rkUzDx 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 diff --git a/rtl/obj_dir/VVortex__ALLsup.d b/rtl/obj_dir/VVortex__ALLsup.d index 3f35b07c..41db4492 100644 --- a/rtl/obj_dir/VVortex__ALLsup.d +++ b/rtl/obj_dir/VVortex__ALLsup.d @@ -1,5 +1,4 @@ VVortex__ALLsup.o: VVortex__ALLsup.cpp VVortex__Syms.cpp VVortex__Syms.h \ - /usr/local/Cellar/verilator/4.010/share/verilator/include/verilated_heavy.h \ /usr/local/Cellar/verilator/4.010/share/verilator/include/verilated.h \ /usr/local/Cellar/verilator/4.010/share/verilator/include/verilatedos.h \ VVortex.h diff --git a/rtl/obj_dir/VVortex__Syms.h b/rtl/obj_dir/VVortex__Syms.h index e3fe9800..bf4ad048 100644 --- a/rtl/obj_dir/VVortex__Syms.h +++ b/rtl/obj_dir/VVortex__Syms.h @@ -6,7 +6,7 @@ #ifndef _VVortex__Syms_H_ #define _VVortex__Syms_H_ -#include "verilated_heavy.h" +#include "verilated.h" // INCLUDE MODULE CLASSES #include "VVortex.h" diff --git a/rtl/obj_dir/VVortex__verFiles.dat b/rtl/obj_dir/VVortex__verFiles.dat index 7f1e25e0..17e9b9f0 100644 --- a/rtl/obj_dir/VVortex__verFiles.dat +++ b/rtl/obj_dir/VVortex__verFiles.dat @@ -1,27 +1,27 @@ # DESCRIPTION: Verilator output: Timestamp data for --skip-identical. Delete at will. C "-Wall -cc Vortex.v --exe test_bench.cpp" S 4608404 12889046060 1553037052 0 1548678579 0 "/usr/local/Cellar/verilator/4.010/bin/verilator_bin" -S 2862 12889457986 1554023089 0 1554023089 0 "VX_alu.v" +S 2785 12889457986 1554064009 0 1554064009 0 "VX_alu.v" S 1495 12889457987 1554023089 0 1554023089 0 "VX_csr_handler.v" S 5105 12889457988 1554023089 0 1554023089 0 "VX_d_e_reg.v" S 15102 12889457989 1554023916 0 1554023916 0 "VX_decode.v" S 1557 12889457991 1554023528 0 1554023528 0 "VX_define.v" S 4077 12889457992 1554023089 0 1554023089 0 "VX_e_m_reg.v" S 3288 12889457993 1554023938 0 1554023938 0 "VX_execute.v" -S 1540 12889457994 1554023089 0 1554023089 0 "VX_f_d_reg.v" +S 1558 12889457994 1554064040 0 1554064040 0 "VX_f_d_reg.v" S 4606 12889457995 1554023897 0 1554023897 0 "VX_fetch.v" S 5632 12889457996 1554023089 0 1554023089 0 "VX_forwarding.v" S 1677 12889457997 1554023089 0 1554023089 0 "VX_m_w_reg.v" -S 3002 12889457998 1554023089 0 1554023089 0 "VX_memory.v" +S 3035 12889457998 1554064111 0 1554064111 0 "VX_memory.v" S 1078 12889457999 1554023928 0 1554023928 0 "VX_register_file.v" S 1387 12889458000 1554023933 0 1554023933 0 "VX_register_file_slave.v" S 1323 12889458001 1554023982 0 1554023982 0 "VX_writeback.v" S 16910 12889458002 1554023089 0 1554023089 0 "Vortex.v" -T 797432 12889458029 1554023984 0 1554023984 0 "obj_dir/VVortex.cpp" -T 21112 12889458030 1554023984 0 1554023984 0 "obj_dir/VVortex.h" -T 1800 12889458031 1554023984 0 1554023984 0 "obj_dir/VVortex.mk" -T 530 12889458039 1554023984 0 1554023984 0 "obj_dir/VVortex__Syms.cpp" -T 717 12889458040 1554023984 0 1554023984 0 "obj_dir/VVortex__Syms.h" -T 489 12889458041 1554023984 0 1554023984 0 "obj_dir/VVortex__ver.d" -T 0 0 1554023984 0 1554023984 0 "obj_dir/VVortex__verFiles.dat" -T 1159 12889458043 1554023984 0 1554023984 0 "obj_dir/VVortex_classes.mk" +T 778984 12889458029 1554064114 0 1554064114 0 "obj_dir/VVortex.cpp" +T 20905 12889458030 1554064114 0 1554064114 0 "obj_dir/VVortex.h" +T 1800 12889458031 1554064114 0 1554064114 0 "obj_dir/VVortex.mk" +T 530 12889458039 1554064114 0 1554064114 0 "obj_dir/VVortex__Syms.cpp" +T 711 12889458040 1554064114 0 1554064114 0 "obj_dir/VVortex__Syms.h" +T 489 12889458041 1554064114 0 1554064114 0 "obj_dir/VVortex__ver.d" +T 0 0 1554064114 0 1554064114 0 "obj_dir/VVortex__verFiles.dat" +T 1159 12889458043 1554064114 0 1554064114 0 "obj_dir/VVortex_classes.mk" diff --git a/rtl/obj_dir/test_bench.d b/rtl/obj_dir/test_bench.d index 33bed70e..b918f78f 100644 --- a/rtl/obj_dir/test_bench.d +++ b/rtl/obj_dir/test_bench.d @@ -1,5 +1,4 @@ test_bench.o: ../test_bench.cpp ../test_bench.h ../VX_define.h ../ram.h \ VVortex.h \ - /usr/local/Cellar/verilator/4.010/share/verilator/include/verilated_heavy.h \ /usr/local/Cellar/verilator/4.010/share/verilator/include/verilated.h \ /usr/local/Cellar/verilator/4.010/share/verilator/include/verilatedos.h diff --git a/rtl/obj_dir/test_bench.o b/rtl/obj_dir/test_bench.o index a6da5b6770a3659573bbcca4ff642f8ef09d4c15..8aa0847e0778a31e0ce311481bc50054ab17d04a 100644 GIT binary patch delta 6169 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 zGy@fe_instruction = curr_inst; - printf("\n\n---------------------------------------------\n(%x) Inst: %x\n", new_PC, curr_inst); - printf("\n"); + // printf("\n\n---------------------------------------------\n(%x) Inst: %x\n", new_PC, curr_inst); + // printf("\n"); ////////////////////// IBUS ////////////////////// @@ -157,7 +157,7 @@ bool Vortex::ibus_driver() stop = false; } else { - printf("Ibus requesting stop: %x\n", curr_inst); + // printf("Ibus requesting stop: %x\n", curr_inst); stop = true; } @@ -208,7 +208,7 @@ bool Vortex::dbus_driver() } - printf("----\n"); + // printf("----\n"); for (unsigned curr_th = 0; curr_th < NT; curr_th++) { @@ -258,7 +258,7 @@ bool Vortex::dbus_driver() } } - printf("******\n"); + // printf("******\n"); return false; @@ -270,7 +270,7 @@ bool Vortex::simulate(std::string file_to_simulate) { this->instruction_file_name = file_to_simulate; - this->results << "\n****************\t" << file_to_simulate << "\t****************\n"; + // this->results << "\n****************\t" << file_to_simulate << "\t****************\n"; this->ProcessFile(); @@ -328,6 +328,8 @@ bool Vortex::simulate(std::string file_to_simulate) bool dstop; // for (int i = 0; i < 500; i++) + + // unsigned cycles; while (this->stop && (!(stop && (counter > 5)))) { @@ -358,6 +360,7 @@ bool Vortex::simulate(std::string file_to_simulate) cycle++; } + std::cerr << "Total Cycles: " << cycle << "\n"; uint32_t status; ram.getWord(0, &status);