summaryrefslogtreecommitdiff
path: root/verilog/alu/obj_dir/Valu___024root__DepSet_ha59b247d__0.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'verilog/alu/obj_dir/Valu___024root__DepSet_ha59b247d__0.cpp')
-rw-r--r--verilog/alu/obj_dir/Valu___024root__DepSet_ha59b247d__0.cpp117
1 files changed, 117 insertions, 0 deletions
diff --git a/verilog/alu/obj_dir/Valu___024root__DepSet_ha59b247d__0.cpp b/verilog/alu/obj_dir/Valu___024root__DepSet_ha59b247d__0.cpp
new file mode 100644
index 0000000..99146ec
--- /dev/null
+++ b/verilog/alu/obj_dir/Valu___024root__DepSet_ha59b247d__0.cpp
@@ -0,0 +1,117 @@
+// Verilated -*- C++ -*-
+// DESCRIPTION: Verilator output: Design implementation internals
+// See Valu.h for the primary calling header
+
+#include "verilated.h"
+
+#include "Valu___024root.h"
+
+VL_INLINE_OPT void Valu___024root___combo__TOP__0(Valu___024root* vlSelf) {
+ if (false && vlSelf) {} // Prevent unused
+ Valu__Syms* const __restrict vlSymsp VL_ATTR_UNUSED = vlSelf->vlSymsp;
+ VL_DEBUG_IF(VL_DBG_MSGF("+ Valu___024root___combo__TOP__0\n"); );
+ // Body
+ vlSelf->alu__DOT__result = ((8U & (IData)(vlSelf->op))
+ ? ((4U & (IData)(vlSelf->op))
+ ? ((2U & (IData)(vlSelf->op))
+ ? ((1U & (IData)(vlSelf->op))
+ ? vlSelf->in1
+ : 0U) :
+ ((1U & (IData)(vlSelf->op))
+ ? (((0x1fU
+ >= vlSelf->in2)
+ ? (vlSelf->in1
+ >> vlSelf->in2)
+ : 0U)
+ | ((vlSelf->in1
+ >> 0x1fU)
+ ?
+ ((IData)(0xffffffffU)
+ <<
+ ((0x10U
+ & ((~
+ (vlSelf->in2
+ >> 4U))
+ << 4U))
+ | ((8U
+ & ((~
+ (vlSelf->in2
+ >> 3U))
+ << 3U))
+ | ((4U
+ & ((~
+ (vlSelf->in2
+ >> 2U))
+ << 2U))
+ | ((2U
+ & ((~
+ (vlSelf->in2
+ >> 1U))
+ << 1U))
+ | (1U
+ & (~ vlSelf->in2)))))))
+ : 0U))
+ : 0U)) : 0U)
+ : ((4U & (IData)(vlSelf->op))
+ ? ((2U & (IData)(vlSelf->op))
+ ? ((1U & (IData)(vlSelf->op))
+ ? (vlSelf->in1
+ & vlSelf->in2)
+ : (vlSelf->in1
+ | vlSelf->in2))
+ : ((1U & (IData)(vlSelf->op))
+ ? ((0x1fU
+ >= vlSelf->in2)
+ ?
+ (vlSelf->in1
+ >> vlSelf->in2)
+ : 0U)
+ : (vlSelf->in1
+ - vlSelf->in2)))
+ : ((2U & (IData)(vlSelf->op))
+ ? ((1U & (IData)(vlSelf->op))
+ ? ((vlSelf->in1
+ < vlSelf->in2)
+ ? 1U
+ : 0U)
+ : (((vlSelf->in1
+ >> 0x1fU)
+ ==
+ (vlSelf->in2
+ >> 0x1fU))
+ ? 0U
+ :
+ ((vlSelf->in1
+ >> 0x1fU)
+ ? 1U
+ : 0U)))
+ : ((1U & (IData)(vlSelf->op))
+ ? ((0x1fU
+ >= vlSelf->in2)
+ ?
+ (vlSelf->in1
+ >> vlSelf->in2)
+ : 0U)
+ : (vlSelf->in1
+ + vlSelf->in2)))));
+ vlSelf->out = vlSelf->alu__DOT__result;
+}
+
+void Valu___024root___eval(Valu___024root* vlSelf) {
+ if (false && vlSelf) {} // Prevent unused
+ Valu__Syms* const __restrict vlSymsp VL_ATTR_UNUSED = vlSelf->vlSymsp;
+ VL_DEBUG_IF(VL_DBG_MSGF("+ Valu___024root___eval\n"); );
+ // Body
+ Valu___024root___combo__TOP__0(vlSelf);
+}
+
+#ifdef VL_DEBUG
+void Valu___024root___eval_debug_assertions(Valu___024root* vlSelf) {
+ if (false && vlSelf) {} // Prevent unused
+ Valu__Syms* const __restrict vlSymsp VL_ATTR_UNUSED = vlSelf->vlSymsp;
+ VL_DEBUG_IF(VL_DBG_MSGF("+ Valu___024root___eval_debug_assertions\n"); );
+ // Body
+ if (VL_UNLIKELY((vlSelf->op & 0xf0U))) {
+ Verilated::overWidthError("op");}
+}
+#endif // VL_DEBUG