From d7afef04a91ca7cc4885617cc3bfed89e2500bda Mon Sep 17 00:00:00 2001 From: felsabbagh3 Date: Sat, 18 May 2019 23:42:55 +0400 Subject: [PATCH] Sim Work miss --- .DS_Store | Bin 6148 -> 8196 bytes .../vortex_software/vx_os/vx_back/vx_back.s | 4 +- kernel/vortex_test.dump | 3480 ++++---- kernel/vortex_test.elf | Bin 15464 -> 15640 bytes kernel/vortex_test.hex | 822 +- kernel/vx_os/vx_back/vx_back.c | 20 +- kernel/vx_os/vx_back/vx_back.h | 4 +- kernel/vx_os/vx_back/vx_back.s | 18 +- kernel/vx_os/vx_util/queue.h | 6 +- kernel/vx_os/vx_util/queue.s | 6 + rtl/VX_context.v | 2 + rtl/VX_context_slave.v | 2 + rtl/VX_decode.v | 228 +- rtl/VX_define.h | 7 +- rtl/VX_define.v | 9 +- rtl/VX_fetch.v | 202 +- rtl/VX_warp.v | 14 +- rtl/Vortex.v | 5 +- rtl/obj_dir/VVortex | Bin 431484 -> 0 bytes rtl/obj_dir/VVortex.cpp | 7576 ----------------- rtl/obj_dir/VVortex.h | 361 - rtl/obj_dir/VVortex.mk | 66 - rtl/obj_dir/VVortex__ALL.a | Bin 92480 -> 0 bytes rtl/obj_dir/VVortex__ALLcls.cpp | 3 - rtl/obj_dir/VVortex__ALLcls.d | 4 - rtl/obj_dir/VVortex__ALLcls.o | Bin 89344 -> 0 bytes rtl/obj_dir/VVortex__ALLsup.cpp | 3 - rtl/obj_dir/VVortex__ALLsup.d | 4 - rtl/obj_dir/VVortex__ALLsup.o | Bin 1552 -> 0 bytes rtl/obj_dir/VVortex__Syms.cpp | 19 - rtl/obj_dir/VVortex__Syms.h | 34 - rtl/obj_dir/VVortex__ver.d | 1 - rtl/obj_dir/VVortex__verFiles.dat | 31 - rtl/obj_dir/VVortex_classes.mk | 38 - rtl/obj_dir/test_bench.d | 4 - rtl/obj_dir/test_bench.o | Bin 66380 -> 0 bytes rtl/obj_dir/verilated.d | 9 - rtl/obj_dir/verilated.o | Bin 390432 -> 0 bytes rtl/results.txt | 7 - rtl/test_bench.h | 35 +- 40 files changed, 2642 insertions(+), 10382 deletions(-) delete mode 100755 rtl/obj_dir/VVortex delete mode 100644 rtl/obj_dir/VVortex.cpp delete mode 100644 rtl/obj_dir/VVortex.h delete mode 100644 rtl/obj_dir/VVortex.mk delete mode 100644 rtl/obj_dir/VVortex__ALL.a delete mode 100644 rtl/obj_dir/VVortex__ALLcls.cpp delete mode 100644 rtl/obj_dir/VVortex__ALLcls.d delete mode 100644 rtl/obj_dir/VVortex__ALLcls.o delete mode 100644 rtl/obj_dir/VVortex__ALLsup.cpp delete mode 100644 rtl/obj_dir/VVortex__ALLsup.d delete mode 100644 rtl/obj_dir/VVortex__ALLsup.o delete mode 100644 rtl/obj_dir/VVortex__Syms.cpp delete mode 100644 rtl/obj_dir/VVortex__Syms.h delete mode 100644 rtl/obj_dir/VVortex__ver.d delete mode 100644 rtl/obj_dir/VVortex__verFiles.dat delete mode 100644 rtl/obj_dir/VVortex_classes.mk delete mode 100644 rtl/obj_dir/test_bench.d delete mode 100644 rtl/obj_dir/test_bench.o delete mode 100644 rtl/obj_dir/verilated.d delete mode 100644 rtl/obj_dir/verilated.o diff --git a/.DS_Store b/.DS_Store index 884dee55a5787e4ddf05bfe0a73f4f2d30a7196c..e5107c3945c2079c5c57cd26bc93a3772942fbe5 100644 GIT binary patch literal 8196 zcmeHMU2GLa6h5aEI=fIhMM}FDC^v0t8z|5=w&kbb?H{%Rq2ac)K%wltyR;j(yVtvW zZ%a!}4e{r}VEjppe=q18sELV*5+D7+XiSKWe~CWmi;qU5iBEcFXWKx39`r#a>?AX1 zcFsAw=X~?+PR}g>U`Nhq1gHQ2MqNn0mWE}T(2KsL6@)8=B$509bnwB2Y-+;GEU}Ij zA_O7?A_O7?A_O7?{tpPynJpSy;oO(nXp9hu5V$K55Z{M5bs-a>oRu>8bkGo#03<~T z5Hy-o9T51$LzxKWtdxN(-BVT%7`kFuVxV*yV8S@$z`nJ9PuXsYbf2U$w&nQ^4PRlws>0Q4iWpOwTCAQ) zj=2*_U-xrfhn_txuKIL;EEUfCUDsZi>!}l#IWfXFcDjzQTaK9xoGrs7li@+jG2Dp` zH|H2$aG#`9Fs3kNgjY;YH#OJC8(Ugu>f_UmEzNYXr)kg3jKa!m8V~fI8^16$eR1ZI z7iDf3ejlJ@QLZm7m#FRKJ7uB;FU%+U^?ag=x>oCbP(3ojH{>b)V;SFa9q)vh^+=BJ z5|483O}kEC))e}|v}@JJ>{MvT^pNJ zZNS!3rp*mSy0x^b+F)KH$q$E%``c7)DD94qQz~95)`!c9c1=4go_s|2{9_r@p{Q=q zv)$!dgJdR21 z$1|8l6VKx)W^fXxa2hY-V|W>#!DsO~dfZCsHz;q8>dL?nwX-n zzt6%ea22k@N5sFI@Fjc?Kf=%O2O<_>X~4YAxCJY*7VB_3?!cYcf~~~Ceb|QGcnEv2 zmw4EZ12~97c#3#v1U$4biyr1MPkek7FX7|(1U?z^@p*g|ui$Ho*w?#=eb<&_Up|?2 zY}Xkj-8^e=cZ;s>31$9T{ AfdBvi delta 118 zcmZp1XfcprU|?W$DortDU=RQ@Ie-{MGjUEV6q~50$jG!YU^nAr0~wad`~tr=+lifI z+}L2syqKMXLy#G$4hRIefrKka%f`a*%#-FfuT(fM_O&pw0oV@` A;s5{u diff --git a/emulator/vortex_software/vx_os/vx_back/vx_back.s b/emulator/vortex_software/vx_os/vx_back/vx_back.s index c918588d..72c917cf 100644 --- a/emulator/vortex_software/vx_os/vx_back/vx_back.s +++ b/emulator/vortex_software/vx_os/vx_back/vx_back.s @@ -6,9 +6,9 @@ .type _start, @function .global _start _start: - li a0, 4 # Num Warps + li a0, 2 # Num Warps csrw 0x20, a0 # Setting the number of available warps - li a0, 8 # Num Threads + li a0, 1 # Num Threads csrw 0x21, a0 # Setting the number of available threads csrw mhartid,zero csrw misa,zero diff --git a/kernel/vortex_test.dump b/kernel/vortex_test.dump index 9e6b29f7..84a97b03 100644 --- a/kernel/vortex_test.dump +++ b/kernel/vortex_test.dump @@ -5,15 +5,15 @@ vortex_test.elf: file format elf32-littleriscv Disassembly of section .text: 80000000 <_start>: -80000000: 00200513 li a0,2 +80000000: 00800513 li a0,8 80000004: 02051073 csrw 0x20,a0 -80000008: 00200513 li a0,2 +80000008: 00400513 li a0,4 8000000c: 02151073 csrw 0x21,a0 80000010: f1401073 csrw mhartid,zero 80000014: 30101073 csrw misa,zero 80000018: 7ffff137 lui sp,0x7ffff -8000001c: 1b0000ef jal ra,800001cc -80000020: 6a8010ef jal ra,800016c8
+8000001c: 1e8000ef jal ra,80000204 +80000020: 0bd010ef jal ra,800018dc
80000024: 00000073 ecall 80000028 : @@ -48,1538 +48,1675 @@ Disassembly of section .text: 80000070: 00000513 li a0,0 80000074: 00060f93 mv t6,a2 80000078: 00038d93 mv s11,t2 -8000007c: 01bfe0eb 0x1bfe0eb -80000080: 00000517 auipc a0,0x0 -80000084: 1b050513 addi a0,a0,432 # 80000230 -80000088: 0005406b 0x5406b +8000007c: 00000013 nop +80000080: 00000013 nop +80000084: 00000013 nop +80000088: 00000013 nop +8000008c: 00000013 nop +80000090: 00000013 nop +80000094: 00000013 nop +80000098: 00000013 nop +8000009c: 01bfe0eb 0x1bfe0eb +800000a0: 00000013 nop +800000a4: 00000013 nop +800000a8: 00000013 nop +800000ac: 00000013 nop +800000b0: 00000013 nop +800000b4: 00000013 nop +800000b8: 00000517 auipc a0,0x0 +800000bc: 1b450513 addi a0,a0,436 # 8000026c +800000c0: 0005406b 0x5406b -8000008c : -8000008c: 00000317 auipc t1,0x0 -80000090: f9c30313 addi t1,t1,-100 # 80000028 -80000094: 0003006b 0x3006b -80000098: 00008067 ret +800000c4 : +800000c4: 00000317 auipc t1,0x0 +800000c8: f6430313 addi t1,t1,-156 # 80000028 +800000cc: 0003006b 0x3006b +800000d0: 00008067 ret -8000009c : -8000009c: 01000217 auipc tp,0x1000 -800000a0: 20020213 addi tp,tp,512 # 8100029c -800000a4: 00022023 sw zero,0(tp) # 0 -800000a8: 00122223 sw ra,4(tp) # 4 -800000ac: 00222423 sw sp,8(tp) # 8 -800000b0: 00322623 sw gp,12(tp) # c -800000b4: 00422823 sw tp,16(tp) # 10 -800000b8: 00522a23 sw t0,20(tp) # 14 -800000bc: 00622c23 sw t1,24(tp) # 18 -800000c0: 00722e23 sw t2,28(tp) # 1c -800000c4: 02822023 sw s0,32(tp) # 20 -800000c8: 02922223 sw s1,36(tp) # 24 -800000cc: 02a22423 sw a0,40(tp) # 28 -800000d0: 02b22623 sw a1,44(tp) # 2c -800000d4: 02c22823 sw a2,48(tp) # 30 -800000d8: 02d22a23 sw a3,52(tp) # 34 -800000dc: 02e22c23 sw a4,56(tp) # 38 -800000e0: 02f22e23 sw a5,60(tp) # 3c -800000e4: 05022023 sw a6,64(tp) # 40 -800000e8: 05122223 sw a7,68(tp) # 44 -800000ec: 05222423 sw s2,72(tp) # 48 -800000f0: 05322623 sw s3,76(tp) # 4c -800000f4: 05422823 sw s4,80(tp) # 50 -800000f8: 05522a23 sw s5,84(tp) # 54 -800000fc: 05622c23 sw s6,88(tp) # 58 -80000100: 05722e23 sw s7,92(tp) # 5c -80000104: 07822023 sw s8,96(tp) # 60 -80000108: 07922223 sw s9,100(tp) # 64 -8000010c: 07a22423 sw s10,104(tp) # 68 -80000110: 07b22623 sw s11,108(tp) # 6c -80000114: 07c22823 sw t3,112(tp) # 70 -80000118: 07d22a23 sw t4,116(tp) # 74 -8000011c: 07e22c23 sw t5,120(tp) # 78 -80000120: 07f22e23 sw t6,124(tp) # 7c -80000124: 00100213 li tp,1 -80000128: 00008067 ret +800000d4 : +800000d4: 01000217 auipc tp,0x1000 +800000d8: 26020213 addi tp,tp,608 # 81000334 +800000dc: 00022023 sw zero,0(tp) # 0 +800000e0: 00122223 sw ra,4(tp) # 4 +800000e4: 00222423 sw sp,8(tp) # 8 +800000e8: 00322623 sw gp,12(tp) # c +800000ec: 00422823 sw tp,16(tp) # 10 +800000f0: 00522a23 sw t0,20(tp) # 14 +800000f4: 00622c23 sw t1,24(tp) # 18 +800000f8: 00722e23 sw t2,28(tp) # 1c +800000fc: 02822023 sw s0,32(tp) # 20 +80000100: 02922223 sw s1,36(tp) # 24 +80000104: 02a22423 sw a0,40(tp) # 28 +80000108: 02b22623 sw a1,44(tp) # 2c +8000010c: 02c22823 sw a2,48(tp) # 30 +80000110: 02d22a23 sw a3,52(tp) # 34 +80000114: 02e22c23 sw a4,56(tp) # 38 +80000118: 02f22e23 sw a5,60(tp) # 3c +8000011c: 05022023 sw a6,64(tp) # 40 +80000120: 05122223 sw a7,68(tp) # 44 +80000124: 05222423 sw s2,72(tp) # 48 +80000128: 05322623 sw s3,76(tp) # 4c +8000012c: 05422823 sw s4,80(tp) # 50 +80000130: 05522a23 sw s5,84(tp) # 54 +80000134: 05622c23 sw s6,88(tp) # 58 +80000138: 05722e23 sw s7,92(tp) # 5c +8000013c: 07822023 sw s8,96(tp) # 60 +80000140: 07922223 sw s9,100(tp) # 64 +80000144: 07a22423 sw s10,104(tp) # 68 +80000148: 07b22623 sw s11,108(tp) # 6c +8000014c: 07c22823 sw t3,112(tp) # 70 +80000150: 07d22a23 sw t4,116(tp) # 74 +80000154: 07e22c23 sw t5,120(tp) # 78 +80000158: 07f22e23 sw t6,124(tp) # 7c +8000015c: 00100213 li tp,1 +80000160: 00008067 ret -8000012c : -8000012c: 01000217 auipc tp,0x1000 -80000130: 17020213 addi tp,tp,368 # 8100029c -80000134: 00022003 lw zero,0(tp) # 0 -80000138: 00422083 lw ra,4(tp) # 4 -8000013c: 00822103 lw sp,8(tp) # 8 -80000140: 00c22183 lw gp,12(tp) # c -80000144: 01022203 lw tp,16(tp) # 10 -80000148: 01422283 lw t0,20(tp) # 14 -8000014c: 01822303 lw t1,24(tp) # 18 -80000150: 01c22383 lw t2,28(tp) # 1c -80000154: 02022403 lw s0,32(tp) # 20 -80000158: 02422483 lw s1,36(tp) # 24 -8000015c: 02822503 lw a0,40(tp) # 28 -80000160: 02c22583 lw a1,44(tp) # 2c -80000164: 03022603 lw a2,48(tp) # 30 -80000168: 03422683 lw a3,52(tp) # 34 -8000016c: 03822703 lw a4,56(tp) # 38 -80000170: 03c22783 lw a5,60(tp) # 3c -80000174: 04022803 lw a6,64(tp) # 40 -80000178: 04422883 lw a7,68(tp) # 44 -8000017c: 04822903 lw s2,72(tp) # 48 -80000180: 04c22983 lw s3,76(tp) # 4c -80000184: 05022a03 lw s4,80(tp) # 50 -80000188: 05422a83 lw s5,84(tp) # 54 -8000018c: 05822b03 lw s6,88(tp) # 58 -80000190: 05c22b83 lw s7,92(tp) # 5c -80000194: 06022c03 lw s8,96(tp) # 60 -80000198: 06422c83 lw s9,100(tp) # 64 -8000019c: 06822d03 lw s10,104(tp) # 68 -800001a0: 06c22d83 lw s11,108(tp) # 6c -800001a4: 07022e03 lw t3,112(tp) # 70 -800001a8: 07422e83 lw t4,116(tp) # 74 -800001ac: 07822f03 lw t5,120(tp) # 78 -800001b0: 07c22f83 lw t6,124(tp) # 7c -800001b4: 00000213 li tp,0 -800001b8: 00008067 ret +80000164 : +80000164: 01000217 auipc tp,0x1000 +80000168: 1d020213 addi tp,tp,464 # 81000334 +8000016c: 00022003 lw zero,0(tp) # 0 +80000170: 00422083 lw ra,4(tp) # 4 +80000174: 00822103 lw sp,8(tp) # 8 +80000178: 00c22183 lw gp,12(tp) # c +8000017c: 01022203 lw tp,16(tp) # 10 +80000180: 01422283 lw t0,20(tp) # 14 +80000184: 01822303 lw t1,24(tp) # 18 +80000188: 01c22383 lw t2,28(tp) # 1c +8000018c: 02022403 lw s0,32(tp) # 20 +80000190: 02422483 lw s1,36(tp) # 24 +80000194: 02822503 lw a0,40(tp) # 28 +80000198: 02c22583 lw a1,44(tp) # 2c +8000019c: 03022603 lw a2,48(tp) # 30 +800001a0: 03422683 lw a3,52(tp) # 34 +800001a4: 03822703 lw a4,56(tp) # 38 +800001a8: 03c22783 lw a5,60(tp) # 3c +800001ac: 04022803 lw a6,64(tp) # 40 +800001b0: 04422883 lw a7,68(tp) # 44 +800001b4: 04822903 lw s2,72(tp) # 48 +800001b8: 04c22983 lw s3,76(tp) # 4c +800001bc: 05022a03 lw s4,80(tp) # 50 +800001c0: 05422a83 lw s5,84(tp) # 54 +800001c4: 05822b03 lw s6,88(tp) # 58 +800001c8: 05c22b83 lw s7,92(tp) # 5c +800001cc: 06022c03 lw s8,96(tp) # 60 +800001d0: 06422c83 lw s9,100(tp) # 64 +800001d4: 06822d03 lw s10,104(tp) # 68 +800001d8: 06c22d83 lw s11,108(tp) # 6c +800001dc: 07022e03 lw t3,112(tp) # 70 +800001e0: 07422e83 lw t4,116(tp) # 74 +800001e4: 07822f03 lw t5,120(tp) # 78 +800001e8: 07c22f83 lw t6,124(tp) # 7c +800001ec: 00000213 li tp,0 +800001f0: 00008067 ret -800001bc : -800001bc: 02002573 csrr a0,0x20 -800001c0: 00008067 ret +800001f4 : +800001f4: 02002573 csrr a0,0x20 +800001f8: 00008067 ret -800001c4 : -800001c4: 02102573 csrr a0,0x21 -800001c8: 00008067 ret +800001fc : +800001fc: 02102573 csrr a0,0x21 +80000200: 00008067 ret -800001cc : -800001cc: fe010113 addi sp,sp,-32 -800001d0: 00112e23 sw ra,28(sp) -800001d4: 00812c23 sw s0,24(sp) -800001d8: 02010413 addi s0,sp,32 -800001dc: fe042623 sw zero,-20(s0) -800001e0: 0300006f j 80000210 -800001e4: fec42703 lw a4,-20(s0) -800001e8: 4c400793 li a5,1220 -800001ec: 02f70733 mul a4,a4,a5 -800001f0: 810007b7 lui a5,0x81000 -800001f4: 31c78793 addi a5,a5,796 # 8100031c -800001f8: 00f707b3 add a5,a4,a5 -800001fc: 00078513 mv a0,a5 -80000200: 404000ef jal ra,80000604 -80000204: fec42783 lw a5,-20(s0) -80000208: 00178793 addi a5,a5,1 -8000020c: fef42623 sw a5,-20(s0) -80000210: fec42703 lw a4,-20(s0) -80000214: 00700793 li a5,7 -80000218: fce7d6e3 bge a5,a4,800001e4 -8000021c: 00000013 nop -80000220: 01c12083 lw ra,28(sp) -80000224: 01812403 lw s0,24(sp) -80000228: 02010113 addi sp,sp,32 -8000022c: 00008067 ret +80000204 : +80000204: fe010113 addi sp,sp,-32 +80000208: 00112e23 sw ra,28(sp) +8000020c: 00812c23 sw s0,24(sp) +80000210: 02010413 addi s0,sp,32 +80000214: fe042623 sw zero,-20(s0) +80000218: 0340006f j 8000024c +8000021c: fec42703 lw a4,-20(s0) +80000220: 000017b7 lui a5,0x1 +80000224: 97478793 addi a5,a5,-1676 # 974 +80000228: 02f70733 mul a4,a4,a5 +8000022c: 810007b7 lui a5,0x81000 +80000230: 43478793 addi a5,a5,1076 # 81000434 +80000234: 00f707b3 add a5,a4,a5 +80000238: 00078513 mv a0,a5 +8000023c: 45c000ef jal ra,80000698 +80000240: fec42783 lw a5,-20(s0) +80000244: 00178793 addi a5,a5,1 +80000248: fef42623 sw a5,-20(s0) +8000024c: fec42703 lw a4,-20(s0) +80000250: 01f00793 li a5,31 +80000254: fce7d4e3 bge a5,a4,8000021c +80000258: 00000013 nop +8000025c: 01c12083 lw ra,28(sp) +80000260: 01812403 lw s0,24(sp) +80000264: 02010113 addi sp,sp,32 +80000268: 00008067 ret -80000230 : -80000230: fd010113 addi sp,sp,-48 -80000234: 02112623 sw ra,44(sp) -80000238: 02812423 sw s0,40(sp) -8000023c: 03a12223 sw s10,36(sp) -80000240: 03010413 addi s0,sp,48 -80000244: 000d0713 mv a4,s10 -80000248: 4c400793 li a5,1220 -8000024c: 02f70733 mul a4,a4,a5 -80000250: 810007b7 lui a5,0x81000 -80000254: 31c78793 addi a5,a5,796 # 8100031c -80000258: 00f707b3 add a5,a4,a5 -8000025c: 00078513 mv a0,a5 -80000260: 4b8000ef jal ra,80000718 -80000264: 00050793 mv a5,a0 -80000268: 02078a63 beqz a5,8000029c -8000026c: 000d0713 mv a4,s10 -80000270: 810007b7 lui a5,0x81000 -80000274: 00271713 slli a4,a4,0x2 -80000278: 27c78793 addi a5,a5,636 # 8100027c -8000027c: 00f707b3 add a5,a4,a5 -80000280: 00100713 li a4,1 -80000284: 00e7a023 sw a4,0(a5) -80000288: 000d0793 mv a5,s10 -8000028c: 00079663 bnez a5,80000298 -80000290: e9dff0ef jal ra,8000012c -80000294: 0580006f j 800002ec -80000298: 00000073 ecall -8000029c: 000d0713 mv a4,s10 -800002a0: 4c400793 li a5,1220 -800002a4: 02f70733 mul a4,a4,a5 -800002a8: 810007b7 lui a5,0x81000 -800002ac: 31c78793 addi a5,a5,796 # 8100031c -800002b0: 00f707b3 add a5,a4,a5 -800002b4: fd840713 addi a4,s0,-40 -800002b8: 00070593 mv a1,a4 -800002bc: 00078513 mv a0,a5 -800002c0: 3d0000ef jal ra,80000690 -800002c4: fe042783 lw a5,-32(s0) -800002c8: 00078113 mv sp,a5 -800002cc: fdc42783 lw a5,-36(s0) -800002d0: fd842583 lw a1,-40(s0) -800002d4: fe442603 lw a2,-28(s0) -800002d8: fe842683 lw a3,-24(s0) -800002dc: fec42703 lw a4,-20(s0) +8000026c : +8000026c: fd010113 addi sp,sp,-48 +80000270: 02112623 sw ra,44(sp) +80000274: 02812423 sw s0,40(sp) +80000278: 03a12223 sw s10,36(sp) +8000027c: 03010413 addi s0,sp,48 +80000280: 000d0793 mv a5,s10 +80000284: 00078593 mv a1,a5 +80000288: 810007b7 lui a5,0x81000 +8000028c: 04078513 addi a0,a5,64 # 81000040 +80000290: 664000ef jal ra,800008f4 +80000294: 00000013 nop +80000298: 00000013 nop +8000029c: 00000013 nop +800002a0: 00000013 nop +800002a4: 00000013 nop +800002a8: 00000013 nop +800002ac: 00000013 nop +800002b0: 00000013 nop +800002b4: 00000013 nop +800002b8: 00000013 nop +800002bc: 00000013 nop +800002c0: 00000013 nop +800002c4: 000d0713 mv a4,s10 +800002c8: 000017b7 lui a5,0x1 +800002cc: 97478793 addi a5,a5,-1676 # 974 +800002d0: 02f70733 mul a4,a4,a5 +800002d4: 810007b7 lui a5,0x81000 +800002d8: 43478793 addi a5,a5,1076 # 81000434 +800002dc: 00f707b3 add a5,a4,a5 800002e0: 00078513 mv a0,a5 -800002e4: d45ff0ef jal ra,80000028 -800002e8: 00000073 ecall -800002ec: 02c12083 lw ra,44(sp) -800002f0: 02812403 lw s0,40(sp) -800002f4: 02412d03 lw s10,36(sp) -800002f8: 03010113 addi sp,sp,48 -800002fc: 00008067 ret +800002e4: 4e0000ef jal ra,800007c4 +800002e8: 00050793 mv a5,a0 +800002ec: 02078a63 beqz a5,80000320 +800002f0: 000d0713 mv a4,s10 +800002f4: 810007b7 lui a5,0x81000 +800002f8: 00271713 slli a4,a4,0x2 +800002fc: 28c78793 addi a5,a5,652 # 8100028c +80000300: 00f707b3 add a5,a4,a5 +80000304: 00100713 li a4,1 +80000308: 00e7a023 sw a4,0(a5) +8000030c: 000d0793 mv a5,s10 +80000310: 00079663 bnez a5,8000031c +80000314: e51ff0ef jal ra,80000164 +80000318: 05c0006f j 80000374 +8000031c: 00000073 ecall +80000320: 000d0713 mv a4,s10 +80000324: 000017b7 lui a5,0x1 +80000328: 97478793 addi a5,a5,-1676 # 974 +8000032c: 02f70733 mul a4,a4,a5 +80000330: 810007b7 lui a5,0x81000 +80000334: 43478793 addi a5,a5,1076 # 81000434 +80000338: 00f707b3 add a5,a4,a5 +8000033c: fd840713 addi a4,s0,-40 +80000340: 00070593 mv a1,a4 +80000344: 00078513 mv a0,a5 +80000348: 3dc000ef jal ra,80000724 +8000034c: fe042783 lw a5,-32(s0) +80000350: 00078113 mv sp,a5 +80000354: fdc42783 lw a5,-36(s0) +80000358: fd842583 lw a1,-40(s0) +8000035c: fe442603 lw a2,-28(s0) +80000360: fe842683 lw a3,-24(s0) +80000364: fec42703 lw a4,-20(s0) +80000368: 00078513 mv a0,a5 +8000036c: cbdff0ef jal ra,80000028 +80000370: 00000073 ecall +80000374: 02c12083 lw ra,44(sp) +80000378: 02812403 lw s0,40(sp) +8000037c: 02412d03 lw s10,36(sp) +80000380: 03010113 addi sp,sp,48 +80000384: 00008067 ret -80000300 : -80000300: fb010113 addi sp,sp,-80 -80000304: 04112623 sw ra,76(sp) -80000308: 04812423 sw s0,72(sp) -8000030c: 05010413 addi s0,sp,80 -80000310: eadff0ef jal ra,800001bc -80000314: fea42423 sw a0,-24(s0) -80000318: 00010993 mv s3,sp -8000031c: 00100793 li a5,1 -80000320: fef42623 sw a5,-20(s0) -80000324: 0840006f j 800003a8 -80000328: fec42703 lw a4,-20(s0) -8000032c: 4c400793 li a5,1220 -80000330: 02f70733 mul a4,a4,a5 -80000334: 810007b7 lui a5,0x81000 -80000338: 31c78793 addi a5,a5,796 # 8100031c -8000033c: 00f707b3 add a5,a4,a5 -80000340: 00078513 mv a0,a5 -80000344: 3d4000ef jal ra,80000718 -80000348: 00050793 mv a5,a0 -8000034c: 04079863 bnez a5,8000039c -80000350: fec42703 lw a4,-20(s0) -80000354: 4c400793 li a5,1220 -80000358: 02f70733 mul a4,a4,a5 -8000035c: 810007b7 lui a5,0x81000 -80000360: 31c78793 addi a5,a5,796 # 8100031c -80000364: 00f707b3 add a5,a4,a5 -80000368: fd040713 addi a4,s0,-48 -8000036c: 00070593 mv a1,a4 -80000370: 00078513 mv a0,a5 -80000374: 31c000ef jal ra,80000690 -80000378: fd842783 lw a5,-40(s0) -8000037c: 00078113 mv sp,a5 -80000380: fd442783 lw a5,-44(s0) -80000384: fd042583 lw a1,-48(s0) -80000388: fdc42603 lw a2,-36(s0) -8000038c: fe042683 lw a3,-32(s0) -80000390: fe442703 lw a4,-28(s0) -80000394: 00078513 mv a0,a5 -80000398: cf5ff0ef jal ra,8000008c -8000039c: fec42783 lw a5,-20(s0) -800003a0: 00178793 addi a5,a5,1 -800003a4: fef42623 sw a5,-20(s0) -800003a8: fec42783 lw a5,-20(s0) -800003ac: fe842703 lw a4,-24(s0) -800003b0: f6e7ece3 bltu a5,a4,80000328 -800003b4: 00098113 mv sp,s3 -800003b8: ce5ff0ef jal ra,8000009c -800003bc: 00020793 mv a5,tp -800003c0: 04078863 beqz a5,80000410 -800003c4: 810007b7 lui a5,0x81000 -800003c8: 31c78513 addi a0,a5,796 # 8100031c -800003cc: 34c000ef jal ra,80000718 -800003d0: 00050793 mv a5,a0 -800003d4: 02079e63 bnez a5,80000410 -800003d8: fb840793 addi a5,s0,-72 -800003dc: 00078593 mv a1,a5 -800003e0: 810007b7 lui a5,0x81000 -800003e4: 31c78513 addi a0,a5,796 # 8100031c -800003e8: 2a8000ef jal ra,80000690 -800003ec: fc042783 lw a5,-64(s0) -800003f0: 00078113 mv sp,a5 -800003f4: fbc42783 lw a5,-68(s0) -800003f8: fb842583 lw a1,-72(s0) -800003fc: fc442603 lw a2,-60(s0) -80000400: fc842683 lw a3,-56(s0) -80000404: fcc42703 lw a4,-52(s0) -80000408: 00078513 mv a0,a5 -8000040c: c1dff0ef jal ra,80000028 -80000410: 00000013 nop -80000414: 04c12083 lw ra,76(sp) -80000418: 04812403 lw s0,72(sp) -8000041c: 05010113 addi sp,sp,80 -80000420: 00008067 ret +80000388 : +80000388: fb010113 addi sp,sp,-80 +8000038c: 04112623 sw ra,76(sp) +80000390: 04812423 sw s0,72(sp) +80000394: 05010413 addi s0,sp,80 +80000398: e5dff0ef jal ra,800001f4 +8000039c: fea42423 sw a0,-24(s0) +800003a0: 00010993 mv s3,sp +800003a4: 00100793 li a5,1 +800003a8: fef42623 sw a5,-20(s0) +800003ac: 08c0006f j 80000438 +800003b0: fec42703 lw a4,-20(s0) +800003b4: 000017b7 lui a5,0x1 +800003b8: 97478793 addi a5,a5,-1676 # 974 +800003bc: 02f70733 mul a4,a4,a5 +800003c0: 810007b7 lui a5,0x81000 +800003c4: 43478793 addi a5,a5,1076 # 81000434 +800003c8: 00f707b3 add a5,a4,a5 +800003cc: 00078513 mv a0,a5 +800003d0: 3f4000ef jal ra,800007c4 +800003d4: 00050793 mv a5,a0 +800003d8: 04079a63 bnez a5,8000042c +800003dc: fec42703 lw a4,-20(s0) +800003e0: 000017b7 lui a5,0x1 +800003e4: 97478793 addi a5,a5,-1676 # 974 +800003e8: 02f70733 mul a4,a4,a5 +800003ec: 810007b7 lui a5,0x81000 +800003f0: 43478793 addi a5,a5,1076 # 81000434 +800003f4: 00f707b3 add a5,a4,a5 +800003f8: fd040713 addi a4,s0,-48 +800003fc: 00070593 mv a1,a4 +80000400: 00078513 mv a0,a5 +80000404: 320000ef jal ra,80000724 +80000408: fd842783 lw a5,-40(s0) +8000040c: 00078113 mv sp,a5 +80000410: fd442783 lw a5,-44(s0) +80000414: fd042583 lw a1,-48(s0) +80000418: fdc42603 lw a2,-36(s0) +8000041c: fe042683 lw a3,-32(s0) +80000420: fe442703 lw a4,-28(s0) +80000424: 00078513 mv a0,a5 +80000428: c9dff0ef jal ra,800000c4 +8000042c: fec42783 lw a5,-20(s0) +80000430: 00178793 addi a5,a5,1 +80000434: fef42623 sw a5,-20(s0) +80000438: fec42783 lw a5,-20(s0) +8000043c: fe842703 lw a4,-24(s0) +80000440: f6e7e8e3 bltu a5,a4,800003b0 +80000444: 00098113 mv sp,s3 +80000448: c8dff0ef jal ra,800000d4 +8000044c: 00020793 mv a5,tp +80000450: 04078863 beqz a5,800004a0 +80000454: 810007b7 lui a5,0x81000 +80000458: 43478513 addi a0,a5,1076 # 81000434 +8000045c: 368000ef jal ra,800007c4 +80000460: 00050793 mv a5,a0 +80000464: 02079e63 bnez a5,800004a0 +80000468: fb840793 addi a5,s0,-72 +8000046c: 00078593 mv a1,a5 +80000470: 810007b7 lui a5,0x81000 +80000474: 43478513 addi a0,a5,1076 # 81000434 +80000478: 2ac000ef jal ra,80000724 +8000047c: fc042783 lw a5,-64(s0) +80000480: 00078113 mv sp,a5 +80000484: fbc42783 lw a5,-68(s0) +80000488: fb842583 lw a1,-72(s0) +8000048c: fc442603 lw a2,-60(s0) +80000490: fc842683 lw a3,-56(s0) +80000494: fcc42703 lw a4,-52(s0) +80000498: 00078513 mv a0,a5 +8000049c: b8dff0ef jal ra,80000028 +800004a0: 00000013 nop +800004a4: 04c12083 lw ra,76(sp) +800004a8: 04812403 lw s0,72(sp) +800004ac: 05010113 addi sp,sp,80 +800004b0: 00008067 ret -80000424 : -80000424: fb010113 addi sp,sp,-80 -80000428: 04112623 sw ra,76(sp) -8000042c: 04812423 sw s0,72(sp) -80000430: 05010413 addi s0,sp,80 -80000434: faa42e23 sw a0,-68(s0) -80000438: fab42c23 sw a1,-72(s0) -8000043c: fac42a23 sw a2,-76(s0) -80000440: fad42823 sw a3,-80(s0) -80000444: d89ff0ef jal ra,800001cc -80000448: d75ff0ef jal ra,800001bc -8000044c: fea42223 sw a0,-28(s0) -80000450: 00010913 mv s2,sp -80000454: fe042623 sw zero,-20(s0) -80000458: fe042423 sw zero,-24(s0) -8000045c: 08c0006f j 800004e8 -80000460: ffff09b7 lui s3,0xffff0 -80000464: 01310133 add sp,sp,s3 -80000468: fe842783 lw a5,-24(s0) -8000046c: fcf42623 sw a5,-52(s0) -80000470: fb842783 lw a5,-72(s0) -80000474: fcf42823 sw a5,-48(s0) -80000478: 00010793 mv a5,sp -8000047c: fcf42a23 sw a5,-44(s0) -80000480: fb442783 lw a5,-76(s0) -80000484: fcf42c23 sw a5,-40(s0) -80000488: fb042783 lw a5,-80(s0) -8000048c: fcf42e23 sw a5,-36(s0) -80000490: fec42783 lw a5,-20(s0) -80000494: fef42023 sw a5,-32(s0) -80000498: fec42703 lw a4,-20(s0) -8000049c: 4c400793 li a5,1220 -800004a0: 02f70733 mul a4,a4,a5 -800004a4: 810007b7 lui a5,0x81000 -800004a8: 31c78793 addi a5,a5,796 # 8100031c -800004ac: 00f707b3 add a5,a4,a5 -800004b0: fcc40713 addi a4,s0,-52 -800004b4: 00070593 mv a1,a4 -800004b8: 00078513 mv a0,a5 -800004bc: 16c000ef jal ra,80000628 -800004c0: fec42783 lw a5,-20(s0) -800004c4: 00178793 addi a5,a5,1 -800004c8: fef42623 sw a5,-20(s0) -800004cc: fec42783 lw a5,-20(s0) -800004d0: fe442703 lw a4,-28(s0) -800004d4: 00e7e463 bltu a5,a4,800004dc -800004d8: fe042623 sw zero,-20(s0) -800004dc: fe842783 lw a5,-24(s0) -800004e0: 00178793 addi a5,a5,1 -800004e4: fef42423 sw a5,-24(s0) -800004e8: fe842703 lw a4,-24(s0) -800004ec: fbc42783 lw a5,-68(s0) -800004f0: f6f768e3 bltu a4,a5,80000460 -800004f4: 00090113 mv sp,s2 -800004f8: e09ff0ef jal ra,80000300 -800004fc: 00000013 nop -80000500: 04c12083 lw ra,76(sp) -80000504: 04812403 lw s0,72(sp) -80000508: 05010113 addi sp,sp,80 -8000050c: 00008067 ret - -80000510 : -80000510: fd010113 addi sp,sp,-48 -80000514: 02112623 sw ra,44(sp) -80000518: 02812423 sw s0,40(sp) -8000051c: 03010413 addi s0,sp,48 -80000520: fca42e23 sw a0,-36(s0) -80000524: c99ff0ef jal ra,800001bc -80000528: fea42023 sw a0,-32(s0) -8000052c: fe042623 sw zero,-20(s0) -80000530: 0540006f j 80000584 -80000534: fe042623 sw zero,-20(s0) -80000538: fe042423 sw zero,-24(s0) -8000053c: 03c0006f j 80000578 -80000540: 810007b7 lui a5,0x81000 -80000544: fe842703 lw a4,-24(s0) -80000548: 00271713 slli a4,a4,0x2 -8000054c: 27c78793 addi a5,a5,636 # 8100027c -80000550: 00f707b3 add a5,a4,a5 -80000554: 0007a703 lw a4,0(a5) -80000558: 00100793 li a5,1 -8000055c: 00f71863 bne a4,a5,8000056c +800004b4 : +800004b4: fb010113 addi sp,sp,-80 +800004b8: 04112623 sw ra,76(sp) +800004bc: 04812423 sw s0,72(sp) +800004c0: 05010413 addi s0,sp,80 +800004c4: faa42e23 sw a0,-68(s0) +800004c8: fab42c23 sw a1,-72(s0) +800004cc: fac42a23 sw a2,-76(s0) +800004d0: fad42823 sw a3,-80(s0) +800004d4: d31ff0ef jal ra,80000204 +800004d8: d1dff0ef jal ra,800001f4 +800004dc: fea42223 sw a0,-28(s0) +800004e0: 00010913 mv s2,sp +800004e4: fe042623 sw zero,-20(s0) +800004e8: fe042423 sw zero,-24(s0) +800004ec: 0900006f j 8000057c +800004f0: ffff09b7 lui s3,0xffff0 +800004f4: 01310133 add sp,sp,s3 +800004f8: fe842783 lw a5,-24(s0) +800004fc: fcf42623 sw a5,-52(s0) +80000500: fb842783 lw a5,-72(s0) +80000504: fcf42823 sw a5,-48(s0) +80000508: 00010793 mv a5,sp +8000050c: fcf42a23 sw a5,-44(s0) +80000510: fb442783 lw a5,-76(s0) +80000514: fcf42c23 sw a5,-40(s0) +80000518: fb042783 lw a5,-80(s0) +8000051c: fcf42e23 sw a5,-36(s0) +80000520: fec42783 lw a5,-20(s0) +80000524: fef42023 sw a5,-32(s0) +80000528: fec42703 lw a4,-20(s0) +8000052c: 000017b7 lui a5,0x1 +80000530: 97478793 addi a5,a5,-1676 # 974 +80000534: 02f70733 mul a4,a4,a5 +80000538: 810007b7 lui a5,0x81000 +8000053c: 43478793 addi a5,a5,1076 # 81000434 +80000540: 00f707b3 add a5,a4,a5 +80000544: fcc40713 addi a4,s0,-52 +80000548: 00070593 mv a1,a4 +8000054c: 00078513 mv a0,a5 +80000550: 16c000ef jal ra,800006bc +80000554: fec42783 lw a5,-20(s0) +80000558: 00178793 addi a5,a5,1 +8000055c: fef42623 sw a5,-20(s0) 80000560: fec42783 lw a5,-20(s0) -80000564: 00178793 addi a5,a5,1 -80000568: fef42623 sw a5,-20(s0) -8000056c: fe842783 lw a5,-24(s0) -80000570: 00178793 addi a5,a5,1 -80000574: fef42423 sw a5,-24(s0) -80000578: fe842783 lw a5,-24(s0) -8000057c: fe042703 lw a4,-32(s0) -80000580: fce7e0e3 bltu a5,a4,80000540 -80000584: fec42703 lw a4,-20(s0) -80000588: fdc42783 lw a5,-36(s0) -8000058c: faf714e3 bne a4,a5,80000534 -80000590: fe042223 sw zero,-28(s0) -80000594: 0280006f j 800005bc -80000598: 810007b7 lui a5,0x81000 -8000059c: fe442703 lw a4,-28(s0) -800005a0: 00271713 slli a4,a4,0x2 -800005a4: 27c78793 addi a5,a5,636 # 8100027c -800005a8: 00f707b3 add a5,a4,a5 -800005ac: 0007a023 sw zero,0(a5) -800005b0: fe442783 lw a5,-28(s0) -800005b4: 00178793 addi a5,a5,1 -800005b8: fef42223 sw a5,-28(s0) -800005bc: fe442783 lw a5,-28(s0) -800005c0: fe042703 lw a4,-32(s0) -800005c4: fce7eae3 bltu a5,a4,80000598 -800005c8: 00000013 nop -800005cc: 02c12083 lw ra,44(sp) -800005d0: 02812403 lw s0,40(sp) -800005d4: 03010113 addi sp,sp,48 -800005d8: 00008067 ret +80000564: fe442703 lw a4,-28(s0) +80000568: 00e7e463 bltu a5,a4,80000570 +8000056c: fe042623 sw zero,-20(s0) +80000570: fe842783 lw a5,-24(s0) +80000574: 00178793 addi a5,a5,1 +80000578: fef42423 sw a5,-24(s0) +8000057c: fe842703 lw a4,-24(s0) +80000580: fbc42783 lw a5,-68(s0) +80000584: f6f766e3 bltu a4,a5,800004f0 +80000588: 00090113 mv sp,s2 +8000058c: dfdff0ef jal ra,80000388 +80000590: 00000013 nop +80000594: 04c12083 lw ra,76(sp) +80000598: 04812403 lw s0,72(sp) +8000059c: 05010113 addi sp,sp,80 +800005a0: 00008067 ret -800005dc : -800005dc: ff010113 addi sp,sp,-16 -800005e0: 00812623 sw s0,12(sp) -800005e4: 01712423 sw s7,8(sp) -800005e8: 01010413 addi s0,sp,16 -800005ec: 000b8793 mv a5,s7 -800005f0: 00078513 mv a0,a5 -800005f4: 00c12403 lw s0,12(sp) -800005f8: 00812b83 lw s7,8(sp) -800005fc: 01010113 addi sp,sp,16 -80000600: 00008067 ret +800005a4 : +800005a4: fd010113 addi sp,sp,-48 +800005a8: 02112623 sw ra,44(sp) +800005ac: 02812423 sw s0,40(sp) +800005b0: 03010413 addi s0,sp,48 +800005b4: fca42e23 sw a0,-36(s0) +800005b8: c3dff0ef jal ra,800001f4 +800005bc: fea42023 sw a0,-32(s0) +800005c0: fe042623 sw zero,-20(s0) +800005c4: 0540006f j 80000618 +800005c8: fe042623 sw zero,-20(s0) +800005cc: fe042423 sw zero,-24(s0) +800005d0: 03c0006f j 8000060c +800005d4: 810007b7 lui a5,0x81000 +800005d8: fe842703 lw a4,-24(s0) +800005dc: 00271713 slli a4,a4,0x2 +800005e0: 28c78793 addi a5,a5,652 # 8100028c +800005e4: 00f707b3 add a5,a4,a5 +800005e8: 0007a703 lw a4,0(a5) +800005ec: 00100793 li a5,1 +800005f0: 00f71863 bne a4,a5,80000600 +800005f4: fec42783 lw a5,-20(s0) +800005f8: 00178793 addi a5,a5,1 +800005fc: fef42623 sw a5,-20(s0) +80000600: fe842783 lw a5,-24(s0) +80000604: 00178793 addi a5,a5,1 +80000608: fef42423 sw a5,-24(s0) +8000060c: fe842783 lw a5,-24(s0) +80000610: fe042703 lw a4,-32(s0) +80000614: fce7e0e3 bltu a5,a4,800005d4 +80000618: fec42703 lw a4,-20(s0) +8000061c: fdc42783 lw a5,-36(s0) +80000620: faf714e3 bne a4,a5,800005c8 +80000624: fe042223 sw zero,-28(s0) +80000628: 0280006f j 80000650 +8000062c: 810007b7 lui a5,0x81000 +80000630: fe442703 lw a4,-28(s0) +80000634: 00271713 slli a4,a4,0x2 +80000638: 28c78793 addi a5,a5,652 # 8100028c +8000063c: 00f707b3 add a5,a4,a5 +80000640: 0007a023 sw zero,0(a5) +80000644: fe442783 lw a5,-28(s0) +80000648: 00178793 addi a5,a5,1 +8000064c: fef42223 sw a5,-28(s0) +80000650: fe442783 lw a5,-28(s0) +80000654: fe042703 lw a4,-32(s0) +80000658: fce7eae3 bltu a5,a4,8000062c +8000065c: 00000013 nop +80000660: 02c12083 lw ra,44(sp) +80000664: 02812403 lw s0,40(sp) +80000668: 03010113 addi sp,sp,48 +8000066c: 00008067 ret -80000604 : -80000604: 00050293 mv t0,a0 -80000608: 00000313 li t1,0 -8000060c: 00700393 li t2,7 -80000610: 0062a023 sw t1,0(t0) -80000614: 0062a223 sw t1,4(t0) -80000618: 0062a423 sw t1,8(t0) -8000061c: 0072a623 sw t2,12(t0) -80000620: 0062a823 sw t1,16(t0) -80000624: 00008067 ret +80000670 : +80000670: ff010113 addi sp,sp,-16 +80000674: 00812623 sw s0,12(sp) +80000678: 01712423 sw s7,8(sp) +8000067c: 01010413 addi s0,sp,16 +80000680: 000b8793 mv a5,s7 +80000684: 00078513 mv a0,a5 +80000688: 00c12403 lw s0,12(sp) +8000068c: 00812b83 lw s7,8(sp) +80000690: 01010113 addi sp,sp,16 +80000694: 00008067 ret -80000628 : -80000628: 00050293 mv t0,a0 -8000062c: 0082a303 lw t1,8(t0) -80000630: 00130313 addi t1,t1,1 -80000634: 0062a423 sw t1,8(t0) -80000638: 01428313 addi t1,t0,20 -8000063c: 0042ae83 lw t4,4(t0) -80000640: 005e9393 slli t2,t4,0x5 -80000644: 00730333 add t1,t1,t2 -80000648: 0005ae03 lw t3,0(a1) -8000064c: 01c32023 sw t3,0(t1) -80000650: 0045ae03 lw t3,4(a1) -80000654: 01c32223 sw t3,4(t1) -80000658: 0085ae03 lw t3,8(a1) -8000065c: 01c32423 sw t3,8(t1) -80000660: 00c5ae03 lw t3,12(a1) -80000664: 01c32623 sw t3,12(t1) -80000668: 0105ae03 lw t3,16(a1) -8000066c: 01c32823 sw t3,16(t1) -80000670: 0145ae03 lw t3,20(a1) -80000674: 01c32a23 sw t3,20(t1) -80000678: 001e8e93 addi t4,t4,1 -8000067c: 03200f13 li t5,50 -80000680: 01ee9463 bne t4,t5,80000688 -80000684: 00000e93 li t4,0 +80000698 : +80000698: 00050293 mv t0,a0 +8000069c: 00000313 li t1,0 +800006a0: 00700393 li t2,7 +800006a4: 0062a023 sw t1,0(t0) +800006a8: 0062a223 sw t1,4(t0) +800006ac: 0062a423 sw t1,8(t0) +800006b0: 0072a623 sw t2,12(t0) +800006b4: 0062a823 sw t1,16(t0) +800006b8: 00008067 ret -80000688 : -80000688: 01d2a223 sw t4,4(t0) -8000068c: 00008067 ret +800006bc : +800006bc: 00050293 mv t0,a0 +800006c0: 0082a303 lw t1,8(t0) +800006c4: 00130313 addi t1,t1,1 +800006c8: 0062a423 sw t1,8(t0) +800006cc: 01428313 addi t1,t0,20 +800006d0: 0042ae83 lw t4,4(t0) +800006d4: 005e9393 slli t2,t4,0x5 +800006d8: 00730333 add t1,t1,t2 +800006dc: 0005ae03 lw t3,0(a1) +800006e0: 01c32023 sw t3,0(t1) +800006e4: 0045ae03 lw t3,4(a1) +800006e8: 01c32223 sw t3,4(t1) +800006ec: 0085ae03 lw t3,8(a1) +800006f0: 01c32423 sw t3,8(t1) +800006f4: 00c5ae03 lw t3,12(a1) +800006f8: 01c32623 sw t3,12(t1) +800006fc: 0105ae03 lw t3,16(a1) +80000700: 01c32823 sw t3,16(t1) +80000704: 0145ae03 lw t3,20(a1) +80000708: 01c32a23 sw t3,20(t1) +8000070c: 001e8e93 addi t4,t4,1 +80000710: 03200f13 li t5,50 +80000714: 01ee9463 bne t4,t5,8000071c +80000718: 00000e93 li t4,0 -80000690 : -80000690: 00050293 mv t0,a0 -80000694: 0082a303 lw t1,8(t0) -80000698: fff30313 addi t1,t1,-1 -8000069c: 0062a423 sw t1,8(t0) -800006a0: 01428313 addi t1,t0,20 -800006a4: 0002ae83 lw t4,0(t0) -800006a8: 03200f93 li t6,50 -800006ac: 000e8f13 mv t5,t4 -800006b0: 001f0f13 addi t5,t5,1 -800006b4: 01ff1463 bne t5,t6,800006bc -800006b8: 00000f13 li t5,0 +8000071c : +8000071c: 01d2a223 sw t4,4(t0) +80000720: 00008067 ret -800006bc : -800006bc: 01e2a023 sw t5,0(t0) -800006c0: 005e9393 slli t2,t4,0x5 -800006c4: 00730333 add t1,t1,t2 -800006c8: 00032e03 lw t3,0(t1) -800006cc: 01c5a023 sw t3,0(a1) -800006d0: 00432e03 lw t3,4(t1) -800006d4: 01c5a223 sw t3,4(a1) -800006d8: 00832e03 lw t3,8(t1) -800006dc: 01c5a423 sw t3,8(a1) -800006e0: 00c32e03 lw t3,12(t1) -800006e4: 01c5a623 sw t3,12(a1) -800006e8: 01032e03 lw t3,16(t1) -800006ec: 01c5a823 sw t3,16(a1) -800006f0: 01432e03 lw t3,20(t1) -800006f4: 01c5aa23 sw t3,20(a1) -800006f8: 00008067 ret +80000724 : +80000724: 00050293 mv t0,a0 +80000728: 0082a303 lw t1,8(t0) +8000072c: 00000013 nop +80000730: 00000013 nop +80000734: 00000013 nop +80000738: 00000013 nop +8000073c: 00000013 nop +80000740: 00000013 nop +80000744: fff30313 addi t1,t1,-1 +80000748: 0062a423 sw t1,8(t0) +8000074c: 01428313 addi t1,t0,20 +80000750: 0002ae83 lw t4,0(t0) +80000754: 03200f93 li t6,50 +80000758: 000e8f13 mv t5,t4 +8000075c: 001f0f13 addi t5,t5,1 +80000760: 01ff1463 bne t5,t6,80000768 +80000764: 00000f13 li t5,0 -800006fc : -800006fc: 00050293 mv t0,a0 -80000700: 0082a303 lw t1,8(t0) -80000704: 00000513 li a0,0 -80000708: 03200e13 li t3,50 -8000070c: 006e1463 bne t3,t1,80000714 -80000710: 00150513 addi a0,a0,1 +80000768 : +80000768: 01e2a023 sw t5,0(t0) +8000076c: 005e9393 slli t2,t4,0x5 +80000770: 00730333 add t1,t1,t2 +80000774: 00032e03 lw t3,0(t1) +80000778: 01c5a023 sw t3,0(a1) +8000077c: 00432e03 lw t3,4(t1) +80000780: 01c5a223 sw t3,4(a1) +80000784: 00832e03 lw t3,8(t1) +80000788: 01c5a423 sw t3,8(a1) +8000078c: 00c32e03 lw t3,12(t1) +80000790: 01c5a623 sw t3,12(a1) +80000794: 01032e03 lw t3,16(t1) +80000798: 01c5a823 sw t3,16(a1) +8000079c: 01432e03 lw t3,20(t1) +800007a0: 01c5aa23 sw t3,20(a1) +800007a4: 00008067 ret -80000714 : -80000714: 00008067 ret +800007a8 : +800007a8: 00050293 mv t0,a0 +800007ac: 0082a303 lw t1,8(t0) +800007b0: 00000513 li a0,0 +800007b4: 03200e13 li t3,50 +800007b8: 006e1463 bne t3,t1,800007c0 +800007bc: 00150513 addi a0,a0,1 -80000718 : -80000718: 00050293 mv t0,a0 -8000071c: 0082a303 lw t1,8(t0) -80000720: 00000513 li a0,0 -80000724: 00000e13 li t3,0 -80000728: 006e1463 bne t3,t1,80000730 -8000072c: 00150513 addi a0,a0,1 +800007c0 : +800007c0: 00008067 ret -80000730 : -80000730: 00008067 ret +800007c4 : +800007c4: 00050293 mv t0,a0 +800007c8: 0082a303 lw t1,8(t0) +800007cc: 00000513 li a0,0 +800007d0: 00000e13 li t3,0 +800007d4: 006e1463 bne t3,t1,800007dc +800007d8: 00150513 addi a0,a0,1 -80000734 : -80000734: 00050293 mv t0,a0 -80000738: 00c2a303 lw t1,12(t0) -8000073c: 0102a383 lw t2,16(t0) -80000740: 0063b533 sltu a0,t2,t1 -80000744: 00008067 ret +800007dc : +800007dc: 00008067 ret -80000748 : -80000748: ff410113 addi sp,sp,-12 -8000074c: 00112023 sw ra,0(sp) -80000750: 00b12223 sw a1,4(sp) +800007e0 : +800007e0: 00050293 mv t0,a0 +800007e4: 00c2a303 lw t1,12(t0) +800007e8: 0102a383 lw t2,16(t0) +800007ec: 0063b533 sltu a0,t2,t1 +800007f0: 00008067 ret -80000754 : -80000754: 00054583 lbu a1,0(a0) -80000758: 00058863 beqz a1,80000768 -8000075c: 01c000ef jal ra,80000778 -80000760: 00150513 addi a0,a0,1 -80000764: ff1ff06f j 80000754 +800007f4 : +800007f4: ff410113 addi sp,sp,-12 +800007f8: 00112023 sw ra,0(sp) +800007fc: 00b12223 sw a1,4(sp) -80000768 : -80000768: 00012083 lw ra,0(sp) -8000076c: 00412583 lw a1,4(sp) -80000770: 00c10113 addi sp,sp,12 -80000774: 00008067 ret +80000800 : +80000800: 00054583 lbu a1,0(a0) +80000804: 00058863 beqz a1,80000814 +80000808: 01c000ef jal ra,80000824 +8000080c: 00150513 addi a0,a0,1 +80000810: ff1ff06f j 80000800 -80000778 : -80000778: 000108b7 lui a7,0x10 -8000077c: 00b8a023 sw a1,0(a7) # 10000 -80000780: 00008067 ret +80000814 : +80000814: 00012083 lw ra,0(sp) +80000818: 00412583 lw a1,4(sp) +8000081c: 00c10113 addi sp,sp,12 +80000820: 00008067 ret -80000784 : -80000784: fd010113 addi sp,sp,-48 -80000788: 02112623 sw ra,44(sp) -8000078c: 02812423 sw s0,40(sp) -80000790: 03010413 addi s0,sp,48 -80000794: fca42e23 sw a0,-36(s0) -80000798: fdc42703 lw a4,-36(s0) -8000079c: 00f00793 li a5,15 -800007a0: 02e7e463 bltu a5,a4,800007c8 -800007a4: 810007b7 lui a5,0x81000 -800007a8: fdc42703 lw a4,-36(s0) -800007ac: 00271713 slli a4,a4,0x2 -800007b0: 1bc78793 addi a5,a5,444 # 810001bc -800007b4: 00f707b3 add a5,a4,a5 -800007b8: 0007a783 lw a5,0(a5) -800007bc: 00078513 mv a0,a5 -800007c0: f89ff0ef jal ra,80000748 -800007c4: 0740006f j 80000838 -800007c8: 02000793 li a5,32 -800007cc: fef42623 sw a5,-20(s0) -800007d0: fe0405a3 sb zero,-21(s0) -800007d4: fec42783 lw a5,-20(s0) -800007d8: ffc78793 addi a5,a5,-4 -800007dc: fdc42703 lw a4,-36(s0) -800007e0: 00f757b3 srl a5,a4,a5 -800007e4: 00f7f793 andi a5,a5,15 -800007e8: fef42223 sw a5,-28(s0) -800007ec: fe442783 lw a5,-28(s0) -800007f0: 00078663 beqz a5,800007fc -800007f4: 00100793 li a5,1 -800007f8: fef405a3 sb a5,-21(s0) -800007fc: feb44783 lbu a5,-21(s0) -80000800: 02078263 beqz a5,80000824 -80000804: 810007b7 lui a5,0x81000 -80000808: fe442703 lw a4,-28(s0) -8000080c: 00271713 slli a4,a4,0x2 -80000810: 1bc78793 addi a5,a5,444 # 810001bc -80000814: 00f707b3 add a5,a4,a5 -80000818: 0007a783 lw a5,0(a5) -8000081c: 00078513 mv a0,a5 -80000820: f29ff0ef jal ra,80000748 -80000824: fec42783 lw a5,-20(s0) -80000828: ffc78793 addi a5,a5,-4 -8000082c: fef42623 sw a5,-20(s0) -80000830: fec42783 lw a5,-20(s0) -80000834: faf040e3 bgtz a5,800007d4 -80000838: 02c12083 lw ra,44(sp) -8000083c: 02812403 lw s0,40(sp) -80000840: 03010113 addi sp,sp,48 -80000844: 00008067 ret +80000824 : +80000824: 000108b7 lui a7,0x10 +80000828: 00b8a023 sw a1,0(a7) # 10000 +8000082c: 00008067 ret -80000848 : -80000848: fe010113 addi sp,sp,-32 -8000084c: 00112e23 sw ra,28(sp) -80000850: 00812c23 sw s0,24(sp) -80000854: 02010413 addi s0,sp,32 -80000858: fea42623 sw a0,-20(s0) -8000085c: feb42423 sw a1,-24(s0) -80000860: fec42503 lw a0,-20(s0) -80000864: ee5ff0ef jal ra,80000748 -80000868: fe842503 lw a0,-24(s0) -8000086c: f19ff0ef jal ra,80000784 -80000870: 810007b7 lui a5,0x81000 -80000874: 08078513 addi a0,a5,128 # 81000080 -80000878: ed1ff0ef jal ra,80000748 -8000087c: 00000013 nop -80000880: 01c12083 lw ra,28(sp) -80000884: 01812403 lw s0,24(sp) -80000888: 02010113 addi sp,sp,32 -8000088c: 00008067 ret +80000830 : +80000830: fd010113 addi sp,sp,-48 +80000834: 02112623 sw ra,44(sp) +80000838: 02812423 sw s0,40(sp) +8000083c: 03010413 addi s0,sp,48 +80000840: fca42e23 sw a0,-36(s0) +80000844: fdc42703 lw a4,-36(s0) +80000848: 00f00793 li a5,15 +8000084c: 02e7e463 bltu a5,a4,80000874 +80000850: 810007b7 lui a5,0x81000 +80000854: fdc42703 lw a4,-36(s0) +80000858: 00271713 slli a4,a4,0x2 +8000085c: 1cc78793 addi a5,a5,460 # 810001cc +80000860: 00f707b3 add a5,a4,a5 +80000864: 0007a783 lw a5,0(a5) +80000868: 00078513 mv a0,a5 +8000086c: f89ff0ef jal ra,800007f4 +80000870: 0740006f j 800008e4 +80000874: 02000793 li a5,32 +80000878: fef42623 sw a5,-20(s0) +8000087c: fe0405a3 sb zero,-21(s0) +80000880: fec42783 lw a5,-20(s0) +80000884: ffc78793 addi a5,a5,-4 +80000888: fdc42703 lw a4,-36(s0) +8000088c: 00f757b3 srl a5,a4,a5 +80000890: 00f7f793 andi a5,a5,15 +80000894: fef42223 sw a5,-28(s0) +80000898: fe442783 lw a5,-28(s0) +8000089c: 00078663 beqz a5,800008a8 +800008a0: 00100793 li a5,1 +800008a4: fef405a3 sb a5,-21(s0) +800008a8: feb44783 lbu a5,-21(s0) +800008ac: 02078263 beqz a5,800008d0 +800008b0: 810007b7 lui a5,0x81000 +800008b4: fe442703 lw a4,-28(s0) +800008b8: 00271713 slli a4,a4,0x2 +800008bc: 1cc78793 addi a5,a5,460 # 810001cc +800008c0: 00f707b3 add a5,a4,a5 +800008c4: 0007a783 lw a5,0(a5) +800008c8: 00078513 mv a0,a5 +800008cc: f29ff0ef jal ra,800007f4 +800008d0: fec42783 lw a5,-20(s0) +800008d4: ffc78793 addi a5,a5,-4 +800008d8: fef42623 sw a5,-20(s0) +800008dc: fec42783 lw a5,-20(s0) +800008e0: faf040e3 bgtz a5,80000880 +800008e4: 02c12083 lw ra,44(sp) +800008e8: 02812403 lw s0,40(sp) +800008ec: 03010113 addi sp,sp,48 +800008f0: 00008067 ret -80000890 : -80000890: fd010113 addi sp,sp,-48 -80000894: 02112623 sw ra,44(sp) -80000898: 02812423 sw s0,40(sp) -8000089c: 03010413 addi s0,sp,48 -800008a0: fca42e23 sw a0,-36(s0) -800008a4: fcb42c23 sw a1,-40(s0) -800008a8: fcc42a23 sw a2,-44(s0) -800008ac: fcd42823 sw a3,-48(s0) -800008b0: 810037b7 lui a5,0x81003 -800008b4: fdc42703 lw a4,-36(s0) -800008b8: 94e7ae23 sw a4,-1700(a5) # 8100295c -800008bc: 810037b7 lui a5,0x81003 -800008c0: 95c78793 addi a5,a5,-1700 # 8100295c -800008c4: fd842703 lw a4,-40(s0) -800008c8: 00e7a223 sw a4,4(a5) -800008cc: 810037b7 lui a5,0x81003 -800008d0: 95c78793 addi a5,a5,-1700 # 8100295c -800008d4: fd442703 lw a4,-44(s0) -800008d8: 00e7a423 sw a4,8(a5) -800008dc: 810037b7 lui a5,0x81003 -800008e0: 95c78793 addi a5,a5,-1700 # 8100295c -800008e4: fd042703 lw a4,-48(s0) -800008e8: 00e7a623 sw a4,12(a5) -800008ec: 8d9ff0ef jal ra,800001c4 -800008f0: fea42423 sw a0,-24(s0) -800008f4: fd042703 lw a4,-48(s0) -800008f8: fe842783 lw a5,-24(s0) -800008fc: 02f757b3 divu a5,a4,a5 -80000900: fef42623 sw a5,-20(s0) -80000904: fd042703 lw a4,-48(s0) -80000908: fe842783 lw a5,-24(s0) -8000090c: 02f777b3 remu a5,a4,a5 -80000910: 00078863 beqz a5,80000920 -80000914: fec42783 lw a5,-20(s0) -80000918: 00178793 addi a5,a5,1 -8000091c: fef42623 sw a5,-20(s0) -80000920: fec42583 lw a1,-20(s0) -80000924: 810007b7 lui a5,0x81000 -80000928: 0c478513 addi a0,a5,196 # 810000c4 -8000092c: f1dff0ef jal ra,80000848 -80000930: 810037b7 lui a5,0x81003 -80000934: 95c78793 addi a5,a5,-1700 # 8100295c -80000938: fec42703 lw a4,-20(s0) -8000093c: 00e7a823 sw a4,16(a5) -80000940: fd042703 lw a4,-48(s0) -80000944: fe842783 lw a5,-24(s0) -80000948: 02f76263 bltu a4,a5,8000096c -8000094c: 810037b7 lui a5,0x81003 -80000950: 95c78693 addi a3,a5,-1700 # 8100295c -80000954: 800017b7 lui a5,0x80001 -80000958: 9c478613 addi a2,a5,-1596 # 800009c4 -8000095c: fe842583 lw a1,-24(s0) -80000960: fd042503 lw a0,-48(s0) -80000964: ac1ff0ef jal ra,80000424 -80000968: 0200006f j 80000988 -8000096c: 810037b7 lui a5,0x81003 -80000970: 95c78693 addi a3,a5,-1700 # 8100295c -80000974: 800017b7 lui a5,0x80001 -80000978: 9c478613 addi a2,a5,-1596 # 800009c4 -8000097c: fd042583 lw a1,-48(s0) -80000980: fd042503 lw a0,-48(s0) -80000984: aa1ff0ef jal ra,80000424 -80000988: 835ff0ef jal ra,800001bc -8000098c: fea42223 sw a0,-28(s0) +800008f4 : +800008f4: fe010113 addi sp,sp,-32 +800008f8: 00112e23 sw ra,28(sp) +800008fc: 00812c23 sw s0,24(sp) +80000900: 02010413 addi s0,sp,32 +80000904: fea42623 sw a0,-20(s0) +80000908: feb42423 sw a1,-24(s0) +8000090c: fec42503 lw a0,-20(s0) +80000910: ee5ff0ef jal ra,800007f4 +80000914: fe842503 lw a0,-24(s0) +80000918: f19ff0ef jal ra,80000830 +8000091c: 810007b7 lui a5,0x81000 +80000920: 09078513 addi a0,a5,144 # 81000090 +80000924: ed1ff0ef jal ra,800007f4 +80000928: 00000013 nop +8000092c: 01c12083 lw ra,28(sp) +80000930: 01812403 lw s0,24(sp) +80000934: 02010113 addi sp,sp,32 +80000938: 00008067 ret + +8000093c : +8000093c: fd010113 addi sp,sp,-48 +80000940: 02112623 sw ra,44(sp) +80000944: 02812423 sw s0,40(sp) +80000948: 03010413 addi s0,sp,48 +8000094c: fca42e23 sw a0,-36(s0) +80000950: fcb42c23 sw a1,-40(s0) +80000954: fcc42a23 sw a2,-44(s0) +80000958: fcd42823 sw a3,-48(s0) +8000095c: 810267b7 lui a5,0x81026 +80000960: fdc42703 lw a4,-36(s0) +80000964: 1ce7ae23 sw a4,476(a5) # 810261dc +80000968: 810267b7 lui a5,0x81026 +8000096c: 1dc78793 addi a5,a5,476 # 810261dc +80000970: fd842703 lw a4,-40(s0) +80000974: 00e7a223 sw a4,4(a5) +80000978: 810267b7 lui a5,0x81026 +8000097c: 1dc78793 addi a5,a5,476 # 810261dc +80000980: fd442703 lw a4,-44(s0) +80000984: 00e7a423 sw a4,8(a5) +80000988: 810267b7 lui a5,0x81026 +8000098c: 1dc78793 addi a5,a5,476 # 810261dc 80000990: fd042703 lw a4,-48(s0) -80000994: fe442783 lw a5,-28(s0) -80000998: 00e7f863 bgeu a5,a4,800009a8 -8000099c: fe442503 lw a0,-28(s0) -800009a0: b71ff0ef jal ra,80000510 -800009a4: 00c0006f j 800009b0 -800009a8: fd042503 lw a0,-48(s0) -800009ac: b65ff0ef jal ra,80000510 -800009b0: 00000013 nop -800009b4: 02c12083 lw ra,44(sp) -800009b8: 02812403 lw s0,40(sp) -800009bc: 03010113 addi sp,sp,48 -800009c0: 00008067 ret +80000994: 00e7a623 sw a4,12(a5) +80000998: 865ff0ef jal ra,800001fc +8000099c: fea42423 sw a0,-24(s0) +800009a0: fd042703 lw a4,-48(s0) +800009a4: fe842783 lw a5,-24(s0) +800009a8: 02f757b3 divu a5,a4,a5 +800009ac: fef42623 sw a5,-20(s0) +800009b0: fd042703 lw a4,-48(s0) +800009b4: fe842783 lw a5,-24(s0) +800009b8: 02f777b3 remu a5,a4,a5 +800009bc: 00078863 beqz a5,800009cc +800009c0: fec42783 lw a5,-20(s0) +800009c4: 00178793 addi a5,a5,1 +800009c8: fef42623 sw a5,-20(s0) +800009cc: fec42583 lw a1,-20(s0) +800009d0: 810007b7 lui a5,0x81000 +800009d4: 0d478513 addi a0,a5,212 # 810000d4 +800009d8: f1dff0ef jal ra,800008f4 +800009dc: 810267b7 lui a5,0x81026 +800009e0: 1dc78793 addi a5,a5,476 # 810261dc +800009e4: fec42703 lw a4,-20(s0) +800009e8: 00e7a823 sw a4,16(a5) +800009ec: fd042703 lw a4,-48(s0) +800009f0: fe842783 lw a5,-24(s0) +800009f4: 02f76263 bltu a4,a5,80000a18 +800009f8: 810267b7 lui a5,0x81026 +800009fc: 1dc78693 addi a3,a5,476 # 810261dc +80000a00: 800017b7 lui a5,0x80001 +80000a04: a7078613 addi a2,a5,-1424 # 80000a70 +80000a08: fe842583 lw a1,-24(s0) +80000a0c: fd042503 lw a0,-48(s0) +80000a10: aa5ff0ef jal ra,800004b4 +80000a14: 0200006f j 80000a34 +80000a18: 810267b7 lui a5,0x81026 +80000a1c: 1dc78693 addi a3,a5,476 # 810261dc +80000a20: 800017b7 lui a5,0x80001 +80000a24: a7078613 addi a2,a5,-1424 # 80000a70 +80000a28: fd042583 lw a1,-48(s0) +80000a2c: fd042503 lw a0,-48(s0) +80000a30: a85ff0ef jal ra,800004b4 +80000a34: fc0ff0ef jal ra,800001f4 +80000a38: fea42223 sw a0,-28(s0) +80000a3c: fd042703 lw a4,-48(s0) +80000a40: fe442783 lw a5,-28(s0) +80000a44: 00e7f863 bgeu a5,a4,80000a54 +80000a48: fe442503 lw a0,-28(s0) +80000a4c: b59ff0ef jal ra,800005a4 +80000a50: 00c0006f j 80000a5c +80000a54: fd042503 lw a0,-48(s0) +80000a58: b4dff0ef jal ra,800005a4 +80000a5c: 00000013 nop +80000a60: 02c12083 lw ra,44(sp) +80000a64: 02812403 lw s0,40(sp) +80000a68: 03010113 addi sp,sp,48 +80000a6c: 00008067 ret -800009c4 <_vx_mat_mult>: -800009c4: fa010113 addi sp,sp,-96 -800009c8: 04112e23 sw ra,92(sp) -800009cc: 04812c23 sw s0,88(sp) -800009d0: 06010413 addi s0,sp,96 -800009d4: faa42623 sw a0,-84(s0) -800009d8: fab42423 sw a1,-88(s0) -800009dc: c01ff0ef jal ra,800005dc -800009e0: fca42c23 sw a0,-40(s0) -800009e4: fd842783 lw a5,-40(s0) -800009e8: 0007a783 lw a5,0(a5) -800009ec: fcf42a23 sw a5,-44(s0) -800009f0: fd842783 lw a5,-40(s0) -800009f4: 0047a783 lw a5,4(a5) -800009f8: fcf42823 sw a5,-48(s0) -800009fc: fd842783 lw a5,-40(s0) -80000a00: 0087a783 lw a5,8(a5) -80000a04: fcf42623 sw a5,-52(s0) -80000a08: fd842783 lw a5,-40(s0) -80000a0c: 0107a783 lw a5,16(a5) -80000a10: fef42623 sw a5,-20(s0) -80000a14: fec42703 lw a4,-20(s0) -80000a18: fac42783 lw a5,-84(s0) -80000a1c: 02f707b3 mul a5,a4,a5 -80000a20: fef42423 sw a5,-24(s0) -80000a24: fec42783 lw a5,-20(s0) -80000a28: 00079a63 bnez a5,80000a3c <_vx_mat_mult+0x78> -80000a2c: 00100793 li a5,1 -80000a30: fef42623 sw a5,-20(s0) -80000a34: fac42783 lw a5,-84(s0) -80000a38: fef42423 sw a5,-24(s0) -80000a3c: fd842783 lw a5,-40(s0) -80000a40: 00c7a783 lw a5,12(a5) -80000a44: fcf42423 sw a5,-56(s0) -80000a48: fe042223 sw zero,-28(s0) -80000a4c: 0d80006f j 80000b24 <_vx_mat_mult+0x160> -80000a50: fe042023 sw zero,-32(s0) -80000a54: fc042e23 sw zero,-36(s0) -80000a58: 0780006f j 80000ad0 <_vx_mat_mult+0x10c> -80000a5c: fa842703 lw a4,-88(s0) -80000a60: fc842783 lw a5,-56(s0) -80000a64: 02f707b3 mul a5,a4,a5 -80000a68: fdc42703 lw a4,-36(s0) -80000a6c: 00f707b3 add a5,a4,a5 -80000a70: fcf42223 sw a5,-60(s0) -80000a74: fc842703 lw a4,-56(s0) -80000a78: fdc42783 lw a5,-36(s0) -80000a7c: 02f707b3 mul a5,a4,a5 -80000a80: fe842703 lw a4,-24(s0) -80000a84: 00f707b3 add a5,a4,a5 -80000a88: fcf42023 sw a5,-64(s0) -80000a8c: fc442783 lw a5,-60(s0) -80000a90: 00279793 slli a5,a5,0x2 -80000a94: fd442703 lw a4,-44(s0) -80000a98: 00f707b3 add a5,a4,a5 -80000a9c: 0007a703 lw a4,0(a5) -80000aa0: fc042783 lw a5,-64(s0) -80000aa4: 00279793 slli a5,a5,0x2 -80000aa8: fd042683 lw a3,-48(s0) -80000aac: 00f687b3 add a5,a3,a5 -80000ab0: 0007a783 lw a5,0(a5) -80000ab4: 02f707b3 mul a5,a4,a5 -80000ab8: fe042703 lw a4,-32(s0) -80000abc: 00f707b3 add a5,a4,a5 -80000ac0: fef42023 sw a5,-32(s0) -80000ac4: fdc42783 lw a5,-36(s0) -80000ac8: 00178793 addi a5,a5,1 -80000acc: fcf42e23 sw a5,-36(s0) -80000ad0: fdc42703 lw a4,-36(s0) -80000ad4: fc842783 lw a5,-56(s0) -80000ad8: f8f762e3 bltu a4,a5,80000a5c <_vx_mat_mult+0x98> -80000adc: fa842703 lw a4,-88(s0) -80000ae0: fc842783 lw a5,-56(s0) -80000ae4: 02f70733 mul a4,a4,a5 -80000ae8: fe842783 lw a5,-24(s0) -80000aec: 00f707b3 add a5,a4,a5 -80000af0: faf42e23 sw a5,-68(s0) -80000af4: fbc42783 lw a5,-68(s0) -80000af8: 00279793 slli a5,a5,0x2 -80000afc: fcc42703 lw a4,-52(s0) -80000b00: 00f707b3 add a5,a4,a5 -80000b04: fe042703 lw a4,-32(s0) -80000b08: 00e7a023 sw a4,0(a5) -80000b0c: fe842783 lw a5,-24(s0) -80000b10: 00178793 addi a5,a5,1 -80000b14: fef42423 sw a5,-24(s0) -80000b18: fe442783 lw a5,-28(s0) -80000b1c: 00178793 addi a5,a5,1 -80000b20: fef42223 sw a5,-28(s0) -80000b24: fe442783 lw a5,-28(s0) -80000b28: fec42703 lw a4,-20(s0) -80000b2c: f2e7e2e3 bltu a5,a4,80000a50 <_vx_mat_mult+0x8c> -80000b30: 00000013 nop -80000b34: 05c12083 lw ra,92(sp) -80000b38: 05812403 lw s0,88(sp) -80000b3c: 06010113 addi sp,sp,96 -80000b40: 00008067 ret +80000a70 <_vx_mat_mult>: +80000a70: fa010113 addi sp,sp,-96 +80000a74: 04112e23 sw ra,92(sp) +80000a78: 04812c23 sw s0,88(sp) +80000a7c: 06010413 addi s0,sp,96 +80000a80: faa42623 sw a0,-84(s0) +80000a84: fab42423 sw a1,-88(s0) +80000a88: be9ff0ef jal ra,80000670 +80000a8c: fca42c23 sw a0,-40(s0) +80000a90: fd842783 lw a5,-40(s0) +80000a94: 0007a783 lw a5,0(a5) +80000a98: fcf42a23 sw a5,-44(s0) +80000a9c: fd842783 lw a5,-40(s0) +80000aa0: 0047a783 lw a5,4(a5) +80000aa4: fcf42823 sw a5,-48(s0) +80000aa8: fd842783 lw a5,-40(s0) +80000aac: 0087a783 lw a5,8(a5) +80000ab0: fcf42623 sw a5,-52(s0) +80000ab4: fd842783 lw a5,-40(s0) +80000ab8: 0107a783 lw a5,16(a5) +80000abc: fef42623 sw a5,-20(s0) +80000ac0: fec42703 lw a4,-20(s0) +80000ac4: fac42783 lw a5,-84(s0) +80000ac8: 02f707b3 mul a5,a4,a5 +80000acc: fef42423 sw a5,-24(s0) +80000ad0: fec42783 lw a5,-20(s0) +80000ad4: 00079a63 bnez a5,80000ae8 <_vx_mat_mult+0x78> +80000ad8: 00100793 li a5,1 +80000adc: fef42623 sw a5,-20(s0) +80000ae0: fac42783 lw a5,-84(s0) +80000ae4: fef42423 sw a5,-24(s0) +80000ae8: fd842783 lw a5,-40(s0) +80000aec: 00c7a783 lw a5,12(a5) +80000af0: fcf42423 sw a5,-56(s0) +80000af4: fe042223 sw zero,-28(s0) +80000af8: 0d80006f j 80000bd0 <_vx_mat_mult+0x160> +80000afc: fe042023 sw zero,-32(s0) +80000b00: fc042e23 sw zero,-36(s0) +80000b04: 0780006f j 80000b7c <_vx_mat_mult+0x10c> +80000b08: fa842703 lw a4,-88(s0) +80000b0c: fc842783 lw a5,-56(s0) +80000b10: 02f707b3 mul a5,a4,a5 +80000b14: fdc42703 lw a4,-36(s0) +80000b18: 00f707b3 add a5,a4,a5 +80000b1c: fcf42223 sw a5,-60(s0) +80000b20: fc842703 lw a4,-56(s0) +80000b24: fdc42783 lw a5,-36(s0) +80000b28: 02f707b3 mul a5,a4,a5 +80000b2c: fe842703 lw a4,-24(s0) +80000b30: 00f707b3 add a5,a4,a5 +80000b34: fcf42023 sw a5,-64(s0) +80000b38: fc442783 lw a5,-60(s0) +80000b3c: 00279793 slli a5,a5,0x2 +80000b40: fd442703 lw a4,-44(s0) +80000b44: 00f707b3 add a5,a4,a5 +80000b48: 0007a703 lw a4,0(a5) +80000b4c: fc042783 lw a5,-64(s0) +80000b50: 00279793 slli a5,a5,0x2 +80000b54: fd042683 lw a3,-48(s0) +80000b58: 00f687b3 add a5,a3,a5 +80000b5c: 0007a783 lw a5,0(a5) +80000b60: 02f707b3 mul a5,a4,a5 +80000b64: fe042703 lw a4,-32(s0) +80000b68: 00f707b3 add a5,a4,a5 +80000b6c: fef42023 sw a5,-32(s0) +80000b70: fdc42783 lw a5,-36(s0) +80000b74: 00178793 addi a5,a5,1 +80000b78: fcf42e23 sw a5,-36(s0) +80000b7c: fdc42703 lw a4,-36(s0) +80000b80: fc842783 lw a5,-56(s0) +80000b84: f8f762e3 bltu a4,a5,80000b08 <_vx_mat_mult+0x98> +80000b88: fa842703 lw a4,-88(s0) +80000b8c: fc842783 lw a5,-56(s0) +80000b90: 02f70733 mul a4,a4,a5 +80000b94: fe842783 lw a5,-24(s0) +80000b98: 00f707b3 add a5,a4,a5 +80000b9c: faf42e23 sw a5,-68(s0) +80000ba0: fbc42783 lw a5,-68(s0) +80000ba4: 00279793 slli a5,a5,0x2 +80000ba8: fcc42703 lw a4,-52(s0) +80000bac: 00f707b3 add a5,a4,a5 +80000bb0: fe042703 lw a4,-32(s0) +80000bb4: 00e7a023 sw a4,0(a5) +80000bb8: fe842783 lw a5,-24(s0) +80000bbc: 00178793 addi a5,a5,1 +80000bc0: fef42423 sw a5,-24(s0) +80000bc4: fe442783 lw a5,-28(s0) +80000bc8: 00178793 addi a5,a5,1 +80000bcc: fef42223 sw a5,-28(s0) +80000bd0: fe442783 lw a5,-28(s0) +80000bd4: fec42703 lw a4,-20(s0) +80000bd8: f2e7e2e3 bltu a5,a4,80000afc <_vx_mat_mult+0x8c> +80000bdc: 00000013 nop +80000be0: 05c12083 lw ra,92(sp) +80000be4: 05812403 lw s0,88(sp) +80000be8: 06010113 addi sp,sp,96 +80000bec: 00008067 ret -80000b44 : -80000b44: fc010113 addi sp,sp,-64 -80000b48: 02112e23 sw ra,60(sp) -80000b4c: 02812c23 sw s0,56(sp) -80000b50: 04010413 addi s0,sp,64 -80000b54: fca42e23 sw a0,-36(s0) -80000b58: fcb42c23 sw a1,-40(s0) -80000b5c: fcc42a23 sw a2,-44(s0) -80000b60: fcd42823 sw a3,-48(s0) -80000b64: fce42623 sw a4,-52(s0) -80000b68: 810037b7 lui a5,0x81003 -80000b6c: fdc42703 lw a4,-36(s0) -80000b70: 96e7a823 sw a4,-1680(a5) # 81002970 -80000b74: 810037b7 lui a5,0x81003 -80000b78: 97078793 addi a5,a5,-1680 # 81002970 -80000b7c: fd842703 lw a4,-40(s0) -80000b80: 00e7a223 sw a4,4(a5) -80000b84: 810037b7 lui a5,0x81003 -80000b88: 97078793 addi a5,a5,-1680 # 81002970 -80000b8c: fd442703 lw a4,-44(s0) -80000b90: 00e7a423 sw a4,8(a5) -80000b94: 810037b7 lui a5,0x81003 -80000b98: 97078793 addi a5,a5,-1680 # 81002970 -80000b9c: fcc42703 lw a4,-52(s0) -80000ba0: 00e7a623 sw a4,12(a5) -80000ba4: 810037b7 lui a5,0x81003 -80000ba8: 97078793 addi a5,a5,-1680 # 81002970 -80000bac: fd042703 lw a4,-48(s0) -80000bb0: 00e7a823 sw a4,16(a5) -80000bb4: e10ff0ef jal ra,800001c4 -80000bb8: fea42423 sw a0,-24(s0) -80000bbc: fcc42703 lw a4,-52(s0) -80000bc0: fe842783 lw a5,-24(s0) -80000bc4: 02f757b3 divu a5,a4,a5 -80000bc8: fef42623 sw a5,-20(s0) -80000bcc: fcc42703 lw a4,-52(s0) -80000bd0: fe842783 lw a5,-24(s0) -80000bd4: 02f777b3 remu a5,a4,a5 -80000bd8: 00078863 beqz a5,80000be8 -80000bdc: fec42783 lw a5,-20(s0) -80000be0: 00178793 addi a5,a5,1 -80000be4: fef42623 sw a5,-20(s0) -80000be8: 810037b7 lui a5,0x81003 -80000bec: 97078793 addi a5,a5,-1680 # 81002970 -80000bf0: fec42703 lw a4,-20(s0) -80000bf4: 00e7aa23 sw a4,20(a5) -80000bf8: fcc42703 lw a4,-52(s0) -80000bfc: fe842783 lw a5,-24(s0) -80000c00: 02f76263 bltu a4,a5,80000c24 -80000c04: 810037b7 lui a5,0x81003 -80000c08: 97078693 addi a3,a5,-1680 # 81002970 -80000c0c: 800017b7 lui a5,0x80001 -80000c10: c7c78613 addi a2,a5,-900 # 80000c7c -80000c14: fe842583 lw a1,-24(s0) -80000c18: fd042503 lw a0,-48(s0) -80000c1c: 809ff0ef jal ra,80000424 -80000c20: 0200006f j 80000c40 -80000c24: 810037b7 lui a5,0x81003 -80000c28: 97078693 addi a3,a5,-1680 # 81002970 -80000c2c: 800017b7 lui a5,0x80001 -80000c30: c7c78613 addi a2,a5,-900 # 80000c7c -80000c34: fcc42583 lw a1,-52(s0) -80000c38: fd042503 lw a0,-48(s0) -80000c3c: fe8ff0ef jal ra,80000424 -80000c40: d7cff0ef jal ra,800001bc -80000c44: fea42223 sw a0,-28(s0) -80000c48: fd042703 lw a4,-48(s0) -80000c4c: fe442783 lw a5,-28(s0) -80000c50: 00e7f863 bgeu a5,a4,80000c60 -80000c54: fe442503 lw a0,-28(s0) -80000c58: 8b9ff0ef jal ra,80000510 -80000c5c: 00c0006f j 80000c68 -80000c60: fd042503 lw a0,-48(s0) -80000c64: 8adff0ef jal ra,80000510 -80000c68: 00000013 nop -80000c6c: 03c12083 lw ra,60(sp) -80000c70: 03812403 lw s0,56(sp) -80000c74: 04010113 addi sp,sp,64 -80000c78: 00008067 ret +80000bf0 : +80000bf0: fc010113 addi sp,sp,-64 +80000bf4: 02112e23 sw ra,60(sp) +80000bf8: 02812c23 sw s0,56(sp) +80000bfc: 04010413 addi s0,sp,64 +80000c00: fca42e23 sw a0,-36(s0) +80000c04: fcb42c23 sw a1,-40(s0) +80000c08: fcc42a23 sw a2,-44(s0) +80000c0c: fcd42823 sw a3,-48(s0) +80000c10: fce42623 sw a4,-52(s0) +80000c14: 810267b7 lui a5,0x81026 +80000c18: fdc42703 lw a4,-36(s0) +80000c1c: 1ee7a823 sw a4,496(a5) # 810261f0 +80000c20: 810267b7 lui a5,0x81026 +80000c24: 1f078793 addi a5,a5,496 # 810261f0 +80000c28: fd842703 lw a4,-40(s0) +80000c2c: 00e7a223 sw a4,4(a5) +80000c30: 810267b7 lui a5,0x81026 +80000c34: 1f078793 addi a5,a5,496 # 810261f0 +80000c38: fd442703 lw a4,-44(s0) +80000c3c: 00e7a423 sw a4,8(a5) +80000c40: 810267b7 lui a5,0x81026 +80000c44: 1f078793 addi a5,a5,496 # 810261f0 +80000c48: fcc42703 lw a4,-52(s0) +80000c4c: 00e7a623 sw a4,12(a5) +80000c50: 810267b7 lui a5,0x81026 +80000c54: 1f078793 addi a5,a5,496 # 810261f0 +80000c58: fd042703 lw a4,-48(s0) +80000c5c: 00e7a823 sw a4,16(a5) +80000c60: d9cff0ef jal ra,800001fc +80000c64: fea42423 sw a0,-24(s0) +80000c68: fcc42703 lw a4,-52(s0) +80000c6c: fe842783 lw a5,-24(s0) +80000c70: 02f757b3 divu a5,a4,a5 +80000c74: fef42623 sw a5,-20(s0) +80000c78: fcc42703 lw a4,-52(s0) +80000c7c: fe842783 lw a5,-24(s0) +80000c80: 02f777b3 remu a5,a4,a5 +80000c84: 00078863 beqz a5,80000c94 +80000c88: fec42783 lw a5,-20(s0) +80000c8c: 00178793 addi a5,a5,1 +80000c90: fef42623 sw a5,-20(s0) +80000c94: 810267b7 lui a5,0x81026 +80000c98: 1f078793 addi a5,a5,496 # 810261f0 +80000c9c: fec42703 lw a4,-20(s0) +80000ca0: 00e7aa23 sw a4,20(a5) +80000ca4: fcc42703 lw a4,-52(s0) +80000ca8: fe842783 lw a5,-24(s0) +80000cac: 02f76263 bltu a4,a5,80000cd0 +80000cb0: 810267b7 lui a5,0x81026 +80000cb4: 1f078693 addi a3,a5,496 # 810261f0 +80000cb8: 800017b7 lui a5,0x80001 +80000cbc: d2878613 addi a2,a5,-728 # 80000d28 +80000cc0: fe842583 lw a1,-24(s0) +80000cc4: fd042503 lw a0,-48(s0) +80000cc8: fecff0ef jal ra,800004b4 +80000ccc: 0200006f j 80000cec +80000cd0: 810267b7 lui a5,0x81026 +80000cd4: 1f078693 addi a3,a5,496 # 810261f0 +80000cd8: 800017b7 lui a5,0x80001 +80000cdc: d2878613 addi a2,a5,-728 # 80000d28 +80000ce0: fcc42583 lw a1,-52(s0) +80000ce4: fd042503 lw a0,-48(s0) +80000ce8: fccff0ef jal ra,800004b4 +80000cec: d08ff0ef jal ra,800001f4 +80000cf0: fea42223 sw a0,-28(s0) +80000cf4: fd042703 lw a4,-48(s0) +80000cf8: fe442783 lw a5,-28(s0) +80000cfc: 00e7f863 bgeu a5,a4,80000d0c +80000d00: fe442503 lw a0,-28(s0) +80000d04: 8a1ff0ef jal ra,800005a4 +80000d08: 00c0006f j 80000d14 +80000d0c: fd042503 lw a0,-48(s0) +80000d10: 895ff0ef jal ra,800005a4 +80000d14: 00000013 nop +80000d18: 03c12083 lw ra,60(sp) +80000d1c: 03812403 lw s0,56(sp) +80000d20: 04010113 addi sp,sp,64 +80000d24: 00008067 ret -80000c7c <_vx_mat_add>: -80000c7c: fb010113 addi sp,sp,-80 -80000c80: 04112623 sw ra,76(sp) -80000c84: 04812423 sw s0,72(sp) -80000c88: 05010413 addi s0,sp,80 -80000c8c: faa42e23 sw a0,-68(s0) -80000c90: fab42c23 sw a1,-72(s0) -80000c94: 949ff0ef jal ra,800005dc -80000c98: fea42023 sw a0,-32(s0) -80000c9c: fe042783 lw a5,-32(s0) -80000ca0: 0007a783 lw a5,0(a5) -80000ca4: fcf42e23 sw a5,-36(s0) -80000ca8: fe042783 lw a5,-32(s0) -80000cac: 0047a783 lw a5,4(a5) -80000cb0: fcf42c23 sw a5,-40(s0) -80000cb4: fe042783 lw a5,-32(s0) -80000cb8: 0087a783 lw a5,8(a5) -80000cbc: fcf42a23 sw a5,-44(s0) -80000cc0: fe042783 lw a5,-32(s0) -80000cc4: 0147a783 lw a5,20(a5) -80000cc8: fef42623 sw a5,-20(s0) -80000ccc: fec42703 lw a4,-20(s0) -80000cd0: fbc42783 lw a5,-68(s0) -80000cd4: 02f707b3 mul a5,a4,a5 -80000cd8: fef42423 sw a5,-24(s0) -80000cdc: fec42783 lw a5,-20(s0) -80000ce0: 00079a63 bnez a5,80000cf4 <_vx_mat_add+0x78> -80000ce4: 00100793 li a5,1 -80000ce8: fef42623 sw a5,-20(s0) -80000cec: fbc42783 lw a5,-68(s0) -80000cf0: fef42423 sw a5,-24(s0) -80000cf4: fe042783 lw a5,-32(s0) -80000cf8: 00c7a783 lw a5,12(a5) -80000cfc: fcf42823 sw a5,-48(s0) -80000d00: fe042223 sw zero,-28(s0) -80000d04: 0c00006f j 80000dc4 <_vx_mat_add+0x148> -80000d08: fb842703 lw a4,-72(s0) -80000d0c: fd042783 lw a5,-48(s0) -80000d10: 02f70733 mul a4,a4,a5 -80000d14: fe842783 lw a5,-24(s0) -80000d18: 00f707b3 add a5,a4,a5 -80000d1c: fcf42623 sw a5,-52(s0) -80000d20: fe842703 lw a4,-24(s0) -80000d24: fd042783 lw a5,-48(s0) -80000d28: 00f737b3 sltu a5,a4,a5 -80000d2c: 0ff7f793 andi a5,a5,255 -80000d30: fcf42423 sw a5,-56(s0) -80000d34: fc842783 lw a5,-56(s0) -80000d38: 0017b793 seqz a5,a5 -80000d3c: fcf403a3 sb a5,-57(s0) -80000d40: fc744783 lbu a5,-57(s0) -80000d44: 00078f13 mv t5,a5 -80000d48: 800017b7 lui a5,0x80001 -80000d4c: db078f93 addi t6,a5,-592 # 80000db0 -80000d50: 000f206b 0xf206b -80000d54: 01ff707b 0x1ff707b -80000d58: fcc42783 lw a5,-52(s0) -80000d5c: 00279793 slli a5,a5,0x2 -80000d60: fdc42703 lw a4,-36(s0) -80000d64: 00f707b3 add a5,a4,a5 -80000d68: 0007a683 lw a3,0(a5) -80000d6c: fcc42783 lw a5,-52(s0) -80000d70: 00279793 slli a5,a5,0x2 -80000d74: fd842703 lw a4,-40(s0) -80000d78: 00f707b3 add a5,a4,a5 -80000d7c: 0007a703 lw a4,0(a5) -80000d80: fcc42783 lw a5,-52(s0) -80000d84: 00279793 slli a5,a5,0x2 -80000d88: fd442603 lw a2,-44(s0) -80000d8c: 00f607b3 add a5,a2,a5 -80000d90: 00e68733 add a4,a3,a4 -80000d94: 00e7a023 sw a4,0(a5) -80000d98: fe842783 lw a5,-24(s0) -80000d9c: 00178793 addi a5,a5,1 -80000da0: fef42423 sw a5,-24(s0) -80000da4: 800017b7 lui a5,0x80001 -80000da8: db478e13 addi t3,a5,-588 # 80000db4 -80000dac: 000e0067 jr t3 -80000db0: 00000013 nop -80000db4: 0000306b 0x306b -80000db8: fe442783 lw a5,-28(s0) -80000dbc: 00178793 addi a5,a5,1 -80000dc0: fef42223 sw a5,-28(s0) -80000dc4: fe442783 lw a5,-28(s0) -80000dc8: fec42703 lw a4,-20(s0) -80000dcc: f2e7eee3 bltu a5,a4,80000d08 <_vx_mat_add+0x8c> -80000dd0: 00000013 nop -80000dd4: 04c12083 lw ra,76(sp) -80000dd8: 04812403 lw s0,72(sp) -80000ddc: 05010113 addi sp,sp,80 -80000de0: 00008067 ret - -80000de4 : -80000de4: fc010113 addi sp,sp,-64 -80000de8: 02112e23 sw ra,60(sp) -80000dec: 02812c23 sw s0,56(sp) -80000df0: 04010413 addi s0,sp,64 -80000df4: fca42e23 sw a0,-36(s0) -80000df8: fcb42c23 sw a1,-40(s0) -80000dfc: fcc42a23 sw a2,-44(s0) -80000e00: fcd42823 sw a3,-48(s0) -80000e04: fce42623 sw a4,-52(s0) -80000e08: 810037b7 lui a5,0x81003 +80000d28 <_vx_mat_add>: +80000d28: fb010113 addi sp,sp,-80 +80000d2c: 04112623 sw ra,76(sp) +80000d30: 04812423 sw s0,72(sp) +80000d34: 05010413 addi s0,sp,80 +80000d38: faa42e23 sw a0,-68(s0) +80000d3c: fab42c23 sw a1,-72(s0) +80000d40: 931ff0ef jal ra,80000670 +80000d44: fea42023 sw a0,-32(s0) +80000d48: fe042783 lw a5,-32(s0) +80000d4c: 0007a783 lw a5,0(a5) +80000d50: fcf42e23 sw a5,-36(s0) +80000d54: fe042783 lw a5,-32(s0) +80000d58: 0047a783 lw a5,4(a5) +80000d5c: fcf42c23 sw a5,-40(s0) +80000d60: fe042783 lw a5,-32(s0) +80000d64: 0087a783 lw a5,8(a5) +80000d68: fcf42a23 sw a5,-44(s0) +80000d6c: fe042783 lw a5,-32(s0) +80000d70: 0147a783 lw a5,20(a5) +80000d74: fef42623 sw a5,-20(s0) +80000d78: fec42703 lw a4,-20(s0) +80000d7c: fbc42783 lw a5,-68(s0) +80000d80: 02f707b3 mul a5,a4,a5 +80000d84: fef42423 sw a5,-24(s0) +80000d88: fec42783 lw a5,-20(s0) +80000d8c: 00079a63 bnez a5,80000da0 <_vx_mat_add+0x78> +80000d90: 00100793 li a5,1 +80000d94: fef42623 sw a5,-20(s0) +80000d98: fbc42783 lw a5,-68(s0) +80000d9c: fef42423 sw a5,-24(s0) +80000da0: fe042783 lw a5,-32(s0) +80000da4: 00c7a783 lw a5,12(a5) +80000da8: fcf42823 sw a5,-48(s0) +80000dac: fe042223 sw zero,-28(s0) +80000db0: 0c00006f j 80000e70 <_vx_mat_add+0x148> +80000db4: fb842703 lw a4,-72(s0) +80000db8: fd042783 lw a5,-48(s0) +80000dbc: 02f70733 mul a4,a4,a5 +80000dc0: fe842783 lw a5,-24(s0) +80000dc4: 00f707b3 add a5,a4,a5 +80000dc8: fcf42623 sw a5,-52(s0) +80000dcc: fe842703 lw a4,-24(s0) +80000dd0: fd042783 lw a5,-48(s0) +80000dd4: 00f737b3 sltu a5,a4,a5 +80000dd8: 0ff7f793 andi a5,a5,255 +80000ddc: fcf42423 sw a5,-56(s0) +80000de0: fc842783 lw a5,-56(s0) +80000de4: 0017b793 seqz a5,a5 +80000de8: fcf403a3 sb a5,-57(s0) +80000dec: fc744783 lbu a5,-57(s0) +80000df0: 00078f13 mv t5,a5 +80000df4: 800017b7 lui a5,0x80001 +80000df8: e5c78f93 addi t6,a5,-420 # 80000e5c +80000dfc: 000f206b 0xf206b +80000e00: 01ff707b 0x1ff707b +80000e04: fcc42783 lw a5,-52(s0) +80000e08: 00279793 slli a5,a5,0x2 80000e0c: fdc42703 lw a4,-36(s0) -80000e10: 96e7a823 sw a4,-1680(a5) # 81002970 -80000e14: 810037b7 lui a5,0x81003 -80000e18: 97078793 addi a5,a5,-1680 # 81002970 -80000e1c: fd842703 lw a4,-40(s0) -80000e20: 00e7a223 sw a4,4(a5) -80000e24: 810037b7 lui a5,0x81003 -80000e28: 97078793 addi a5,a5,-1680 # 81002970 -80000e2c: fd442703 lw a4,-44(s0) -80000e30: 00e7a423 sw a4,8(a5) -80000e34: 810037b7 lui a5,0x81003 -80000e38: 97078793 addi a5,a5,-1680 # 81002970 -80000e3c: fcc42703 lw a4,-52(s0) -80000e40: 00e7a623 sw a4,12(a5) -80000e44: 810037b7 lui a5,0x81003 -80000e48: 97078793 addi a5,a5,-1680 # 81002970 -80000e4c: fd042703 lw a4,-48(s0) -80000e50: 00e7a823 sw a4,16(a5) -80000e54: b70ff0ef jal ra,800001c4 -80000e58: fea42423 sw a0,-24(s0) -80000e5c: fcc42703 lw a4,-52(s0) -80000e60: fe842783 lw a5,-24(s0) -80000e64: 02f757b3 divu a5,a4,a5 -80000e68: fef42623 sw a5,-20(s0) -80000e6c: fcc42703 lw a4,-52(s0) -80000e70: fe842783 lw a5,-24(s0) -80000e74: 02f777b3 remu a5,a4,a5 -80000e78: 00078863 beqz a5,80000e88 -80000e7c: fec42783 lw a5,-20(s0) -80000e80: 00178793 addi a5,a5,1 -80000e84: fef42623 sw a5,-20(s0) -80000e88: 810037b7 lui a5,0x81003 -80000e8c: 97078793 addi a5,a5,-1680 # 81002970 -80000e90: fec42703 lw a4,-20(s0) -80000e94: 00e7aa23 sw a4,20(a5) -80000e98: fcc42703 lw a4,-52(s0) -80000e9c: fe842783 lw a5,-24(s0) -80000ea0: 02f76263 bltu a4,a5,80000ec4 -80000ea4: 810037b7 lui a5,0x81003 -80000ea8: 97078693 addi a3,a5,-1680 # 81002970 -80000eac: 800017b7 lui a5,0x80001 -80000eb0: f1c78613 addi a2,a5,-228 # 80000f1c -80000eb4: fe842583 lw a1,-24(s0) -80000eb8: fd042503 lw a0,-48(s0) -80000ebc: d68ff0ef jal ra,80000424 -80000ec0: 0200006f j 80000ee0 -80000ec4: 810037b7 lui a5,0x81003 -80000ec8: 97078693 addi a3,a5,-1680 # 81002970 -80000ecc: 800017b7 lui a5,0x80001 -80000ed0: f1c78613 addi a2,a5,-228 # 80000f1c -80000ed4: fcc42583 lw a1,-52(s0) -80000ed8: fd042503 lw a0,-48(s0) -80000edc: d48ff0ef jal ra,80000424 -80000ee0: adcff0ef jal ra,800001bc -80000ee4: fea42223 sw a0,-28(s0) -80000ee8: fd042703 lw a4,-48(s0) -80000eec: fe442783 lw a5,-28(s0) -80000ef0: 00e7f863 bgeu a5,a4,80000f00 -80000ef4: fe442503 lw a0,-28(s0) -80000ef8: e18ff0ef jal ra,80000510 -80000efc: 00c0006f j 80000f08 -80000f00: fd042503 lw a0,-48(s0) -80000f04: e0cff0ef jal ra,80000510 -80000f08: 00000013 nop -80000f0c: 03c12083 lw ra,60(sp) -80000f10: 03812403 lw s0,56(sp) -80000f14: 04010113 addi sp,sp,64 -80000f18: 00008067 ret +80000e10: 00f707b3 add a5,a4,a5 +80000e14: 0007a683 lw a3,0(a5) +80000e18: fcc42783 lw a5,-52(s0) +80000e1c: 00279793 slli a5,a5,0x2 +80000e20: fd842703 lw a4,-40(s0) +80000e24: 00f707b3 add a5,a4,a5 +80000e28: 0007a703 lw a4,0(a5) +80000e2c: fcc42783 lw a5,-52(s0) +80000e30: 00279793 slli a5,a5,0x2 +80000e34: fd442603 lw a2,-44(s0) +80000e38: 00f607b3 add a5,a2,a5 +80000e3c: 00e68733 add a4,a3,a4 +80000e40: 00e7a023 sw a4,0(a5) +80000e44: fe842783 lw a5,-24(s0) +80000e48: 00178793 addi a5,a5,1 +80000e4c: fef42423 sw a5,-24(s0) +80000e50: 800017b7 lui a5,0x80001 +80000e54: e6078e13 addi t3,a5,-416 # 80000e60 +80000e58: 000e0067 jr t3 +80000e5c: 00000013 nop +80000e60: 0000306b 0x306b +80000e64: fe442783 lw a5,-28(s0) +80000e68: 00178793 addi a5,a5,1 +80000e6c: fef42223 sw a5,-28(s0) +80000e70: fe442783 lw a5,-28(s0) +80000e74: fec42703 lw a4,-20(s0) +80000e78: f2e7eee3 bltu a5,a4,80000db4 <_vx_mat_add+0x8c> +80000e7c: 00000013 nop +80000e80: 04c12083 lw ra,76(sp) +80000e84: 04812403 lw s0,72(sp) +80000e88: 05010113 addi sp,sp,80 +80000e8c: 00008067 ret -80000f1c <_vx_mat_sub>: -80000f1c: fb010113 addi sp,sp,-80 -80000f20: 04112623 sw ra,76(sp) -80000f24: 04812423 sw s0,72(sp) -80000f28: 05010413 addi s0,sp,80 -80000f2c: faa42e23 sw a0,-68(s0) -80000f30: fab42c23 sw a1,-72(s0) -80000f34: ea8ff0ef jal ra,800005dc -80000f38: fea42023 sw a0,-32(s0) -80000f3c: fe042783 lw a5,-32(s0) -80000f40: 0007a783 lw a5,0(a5) -80000f44: fcf42e23 sw a5,-36(s0) -80000f48: fe042783 lw a5,-32(s0) -80000f4c: 0047a783 lw a5,4(a5) -80000f50: fcf42c23 sw a5,-40(s0) -80000f54: fe042783 lw a5,-32(s0) -80000f58: 0087a783 lw a5,8(a5) -80000f5c: fcf42a23 sw a5,-44(s0) -80000f60: fe042783 lw a5,-32(s0) -80000f64: 0147a783 lw a5,20(a5) -80000f68: fef42623 sw a5,-20(s0) -80000f6c: fec42703 lw a4,-20(s0) -80000f70: fbc42783 lw a5,-68(s0) -80000f74: 02f707b3 mul a5,a4,a5 -80000f78: fef42423 sw a5,-24(s0) -80000f7c: fec42783 lw a5,-20(s0) -80000f80: 00079a63 bnez a5,80000f94 <_vx_mat_sub+0x78> -80000f84: 00100793 li a5,1 -80000f88: fef42623 sw a5,-20(s0) -80000f8c: fbc42783 lw a5,-68(s0) -80000f90: fef42423 sw a5,-24(s0) -80000f94: fe042783 lw a5,-32(s0) -80000f98: 00c7a783 lw a5,12(a5) -80000f9c: fcf42823 sw a5,-48(s0) -80000fa0: fe042223 sw zero,-28(s0) -80000fa4: 0c00006f j 80001064 <_vx_mat_sub+0x148> -80000fa8: fb842703 lw a4,-72(s0) -80000fac: fd042783 lw a5,-48(s0) -80000fb0: 02f70733 mul a4,a4,a5 -80000fb4: fe842783 lw a5,-24(s0) -80000fb8: 00f707b3 add a5,a4,a5 -80000fbc: fcf42623 sw a5,-52(s0) -80000fc0: fe842703 lw a4,-24(s0) -80000fc4: fd042783 lw a5,-48(s0) -80000fc8: 00f737b3 sltu a5,a4,a5 -80000fcc: 0ff7f793 andi a5,a5,255 -80000fd0: fcf42423 sw a5,-56(s0) -80000fd4: fc842783 lw a5,-56(s0) -80000fd8: 0017b793 seqz a5,a5 -80000fdc: fcf403a3 sb a5,-57(s0) -80000fe0: fc744783 lbu a5,-57(s0) -80000fe4: 00078f13 mv t5,a5 -80000fe8: 800017b7 lui a5,0x80001 -80000fec: 05078f93 addi t6,a5,80 # 80001050 -80000ff0: 000f206b 0xf206b -80000ff4: 01ff707b 0x1ff707b -80000ff8: fcc42783 lw a5,-52(s0) -80000ffc: 00279793 slli a5,a5,0x2 -80001000: fdc42703 lw a4,-36(s0) -80001004: 00f707b3 add a5,a4,a5 -80001008: 0007a683 lw a3,0(a5) -8000100c: fcc42783 lw a5,-52(s0) -80001010: 00279793 slli a5,a5,0x2 -80001014: fd842703 lw a4,-40(s0) -80001018: 00f707b3 add a5,a4,a5 -8000101c: 0007a703 lw a4,0(a5) -80001020: fcc42783 lw a5,-52(s0) -80001024: 00279793 slli a5,a5,0x2 -80001028: fd442603 lw a2,-44(s0) -8000102c: 00f607b3 add a5,a2,a5 -80001030: 40e68733 sub a4,a3,a4 -80001034: 00e7a023 sw a4,0(a5) -80001038: fe842783 lw a5,-24(s0) -8000103c: 00178793 addi a5,a5,1 -80001040: fef42423 sw a5,-24(s0) -80001044: 800017b7 lui a5,0x80001 -80001048: 05478e13 addi t3,a5,84 # 80001054 -8000104c: 000e0067 jr t3 -80001050: 00000013 nop -80001054: 0000306b 0x306b -80001058: fe442783 lw a5,-28(s0) -8000105c: 00178793 addi a5,a5,1 -80001060: fef42223 sw a5,-28(s0) -80001064: fe442783 lw a5,-28(s0) -80001068: fec42703 lw a4,-20(s0) -8000106c: f2e7eee3 bltu a5,a4,80000fa8 <_vx_mat_sub+0x8c> -80001070: 00000013 nop -80001074: 04c12083 lw ra,76(sp) -80001078: 04812403 lw s0,72(sp) -8000107c: 05010113 addi sp,sp,80 -80001080: 00008067 ret +80000e90 : +80000e90: fc010113 addi sp,sp,-64 +80000e94: 02112e23 sw ra,60(sp) +80000e98: 02812c23 sw s0,56(sp) +80000e9c: 04010413 addi s0,sp,64 +80000ea0: fca42e23 sw a0,-36(s0) +80000ea4: fcb42c23 sw a1,-40(s0) +80000ea8: fcc42a23 sw a2,-44(s0) +80000eac: fcd42823 sw a3,-48(s0) +80000eb0: fce42623 sw a4,-52(s0) +80000eb4: 810267b7 lui a5,0x81026 +80000eb8: fdc42703 lw a4,-36(s0) +80000ebc: 1ee7a823 sw a4,496(a5) # 810261f0 +80000ec0: 810267b7 lui a5,0x81026 +80000ec4: 1f078793 addi a5,a5,496 # 810261f0 +80000ec8: fd842703 lw a4,-40(s0) +80000ecc: 00e7a223 sw a4,4(a5) +80000ed0: 810267b7 lui a5,0x81026 +80000ed4: 1f078793 addi a5,a5,496 # 810261f0 +80000ed8: fd442703 lw a4,-44(s0) +80000edc: 00e7a423 sw a4,8(a5) +80000ee0: 810267b7 lui a5,0x81026 +80000ee4: 1f078793 addi a5,a5,496 # 810261f0 +80000ee8: fcc42703 lw a4,-52(s0) +80000eec: 00e7a623 sw a4,12(a5) +80000ef0: 810267b7 lui a5,0x81026 +80000ef4: 1f078793 addi a5,a5,496 # 810261f0 +80000ef8: fd042703 lw a4,-48(s0) +80000efc: 00e7a823 sw a4,16(a5) +80000f00: afcff0ef jal ra,800001fc +80000f04: fea42423 sw a0,-24(s0) +80000f08: fcc42703 lw a4,-52(s0) +80000f0c: fe842783 lw a5,-24(s0) +80000f10: 02f757b3 divu a5,a4,a5 +80000f14: fef42623 sw a5,-20(s0) +80000f18: fcc42703 lw a4,-52(s0) +80000f1c: fe842783 lw a5,-24(s0) +80000f20: 02f777b3 remu a5,a4,a5 +80000f24: 00078863 beqz a5,80000f34 +80000f28: fec42783 lw a5,-20(s0) +80000f2c: 00178793 addi a5,a5,1 +80000f30: fef42623 sw a5,-20(s0) +80000f34: 810267b7 lui a5,0x81026 +80000f38: 1f078793 addi a5,a5,496 # 810261f0 +80000f3c: fec42703 lw a4,-20(s0) +80000f40: 00e7aa23 sw a4,20(a5) +80000f44: fcc42703 lw a4,-52(s0) +80000f48: fe842783 lw a5,-24(s0) +80000f4c: 02f76263 bltu a4,a5,80000f70 +80000f50: 810267b7 lui a5,0x81026 +80000f54: 1f078693 addi a3,a5,496 # 810261f0 +80000f58: 800017b7 lui a5,0x80001 +80000f5c: fc878613 addi a2,a5,-56 # 80000fc8 +80000f60: fe842583 lw a1,-24(s0) +80000f64: fd042503 lw a0,-48(s0) +80000f68: d4cff0ef jal ra,800004b4 +80000f6c: 0200006f j 80000f8c +80000f70: 810267b7 lui a5,0x81026 +80000f74: 1f078693 addi a3,a5,496 # 810261f0 +80000f78: 800017b7 lui a5,0x80001 +80000f7c: fc878613 addi a2,a5,-56 # 80000fc8 +80000f80: fcc42583 lw a1,-52(s0) +80000f84: fd042503 lw a0,-48(s0) +80000f88: d2cff0ef jal ra,800004b4 +80000f8c: a68ff0ef jal ra,800001f4 +80000f90: fea42223 sw a0,-28(s0) +80000f94: fd042703 lw a4,-48(s0) +80000f98: fe442783 lw a5,-28(s0) +80000f9c: 00e7f863 bgeu a5,a4,80000fac +80000fa0: fe442503 lw a0,-28(s0) +80000fa4: e00ff0ef jal ra,800005a4 +80000fa8: 00c0006f j 80000fb4 +80000fac: fd042503 lw a0,-48(s0) +80000fb0: df4ff0ef jal ra,800005a4 +80000fb4: 00000013 nop +80000fb8: 03c12083 lw ra,60(sp) +80000fbc: 03812403 lw s0,56(sp) +80000fc0: 04010113 addi sp,sp,64 +80000fc4: 00008067 ret -80001084 : -80001084: fc010113 addi sp,sp,-64 -80001088: 02112e23 sw ra,60(sp) -8000108c: 02812c23 sw s0,56(sp) -80001090: 04010413 addi s0,sp,64 -80001094: fca42e23 sw a0,-36(s0) -80001098: fcb42c23 sw a1,-40(s0) -8000109c: fcc42a23 sw a2,-44(s0) -800010a0: fcd42823 sw a3,-48(s0) -800010a4: fce42623 sw a4,-52(s0) -800010a8: 810037b7 lui a5,0x81003 +80000fc8 <_vx_mat_sub>: +80000fc8: fb010113 addi sp,sp,-80 +80000fcc: 04112623 sw ra,76(sp) +80000fd0: 04812423 sw s0,72(sp) +80000fd4: 05010413 addi s0,sp,80 +80000fd8: faa42e23 sw a0,-68(s0) +80000fdc: fab42c23 sw a1,-72(s0) +80000fe0: e90ff0ef jal ra,80000670 +80000fe4: fea42023 sw a0,-32(s0) +80000fe8: fe042783 lw a5,-32(s0) +80000fec: 0007a783 lw a5,0(a5) +80000ff0: fcf42e23 sw a5,-36(s0) +80000ff4: fe042783 lw a5,-32(s0) +80000ff8: 0047a783 lw a5,4(a5) +80000ffc: fcf42c23 sw a5,-40(s0) +80001000: fe042783 lw a5,-32(s0) +80001004: 0087a783 lw a5,8(a5) +80001008: fcf42a23 sw a5,-44(s0) +8000100c: fe042783 lw a5,-32(s0) +80001010: 0147a783 lw a5,20(a5) +80001014: fef42623 sw a5,-20(s0) +80001018: fec42703 lw a4,-20(s0) +8000101c: fbc42783 lw a5,-68(s0) +80001020: 02f707b3 mul a5,a4,a5 +80001024: fef42423 sw a5,-24(s0) +80001028: fec42783 lw a5,-20(s0) +8000102c: 00079a63 bnez a5,80001040 <_vx_mat_sub+0x78> +80001030: 00100793 li a5,1 +80001034: fef42623 sw a5,-20(s0) +80001038: fbc42783 lw a5,-68(s0) +8000103c: fef42423 sw a5,-24(s0) +80001040: fe042783 lw a5,-32(s0) +80001044: 00c7a783 lw a5,12(a5) +80001048: fcf42823 sw a5,-48(s0) +8000104c: fe042223 sw zero,-28(s0) +80001050: 0c00006f j 80001110 <_vx_mat_sub+0x148> +80001054: fb842703 lw a4,-72(s0) +80001058: fd042783 lw a5,-48(s0) +8000105c: 02f70733 mul a4,a4,a5 +80001060: fe842783 lw a5,-24(s0) +80001064: 00f707b3 add a5,a4,a5 +80001068: fcf42623 sw a5,-52(s0) +8000106c: fe842703 lw a4,-24(s0) +80001070: fd042783 lw a5,-48(s0) +80001074: 00f737b3 sltu a5,a4,a5 +80001078: 0ff7f793 andi a5,a5,255 +8000107c: fcf42423 sw a5,-56(s0) +80001080: fc842783 lw a5,-56(s0) +80001084: 0017b793 seqz a5,a5 +80001088: fcf403a3 sb a5,-57(s0) +8000108c: fc744783 lbu a5,-57(s0) +80001090: 00078f13 mv t5,a5 +80001094: 800017b7 lui a5,0x80001 +80001098: 0fc78f93 addi t6,a5,252 # 800010fc +8000109c: 000f206b 0xf206b +800010a0: 01ff707b 0x1ff707b +800010a4: fcc42783 lw a5,-52(s0) +800010a8: 00279793 slli a5,a5,0x2 800010ac: fdc42703 lw a4,-36(s0) -800010b0: 98e7a423 sw a4,-1656(a5) # 81002988 -800010b4: 810037b7 lui a5,0x81003 -800010b8: 98878793 addi a5,a5,-1656 # 81002988 -800010bc: fd842703 lw a4,-40(s0) -800010c0: 00e7a223 sw a4,4(a5) -800010c4: 810037b7 lui a5,0x81003 -800010c8: 98878793 addi a5,a5,-1656 # 81002988 -800010cc: fd442703 lw a4,-44(s0) -800010d0: 00e7a423 sw a4,8(a5) -800010d4: 810037b7 lui a5,0x81003 -800010d8: 98878793 addi a5,a5,-1656 # 81002988 -800010dc: fcc42703 lw a4,-52(s0) -800010e0: 00e7a623 sw a4,12(a5) -800010e4: 810037b7 lui a5,0x81003 -800010e8: 98878793 addi a5,a5,-1656 # 81002988 -800010ec: fd042703 lw a4,-48(s0) -800010f0: 00e7a823 sw a4,16(a5) -800010f4: 8d0ff0ef jal ra,800001c4 -800010f8: fea42423 sw a0,-24(s0) -800010fc: fcc42703 lw a4,-52(s0) -80001100: fe842783 lw a5,-24(s0) -80001104: 02f757b3 divu a5,a4,a5 -80001108: fef42623 sw a5,-20(s0) -8000110c: fcc42703 lw a4,-52(s0) -80001110: fe842783 lw a5,-24(s0) -80001114: 02f777b3 remu a5,a4,a5 -80001118: 00078863 beqz a5,80001128 -8000111c: fec42783 lw a5,-20(s0) -80001120: 00178793 addi a5,a5,1 -80001124: fef42623 sw a5,-20(s0) -80001128: 810037b7 lui a5,0x81003 -8000112c: 98878793 addi a5,a5,-1656 # 81002988 -80001130: fec42703 lw a4,-20(s0) -80001134: 00e7aa23 sw a4,20(a5) -80001138: fcc42703 lw a4,-52(s0) -8000113c: fe842783 lw a5,-24(s0) -80001140: 02f76263 bltu a4,a5,80001164 -80001144: 810037b7 lui a5,0x81003 -80001148: 98878693 addi a3,a5,-1656 # 81002988 -8000114c: 800017b7 lui a5,0x80001 -80001150: 1bc78613 addi a2,a5,444 # 800011bc -80001154: fe842583 lw a1,-24(s0) -80001158: fd042503 lw a0,-48(s0) -8000115c: ac8ff0ef jal ra,80000424 -80001160: 0200006f j 80001180 -80001164: 810037b7 lui a5,0x81003 -80001168: 98878693 addi a3,a5,-1656 # 81002988 -8000116c: 800017b7 lui a5,0x80001 -80001170: 1bc78613 addi a2,a5,444 # 800011bc -80001174: fcc42583 lw a1,-52(s0) -80001178: fd042503 lw a0,-48(s0) -8000117c: aa8ff0ef jal ra,80000424 -80001180: 83cff0ef jal ra,800001bc -80001184: fea42223 sw a0,-28(s0) -80001188: fd042703 lw a4,-48(s0) -8000118c: fe442783 lw a5,-28(s0) -80001190: 00e7f863 bgeu a5,a4,800011a0 -80001194: fe442503 lw a0,-28(s0) -80001198: b78ff0ef jal ra,80000510 -8000119c: 00c0006f j 800011a8 -800011a0: fd042503 lw a0,-48(s0) -800011a4: b6cff0ef jal ra,80000510 -800011a8: 00000013 nop -800011ac: 03c12083 lw ra,60(sp) -800011b0: 03812403 lw s0,56(sp) -800011b4: 04010113 addi sp,sp,64 -800011b8: 00008067 ret +800010b0: 00f707b3 add a5,a4,a5 +800010b4: 0007a683 lw a3,0(a5) +800010b8: fcc42783 lw a5,-52(s0) +800010bc: 00279793 slli a5,a5,0x2 +800010c0: fd842703 lw a4,-40(s0) +800010c4: 00f707b3 add a5,a4,a5 +800010c8: 0007a703 lw a4,0(a5) +800010cc: fcc42783 lw a5,-52(s0) +800010d0: 00279793 slli a5,a5,0x2 +800010d4: fd442603 lw a2,-44(s0) +800010d8: 00f607b3 add a5,a2,a5 +800010dc: 40e68733 sub a4,a3,a4 +800010e0: 00e7a023 sw a4,0(a5) +800010e4: fe842783 lw a5,-24(s0) +800010e8: 00178793 addi a5,a5,1 +800010ec: fef42423 sw a5,-24(s0) +800010f0: 800017b7 lui a5,0x80001 +800010f4: 10078e13 addi t3,a5,256 # 80001100 +800010f8: 000e0067 jr t3 +800010fc: 00000013 nop +80001100: 0000306b 0x306b +80001104: fe442783 lw a5,-28(s0) +80001108: 00178793 addi a5,a5,1 +8000110c: fef42223 sw a5,-28(s0) +80001110: fe442783 lw a5,-28(s0) +80001114: fec42703 lw a4,-20(s0) +80001118: f2e7eee3 bltu a5,a4,80001054 <_vx_mat_sub+0x8c> +8000111c: 00000013 nop +80001120: 04c12083 lw ra,76(sp) +80001124: 04812403 lw s0,72(sp) +80001128: 05010113 addi sp,sp,80 +8000112c: 00008067 ret -800011bc <_vx_e_mat_add>: -800011bc: fb010113 addi sp,sp,-80 -800011c0: 04112623 sw ra,76(sp) -800011c4: 04812423 sw s0,72(sp) -800011c8: 05010413 addi s0,sp,80 -800011cc: faa42e23 sw a0,-68(s0) -800011d0: fab42c23 sw a1,-72(s0) -800011d4: c08ff0ef jal ra,800005dc -800011d8: fea42023 sw a0,-32(s0) -800011dc: fe042783 lw a5,-32(s0) -800011e0: 0007a783 lw a5,0(a5) -800011e4: fcf42e23 sw a5,-36(s0) -800011e8: fe042783 lw a5,-32(s0) -800011ec: 0047a783 lw a5,4(a5) -800011f0: 0007a783 lw a5,0(a5) -800011f4: fcf42c23 sw a5,-40(s0) -800011f8: fe042783 lw a5,-32(s0) -800011fc: 0087a783 lw a5,8(a5) -80001200: fcf42a23 sw a5,-44(s0) -80001204: fe042783 lw a5,-32(s0) -80001208: 0147a783 lw a5,20(a5) -8000120c: fef42623 sw a5,-20(s0) -80001210: fec42703 lw a4,-20(s0) -80001214: fbc42783 lw a5,-68(s0) -80001218: 02f707b3 mul a5,a4,a5 -8000121c: fef42423 sw a5,-24(s0) -80001220: fec42783 lw a5,-20(s0) -80001224: 00079a63 bnez a5,80001238 <_vx_e_mat_add+0x7c> -80001228: 00100793 li a5,1 -8000122c: fef42623 sw a5,-20(s0) -80001230: fbc42783 lw a5,-68(s0) -80001234: fef42423 sw a5,-24(s0) -80001238: fe042783 lw a5,-32(s0) -8000123c: 00c7a783 lw a5,12(a5) -80001240: fcf42823 sw a5,-48(s0) -80001244: fe042223 sw zero,-28(s0) -80001248: 0b00006f j 800012f8 <_vx_e_mat_add+0x13c> -8000124c: fb842703 lw a4,-72(s0) -80001250: fd042783 lw a5,-48(s0) -80001254: 02f70733 mul a4,a4,a5 -80001258: fe842783 lw a5,-24(s0) -8000125c: 00f707b3 add a5,a4,a5 -80001260: fcf42623 sw a5,-52(s0) -80001264: fe842703 lw a4,-24(s0) -80001268: fd042783 lw a5,-48(s0) -8000126c: 00f737b3 sltu a5,a4,a5 -80001270: 0ff7f793 andi a5,a5,255 -80001274: fcf42423 sw a5,-56(s0) -80001278: fc842783 lw a5,-56(s0) -8000127c: 0017b793 seqz a5,a5 -80001280: fcf403a3 sb a5,-57(s0) -80001284: fc744783 lbu a5,-57(s0) -80001288: 00078f13 mv t5,a5 -8000128c: 800017b7 lui a5,0x80001 -80001290: 2e478f93 addi t6,a5,740 # 800012e4 -80001294: 000f206b 0xf206b -80001298: 01ff707b 0x1ff707b -8000129c: fcc42783 lw a5,-52(s0) -800012a0: 00279793 slli a5,a5,0x2 -800012a4: fdc42703 lw a4,-36(s0) -800012a8: 00f707b3 add a5,a4,a5 -800012ac: 0007a683 lw a3,0(a5) -800012b0: fcc42783 lw a5,-52(s0) -800012b4: 00279793 slli a5,a5,0x2 -800012b8: fd442703 lw a4,-44(s0) -800012bc: 00f707b3 add a5,a4,a5 -800012c0: fd842703 lw a4,-40(s0) -800012c4: 00e68733 add a4,a3,a4 -800012c8: 00e7a023 sw a4,0(a5) -800012cc: fe842783 lw a5,-24(s0) -800012d0: 00178793 addi a5,a5,1 -800012d4: fef42423 sw a5,-24(s0) -800012d8: 800017b7 lui a5,0x80001 -800012dc: 2e878e13 addi t3,a5,744 # 800012e8 -800012e0: 000e0067 jr t3 -800012e4: 00000013 nop -800012e8: 0000306b 0x306b -800012ec: fe442783 lw a5,-28(s0) -800012f0: 00178793 addi a5,a5,1 -800012f4: fef42223 sw a5,-28(s0) -800012f8: fe442783 lw a5,-28(s0) -800012fc: fec42703 lw a4,-20(s0) -80001300: f4e7e6e3 bltu a5,a4,8000124c <_vx_e_mat_add+0x90> -80001304: 00000013 nop -80001308: 04c12083 lw ra,76(sp) -8000130c: 04812403 lw s0,72(sp) -80001310: 05010113 addi sp,sp,80 -80001314: 00008067 ret +80001130 : +80001130: fc010113 addi sp,sp,-64 +80001134: 02112e23 sw ra,60(sp) +80001138: 02812c23 sw s0,56(sp) +8000113c: 04010413 addi s0,sp,64 +80001140: fca42e23 sw a0,-36(s0) +80001144: fcb42c23 sw a1,-40(s0) +80001148: fcc42a23 sw a2,-44(s0) +8000114c: fcd42823 sw a3,-48(s0) +80001150: fce42623 sw a4,-52(s0) +80001154: 810267b7 lui a5,0x81026 +80001158: fdc42703 lw a4,-36(s0) +8000115c: 20e7a423 sw a4,520(a5) # 81026208 +80001160: 810267b7 lui a5,0x81026 +80001164: 20878793 addi a5,a5,520 # 81026208 +80001168: fd842703 lw a4,-40(s0) +8000116c: 00e7a223 sw a4,4(a5) +80001170: 810267b7 lui a5,0x81026 +80001174: 20878793 addi a5,a5,520 # 81026208 +80001178: fd442703 lw a4,-44(s0) +8000117c: 00e7a423 sw a4,8(a5) +80001180: 810267b7 lui a5,0x81026 +80001184: 20878793 addi a5,a5,520 # 81026208 +80001188: fcc42703 lw a4,-52(s0) +8000118c: 00e7a623 sw a4,12(a5) +80001190: 810267b7 lui a5,0x81026 +80001194: 20878793 addi a5,a5,520 # 81026208 +80001198: fd042703 lw a4,-48(s0) +8000119c: 00e7a823 sw a4,16(a5) +800011a0: 85cff0ef jal ra,800001fc +800011a4: fea42423 sw a0,-24(s0) +800011a8: fcc42703 lw a4,-52(s0) +800011ac: fe842783 lw a5,-24(s0) +800011b0: 02f757b3 divu a5,a4,a5 +800011b4: fef42623 sw a5,-20(s0) +800011b8: fcc42703 lw a4,-52(s0) +800011bc: fe842783 lw a5,-24(s0) +800011c0: 02f777b3 remu a5,a4,a5 +800011c4: 00078863 beqz a5,800011d4 +800011c8: fec42783 lw a5,-20(s0) +800011cc: 00178793 addi a5,a5,1 +800011d0: fef42623 sw a5,-20(s0) +800011d4: 810267b7 lui a5,0x81026 +800011d8: 20878793 addi a5,a5,520 # 81026208 +800011dc: fec42703 lw a4,-20(s0) +800011e0: 00e7aa23 sw a4,20(a5) +800011e4: fcc42703 lw a4,-52(s0) +800011e8: fe842783 lw a5,-24(s0) +800011ec: 02f76263 bltu a4,a5,80001210 +800011f0: 810267b7 lui a5,0x81026 +800011f4: 20878693 addi a3,a5,520 # 81026208 +800011f8: 800017b7 lui a5,0x80001 +800011fc: 26878613 addi a2,a5,616 # 80001268 +80001200: fe842583 lw a1,-24(s0) +80001204: fd042503 lw a0,-48(s0) +80001208: aacff0ef jal ra,800004b4 +8000120c: 0200006f j 8000122c +80001210: 810267b7 lui a5,0x81026 +80001214: 20878693 addi a3,a5,520 # 81026208 +80001218: 800017b7 lui a5,0x80001 +8000121c: 26878613 addi a2,a5,616 # 80001268 +80001220: fcc42583 lw a1,-52(s0) +80001224: fd042503 lw a0,-48(s0) +80001228: a8cff0ef jal ra,800004b4 +8000122c: fc9fe0ef jal ra,800001f4 +80001230: fea42223 sw a0,-28(s0) +80001234: fd042703 lw a4,-48(s0) +80001238: fe442783 lw a5,-28(s0) +8000123c: 00e7f863 bgeu a5,a4,8000124c +80001240: fe442503 lw a0,-28(s0) +80001244: b60ff0ef jal ra,800005a4 +80001248: 00c0006f j 80001254 +8000124c: fd042503 lw a0,-48(s0) +80001250: b54ff0ef jal ra,800005a4 +80001254: 00000013 nop +80001258: 03c12083 lw ra,60(sp) +8000125c: 03812403 lw s0,56(sp) +80001260: 04010113 addi sp,sp,64 +80001264: 00008067 ret -80001318 : -80001318: fc010113 addi sp,sp,-64 -8000131c: 02112e23 sw ra,60(sp) -80001320: 02812c23 sw s0,56(sp) -80001324: 04010413 addi s0,sp,64 -80001328: fca42e23 sw a0,-36(s0) -8000132c: fcb42c23 sw a1,-40(s0) -80001330: fcc42a23 sw a2,-44(s0) -80001334: fcd42823 sw a3,-48(s0) -80001338: fce42623 sw a4,-52(s0) -8000133c: 810037b7 lui a5,0x81003 -80001340: fdc42703 lw a4,-36(s0) -80001344: 98e7a423 sw a4,-1656(a5) # 81002988 -80001348: 810037b7 lui a5,0x81003 -8000134c: 98878793 addi a5,a5,-1656 # 81002988 -80001350: fd842703 lw a4,-40(s0) -80001354: 00e7a223 sw a4,4(a5) -80001358: 810037b7 lui a5,0x81003 -8000135c: 98878793 addi a5,a5,-1656 # 81002988 -80001360: fd442703 lw a4,-44(s0) -80001364: 00e7a423 sw a4,8(a5) -80001368: 810037b7 lui a5,0x81003 -8000136c: 98878793 addi a5,a5,-1656 # 81002988 -80001370: fcc42703 lw a4,-52(s0) -80001374: 00e7a623 sw a4,12(a5) -80001378: 810037b7 lui a5,0x81003 -8000137c: 98878793 addi a5,a5,-1656 # 81002988 -80001380: fd042703 lw a4,-48(s0) -80001384: 00e7a823 sw a4,16(a5) -80001388: e3dfe0ef jal ra,800001c4 -8000138c: fea42423 sw a0,-24(s0) -80001390: fcc42703 lw a4,-52(s0) -80001394: fe842783 lw a5,-24(s0) -80001398: 02f757b3 divu a5,a4,a5 -8000139c: fef42623 sw a5,-20(s0) -800013a0: fcc42703 lw a4,-52(s0) -800013a4: fe842783 lw a5,-24(s0) -800013a8: 02f777b3 remu a5,a4,a5 -800013ac: 00078863 beqz a5,800013bc -800013b0: fec42783 lw a5,-20(s0) -800013b4: 00178793 addi a5,a5,1 -800013b8: fef42623 sw a5,-20(s0) -800013bc: 810037b7 lui a5,0x81003 -800013c0: 98878793 addi a5,a5,-1656 # 81002988 -800013c4: fec42703 lw a4,-20(s0) -800013c8: 00e7aa23 sw a4,20(a5) -800013cc: fcc42703 lw a4,-52(s0) -800013d0: fe842783 lw a5,-24(s0) -800013d4: 02f76263 bltu a4,a5,800013f8 -800013d8: 810037b7 lui a5,0x81003 -800013dc: 98878693 addi a3,a5,-1656 # 81002988 -800013e0: 800017b7 lui a5,0x80001 -800013e4: 45078613 addi a2,a5,1104 # 80001450 -800013e8: fe842583 lw a1,-24(s0) -800013ec: fd042503 lw a0,-48(s0) -800013f0: 834ff0ef jal ra,80000424 -800013f4: 0200006f j 80001414 -800013f8: 810037b7 lui a5,0x81003 -800013fc: 98878693 addi a3,a5,-1656 # 81002988 -80001400: 800017b7 lui a5,0x80001 -80001404: 45078613 addi a2,a5,1104 # 80001450 -80001408: fcc42583 lw a1,-52(s0) -8000140c: fd042503 lw a0,-48(s0) -80001410: 814ff0ef jal ra,80000424 -80001414: da9fe0ef jal ra,800001bc -80001418: fea42223 sw a0,-28(s0) -8000141c: fd042703 lw a4,-48(s0) -80001420: fe442783 lw a5,-28(s0) -80001424: 00e7f863 bgeu a5,a4,80001434 -80001428: fe442503 lw a0,-28(s0) -8000142c: 8e4ff0ef jal ra,80000510 -80001430: 00c0006f j 8000143c -80001434: fd042503 lw a0,-48(s0) -80001438: 8d8ff0ef jal ra,80000510 -8000143c: 00000013 nop -80001440: 03c12083 lw ra,60(sp) -80001444: 03812403 lw s0,56(sp) -80001448: 04010113 addi sp,sp,64 -8000144c: 00008067 ret +80001268 <_vx_e_mat_add>: +80001268: fb010113 addi sp,sp,-80 +8000126c: 04112623 sw ra,76(sp) +80001270: 04812423 sw s0,72(sp) +80001274: 05010413 addi s0,sp,80 +80001278: faa42e23 sw a0,-68(s0) +8000127c: fab42c23 sw a1,-72(s0) +80001280: bf0ff0ef jal ra,80000670 +80001284: fea42023 sw a0,-32(s0) +80001288: fe042783 lw a5,-32(s0) +8000128c: 0007a783 lw a5,0(a5) +80001290: fcf42e23 sw a5,-36(s0) +80001294: fe042783 lw a5,-32(s0) +80001298: 0047a783 lw a5,4(a5) +8000129c: 0007a783 lw a5,0(a5) +800012a0: fcf42c23 sw a5,-40(s0) +800012a4: fe042783 lw a5,-32(s0) +800012a8: 0087a783 lw a5,8(a5) +800012ac: fcf42a23 sw a5,-44(s0) +800012b0: fe042783 lw a5,-32(s0) +800012b4: 0147a783 lw a5,20(a5) +800012b8: fef42623 sw a5,-20(s0) +800012bc: fec42703 lw a4,-20(s0) +800012c0: fbc42783 lw a5,-68(s0) +800012c4: 02f707b3 mul a5,a4,a5 +800012c8: fef42423 sw a5,-24(s0) +800012cc: fec42783 lw a5,-20(s0) +800012d0: 00079a63 bnez a5,800012e4 <_vx_e_mat_add+0x7c> +800012d4: 00100793 li a5,1 +800012d8: fef42623 sw a5,-20(s0) +800012dc: fbc42783 lw a5,-68(s0) +800012e0: fef42423 sw a5,-24(s0) +800012e4: fe042783 lw a5,-32(s0) +800012e8: 00c7a783 lw a5,12(a5) +800012ec: fcf42823 sw a5,-48(s0) +800012f0: fe042223 sw zero,-28(s0) +800012f4: 0b00006f j 800013a4 <_vx_e_mat_add+0x13c> +800012f8: fb842703 lw a4,-72(s0) +800012fc: fd042783 lw a5,-48(s0) +80001300: 02f70733 mul a4,a4,a5 +80001304: fe842783 lw a5,-24(s0) +80001308: 00f707b3 add a5,a4,a5 +8000130c: fcf42623 sw a5,-52(s0) +80001310: fe842703 lw a4,-24(s0) +80001314: fd042783 lw a5,-48(s0) +80001318: 00f737b3 sltu a5,a4,a5 +8000131c: 0ff7f793 andi a5,a5,255 +80001320: fcf42423 sw a5,-56(s0) +80001324: fc842783 lw a5,-56(s0) +80001328: 0017b793 seqz a5,a5 +8000132c: fcf403a3 sb a5,-57(s0) +80001330: fc744783 lbu a5,-57(s0) +80001334: 00078f13 mv t5,a5 +80001338: 800017b7 lui a5,0x80001 +8000133c: 39078f93 addi t6,a5,912 # 80001390 +80001340: 000f206b 0xf206b +80001344: 01ff707b 0x1ff707b +80001348: fcc42783 lw a5,-52(s0) +8000134c: 00279793 slli a5,a5,0x2 +80001350: fdc42703 lw a4,-36(s0) +80001354: 00f707b3 add a5,a4,a5 +80001358: 0007a683 lw a3,0(a5) +8000135c: fcc42783 lw a5,-52(s0) +80001360: 00279793 slli a5,a5,0x2 +80001364: fd442703 lw a4,-44(s0) +80001368: 00f707b3 add a5,a4,a5 +8000136c: fd842703 lw a4,-40(s0) +80001370: 00e68733 add a4,a3,a4 +80001374: 00e7a023 sw a4,0(a5) +80001378: fe842783 lw a5,-24(s0) +8000137c: 00178793 addi a5,a5,1 +80001380: fef42423 sw a5,-24(s0) +80001384: 800017b7 lui a5,0x80001 +80001388: 39478e13 addi t3,a5,916 # 80001394 +8000138c: 000e0067 jr t3 +80001390: 00000013 nop +80001394: 0000306b 0x306b +80001398: fe442783 lw a5,-28(s0) +8000139c: 00178793 addi a5,a5,1 +800013a0: fef42223 sw a5,-28(s0) +800013a4: fe442783 lw a5,-28(s0) +800013a8: fec42703 lw a4,-20(s0) +800013ac: f4e7e6e3 bltu a5,a4,800012f8 <_vx_e_mat_add+0x90> +800013b0: 00000013 nop +800013b4: 04c12083 lw ra,76(sp) +800013b8: 04812403 lw s0,72(sp) +800013bc: 05010113 addi sp,sp,80 +800013c0: 00008067 ret -80001450 <_vx_e_mat_mult>: -80001450: fb010113 addi sp,sp,-80 -80001454: 04112623 sw ra,76(sp) -80001458: 04812423 sw s0,72(sp) -8000145c: 05010413 addi s0,sp,80 -80001460: faa42e23 sw a0,-68(s0) -80001464: fab42c23 sw a1,-72(s0) -80001468: 974ff0ef jal ra,800005dc -8000146c: fea42023 sw a0,-32(s0) -80001470: fe042783 lw a5,-32(s0) -80001474: 0007a783 lw a5,0(a5) -80001478: fcf42e23 sw a5,-36(s0) -8000147c: fe042783 lw a5,-32(s0) -80001480: 0047a783 lw a5,4(a5) -80001484: 0007a783 lw a5,0(a5) -80001488: fcf42c23 sw a5,-40(s0) -8000148c: fe042783 lw a5,-32(s0) -80001490: 0087a783 lw a5,8(a5) -80001494: fcf42a23 sw a5,-44(s0) -80001498: fe042783 lw a5,-32(s0) -8000149c: 0147a783 lw a5,20(a5) -800014a0: fef42623 sw a5,-20(s0) -800014a4: fec42703 lw a4,-20(s0) -800014a8: fbc42783 lw a5,-68(s0) -800014ac: 02f707b3 mul a5,a4,a5 -800014b0: fef42423 sw a5,-24(s0) -800014b4: fec42783 lw a5,-20(s0) -800014b8: 00079a63 bnez a5,800014cc <_vx_e_mat_mult+0x7c> -800014bc: 00100793 li a5,1 -800014c0: fef42623 sw a5,-20(s0) -800014c4: fbc42783 lw a5,-68(s0) -800014c8: fef42423 sw a5,-24(s0) -800014cc: fe042783 lw a5,-32(s0) -800014d0: 00c7a783 lw a5,12(a5) -800014d4: fcf42823 sw a5,-48(s0) -800014d8: fe042223 sw zero,-28(s0) -800014dc: 0b00006f j 8000158c <_vx_e_mat_mult+0x13c> -800014e0: fb842703 lw a4,-72(s0) -800014e4: fd042783 lw a5,-48(s0) -800014e8: 02f70733 mul a4,a4,a5 -800014ec: fe842783 lw a5,-24(s0) -800014f0: 00f707b3 add a5,a4,a5 -800014f4: fcf42623 sw a5,-52(s0) -800014f8: fe842703 lw a4,-24(s0) -800014fc: fd042783 lw a5,-48(s0) -80001500: 00f737b3 sltu a5,a4,a5 -80001504: 0ff7f793 andi a5,a5,255 -80001508: fcf42423 sw a5,-56(s0) -8000150c: fc842783 lw a5,-56(s0) -80001510: 0017b793 seqz a5,a5 -80001514: fcf403a3 sb a5,-57(s0) -80001518: fc744783 lbu a5,-57(s0) -8000151c: 00078f13 mv t5,a5 -80001520: 800017b7 lui a5,0x80001 -80001524: 57878f93 addi t6,a5,1400 # 80001578 -80001528: 000f206b 0xf206b -8000152c: 01ff707b 0x1ff707b -80001530: fcc42783 lw a5,-52(s0) -80001534: 00279793 slli a5,a5,0x2 -80001538: fdc42703 lw a4,-36(s0) -8000153c: 00f707b3 add a5,a4,a5 -80001540: 0007a683 lw a3,0(a5) -80001544: fcc42783 lw a5,-52(s0) -80001548: 00279793 slli a5,a5,0x2 -8000154c: fd442703 lw a4,-44(s0) -80001550: 00f707b3 add a5,a4,a5 -80001554: fd842703 lw a4,-40(s0) -80001558: 02e68733 mul a4,a3,a4 -8000155c: 00e7a023 sw a4,0(a5) -80001560: fe842783 lw a5,-24(s0) -80001564: 00178793 addi a5,a5,1 -80001568: fef42423 sw a5,-24(s0) -8000156c: 800017b7 lui a5,0x80001 -80001570: 57c78e13 addi t3,a5,1404 # 8000157c -80001574: 000e0067 jr t3 -80001578: 00000013 nop -8000157c: 0000306b 0x306b -80001580: fe442783 lw a5,-28(s0) -80001584: 00178793 addi a5,a5,1 -80001588: fef42223 sw a5,-28(s0) -8000158c: fe442783 lw a5,-28(s0) -80001590: fec42703 lw a4,-20(s0) -80001594: f4e7e6e3 bltu a5,a4,800014e0 <_vx_e_mat_mult+0x90> -80001598: 00000013 nop -8000159c: 04c12083 lw ra,76(sp) -800015a0: 04812403 lw s0,72(sp) -800015a4: 05010113 addi sp,sp,80 -800015a8: 00008067 ret +800013c4 : +800013c4: fc010113 addi sp,sp,-64 +800013c8: 02112e23 sw ra,60(sp) +800013cc: 02812c23 sw s0,56(sp) +800013d0: 04010413 addi s0,sp,64 +800013d4: fca42e23 sw a0,-36(s0) +800013d8: fcb42c23 sw a1,-40(s0) +800013dc: fcc42a23 sw a2,-44(s0) +800013e0: fcd42823 sw a3,-48(s0) +800013e4: fce42623 sw a4,-52(s0) +800013e8: 810267b7 lui a5,0x81026 +800013ec: fdc42703 lw a4,-36(s0) +800013f0: 20e7a423 sw a4,520(a5) # 81026208 +800013f4: 810267b7 lui a5,0x81026 +800013f8: 20878793 addi a5,a5,520 # 81026208 +800013fc: fd842703 lw a4,-40(s0) +80001400: 00e7a223 sw a4,4(a5) +80001404: 810267b7 lui a5,0x81026 +80001408: 20878793 addi a5,a5,520 # 81026208 +8000140c: fd442703 lw a4,-44(s0) +80001410: 00e7a423 sw a4,8(a5) +80001414: 810267b7 lui a5,0x81026 +80001418: 20878793 addi a5,a5,520 # 81026208 +8000141c: fcc42703 lw a4,-52(s0) +80001420: 00e7a623 sw a4,12(a5) +80001424: 810267b7 lui a5,0x81026 +80001428: 20878793 addi a5,a5,520 # 81026208 +8000142c: fd042703 lw a4,-48(s0) +80001430: 00e7a823 sw a4,16(a5) +80001434: dc9fe0ef jal ra,800001fc +80001438: fea42423 sw a0,-24(s0) +8000143c: fcc42703 lw a4,-52(s0) +80001440: fe842783 lw a5,-24(s0) +80001444: 02f757b3 divu a5,a4,a5 +80001448: fef42623 sw a5,-20(s0) +8000144c: fcc42703 lw a4,-52(s0) +80001450: fe842783 lw a5,-24(s0) +80001454: 02f777b3 remu a5,a4,a5 +80001458: 00078863 beqz a5,80001468 +8000145c: fec42783 lw a5,-20(s0) +80001460: 00178793 addi a5,a5,1 +80001464: fef42623 sw a5,-20(s0) +80001468: 810267b7 lui a5,0x81026 +8000146c: 20878793 addi a5,a5,520 # 81026208 +80001470: fec42703 lw a4,-20(s0) +80001474: 00e7aa23 sw a4,20(a5) +80001478: fcc42703 lw a4,-52(s0) +8000147c: fe842783 lw a5,-24(s0) +80001480: 02f76263 bltu a4,a5,800014a4 +80001484: 810267b7 lui a5,0x81026 +80001488: 20878693 addi a3,a5,520 # 81026208 +8000148c: 800017b7 lui a5,0x80001 +80001490: 4fc78613 addi a2,a5,1276 # 800014fc +80001494: fe842583 lw a1,-24(s0) +80001498: fd042503 lw a0,-48(s0) +8000149c: 818ff0ef jal ra,800004b4 +800014a0: 0200006f j 800014c0 +800014a4: 810267b7 lui a5,0x81026 +800014a8: 20878693 addi a3,a5,520 # 81026208 +800014ac: 800017b7 lui a5,0x80001 +800014b0: 4fc78613 addi a2,a5,1276 # 800014fc +800014b4: fcc42583 lw a1,-52(s0) +800014b8: fd042503 lw a0,-48(s0) +800014bc: ff9fe0ef jal ra,800004b4 +800014c0: d35fe0ef jal ra,800001f4 +800014c4: fea42223 sw a0,-28(s0) +800014c8: fd042703 lw a4,-48(s0) +800014cc: fe442783 lw a5,-28(s0) +800014d0: 00e7f863 bgeu a5,a4,800014e0 +800014d4: fe442503 lw a0,-28(s0) +800014d8: 8ccff0ef jal ra,800005a4 +800014dc: 00c0006f j 800014e8 +800014e0: fd042503 lw a0,-48(s0) +800014e4: 8c0ff0ef jal ra,800005a4 +800014e8: 00000013 nop +800014ec: 03c12083 lw ra,60(sp) +800014f0: 03812403 lw s0,56(sp) +800014f4: 04010113 addi sp,sp,64 +800014f8: 00008067 ret -800015ac : -800015ac: fe010113 addi sp,sp,-32 -800015b0: 00812e23 sw s0,28(sp) -800015b4: 02010413 addi s0,sp,32 -800015b8: fe042623 sw zero,-20(s0) -800015bc: 0480006f j 80001604 -800015c0: 810037b7 lui a5,0x81003 -800015c4: fec42703 lw a4,-20(s0) -800015c8: 00271713 slli a4,a4,0x2 -800015cc: 9a078793 addi a5,a5,-1632 # 810029a0 -800015d0: 00f707b3 add a5,a4,a5 -800015d4: 00300713 li a4,3 -800015d8: 00e7a023 sw a4,0(a5) -800015dc: 810047b7 lui a5,0x81004 -800015e0: fec42703 lw a4,-20(s0) -800015e4: 00271713 slli a4,a4,0x2 -800015e8: 9a078793 addi a5,a5,-1632 # 810039a0 -800015ec: 00f707b3 add a5,a4,a5 -800015f0: 00200713 li a4,2 -800015f4: 00e7a023 sw a4,0(a5) -800015f8: fec42783 lw a5,-20(s0) -800015fc: 00178793 addi a5,a5,1 -80001600: fef42623 sw a5,-20(s0) -80001604: fec42703 lw a4,-20(s0) -80001608: 0ff00793 li a5,255 -8000160c: fae7dae3 bge a5,a4,800015c0 -80001610: 00000013 nop -80001614: 01c12403 lw s0,28(sp) -80001618: 02010113 addi sp,sp,32 -8000161c: 00008067 ret +800014fc <_vx_e_mat_mult>: +800014fc: fb010113 addi sp,sp,-80 +80001500: 04112623 sw ra,76(sp) +80001504: 04812423 sw s0,72(sp) +80001508: 05010413 addi s0,sp,80 +8000150c: faa42e23 sw a0,-68(s0) +80001510: fab42c23 sw a1,-72(s0) +80001514: 95cff0ef jal ra,80000670 +80001518: fea42023 sw a0,-32(s0) +8000151c: fe042783 lw a5,-32(s0) +80001520: 0007a783 lw a5,0(a5) +80001524: fcf42e23 sw a5,-36(s0) +80001528: fe042783 lw a5,-32(s0) +8000152c: 0047a783 lw a5,4(a5) +80001530: 0007a783 lw a5,0(a5) +80001534: fcf42c23 sw a5,-40(s0) +80001538: fe042783 lw a5,-32(s0) +8000153c: 0087a783 lw a5,8(a5) +80001540: fcf42a23 sw a5,-44(s0) +80001544: fe042783 lw a5,-32(s0) +80001548: 0147a783 lw a5,20(a5) +8000154c: fef42623 sw a5,-20(s0) +80001550: fec42703 lw a4,-20(s0) +80001554: fbc42783 lw a5,-68(s0) +80001558: 02f707b3 mul a5,a4,a5 +8000155c: fef42423 sw a5,-24(s0) +80001560: fec42783 lw a5,-20(s0) +80001564: 00079a63 bnez a5,80001578 <_vx_e_mat_mult+0x7c> +80001568: 00100793 li a5,1 +8000156c: fef42623 sw a5,-20(s0) +80001570: fbc42783 lw a5,-68(s0) +80001574: fef42423 sw a5,-24(s0) +80001578: fe042783 lw a5,-32(s0) +8000157c: 00c7a783 lw a5,12(a5) +80001580: fcf42823 sw a5,-48(s0) +80001584: fe042223 sw zero,-28(s0) +80001588: 0b00006f j 80001638 <_vx_e_mat_mult+0x13c> +8000158c: fb842703 lw a4,-72(s0) +80001590: fd042783 lw a5,-48(s0) +80001594: 02f70733 mul a4,a4,a5 +80001598: fe842783 lw a5,-24(s0) +8000159c: 00f707b3 add a5,a4,a5 +800015a0: fcf42623 sw a5,-52(s0) +800015a4: fe842703 lw a4,-24(s0) +800015a8: fd042783 lw a5,-48(s0) +800015ac: 00f737b3 sltu a5,a4,a5 +800015b0: 0ff7f793 andi a5,a5,255 +800015b4: fcf42423 sw a5,-56(s0) +800015b8: fc842783 lw a5,-56(s0) +800015bc: 0017b793 seqz a5,a5 +800015c0: fcf403a3 sb a5,-57(s0) +800015c4: fc744783 lbu a5,-57(s0) +800015c8: 00078f13 mv t5,a5 +800015cc: 800017b7 lui a5,0x80001 +800015d0: 62478f93 addi t6,a5,1572 # 80001624 +800015d4: 000f206b 0xf206b +800015d8: 01ff707b 0x1ff707b +800015dc: fcc42783 lw a5,-52(s0) +800015e0: 00279793 slli a5,a5,0x2 +800015e4: fdc42703 lw a4,-36(s0) +800015e8: 00f707b3 add a5,a4,a5 +800015ec: 0007a683 lw a3,0(a5) +800015f0: fcc42783 lw a5,-52(s0) +800015f4: 00279793 slli a5,a5,0x2 +800015f8: fd442703 lw a4,-44(s0) +800015fc: 00f707b3 add a5,a4,a5 +80001600: fd842703 lw a4,-40(s0) +80001604: 02e68733 mul a4,a3,a4 +80001608: 00e7a023 sw a4,0(a5) +8000160c: fe842783 lw a5,-24(s0) +80001610: 00178793 addi a5,a5,1 +80001614: fef42423 sw a5,-24(s0) +80001618: 800017b7 lui a5,0x80001 +8000161c: 62878e13 addi t3,a5,1576 # 80001628 +80001620: 000e0067 jr t3 +80001624: 00000013 nop +80001628: 0000306b 0x306b +8000162c: fe442783 lw a5,-28(s0) +80001630: 00178793 addi a5,a5,1 +80001634: fef42223 sw a5,-28(s0) +80001638: fe442783 lw a5,-28(s0) +8000163c: fec42703 lw a4,-20(s0) +80001640: f4e7e6e3 bltu a5,a4,8000158c <_vx_e_mat_mult+0x90> +80001644: 00000013 nop +80001648: 04c12083 lw ra,76(sp) +8000164c: 04812403 lw s0,72(sp) +80001650: 05010113 addi sp,sp,80 +80001654: 00008067 ret -80001620 : -80001620: fd010113 addi sp,sp,-48 -80001624: 02112623 sw ra,44(sp) -80001628: 02812423 sw s0,40(sp) -8000162c: 03010413 addi s0,sp,48 -80001630: fca42e23 sw a0,-36(s0) -80001634: 810007b7 lui a5,0x81000 -80001638: 11078513 addi a0,a5,272 # 81000110 -8000163c: 90cff0ef jal ra,80000748 -80001640: fe042623 sw zero,-20(s0) -80001644: 0580006f j 8000169c -80001648: fec42783 lw a5,-20(s0) -8000164c: 00078e63 beqz a5,80001668 -80001650: fec42783 lw a5,-20(s0) -80001654: 00f7f793 andi a5,a5,15 -80001658: 00079863 bnez a5,80001668 -8000165c: 810007b7 lui a5,0x81000 -80001660: 13478513 addi a0,a5,308 # 81000134 -80001664: 8e4ff0ef jal ra,80000748 -80001668: fec42783 lw a5,-20(s0) -8000166c: 00279793 slli a5,a5,0x2 -80001670: fdc42703 lw a4,-36(s0) -80001674: 00f707b3 add a5,a4,a5 -80001678: 0007a783 lw a5,0(a5) -8000167c: 00078513 mv a0,a5 -80001680: 904ff0ef jal ra,80000784 -80001684: 810007b7 lui a5,0x81000 -80001688: 13878513 addi a0,a5,312 # 81000138 -8000168c: 8bcff0ef jal ra,80000748 -80001690: fec42783 lw a5,-20(s0) -80001694: 00178793 addi a5,a5,1 -80001698: fef42623 sw a5,-20(s0) -8000169c: fec42703 lw a4,-20(s0) -800016a0: 0ff00793 li a5,255 -800016a4: fae7d2e3 bge a5,a4,80001648 -800016a8: 810007b7 lui a5,0x81000 -800016ac: 13c78513 addi a0,a5,316 # 8100013c -800016b0: 898ff0ef jal ra,80000748 -800016b4: 00000013 nop -800016b8: 02c12083 lw ra,44(sp) -800016bc: 02812403 lw s0,40(sp) -800016c0: 03010113 addi sp,sp,48 -800016c4: 00008067 ret +80001658 : +80001658: fd010113 addi sp,sp,-48 +8000165c: 02812623 sw s0,44(sp) +80001660: 03010413 addi s0,sp,48 +80001664: fca42e23 sw a0,-36(s0) +80001668: fe042623 sw zero,-20(s0) +8000166c: 0100006f j 8000167c +80001670: fec42783 lw a5,-20(s0) +80001674: 00178793 addi a5,a5,1 +80001678: fef42623 sw a5,-20(s0) +8000167c: fec42703 lw a4,-20(s0) +80001680: fdc42783 lw a5,-36(s0) +80001684: fef746e3 blt a4,a5,80001670 +80001688: 00000013 nop +8000168c: 02c12403 lw s0,44(sp) +80001690: 03010113 addi sp,sp,48 +80001694: 00008067 ret -800016c8
: -800016c8: ff010113 addi sp,sp,-16 -800016cc: 00112623 sw ra,12(sp) -800016d0: 00812423 sw s0,8(sp) -800016d4: 01010413 addi s0,sp,16 -800016d8: ed5ff0ef jal ra,800015ac -800016dc: 01000693 li a3,16 -800016e0: 810057b7 lui a5,0x81005 -800016e4: 9a078613 addi a2,a5,-1632 # 810049a0 -800016e8: 810047b7 lui a5,0x81004 -800016ec: 9a078593 addi a1,a5,-1632 # 810039a0 -800016f0: 810037b7 lui a5,0x81003 -800016f4: 9a078513 addi a0,a5,-1632 # 810029a0 -800016f8: 998ff0ef jal ra,80000890 -800016fc: 810007b7 lui a5,0x81000 -80001700: 16078513 addi a0,a5,352 # 81000160 -80001704: 844ff0ef jal ra,80000748 -80001708: 810057b7 lui a5,0x81005 -8000170c: 9a078513 addi a0,a5,-1632 # 810049a0 -80001710: f11ff0ef jal ra,80001620 -80001714: 00000793 li a5,0 -80001718: 00078513 mv a0,a5 -8000171c: 00c12083 lw ra,12(sp) -80001720: 00812403 lw s0,8(sp) -80001724: 01010113 addi sp,sp,16 -80001728: 00008067 ret +80001698 : +80001698: fd010113 addi sp,sp,-48 +8000169c: 02112623 sw ra,44(sp) +800016a0: 02812423 sw s0,40(sp) +800016a4: 03010413 addi s0,sp,48 +800016a8: fca42e23 sw a0,-36(s0) +800016ac: fcb42c23 sw a1,-40(s0) +800016b0: 810267b7 lui a5,0x81026 +800016b4: 22078713 addi a4,a5,544 # 81026220 +800016b8: fdc42783 lw a5,-36(s0) +800016bc: 00f707b3 add a5,a4,a5 +800016c0: 00100713 li a4,1 +800016c4: 00e78023 sb a4,0(a5) +800016c8: fdc42783 lw a5,-36(s0) +800016cc: 0c079063 bnez a5,8000178c +800016d0: fe0401a3 sb zero,-29(s0) +800016d4: fe042623 sw zero,-20(s0) +800016d8: 0a80006f j 80001780 +800016dc: fe042623 sw zero,-20(s0) +800016e0: fe042423 sw zero,-24(s0) +800016e4: 0340006f j 80001718 +800016e8: 810267b7 lui a5,0x81026 +800016ec: 22078713 addi a4,a5,544 # 81026220 +800016f0: fe842783 lw a5,-24(s0) +800016f4: 00f707b3 add a5,a4,a5 +800016f8: 0007c783 lbu a5,0(a5) +800016fc: 00078863 beqz a5,8000170c +80001700: fec42783 lw a5,-20(s0) +80001704: 00178793 addi a5,a5,1 +80001708: fef42623 sw a5,-20(s0) +8000170c: fe842783 lw a5,-24(s0) +80001710: 00178793 addi a5,a5,1 +80001714: fef42423 sw a5,-24(s0) +80001718: fe842703 lw a4,-24(s0) +8000171c: fd842783 lw a5,-40(s0) +80001720: fcf744e3 blt a4,a5,800016e8 +80001724: fec42703 lw a4,-20(s0) +80001728: fd842783 lw a5,-40(s0) +8000172c: 04f71a63 bne a4,a5,80001780 +80001730: fe042223 sw zero,-28(s0) +80001734: 0400006f j 80001774 +80001738: 810267b7 lui a5,0x81026 +8000173c: 22078713 addi a4,a5,544 # 81026220 +80001740: fe442783 lw a5,-28(s0) +80001744: 00f707b3 add a5,a4,a5 +80001748: 00078023 sb zero,0(a5) +8000174c: 810297b7 lui a5,0x81029 +80001750: 00100713 li a4,1 +80001754: 2ee78423 sb a4,744(a5) # 810292e8 +80001758: 04600513 li a0,70 +8000175c: efdff0ef jal ra,80001658 +80001760: 810297b7 lui a5,0x81029 +80001764: 2e078423 sb zero,744(a5) # 810292e8 +80001768: fe442783 lw a5,-28(s0) +8000176c: 00178793 addi a5,a5,1 +80001770: fef42223 sw a5,-28(s0) +80001774: fe442703 lw a4,-28(s0) +80001778: fd842783 lw a5,-40(s0) +8000177c: faf74ee3 blt a4,a5,80001738 +80001780: fe344783 lbu a5,-29(s0) +80001784: f4079ce3 bnez a5,800016dc +80001788: 0240006f j 800017ac +8000178c: 00000013 nop +80001790: 810297b7 lui a5,0x81029 +80001794: 2e87c783 lbu a5,744(a5) # 810292e8 +80001798: 0017c793 xori a5,a5,1 +8000179c: 0ff7f793 andi a5,a5,255 +800017a0: fe0798e3 bnez a5,80001790 +800017a4: 06400513 li a0,100 +800017a8: eb1ff0ef jal ra,80001658 +800017ac: 00000013 nop +800017b0: 02c12083 lw ra,44(sp) +800017b4: 02812403 lw s0,40(sp) +800017b8: 03010113 addi sp,sp,48 +800017bc: 00008067 ret + +800017c0 : +800017c0: fe010113 addi sp,sp,-32 +800017c4: 00812e23 sw s0,28(sp) +800017c8: 02010413 addi s0,sp,32 +800017cc: fe042623 sw zero,-20(s0) +800017d0: 0480006f j 80001818 +800017d4: 810267b7 lui a5,0x81026 +800017d8: fec42703 lw a4,-20(s0) +800017dc: 00271713 slli a4,a4,0x2 +800017e0: 24078793 addi a5,a5,576 # 81026240 +800017e4: 00f707b3 add a5,a4,a5 +800017e8: 00300713 li a4,3 +800017ec: 00e7a023 sw a4,0(a5) +800017f0: 810277b7 lui a5,0x81027 +800017f4: fec42703 lw a4,-20(s0) +800017f8: 00271713 slli a4,a4,0x2 +800017fc: 24078793 addi a5,a5,576 # 81027240 +80001800: 00f707b3 add a5,a4,a5 +80001804: 00200713 li a4,2 +80001808: 00e7a023 sw a4,0(a5) +8000180c: fec42783 lw a5,-20(s0) +80001810: 00178793 addi a5,a5,1 +80001814: fef42623 sw a5,-20(s0) +80001818: fec42703 lw a4,-20(s0) +8000181c: 0ff00793 li a5,255 +80001820: fae7dae3 bge a5,a4,800017d4 +80001824: 00000013 nop +80001828: 01c12403 lw s0,28(sp) +8000182c: 02010113 addi sp,sp,32 +80001830: 00008067 ret + +80001834 : +80001834: fd010113 addi sp,sp,-48 +80001838: 02112623 sw ra,44(sp) +8000183c: 02812423 sw s0,40(sp) +80001840: 03010413 addi s0,sp,48 +80001844: fca42e23 sw a0,-36(s0) +80001848: 810007b7 lui a5,0x81000 +8000184c: 12078513 addi a0,a5,288 # 81000120 +80001850: fa5fe0ef jal ra,800007f4 +80001854: fe042623 sw zero,-20(s0) +80001858: 0580006f j 800018b0 +8000185c: fec42783 lw a5,-20(s0) +80001860: 00078e63 beqz a5,8000187c +80001864: fec42783 lw a5,-20(s0) +80001868: 00f7f793 andi a5,a5,15 +8000186c: 00079863 bnez a5,8000187c +80001870: 810007b7 lui a5,0x81000 +80001874: 14478513 addi a0,a5,324 # 81000144 +80001878: f7dfe0ef jal ra,800007f4 +8000187c: fec42783 lw a5,-20(s0) +80001880: 00279793 slli a5,a5,0x2 +80001884: fdc42703 lw a4,-36(s0) +80001888: 00f707b3 add a5,a4,a5 +8000188c: 0007a783 lw a5,0(a5) +80001890: 00078513 mv a0,a5 +80001894: f9dfe0ef jal ra,80000830 +80001898: 810007b7 lui a5,0x81000 +8000189c: 14878513 addi a0,a5,328 # 81000148 +800018a0: f55fe0ef jal ra,800007f4 +800018a4: fec42783 lw a5,-20(s0) +800018a8: 00178793 addi a5,a5,1 +800018ac: fef42623 sw a5,-20(s0) +800018b0: fec42703 lw a4,-20(s0) +800018b4: 0ff00793 li a5,255 +800018b8: fae7d2e3 bge a5,a4,8000185c +800018bc: 810007b7 lui a5,0x81000 +800018c0: 14c78513 addi a0,a5,332 # 8100014c +800018c4: f31fe0ef jal ra,800007f4 +800018c8: 00000013 nop +800018cc: 02c12083 lw ra,44(sp) +800018d0: 02812403 lw s0,40(sp) +800018d4: 03010113 addi sp,sp,48 +800018d8: 00008067 ret + +800018dc
: +800018dc: ff010113 addi sp,sp,-16 +800018e0: 00112623 sw ra,12(sp) +800018e4: 00812423 sw s0,8(sp) +800018e8: 01010413 addi s0,sp,16 +800018ec: ed5ff0ef jal ra,800017c0 +800018f0: 01000693 li a3,16 +800018f4: 810287b7 lui a5,0x81028 +800018f8: 24078613 addi a2,a5,576 # 81028240 +800018fc: 810277b7 lui a5,0x81027 +80001900: 24078593 addi a1,a5,576 # 81027240 +80001904: 810267b7 lui a5,0x81026 +80001908: 24078513 addi a0,a5,576 # 81026240 +8000190c: 830ff0ef jal ra,8000093c +80001910: 810007b7 lui a5,0x81000 +80001914: 17078513 addi a0,a5,368 # 81000170 +80001918: eddfe0ef jal ra,800007f4 +8000191c: 810287b7 lui a5,0x81028 +80001920: 24078513 addi a0,a5,576 # 81028240 +80001924: f11ff0ef jal ra,80001834 +80001928: 00000793 li a5,0 +8000192c: 00078513 mv a0,a5 +80001930: 00c12083 lw ra,12(sp) +80001934: 00812403 lw s0,8(sp) +80001938: 01010113 addi sp,sp,16 +8000193c: 00008067 ret Disassembly of section .rodata: @@ -1606,206 +1743,205 @@ Disassembly of section .rodata: 8100002a: 0000 unimp 8100002c: 0062 c.slli zero,0x18 8100002e: 0000 unimp -81000030: 00000063 beqz zero,81000030 +81000030: 00000063 beqz zero,81000030 81000034: 0064 addi s1,sp,12 81000036: 0000 unimp 81000038: 0065 c.nop 25 8100003a: 0000 unimp 8100003c: 0066 c.slli zero,0x19 8100003e: 0000 unimp -81000040: 0030 addi a2,sp,8 -81000042: 0000 unimp -81000044: 0031 c.nop 12 -81000046: 0000 unimp -81000048: 0032 c.slli zero,0xc -8100004a: 0000 unimp -8100004c: 00000033 add zero,zero,zero -81000050: 0034 addi a3,sp,8 +81000040: 6552 flw fa0,20(sp) +81000042: 65686373 csrrsi t1,0x656,16 +81000046: 7564 flw fs1,108(a0) +81000048: 656c flw fa1,76(a0) +8100004a: 203a fld ft0,392(sp) +8100004c: 0000 unimp +8100004e: 0000 unimp +81000050: 0030 addi a2,sp,8 81000052: 0000 unimp -81000054: 0035 c.nop 13 +81000054: 0031 c.nop 12 81000056: 0000 unimp -81000058: 0036 c.slli zero,0xd +81000058: 0032 c.slli zero,0xc 8100005a: 0000 unimp -8100005c: 00000037 lui zero,0x0 -81000060: 0038 addi a4,sp,8 +8100005c: 00000033 add zero,zero,zero +81000060: 0034 addi a3,sp,8 81000062: 0000 unimp -81000064: 0039 c.nop 14 +81000064: 0035 c.nop 13 81000066: 0000 unimp -81000068: 0061 c.nop 24 +81000068: 0036 c.slli zero,0xd 8100006a: 0000 unimp -8100006c: 0062 c.slli zero,0x18 -8100006e: 0000 unimp -81000070: 00000063 beqz zero,81000070 -81000074: 0064 addi s1,sp,12 +8100006c: 00000037 lui zero,0x0 +81000070: 0038 addi a4,sp,8 +81000072: 0000 unimp +81000074: 0039 c.nop 14 81000076: 0000 unimp -81000078: 0065 c.nop 25 +81000078: 0061 c.nop 24 8100007a: 0000 unimp -8100007c: 0066 c.slli zero,0x19 +8100007c: 0062 c.slli zero,0x18 8100007e: 0000 unimp -81000080: 000a c.slli zero,0x2 -81000082: 0000 unimp -81000084: 0030 addi a2,sp,8 +81000080: 00000063 beqz zero,81000080 +81000084: 0064 addi s1,sp,12 81000086: 0000 unimp -81000088: 0031 c.nop 12 +81000088: 0065 c.nop 25 8100008a: 0000 unimp -8100008c: 0032 c.slli zero,0xc +8100008c: 0066 c.slli zero,0x19 8100008e: 0000 unimp -81000090: 00000033 add zero,zero,zero -81000094: 0034 addi a3,sp,8 +81000090: 000a c.slli zero,0x2 +81000092: 0000 unimp +81000094: 0030 addi a2,sp,8 81000096: 0000 unimp -81000098: 0035 c.nop 13 +81000098: 0031 c.nop 12 8100009a: 0000 unimp -8100009c: 0036 c.slli zero,0xd +8100009c: 0032 c.slli zero,0xc 8100009e: 0000 unimp -810000a0: 00000037 lui zero,0x0 -810000a4: 0038 addi a4,sp,8 +810000a0: 00000033 add zero,zero,zero +810000a4: 0034 addi a3,sp,8 810000a6: 0000 unimp -810000a8: 0039 c.nop 14 +810000a8: 0035 c.nop 13 810000aa: 0000 unimp -810000ac: 0061 c.nop 24 +810000ac: 0036 c.slli zero,0xd 810000ae: 0000 unimp -810000b0: 0062 c.slli zero,0x18 -810000b2: 0000 unimp -810000b4: 00000063 beqz zero,810000b4 -810000b8: 0064 addi s1,sp,12 +810000b0: 00000037 lui zero,0x0 +810000b4: 0038 addi a4,sp,8 +810000b6: 0000 unimp +810000b8: 0039 c.nop 14 810000ba: 0000 unimp -810000bc: 0065 c.nop 25 +810000bc: 0061 c.nop 24 810000be: 0000 unimp -810000c0: 0066 c.slli zero,0x19 +810000c0: 0062 c.slli zero,0x18 810000c2: 0000 unimp -810000c4: 7366664f fnmadd.d fa2,fa2,fs6,fa4,unknown -810000c8: 7465 lui s0,0xffff9 -810000ca: 203a fld ft0,392(sp) -810000cc: 0000 unimp +810000c4: 00000063 beqz zero,810000c4 +810000c8: 0064 addi s1,sp,12 +810000ca: 0000 unimp +810000cc: 0065 c.nop 25 810000ce: 0000 unimp -810000d0: 0030 addi a2,sp,8 +810000d0: 0066 c.slli zero,0x19 810000d2: 0000 unimp -810000d4: 0031 c.nop 12 -810000d6: 0000 unimp -810000d8: 0032 c.slli zero,0xc -810000da: 0000 unimp -810000dc: 00000033 add zero,zero,zero -810000e0: 0034 addi a3,sp,8 +810000d4: 7366664f fnmadd.d fa2,fa2,fs6,fa4,unknown +810000d8: 7465 lui s0,0xffff9 +810000da: 203a fld ft0,392(sp) +810000dc: 0000 unimp +810000de: 0000 unimp +810000e0: 0030 addi a2,sp,8 810000e2: 0000 unimp -810000e4: 0035 c.nop 13 +810000e4: 0031 c.nop 12 810000e6: 0000 unimp -810000e8: 0036 c.slli zero,0xd +810000e8: 0032 c.slli zero,0xc 810000ea: 0000 unimp -810000ec: 00000037 lui zero,0x0 -810000f0: 0038 addi a4,sp,8 +810000ec: 00000033 add zero,zero,zero +810000f0: 0034 addi a3,sp,8 810000f2: 0000 unimp -810000f4: 0039 c.nop 14 +810000f4: 0035 c.nop 13 810000f6: 0000 unimp -810000f8: 0061 c.nop 24 +810000f8: 0036 c.slli zero,0xd 810000fa: 0000 unimp -810000fc: 0062 c.slli zero,0x18 -810000fe: 0000 unimp -81000100: 00000063 beqz zero,81000100 -81000104: 0064 addi s1,sp,12 +810000fc: 00000037 lui zero,0x0 +81000100: 0038 addi a4,sp,8 +81000102: 0000 unimp +81000104: 0039 c.nop 14 81000106: 0000 unimp -81000108: 0065 c.nop 25 +81000108: 0061 c.nop 24 8100010a: 0000 unimp -8100010c: 0066 c.slli zero,0x19 +8100010c: 0062 c.slli zero,0x18 8100010e: 0000 unimp -81000110: 2d2d jal 8100074a -81000112: 2d2d jal 8100074c -81000114: 2d2d jal 8100074e -81000116: 2d2d jal 81000750 -81000118: 2d2d jal 81000752 -8100011a: 2d2d jal 81000754 -8100011c: 2d2d jal 81000756 -8100011e: 2d2d jal 81000758 -81000120: 2d2d jal 8100075a -81000122: 2d2d jal 8100075c -81000124: 2d2d jal 8100075e -81000126: 2d2d jal 81000760 -81000128: 2d2d jal 81000762 -8100012a: 2d2d jal 81000764 -8100012c: 2d2d jal 81000766 -8100012e: 0a2d addi s4,s4,11 -81000130: 0000 unimp -81000132: 0000 unimp -81000134: 000a c.slli zero,0x2 -81000136: 0000 unimp -81000138: 0020 addi s0,sp,8 -8100013a: 0000 unimp -8100013c: 2d0a fld fs10,128(sp) -8100013e: 2d2d jal 81000778 -81000140: 2d2d jal 8100077a -81000142: 2d2d jal 8100077c -81000144: 2d2d jal 8100077e -81000146: 2d2d jal 81000780 -81000148: 2d2d jal 81000782 -8100014a: 2d2d jal 81000784 -8100014c: 2d2d jal 81000786 -8100014e: 2d2d jal 81000788 -81000150: 2d2d jal 8100078a -81000152: 2d2d jal 8100078c -81000154: 2d2d jal 8100078e -81000156: 2d2d jal 81000790 -81000158: 2d2d jal 81000792 -8100015a: 2d2d jal 81000794 -8100015c: 000a c.slli zero,0x2 -8100015e: 0000 unimp -81000160: 0a0a slli s4,s4,0x2 -81000162: 614d addi sp,sp,176 -81000164: 7274 flw fa3,100(a2) -81000166: 7869 lui a6,0xffffa -81000168: 6d20 flw fs0,88(a0) -8100016a: 6c75 lui s8,0x1d -8100016c: 6974 flw fa3,84(a0) -8100016e: 6c70 flw fa2,92(s0) -81000170: 6369 lui t1,0x1a -81000172: 7461 lui s0,0xffff8 -81000174: 6f69 lui t5,0x1a -81000176: 0a6e slli s4,s4,0x1b +81000110: 00000063 beqz zero,81000110 +81000114: 0064 addi s1,sp,12 +81000116: 0000 unimp +81000118: 0065 c.nop 25 +8100011a: 0000 unimp +8100011c: 0066 c.slli zero,0x19 +8100011e: 0000 unimp +81000120: 2d2d jal 8100075a +81000122: 2d2d jal 8100075c +81000124: 2d2d jal 8100075e +81000126: 2d2d jal 81000760 +81000128: 2d2d jal 81000762 +8100012a: 2d2d jal 81000764 +8100012c: 2d2d jal 81000766 +8100012e: 2d2d jal 81000768 +81000130: 2d2d jal 8100076a +81000132: 2d2d jal 8100076c +81000134: 2d2d jal 8100076e +81000136: 2d2d jal 81000770 +81000138: 2d2d jal 81000772 +8100013a: 2d2d jal 81000774 +8100013c: 2d2d jal 81000776 +8100013e: 0a2d addi s4,s4,11 +81000140: 0000 unimp +81000142: 0000 unimp +81000144: 000a c.slli zero,0x2 +81000146: 0000 unimp +81000148: 0020 addi s0,sp,8 +8100014a: 0000 unimp +8100014c: 2d0a fld fs10,128(sp) +8100014e: 2d2d jal 81000788 +81000150: 2d2d jal 8100078a +81000152: 2d2d jal 8100078c +81000154: 2d2d jal 8100078e +81000156: 2d2d jal 81000790 +81000158: 2d2d jal 81000792 +8100015a: 2d2d jal 81000794 +8100015c: 2d2d jal 81000796 +8100015e: 2d2d jal 81000798 +81000160: 2d2d jal 8100079a +81000162: 2d2d jal 8100079c +81000164: 2d2d jal 8100079e +81000166: 2d2d jal 810007a0 +81000168: 2d2d jal 810007a2 +8100016a: 2d2d jal 810007a4 +8100016c: 000a c.slli zero,0x2 +8100016e: 0000 unimp +81000170: 0a0a slli s4,s4,0x2 +81000172: 614d addi sp,sp,176 +81000174: 7274 flw fa3,100(a2) +81000176: 7869 lui a6,0xffffa +81000178: 6d20 flw fs0,88(a0) +8100017a: 6c75 lui s8,0x1d +8100017c: 6974 flw fa3,84(a0) +8100017e: 6c70 flw fa2,92(s0) +81000180: 6369 lui t1,0x1a +81000182: 7461 lui s0,0xffff8 +81000184: 6f69 lui t5,0x1a +81000186: 0a6e slli s4,s4,0x1b ... Disassembly of section .data: -8100017c : -8100017c: 0000 unimp -8100017e: 8100 0x8100 -81000180: 0004 0x4 -81000182: 8100 0x8100 -81000184: 0008 0x8 -81000186: 8100 0x8100 -81000188: 000c 0xc -8100018a: 8100 0x8100 -8100018c: 0010 0x10 +8100018c : +8100018c: 0000 unimp 8100018e: 8100 0x8100 -81000190: 0014 0x14 +81000190: 0004 0x4 81000192: 8100 0x8100 -81000194: 0018 0x18 +81000194: 0008 0x8 81000196: 8100 0x8100 -81000198: 001c 0x1c +81000198: 000c 0xc 8100019a: 8100 0x8100 -8100019c: 0020 addi s0,sp,8 +8100019c: 0010 0x10 8100019e: 8100 0x8100 -810001a0: 0024 addi s1,sp,8 +810001a0: 0014 0x14 810001a2: 8100 0x8100 -810001a4: 0028 addi a0,sp,8 +810001a4: 0018 0x18 810001a6: 8100 0x8100 -810001a8: 002c addi a1,sp,8 +810001a8: 001c 0x1c 810001aa: 8100 0x8100 -810001ac: 0030 addi a2,sp,8 +810001ac: 0020 addi s0,sp,8 810001ae: 8100 0x8100 -810001b0: 0034 addi a3,sp,8 +810001b0: 0024 addi s1,sp,8 810001b2: 8100 0x8100 -810001b4: 0038 addi a4,sp,8 +810001b4: 0028 addi a0,sp,8 810001b6: 8100 0x8100 -810001b8: 003c addi a5,sp,8 +810001b8: 002c addi a1,sp,8 810001ba: 8100 0x8100 - -810001bc : -810001bc: 0040 addi s0,sp,4 +810001bc: 0030 addi a2,sp,8 810001be: 8100 0x8100 -810001c0: 0044 addi s1,sp,4 +810001c0: 0034 addi a3,sp,8 810001c2: 8100 0x8100 -810001c4: 0048 addi a0,sp,4 +810001c4: 0038 addi a4,sp,8 810001c6: 8100 0x8100 -810001c8: 004c addi a1,sp,4 +810001c8: 003c addi a5,sp,8 810001ca: 8100 0x8100 + +810001cc : 810001cc: 0050 addi a2,sp,4 810001ce: 8100 0x8100 810001d0: 0054 addi a3,sp,4 @@ -1830,16 +1966,16 @@ Disassembly of section .data: 810001f6: 8100 0x8100 810001f8: 007c addi a5,sp,12 810001fa: 8100 0x8100 - -810001fc : -810001fc: 0084 addi s1,sp,64 +810001fc: 0080 addi s0,sp,64 810001fe: 8100 0x8100 -81000200: 0088 addi a0,sp,64 +81000200: 0084 addi s1,sp,64 81000202: 8100 0x8100 -81000204: 008c addi a1,sp,64 +81000204: 0088 addi a0,sp,64 81000206: 8100 0x8100 -81000208: 0090 addi a2,sp,64 +81000208: 008c addi a1,sp,64 8100020a: 8100 0x8100 + +8100020c : 8100020c: 0094 addi a3,sp,64 8100020e: 8100 0x8100 81000210: 0098 addi a4,sp,64 @@ -1864,16 +2000,16 @@ Disassembly of section .data: 81000236: 8100 0x8100 81000238: 00c0 addi s0,sp,68 8100023a: 8100 0x8100 - -8100023c : -8100023c: 00d0 addi a2,sp,68 +8100023c: 00c4 addi s1,sp,68 8100023e: 8100 0x8100 -81000240: 00d4 addi a3,sp,68 +81000240: 00c8 addi a0,sp,68 81000242: 8100 0x8100 -81000244: 00d8 addi a4,sp,68 +81000244: 00cc addi a1,sp,68 81000246: 8100 0x8100 -81000248: 00dc addi a5,sp,68 +81000248: 00d0 addi a2,sp,68 8100024a: 8100 0x8100 + +8100024c : 8100024c: 00e0 addi s0,sp,76 8100024e: 8100 0x8100 81000250: 00e4 addi s1,sp,76 @@ -1898,52 +2034,68 @@ Disassembly of section .data: 81000276: 8100 0x8100 81000278: 010c addi a1,sp,128 8100027a: 8100 0x8100 +8100027c: 0110 addi a2,sp,128 +8100027e: 8100 0x8100 +81000280: 0114 addi a3,sp,128 +81000282: 8100 0x8100 +81000284: 0118 addi a4,sp,128 +81000286: 8100 0x8100 +81000288: 011c addi a5,sp,128 +8100028a: 8100 0x8100 Disassembly of section .bss: -8100027c : +8100028c : ... -81000298 : -81000298: 0000 unimp +81000330 : +81000330: 0000 unimp ... -8100029c : +81000334 : ... -8100031c : +81000434 : ... -8100293c : +81026134 : ... -81002958 : -81002958: 0000 unimp +810261d8 : +810261d8: 0000 unimp ... -8100295c : +810261dc : ... -81002970 : +810261f0 : ... -81002988 : +81026208 : ... -810029a0 : +81026220 : ... -810039a0 : +81026240 : ... -810049a0 : +81027240 : ... -810059a0 : +81028240 : ... -810059bc : -810059bc: 0000 unimp +81029240 : + ... + +810292e4 : +810292e4: 0000 unimp + ... + +Disassembly of section .sbss: + +810292e8 : ... Disassembly of section .comment: diff --git a/kernel/vortex_test.elf b/kernel/vortex_test.elf index 68431a8407e2a3171b5211c061505c2f59158e18..38dd847fc6e722c71faed7e6ad40b7c532811721 100755 GIT binary patch delta 3861 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 JvxwEA`~!>ebR+-( diff --git a/kernel/vortex_test.hex b/kernel/vortex_test.hex index e3063c3e..26fccb24 100644 --- a/kernel/vortex_test.hex +++ b/kernel/vortex_test.hex @@ -1,415 +1,449 @@ :0200000480007A -:10000000130520007310050213052000731015025C -:10001000731040F17310103037F1FF7FEF00001BB9 -:10002000EF10806A73000000938B0600130D070029 +:1000000013058000731005021305400073101502DC +:10001000731040F17310103037F1FF7FEF00801E36 +:10002000EF10D00B73000000938B0600130D070038 :10003000130F01009303050013051000635C7500A6 :1000400013010180130305006B5003001305150015 :100050006FF0DFFE1300000013000000130000002B :1000600013000000130000001300000013010F0034 -:1000700013050000930F0600938D0300EBE0BF0112 -:10008000170500001305051B6B4005001703000052 -:100090001303C3F96B00030067800000170200011F -:1000A0001302022023200200232212002324220014 -:1000B0002326320023284200232A5200232C6200E8 -:1000C000232E720023208202232292022324A202E2 -:1000D0002326B2022328C202232AD202232CE202C0 -:1000E000232EF202232002052322120523242205B7 -:1000F0002326320523284205232A5205232C620594 -:10010000232E720523208207232292072324A2078D -:100110002326B2072328C207232AD207232CE2076B -:10012000232EF2071302100067800000170200015F -:1001300013020217032002008320420003218200E1 -:100140008321C20003220201832242010323820190 -:100150008323C20103240202832442020325820274 -:100160008325C20203260203832642030327820358 -:100170008327C2030328020483284204032982043C -:100180008329C204032A0205832A4205032B820520 -:10019000832BC205032C0206832C4206032D820604 -:1001A000832DC206032E0207832E4207032F8207E8 -:1001B000832FC2071302000067800000732500022E -:1001C000678000007325100267800000130101FEA4 -:1001D000232E1100232C810013040102232604FE88 -:1001E0006F0000030327C4FE9307404C3307F70258 -:1001F000B70700819387C731B307F700138507005E -:10020000EF0040408327C4FE938717002326F4FEA7 -:100210000327C4FE93077000E3D6E7FC1300000039 -:100220008320C101032481011301010267800000C2 -:10023000130101FD23261102232481022322A1039D -:100240001304010313070D009307404C3307F70213 -:10025000B70700819387C731B307F70013850700FD -:10026000EF00804B93070500638A070213070D0018 -:10027000B7070081131727009387C727B307F70035 -:100280001307100023A0E70093070D0063960700F3 -:10029000EFF0DFE96F0080057300000013070D0029 -:1002A0009307404C3307F702B70700819387C731A4 -:1002B000B307F700130784FD9305070013850700B4 -:1002C000EF00003D832704FE138107008327C4FD50 -:1002D000832584FD032644FE832684FE0327C4FE73 -:1002E00013850700EFF05FD4730000008320C10284 -:1002F00003248102032D41021301010367800000E2 -:10030000130101FB23261104232481041304010596 -:10031000EFF0DFEA2324A4FE930901009307100005 -:100320002326F4FE6F0040080327C4FE9307404CC9 -:100330003307F702B70700819387C731B307F70088 -:1003400013850700EF00403D9307050063980704FD -:100350000327C4FE9307404C3307F702B707008119 -:100360009387C731B307F700130704FD9305070010 -:1003700013850700EF00C031832784FD1381070038 -:10038000832744FD832504FD0326C4FD832604FE44 -:10039000032744FE13850700EFF05FCF8327C4FED9 -:1003A000938717002326F4FE8327C4FE032784FEC9 -:1003B000E3ECE7F613810900EFF05FCE930702004C -:1003C00063880704B70700811385C731EF00C03485 -:1003D00093070500639E0702930784FB938507003C -:1003E000B70700811385C731EF00802A832704FCFB -:1003F000138107008327C4FB832584FB032644FC69 -:10040000832684FC0327C4FC13850700EFF0DFC1BB -:10041000130000008320C10403248104130101059B -:1004200067800000130101FB2326110423248104AB -:1004300013040105232EA4FA232CB4FA232AC4FAA8 -:100440002328D4FAEFF09FD8EFF05FD72322A4FE41 -:1004500013090100232604FE232404FE6F00C008B4 -:10046000B709FFFF33013101832784FE2326F4FC03 -:10047000832784FB2328F4FC93070100232AF4FC40 -:10048000832744FB232CF4FC832704FB232EF4FC5A -:100490008327C4FE2320F4FE0327C4FE9307404CA9 -:1004A0003307F702B70700819387C731B307F70017 -:1004B0001307C4FC9305070013850700EF00C0165F -:1004C0008327C4FE938717002326F4FE8327C4FEE8 -:1004D000032744FE63E4E700232604FE832784FE0B -:1004E000938717002324F4FE032784FE8327C4FB8D -:1004F000E368F7F613010900EFF09FE01300000036 -:100500008320C104032481041301010567800000D6 -:10051000130101FD23261102232481021304010388 -:10052000232EA4FCEFF09FC92320A4FE232604FE63 -:100530006F004005232604FE232404FE6F00C00341 -:10054000B7070081032784FE131727009387C72767 -:10055000B307F70003A70700930710006318F7001D -:100560008327C4FE938717002326F4FE832784FE87 -:10057000938717002324F4FE832784FE032704FEB9 -:10058000E3E0E7FC0327C4FE8327C4FDE314F7FA86 -:10059000232204FE6F008002B7070081032744FE78 -:1005A000131727009387C727B307F70023A0070077 -:1005B000832744FE938717002322F4FE832744FEFB -:1005C000032704FEE3EAE7FC130000008320C102D6 -:1005D000032481021301010367800000130101FF5E -:1005E00023268100232471011304010193870B004A -:1005F000138507000324C100832B8100130101012F -:10060000678000009302050013030000930370004D -:1006100023A0620023A2620023A4620023A672002A -:1006200023A86200678000009302050003A38200F4 -:100630001303130023A462001383420183AE42001C -:1006400093935E003303730003AE05002320C301C0 -:1006500003AE45002322C30103AE85002324C3015A -:1006600003AEC5002326C30103AE05012328C30141 -:1006700003AE4501232AC301938E1E00130F2003EE -:100680006394EE01930E000023A2D2016780000064 -:100690009302050003A382001303F3FF23A4620067 -:1006A0001383420183AE0200930F2003138F0E00C9 -:1006B000130F1F006314FF01130F000023A0E201BA -:1006C00093935E0033037300032E030023A0C50140 -:1006D000032E430023A2C501032E830023A4C501DA -:1006E000032EC30023A6C501032E030123A8C501C1 -:1006F000032E430123AAC501678000009302050071 -:1007000003A3820013050000130E200363146E0080 -:1007100013051500678000009302050003A3820003 -:1007200013050000130E000063146E00130515007E -:10073000678000009302050003A3C20083A30201A7 -:1007400033B5630067800000130141FF23201100CF -:100750002322B1008345050063880500EF00C00136 -:10076000130515006FF01FFF832001008325410052 -:100770001301C10067800000B708010023A0B80082 -:1007800067800000130101FD23261102232481024A -:1007900013040103232EA4FC0327C4FD9307F000D8 -:1007A00063E4E702B70700810327C4FD131727009E -:1007B0009387C71BB307F70083A7070013850700BC -:1007C000EFF09FF86F004007930700022326F4FE26 -:1007D000A30504FE8327C4FE9387C7FF0327C4FD38 -:1007E000B357F70093F7F7002322F4FE832744FE64 -:1007F0006386070093071000A305F4FE8347B4FE49 -:1008000063820702B7070081032744FE13172700FE -:100810009387C71BB307F70083A70700138507005B -:10082000EFF09FF28327C4FE9387C7FF2326F4FED1 -:100830008327C4FEE340F0FA8320C102032481022F -:100840001301010367800000130101FE232E110034 -:10085000232C8100130401022326A4FE2324B4FECA -:100860000325C4FEEFF05FEE032584FEEFF09FF159 -:10087000B707008113850708EFF01FED1300000094 -:100880008320C1010324810113010102678000005C -:10089000130101FD23261102232481021304010305 -:1008A000232EA4FC232CB4FC232AC4FC2328D4FC30 -:1008B000B73700810327C4FD23AEE794B737008123 -:1008C0009387C795032784FD23A2E700B7370081EC -:1008D0009387C795032744FD23A4E700B73700811A -:1008E0009387C795032704FD23A6E700EFF09F8DAC -:1008F0002324A4FE032704FD832784FEB357F702B5 -:100900002326F4FE032704FD832784FEB377F70232 -:10091000638807008327C4FE938717002326F4FE0D -:100920008325C4FEB70700811385470CEFF0DFF184 -:10093000B73700819387C7950327C4FE23A8E70034 -:10094000032704FD832784FE6362F702B737008123 -:100950009386C795B71700801386479C832584FE2E -:10096000032504FDEFF01FAC6F000002B7370081D4 -:100970009386C795B71700801386479C832504FD8F -:10098000032504FDEFF01FAAEFF05F832322A4FEEE -:10099000032704FD832744FE63F8E700032544FE94 -:1009A000EFF01FB76F00C000032504FDEFF05FB646 -:1009B000130000008320C1020324810213010103FC -:1009C00067800000130101FA232E1104232C8104F7 -:1009D000130401062326A4FA2324B4FAEFF01FC05F -:1009E000232CA4FC832784FD83A70700232AF4FC7F -:1009F000832784FD83A747002328F4FC832784FDF5 -:100A000083A787002326F4FC832784FD83A707019F -:100A10002326F4FE0327C4FE8327C4FAB307F70294 -:100A20002324F4FE8327C4FE639A07009307100073 -:100A30002326F4FE8327C4FA2324F4FE832784FDAF -:100A400083A7C7002324F4FC232204FE6F00800D3B -:100A5000232004FE232E04FC6F008007032784FA62 -:100A6000832784FCB307F7020327C4FDB307F7000D -:100A70002322F4FC032784FC8327C4FDB307F70279 -:100A8000032784FEB307F7002320F4FC832744FCEC -:100A900093972700032744FDB307F70003A7070038 -:100AA000832704FC93972700832604FDB387F60071 -:100AB00083A70700B307F702032704FEB307F70075 -:100AC0002320F4FE8327C4FD93871700232EF4FC14 -:100AD0000327C4FD832784FCE362F7F8032784FA25 -:100AE000832784FC3307F702832784FEB307F700CC -:100AF000232EF4FA8327C4FB939727000327C4FC13 -:100B0000B307F700032704FE23A0E700832784FE32 -:100B1000938717002324F4FE832744FE938717004E -:100B20002322F4FE832744FE0327C4FEE3E2E7F218 -:100B3000130000008320C105032481051301010671 -:100B400067800000130101FC232E1102232C810277 -:100B500013040104232EA4FC232CB4FC232AC4FC7C -:100B60002328D4FC2326E4FCB73700810327C4FDE7 -:100B700023A8E796B737008193870797032784FD5B -:100B800023A2E700B737008193870797032744FD27 -:100B900023A4E700B7370081938707970327C4FC96 -:100BA00023A6E700B737008193870797032704FD43 -:100BB00023A8E700EFF00FE12324A4FE0327C4FCE1 -:100BC000832784FEB357F7022326F4FE0327C4FCD1 -:100BD000832784FEB377F702638807008327C4FE68 -:100BE000938717002326F4FEB73700819387079772 -:100BF0000327C4FE23AAE7000327C4FC832784FE3F -:100C00006362F702B737008193860797B7170080B2 -:100C10001386C7C7832584FE032504FDEFF09F805C -:100C20006F000002B737008193860797B7170080DF -:100C30001386C7C78325C4FC032504FDEFF08FFE90 -:100C4000EFF0CFD72322A4FE032704FD832744FE21 -:100C500063F8E700032544FEEFF09F8B6F00C000B0 -:100C6000032504FDEFF0DF8A130000008320C10399 -:100C7000032481031301010467800000130101FBB9 -:100C8000232611042324810413040105232EA4FA2E -:100C9000232CB4FAEFF09F942320A4FE832704FEB4 -:100CA00083A70700232EF4FC832704FE83A74700B5 -:100CB000232CF4FC832704FE83A78700232AF4FC5B -:100CC000832704FE83A747012326F4FE0327C4FEDF -:100CD0008327C4FBB307F7022324F4FE8327C4FE53 -:100CE000639A0700930710002326F4FE8327C4FBB2 -:100CF0002324F4FE832704FE83A7C7002328F4FCE3 -:100D0000232204FE6F00000C032784FB832704FDCD -:100D10003307F702832784FEB307F7002326F4FC8A -:100D2000032784FE832704FDB337F70093F7F70FFB -:100D30002324F4FC832784FC93B71700A303F4FC5B -:100D4000834774FC138F0700B7170080938F07DB6E -:100D50006B200F007B70FF018327C4FC9397270053 -:100D60000327C4FDB307F70083A607008327C4FC4D -:100D700093972700032784FDB307F70003A7070015 -:100D80008327C4FC93972700032644FDB307F6008E -:100D90003387E60023A0E700832784FE93871700AC -:100DA0002324F4FEB7170080138E47DB67000E0084 -:100DB000130000006B300000832744FE9387170068 -:100DC0002322F4FE832744FE0327C4FEE3EEE7F26A -:100DD000130000008320C1040324810413010105D2 -:100DE00067800000130101FC232E1102232C8102D5 -:100DF00013040104232EA4FC232CB4FC232AC4FCDA -:100E00002328D4FC2326E4FCB73700810327C4FD44 -:100E100023A8E796B737008193870797032784FDB8 -:100E200023A2E700B737008193870797032744FD84 -:100E300023A4E700B7370081938707970327C4FCF3 -:100E400023A6E700B737008193870797032704FDA0 -:100E500023A8E700EFF00FB72324A4FE0327C4FC68 -:100E6000832784FEB357F7022326F4FE0327C4FC2E -:100E7000832784FEB377F702638807008327C4FEC5 -:100E8000938717002326F4FEB737008193870797CF -:100E90000327C4FE23AAE7000327C4FC832784FE9C -:100EA0006362F702B737008193860797B717008010 -:100EB0001386C7F1832584FE032504FDEFF08FD64A -:100EC0006F000002B737008193860797B71700803D -:100ED0001386C7F18325C4FC032504FDEFF08FD4EE -:100EE000EFF0CFAD2322A4FE032704FD832744FEA9 -:100EF00063F8E700032544FEEFF08FE16F00C000C8 -:100F0000032504FDEFF0CFE0130000008320C103B0 -:100F1000032481031301010467800000130101FB16 -:100F2000232611042324810413040105232EA4FA8B -:100F3000232CB4FAEFF08FEA2320A4FE832704FECB -:100F400083A70700232EF4FC832704FE83A7470012 -:100F5000232CF4FC832704FE83A78700232AF4FCB8 -:100F6000832704FE83A747012326F4FE0327C4FE3C -:100F70008327C4FBB307F7022324F4FE8327C4FEB0 -:100F8000639A0700930710002326F4FE8327C4FB0F -:100F90002324F4FE832704FE83A7C7002328F4FC40 -:100FA000232204FE6F00000C032784FB832704FD2B -:100FB0003307F702832784FEB307F7002326F4FCE8 -:100FC000032784FE832704FDB337F70093F7F70F59 -:100FD0002324F4FC832784FC93B71700A303F4FCB9 -:100FE000834774FC138F0700B7170080938F0705A2 -:100FF0006B200F007B70FF018327C4FC93972700B1 -:101000000327C4FDB307F70083A607008327C4FCAA -:1010100093972700032784FDB307F70003A7070072 -:101020008327C4FC93972700032644FDB307F600EB -:101030003387E64023A0E700832784FE93871700C9 -:101040002324F4FEB7170080138E470567000E00B7 -:10105000130000006B300000832744FE93871700C5 -:101060002322F4FE832744FE0327C4FEE3EEE7F2C7 -:10107000130000008320C10403248104130101052F -:1010800067800000130101FC232E1102232C810232 -:1010900013040104232EA4FC232CB4FC232AC4FC37 -:1010A0002328D4FC2326E4FCB73700810327C4FDA2 -:1010B00023A4E798B737008193878798032784FD97 -:1010C00023A2E700B737008193878798032744FD61 -:1010D00023A4E700B7370081938787980327C4FCD0 -:1010E00023A6E700B737008193878798032704FD7D -:1010F00023A8E700EFF00F8D2324A4FE0327C4FCF0 -:10110000832784FEB357F7022326F4FE0327C4FC8B -:10111000832784FEB377F702638807008327C4FE22 -:10112000938717002326F4FEB737008193878798AB -:101130000327C4FE23AAE7000327C4FC832784FEF9 -:101140006362F702B737008193868798B7170080EC -:101150001386C71B832584FE032504FDEFF08FACA7 -:101160006F000002B737008193868798B717008019 -:101170001386C71B8325C4FC032504FDEFF08FAA4B -:10118000EFF0CF832322A4FE032704FD832744FE30 -:1011900063F8E700032544FEEFF08FB76F00C0004F -:1011A000032504FDEFF0CFB6130000008320C10338 -:1011B000032481031301010467800000130101FB74 -:1011C000232611042324810413040105232EA4FAE9 -:1011D000232CB4FAEFF08FC02320A4FE832704FE53 -:1011E00083A70700232EF4FC832704FE83A7470070 -:1011F00083A70700232CF4FC832704FE83A7870022 -:10120000232AF4FC832704FE83A747012326F4FE48 -:101210000327C4FE8327C4FBB307F7022324F4FE8D -:101220008327C4FE639A0700930710002326F4FE69 -:101230008327C4FB2324F4FE832704FE83A7C7006F -:101240002328F4FC232204FE6F00000B032784FBF9 -:10125000832704FD3307F702832784FEB307F700D3 -:101260002326F4FC032784FE832704FDB337F7000D -:1012700093F7F70F2324F4FC832784FC93B717001C -:10128000A303F4FC834774FC138F0700B717008097 -:10129000938F472E6B200F007B70FF018327C4FCC8 -:1012A000939727000327C4FDB307F70083A6070021 -:1012B0008327C4FC93972700032744FDB307F70057 -:1012C000032784FD3387E60023A0E700832784FEFD -:1012D000938717002324F4FEB7170080138E872E00 -:1012E00067000E00130000006B300000832744FEEF -:1012F000938717002322F4FE832744FE0327C4FEAE -:10130000E3E6E7F4130000008320C1040324810412 -:101310001301010567800000130101FC232E110257 -:10132000232C810213040104232EA4FC232CB4FCDF -:10133000232AC4FC2328D4FC2326E4FCB7370081ED -:101340000327C4FD23A4E798B737008193878798C4 -:10135000032784FD23A2E700B7370081938787988E -:10136000032744FD23A4E700B737008193878798BC -:101370000327C4FC23A6E700B7370081938787982B -:10138000032704FD23A8E700EFE0DFE32324A4FE06 -:101390000327C4FC832784FEB357F7022326F4FEF9 -:1013A0000327C4FC832784FEB377F7026388070012 -:1013B0008327C4FE938717002326F4FEB7370081E6 -:1013C000938787980327C4FE23AAE7000327C4FC5A -:1013D000832784FE6362F702B7370081938687987C -:1013E000B717008013860745832584FE032504FD77 -:1013F000EFF04F836F000002B73700819386879824 -:10140000B7170080138607458325C4FC032504FD18 -:10141000EFF04F81EFE09FDA2322A4FE032704FDC3 -:10142000832744FE63F8E700032544FEEFF04F8E68 -:101430006F00C000032504FDEFF08F8D1300000046 -:101440008320C1030324810313010104678000008A -:10145000130101FB23261104232481041304010535 -:10146000232EA4FA232CB4FAEFF04F972320A4FEE6 -:10147000832704FE83A70700232EF4FC832704FEA2 -:1014800083A7470083A70700232CF4FC832704FECF -:1014900083A78700232AF4FC832704FE83A7470140 -:1014A0002326F4FE0327C4FE8327C4FBB307F702F9 -:1014B0002324F4FE8327C4FE639A070093071000D9 -:1014C0002326F4FE8327C4FB2324F4FE832704FE93 -:1014D00083A7C7002328F4FC232204FE6F00000B1F -:1014E000032784FB832704FD3307F702832784FE49 -:1014F000B307F7002326F4FC032784FE832704FDAB -:10150000B337F70093F7F70F2324F4FC832784FC09 -:1015100093B71700A303F4FC834774FC138F0700F1 -:10152000B7170080938F87576B200F007B70FF01E8 -:101530008327C4FC939727000327C4FDB307F70054 -:1015400083A607008327C4FC93972700032744FD45 -:10155000B307F700032784FD3387E60223A0E700E3 -:10156000832784FE938717002324F4FEB717008097 -:10157000138EC75767000E00130000006B30000089 -:10158000832744FE938717002322F4FE832744FE1B -:101590000327C4FEE3E6E7F4130000008320C10440 -:1015A000032481041301010567800000130101FE7B -:1015B000232E810013040102232604FE6F00800401 -:1015C000B73700810327C4FE131727009387079AB4 -:1015D000B307F7001307300023A0E700B7470081E7 -:1015E0000327C4FE131727009387079AB307F70052 -:1015F0001307200023A0E7008327C4FE938717006A -:101600002326F4FE0327C4FE9307F00FE3DAE7FA7C -:10161000130000000324C1011301010267800000D0 -:10162000130101FD23261102232481021304010367 -:10163000232EA4FCB707008113850711EFF0CF908C -:10164000232604FE6F0080058327C4FE638E0700F7 -:101650008327C4FE93F7F70063980700B70700815C -:1016600013854713EFF04F8E8327C4FE939727000F -:101670000327C4FDB307F70083A7070013850700FE -:10168000EFF04F90B707008113858713EFF0CF8BF2 -:101690008327C4FE938717002326F4FE0327C4FE86 -:1016A0009307F00FE3D2E7FAB70700811385C7135A -:1016B000EFF08F89130000008320C1020324810210 -:1016C0001301010367800000130101FF23261100AD -:1016D0002324810013040101EFF05FED9306000164 -:1016E000B75700811386079AB74700819385079AF9 -:1016F000B73700811385079AEFF08F99B7070081FC -:1017000013850716EFF04F84B75700811385079AAA -:10171000EFF01FF193070000138507008320C1003D -:0C17200003248100130101016780000018 +:1000700013050000930F0600938D0300130000008A +:100080001300000013000000130000001300000024 +:10009000130000001300000013000000EBE0BF019C +:1000A0001300000013000000130000001300000004 +:1000B0001300000013000000170500001305451B86 +:1000C0006B40050017030000130343F66B000300A9 +:1000D000678000001702000113020226232002009D +:1000E0002322120023242200232632002328420048 +:1000F000232A5200232C6200232E72002320820226 +:10010000232292022324A2022326B2022328C2021F +:10011000232AD202232CE202232EF20223200205FC +:1001200023221205232422052326320523284205F3 +:10013000232A5205232C6205232E720523208207D1 +:10014000232292072324A2072326B2072328C207CB +:10015000232AD207232CE207232EF20713021000D2 +:1001600067800000170200011302021D0320020035 +:1001700083204200032182008321C2000322020166 +:1001800083224201032382018323C201032402024A +:1001900083244202032582028325C202032602032E +:1001A00083264203032782038327C2030328020412 +:1001B00083284204032982048329C204032A0205F6 +:1001C000832A4205032B8205832BC205032C0206DA +:1001D000832C4206032D8206832DC206032E0207BE +:1001E000832E4207032F8207832FC20713020000CA +:1001F00067800000732500026780000073251002ED +:1002000067800000130101FE232E1100232C8100C2 +:1002100013040102232604FE6F0040030327C4FEDB +:10022000B7170000938747973307F702B707008196 +:1002300093874743B307F70013850700EF00C045D6 +:100240008327C4FE938717002326F4FE0327C4FEEA +:100250009307F001E3D4E7FC130000008320C10101 +:10026000032481011301010267800000130101FDD5 +:1002700023261102232481022322A1031304010354 +:1002800093070D0093850700B707008113850704C6 +:10029000EF00406613000000130000001300000090 +:1002A0001300000013000000130000001300000002 +:1002B00013000000130000001300000013000000F2 +:1002C0001300000013070D00B7170000938747972E +:1002D0003307F702B707008193874743B307F70057 +:1002E00013850700EF00004E93070500638A07029D +:1002F00013070D00B7070081131727009387C7283E +:10030000B307F7001307100023A0E70093070D00C1 +:1003100063960700EFF01FE56F00C0057300000053 +:1003200013070D00B7170000938747973307F702AD +:10033000B707008193874743B307F700130784FD8E +:100340009305070013850700EF00C03D832704FED7 +:10035000138107008327C4FD832584FD032644FE03 +:10036000832684FE0327C4FE13850700EFF0DFCB4E +:10037000730000008320C10203248102032D410287 +:100380001301010367800000130101FB2326110400 +:100390002324810413040105EFF0DFE52324A4FEE8 +:1003A00093090100930710002326F4FE6F00C00894 +:1003B0000327C4FEB7170000938747973307F70258 +:1003C000B707008193874743B307F70013850700FA +:1003D000EF00403F93070500639A07040327C4FE1C +:1003E000B7170000938747973307F702B7070081D5 +:1003F00093874743B307F700130704FD93050700EE +:1004000013850700EF000032832784FD1381070066 +:10041000832744FD832504FD0326C4FD832604FEB3 +:10042000032744FE13850700EFF0DFC98327C4FECE +:10043000938717002326F4FE8327C4FE032784FE38 +:10044000E3E8E7F613810900EFF0DFC89307020045 +:1004500063880704B707008113854743EF008036A0 +:1004600093070500639E0702930784FB93850700AB +:10047000B707008113854743EF00C02A832704FC98 +:10048000138107008327C4FB832584FB032644FCD8 +:10049000832684FC0327C4FC13850700EFF0DFB834 +:1004A000130000008320C10403248104130101050B +:1004B00067800000130101FB23261104232481041B +:1004C00013040105232EA4FA232CB4FA232AC4FA18 +:1004D0002328D4FAEFF01FD3EFF0DFD12322A4FEBC +:1004E00013090100232604FE232404FE6F000009E3 +:1004F000B709FFFF33013101832784FE2326F4FC73 +:10050000832784FB2328F4FC93070100232AF4FCAF +:10051000832744FB232CF4FC832704FB232EF4FCC9 +:100520008327C4FE2320F4FE0327C4FEB717000070 +:10053000938747973307F702B707008193874743AD +:10054000B307F7001307C4FC9305070013850700E2 +:10055000EF00C0168327C4FE938717002326F4FEFE +:100560008327C4FE032744FE63E4E700232604FE3A +:10057000832784FE938717002324F4FE032784FE39 +:100580008327C4FBE366F7F613010900EFF0DFDF12 +:10059000130000008320C10403248104130101051A +:1005A00067800000130101FD23261102232481022C +:1005B00013040103232EA4FCEFF0DFC32320A4FEC9 +:1005C000232604FE6F004005232604FE232404FE98 +:1005D0006F00C003B7070081032784FE13172700AD +:1005E0009387C728B307F70003A7070093071000F6 +:1005F0006318F7008327C4FE938717002326F4FEB1 +:10060000832784FE938717002324F4FE832784FE28 +:10061000032704FEE3E0E7FC0327C4FE8327C4FDB1 +:10062000E314F7FA232204FE6F008002B70700816B +:10063000032744FE131727009387C728B307F70043 +:1006400023A00700832744FE938717002322F4FE8C +:10065000832744FE032704FEE3EAE7FC13000000BF +:100660008320C1020324810213010103678000007B +:10067000130101FF232681002324710113040101CA +:1006800093870B00138507000324C100832B81008F +:1006900013010101678000009302050013030000AD +:1006A0009303700023A0620023A2620023A46200CF +:1006B00023A6720023A86200678000009302050051 +:1006C00003A382001303130023A4620013834201D7 +:1006D00083AE420093935E003303730003AE0500C4 +:1006E0002320C30103AE45002322C30103AE8500CE +:1006F0002324C30103AEC5002326C30103AE0501B5 +:100700002328C30103AE4501232AC301938E1E0093 +:10071000130F20036394EE01930E000023A2D20175 +:10072000678000009302050003A38200130000000D +:10073000130000001300000013000000130000006D +:10074000130000001303F3FF23A46200138342018C +:1007500083AE0200930F2003138F0E00130F1F00B0 +:100760006314FF01130F000023A0E20193935E00C6 +:1007700033037300032E030023A0C501032E43009F +:1007800023A2C501032E830023A4C501032EC300A9 +:1007900023A6C501032E030123A8C501032E43018F +:1007A00023AAC501678000009302050003A382000D +:1007B00013050000130E200363146E0013051500CB +:1007C000678000009302050003A382001305000068 +:1007D000130E000063146E001305150067800000FF +:1007E0009302050003A3C20083A3020133B5630093 +:1007F00067800000130141FF232011002322B10074 +:100800008345050063880500EF00C001130515004E +:100810006FF01FFF83200100832541001301C100F9 +:1008200067800000B708010023A0B80067800000BF +:10083000130101FD23261102232481021304010365 +:10084000232EA4FC0327C4FD9307F00063E4E70212 +:10085000B70700810327C4FD131727009387C71C20 +:10086000B307F70083A7070013850700EFF09FF891 +:100870006F004007930700022326F4FEA30504FE41 +:100880008327C4FE9387C7FF0327C4FDB357F70030 +:1008900093F7F7002322F4FE832744FE63860700C4 +:1008A00093071000A305F4FE8347B4FE638207029A +:1008B000B7070081032744FE131727009387C71C3F +:1008C000B307F70083A7070013850700EFF09FF237 +:1008D0008327C4FE9387C7FF2326F4FE8327C4FE25 +:1008E000E340F0FA8320C1020324810213010103D3 +:1008F00067800000130101FE232E1100232C8100CC +:10090000130401022326A4FE2324B4FE0325C4FEFF +:10091000EFF05FEE032584FEEFF09FF1B707008153 +:1009200013850709EFF01FED130000008320C101BC +:10093000032481011301010267800000130101FDFE +:10094000232611022324810213040103232EA4FC75 +:10095000232CB4FC232AC4FC2328D4FCB7670281CF +:100960000327C4FD23AEE71CB76702819387C71D29 +:10097000032784FD23A2E700B76702819387C71D81 +:10098000032744FD23A4E700B76702819387C71DAF +:10099000032704FD23A6E700EFF05F862324A4FECF +:1009A000032704FD832784FEB357F7022326F4FEB2 +:1009B000032704FD832784FEB377F70263880700CB +:1009C0008327C4FE938717002326F4FE8325C4FEE5 +:1009D000B70700811385470DEFF0DFF1B76702819C +:1009E0009387C71D0327C4FE23A8E700032704FD40 +:1009F000832784FE6362F702B76702819386C71D6F +:100A0000B7170080138607A7832584FE032504FDFE +:100A1000EFF05FAA6F000002B76702819386C71DDF +:100A2000B7170080138607A7832504FD032504FD5F +:100A3000EFF05FA8EFF00FFC2322A4FE032704FDD4 +:100A4000832744FE63F8E700032544FEEFF09FB5DB +:100A50006F00C000032504FDEFF0DFB413000000B9 +:100A60008320C10203248102130101036780000077 +:100A7000130101FA232E1104232C8104130401060F +:100A80002326A4FA2324B4FAEFF09FBE232CA4FC5F +:100A9000832784FD83A70700232AF4FC832784FD92 +:100AA00083A747002328F4FC832784FD83A78700BE +:100AB0002326F4FC832784FD83A707012326F4FE65 +:100AC0000327C4FE8327C4FAB307F7022324F4FEE6 +:100AD0008327C4FE639A0700930710002326F4FEC1 +:100AE0008327C4FA2324F4FE832784FD83A7C70049 +:100AF0002324F4FC232204FE6F00800D232004FE37 +:100B0000232E04FC6F008007032784FA832784FCCC +:100B1000B307F7020327C4FDB307F7002322F4FC51 +:100B2000032784FC8327C4FDB307F702032784FE51 +:100B3000B307F7002320F4FC832744FC9397270096 +:100B4000032744FDB307F70003A70700832704FC2E +:100B500093972700832604FDB387F60083A7070039 +:100B6000B307F702032704FEB307F7002320F4FEC0 +:100B70008327C4FD93871700232EF4FC0327C4FDAD +:100B8000832784FCE362F7F8032784FA832784FC35 +:100B90003307F702832784FEB307F700232EF4FA06 +:100BA0008327C4FB939727000327C4FCB307F700F0 +:100BB000032704FE23A0E700832784FE9387170002 +:100BC0002324F4FE832744FE938717002322F4FE98 +:100BD000832744FE0327C4FEE3E2E7F2130000008C +:100BE0008320C105032481051301010667800000ED +:100BF000130101FC232E1102232C81021304010492 +:100C0000232EA4FC232CB4FC232AC4FC2328D4FCCC +:100C10002326E4FCB76702810327C4FD23A8E71E4F +:100C2000B76702819387071F032784FD23A2E7008C +:100C3000B76702819387071F032744FD23A4E700BA +:100C4000B76702819387071F0327C4FC23A6E70029 +:100C5000B76702819387071F032704FD23A8E700D6 +:100C6000EFF0CFD92324A4FE0327C4FC832784FEFE +:100C7000B357F7022326F4FE0327C4FC832784FE20 +:100C8000B377F702638807008327C4FE93871700B2 +:100C90002326F4FEB76702819387071F0327C4FE4C +:100CA00023AAE7000327C4FC832784FE6362F702BC +:100CB000B76702819386071FB7170080138687D214 +:100CC000832584FE032504FDEFF0CFFE6F000002B4 +:100CD000B76702819386071FB7170080138687D2F4 +:100CE0008325C4FC032504FDEFF0CFFCEFF08FD08B +:100CF0002322A4FE032704FD832744FE63F8E700B4 +:100D0000032544FEEFF01F8A6F00C000032504FD99 +:100D1000EFF05F89130000008320C10303248103E7 +:100D20001301010467800000130101FB2326110455 +:100D30002324810413040105232EA4FA232CB4FADE +:100D4000EFF01F932320A4FE832704FE83A7070050 +:100D5000232EF4FC832704FE83A74700232CF4FCF6 +:100D6000832704FE83A78700232AF4FC832704FE3D +:100D700083A747012326F4FE0327C4FE8327C4FB71 +:100D8000B307F7022324F4FE8327C4FE639A070007 +:100D9000930710002326F4FE8327C4FB2324F4FECC +:100DA000832704FE83A7C7002328F4FC232204FE24 +:100DB0006F00000C032784FB832704FD3307F70231 +:100DC000832784FEB307F7002326F4FC032784FE61 +:100DD000832704FDB337F70093F7F70F2324F4FCC0 +:100DE000832784FC93B71700A303F4FC834774FCA8 +:100DF000138F0700B7170080938FC7E56B200F0094 +:100E00007B70FF018327C4FC939727000327C4FD51 +:100E1000B307F70083A607008327C4FC9397270036 +:100E2000032784FDB307F70003A707008327C4FC4B +:100E300093972700032644FDB307F6003387E600A7 +:100E400023A0E700832784FE938717002324F4FE62 +:100E5000B7170080138E07E667000E00130000002E +:100E60006B300000832744FE938717002322F4FE93 +:100E7000832744FE0327C4FEE3EEE7F213000000DD +:100E80008320C1040324810413010105678000004D +:100E9000130101FC232E1102232C810213040104EF +:100EA000232EA4FC232CB4FC232AC4FC2328D4FC2A +:100EB0002326E4FCB76702810327C4FD23A8E71EAD +:100EC000B76702819387071F032784FD23A2E700EA +:100ED000B76702819387071F032744FD23A4E70018 +:100EE000B76702819387071F0327C4FC23A6E70087 +:100EF000B76702819387071F032704FD23A8E70034 +:100F0000EFF0CFAF2324A4FE0327C4FC832784FE85 +:100F1000B357F7022326F4FE0327C4FC832784FE7D +:100F2000B377F702638807008327C4FE938717000F +:100F30002326F4FEB76702819387071F0327C4FEA9 +:100F400023AAE7000327C4FC832784FE6362F70219 +:100F5000B76702819386071FB7170080138687FC47 +:100F6000832584FE032504FDEFF0CFD46F0000023B +:100F7000B76702819386071FB7170080138687FC27 +:100F80008325C4FC032504FDEFF0CFD2EFF08FA63C +:100F90002322A4FE032704FD832744FE63F8E70011 +:100FA000032544FEEFF00FE06F00C000032504FDB1 +:100FB000EFF04FDF130000008320C10303248103FF +:100FC0001301010467800000130101FB23261104B3 +:100FD0002324810413040105232EA4FA232CB4FA3C +:100FE000EFF00FE92320A4FE832704FE83A7070068 +:100FF000232EF4FC832704FE83A74700232CF4FC54 +:10100000832704FE83A78700232AF4FC832704FE9A +:1010100083A747012326F4FE0327C4FE8327C4FBCE +:10102000B307F7022324F4FE8327C4FE639A070064 +:10103000930710002326F4FE8327C4FB2324F4FE29 +:10104000832704FE83A7C7002328F4FC232204FE81 +:101050006F00000C032784FB832704FD3307F7028E +:10106000832784FEB307F7002326F4FC032784FEBE +:10107000832704FDB337F70093F7F70F2324F4FC1D +:10108000832784FC93B71700A303F4FC834774FC05 +:10109000138F0700B7170080938FC70F6B200F00C7 +:1010A0007B70FF018327C4FC939727000327C4FDAF +:1010B000B307F70083A607008327C4FC9397270094 +:1010C000032784FDB307F70003A707008327C4FCA9 +:1010D00093972700032644FDB307F6003387E640C5 +:1010E00023A0E700832784FE938717002324F4FEC0 +:1010F000B7170080138E071067000E001300000062 +:101100006B300000832744FE938717002322F4FEF0 +:10111000832744FE0327C4FEE3EEE7F2130000003A +:101120008320C104032481041301010567800000AA +:10113000130101FC232E1102232C8102130401044C +:10114000232EA4FC232CB4FC232AC4FC2328D4FC87 +:101150002326E4FCB76702810327C4FD23A4E7200C +:10116000B767028193878720032784FD23A2E700C6 +:10117000B767028193878720032744FD23A4E700F4 +:10118000B7670281938787200327C4FC23A6E70063 +:10119000B767028193878720032704FD23A8E70010 +:1011A000EFF0CF852324A4FE0327C4FC832784FE0D +:1011B000B357F7022326F4FE0327C4FC832784FEDB +:1011C000B377F702638807008327C4FE938717006D +:1011D0002326F4FEB7670281938787200327C4FE86 +:1011E00023AAE7000327C4FC832784FE6362F70277 +:1011F000B767028193868720B717008013868726FA +:10120000832584FE032504FDEFF0CFAA6F000002C2 +:10121000B767028193868720B717008013868726D9 +:101220008325C4FC032504FDEFF0CFA8EFE09FFC6D +:101230002322A4FE032704FD832744FE63F8E7006E +:10124000032544FEEFF00FB66F00C000032504FD38 +:10125000EFF04FB5130000008320C1030324810386 +:101260001301010467800000130101FB2326110410 +:101270002324810413040105232EA4FA232CB4FA99 +:10128000EFF00FBF2320A4FE832704FE83A70700EF +:10129000232EF4FC832704FE83A7470083A70700BF +:1012A000232CF4FC832704FE83A78700232AF4FC65 +:1012B000832704FE83A747012326F4FE0327C4FEE9 +:1012C0008327C4FBB307F7022324F4FE8327C4FE5D +:1012D000639A0700930710002326F4FE8327C4FBBC +:1012E0002324F4FE832704FE83A7C7002328F4FCED +:1012F000232204FE6F00000B032784FB832704FDD9 +:101300003307F702832784FEB307F7002326F4FC94 +:10131000032784FE832704FDB337F70093F7F70F05 +:101320002324F4FC832784FC93B71700A303F4FC65 +:10133000834774FC138F0700B7170080938F07391A +:101340006B200F007B70FF018327C4FC939727005D +:101350000327C4FDB307F70083A607008327C4FC57 +:1013600093972700032744FDB307F700032784FD65 +:101370003387E60023A0E700832784FE93871700C6 +:101380002324F4FEB7170080138E473967000E0040 +:10139000130000006B300000832744FE9387170082 +:1013A0002322F4FE832744FE0327C4FEE3E6E7F48A +:1013B000130000008320C1040324810413010105EC +:1013C00067800000130101FC232E1102232C8102EF +:1013D00013040104232EA4FC232CB4FC232AC4FCF4 +:1013E0002328D4FC2326E4FCB76702810327C4FD2D +:1013F00023A4E720B767028193878720032784FD12 +:1014000023A2E700B767028193878720032744FD63 +:1014100023A4E700B7670281938787200327C4FCD2 +:1014200023A6E700B767028193878720032704FD7F +:1014300023A8E700EFE09FDC2324A4FE0327C4FCDD +:10144000832784FEB357F7022326F4FE0327C4FC48 +:10145000832784FEB377F702638807008327C4FEDF +:10146000938717002326F4FEB767028193878720AE +:101470000327C4FE23AAE7000327C4FC832784FEB6 +:101480006362F702B767028193868720B7170080EF +:101490001386C74F832584FE032504FDEFF08F815B +:1014A0006F000002B767028193868720B71700801C +:1014B0001386C74F8325C4FC032504FDEFE09FFF7F +:1014C000EFE05FD32322A4FE032704FD832744FE1D +:1014D00063F8E700032544FEEFF0CF8C6F00C000F7 +:1014E000032504FDEFF00F8C130000008320C103DF +:1014F000032481031301010467800000130101FB31 +:10150000232611042324810413040105232EA4FAA5 +:10151000232CB4FAEFF0CF952320A4FE832704FEFA +:1015200083A70700232EF4FC832704FE83A747002C +:1015300083A70700232CF4FC832704FE83A78700DE +:10154000232AF4FC832704FE83A747012326F4FE05 +:101550000327C4FE8327C4FBB307F7022324F4FE4A +:101560008327C4FE639A0700930710002326F4FE26 +:101570008327C4FB2324F4FE832704FE83A7C7002C +:101580002328F4FC232204FE6F00000B032784FBB6 +:10159000832704FD3307F702832784FEB307F70090 +:1015A0002326F4FC032784FE832704FDB337F700CA +:1015B00093F7F70F2324F4FC832784FC93B71700D9 +:1015C000A303F4FC834774FC138F0700B717008054 +:1015D000938F47626B200F007B70FF018327C4FC51 +:1015E000939727000327C4FDB307F70083A60700DE +:1015F0008327C4FC93972700032744FDB307F70014 +:10160000032784FD3387E60223A0E700832784FEB7 +:10161000938717002324F4FEB7170080138E876288 +:1016200067000E00130000006B300000832744FEAB +:10163000938717002322F4FE832744FE0327C4FE6A +:10164000E3E6E7F4130000008320C10403248104CF +:101650001301010567800000130101FD23268102AB +:1016600013040103232EA4FC232604FE6F000001B3 +:101670008327C4FE938717002326F4FE0327C4FEA6 +:101680008327C4FDE346F7FE130000000324C102D4 +:101690001301010367800000130101FD23261102DD +:1016A0002324810213040103232EA4FC232CB4FC65 +:1016B000B7670281138707228327C4FDB307F700AA +:1016C000130710002380E7008327C4FD6390070CF5 +:1016D000A30104FE232604FE6F00800A232604FED5 +:1016E000232404FE6F004003B7670281138707229B +:1016F000832784FEB307F70083C7070063880700CA +:101700008327C4FE938717002326F4FE832784FED5 +:10171000938717002324F4FE032784FE832784FD88 +:10172000E344F7FC0327C4FE832784FD631AF70410 +:10173000232204FE6F000004B7670281138707228B +:10174000832744FEB307F70023800700B797028181 +:10175000130710002384E72E13056004EFF0DFEF7A +:10176000B79702812384072E832744FE93871700AF +:101770002322F4FE032744FE832784FDE34EF7FA79 +:10178000834734FEE39C07F46F004002130000001F +:10179000B797028183C7872E93C7170093F7F70F78 +:1017A000E39807FE13054006EFF01FEB130000005F +:1017B0008320C1020324810213010103678000001A +:1017C000130101FE232E810013040102232604FECF +:1017D0006F008004B76702810327C4FE1317270038 +:1017E00093870724B307F7001307300023A0E7000F +:1017F000B77702810327C4FE1317270093870724B6 +:10180000B307F7001307200023A0E7008327C4FED7 +:10181000938717002326F4FE0327C4FE9307F00FD7 +:10182000E3DAE7FA130000000324C1011301010207 +:1018300067800000130101FD232611022324810289 +:1018400013040103232EA4FCB7070081138507129C +:10185000EFE05FFA232604FE6F0080058327C4FEB5 +:10186000638E07008327C4FE93F7F7006398070091 +:10187000B707008113854714EFE0DFF78327C4FE25 +:10188000939727000327C4FDB307F70083A707003A +:1018900013850700EFE0DFF9B70700811385871490 +:1018A000EFE05FF58327C4FE938717002326F4FE3D +:1018B0000327C4FE9307F00FE3D2E7FAB7070081CE +:1018C0001385C714EFE01FF3130000008320C1024B +:1018D000032481021301010367800000130101FF4B +:1018E000232611002324810013040101EFF05FED92 +:1018F00093060001B787028113860724B777028118 +:1019000093850724B767028113850724EFF00F83BF +:10191000B707008113850717EFE0DFEDB787028176 +:1019200013850724EFF01FF19307000013850700CC +:101930008320C1000324810013010101678000009E :02000004810079 :10000000300000003100000032000000330000002A :10001000340000003500000036000000370000000A :10002000380000003900000061000000620000009C :10003000630000006400000065000000660000002E -:1000400030000000310000003200000033000000EA -:1000500034000000350000003600000037000000CA -:10006000380000003900000061000000620000005C -:1000700063000000640000006500000066000000EE -:100080000A000000300000003100000032000000D3 -:10009000330000003400000035000000360000008E -:1000A0003700000038000000390000006100000047 -:1000B00062000000630000006400000065000000B2 -:1000C000660000004F66667365743A200000000009 -:1000D000300000003100000032000000330000005A -:1000E000340000003500000036000000370000003A -:1000F00038000000390000006100000062000000CC -:10010000630000006400000065000000660000005D -:100110002D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D0F -:100120002D2D2D2D2D2D2D2D2D2D2D2D2D2D2D0A22 -:10013000000000000A000000200000000A2D2D2D04 -:100140002D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2DDF -:100150002D2D2D2D2D2D2D2D2D2D2D2D0A00000079 -:100160000A0A4D6174726978206D756C7469706CDF -:0901700069636174696F6E0A0095 -:10017C000000008104000081080000810C00008157 -:10018C001000008114000081180000811C00008107 -:10019C002000008124000081280000812C000081B7 -:1001AC003000008134000081380000813C00008167 -:1001BC004000008144000081480000814C00008117 +:1000400052657363686564756C653A200000000052 +:1000500030000000310000003200000033000000DA +:1000600034000000350000003600000037000000BA +:10007000380000003900000061000000620000004C +:1000800063000000640000006500000066000000DE +:100090000A000000300000003100000032000000C3 +:1000A000330000003400000035000000360000007E +:1000B0003700000038000000390000006100000037 +:1000C00062000000630000006400000065000000A2 +:1000D000660000004F66667365743A2000000000F9 +:1000E000300000003100000032000000330000004A +:1000F000340000003500000036000000370000002A +:1001000038000000390000006100000062000000BB +:10011000630000006400000065000000660000004D +:100120002D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2DFF +:100130002D2D2D2D2D2D2D2D2D2D2D2D2D2D2D0A12 +:10014000000000000A000000200000000A2D2D2DF4 +:100150002D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2DCF +:100160002D2D2D2D2D2D2D2D2D2D2D2D0A00000069 +:100170000A0A4D6174726978206D756C7469706CCF +:0901800069636174696F6E0A0085 +:10018C000000008104000081080000810C00008147 +:10019C001000008114000081180000811C000081F7 +:1001AC002000008124000081280000812C000081A7 +:1001BC003000008134000081380000813C00008157 :1001CC005000008154000081580000815C000081C7 :1001DC006000008164000081680000816C00008177 :1001EC007000008174000081780000817C00008127 -:1001FC0084000081880000818C00008190000081C7 +:1001FC008000008184000081880000818C000081D7 :10020C0094000081980000819C000081A000008176 :10021C00A4000081A8000081AC000081B000008126 :10022C00B4000081B8000081BC000081C0000081D6 -:10023C00D0000081D4000081D8000081DC00008156 +:10023C00C4000081C8000081CC000081D000008186 :10024C00E0000081E4000081E8000081EC00008106 :10025C00F0000081F4000081F8000081FC000081B6 :10026C000001008104010081080100810C01008162 +:10027C001001008114010081180100811C01008112 :040000058000000077 :00000001FF diff --git a/kernel/vx_os/vx_back/vx_back.c b/kernel/vx_os/vx_back/vx_back.c index 9f3d7cee..2217d26b 100644 --- a/kernel/vx_os/vx_back/vx_back.c +++ b/kernel/vx_os/vx_back/vx_back.c @@ -6,7 +6,7 @@ void vx_before_main() { // unsigned num_available_warps = vx_available_warps(); - for (int i = 0; i < 8; i++) + for (int i = 0; i < 32; i++) { queue_initialize(q + i); } @@ -15,9 +15,20 @@ void vx_before_main() void vx_reschedule_warps() { - register unsigned curr_warp asm("s10"); - // vx_printf("Reschedule: ", curr_warp); + vx_printf("Reschedule: ", curr_warp); + asm __volatile__("nop"); + asm __volatile__("nop"); + asm __volatile__("nop"); + asm __volatile__("nop"); + asm __volatile__("nop"); + asm __volatile__("nop"); + asm __volatile__("nop"); + asm __volatile__("nop"); + asm __volatile__("nop"); + asm __volatile__("nop"); + asm __volatile__("nop"); + asm __volatile__("nop"); if (queue_isEmpty(q+curr_warp)) { @@ -38,7 +49,7 @@ void vx_reschedule_warps() asm __volatile__("mv sp,%0"::"r" (j.base_sp):); vx_createThreads(j.n_threads, j.wid, j.func_ptr, j.args, j.assigned_warp); - ECALL; + ECALL; // should never reach this } @@ -133,6 +144,7 @@ void vx_wait_for_warps(unsigned num_wait) num += 1; } } + // vx_printf("Found: ", num); } // vx_printf("num found: ", num); diff --git a/kernel/vx_os/vx_back/vx_back.h b/kernel/vx_os/vx_back/vx_back.h index c31b1dea..342bbf38 100644 --- a/kernel/vx_os/vx_back/vx_back.h +++ b/kernel/vx_os/vx_back/vx_back.h @@ -29,11 +29,11 @@ #define __end_if AFTER:\ JOIN; -static int done[] = {0, 0, 0, 0, 0, 0, 0}; +static int done[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; static int main_sp[1]; -unsigned context[32]; +unsigned context[64]; void vx_save_context(void); void vx_load_context(void); diff --git a/kernel/vx_os/vx_back/vx_back.s b/kernel/vx_os/vx_back/vx_back.s index c913d2d8..ca10756d 100644 --- a/kernel/vx_os/vx_back/vx_back.s +++ b/kernel/vx_os/vx_back/vx_back.s @@ -6,9 +6,9 @@ .type _start, @function .global _start _start: - li a0, 2 # Num Warps + li a0, 8 # Num Warps csrw 0x20, a0 # Setting the number of available warps - li a0, 2 # Num Threads + li a0, 4 # Num Threads csrw 0x21, a0 # Setting the number of available threads csrw mhartid,zero csrw misa,zero @@ -46,7 +46,21 @@ loop_done: li a0,0 # setting tid = 0 for main thread mv t6,a2 # setting func_addr mv s11,t2 # setting num_threads to spawn + nop + nop + nop + nop + nop + nop + nop + nop .word 0x1bfe0eb + nop + nop + nop + nop + nop + nop la a0, vx_reschedule_warps .word 0x5406b diff --git a/kernel/vx_os/vx_util/queue.h b/kernel/vx_os/vx_util/queue.h index 6793d467..48262897 100644 --- a/kernel/vx_os/vx_util/queue.h +++ b/kernel/vx_os/vx_util/queue.h @@ -5,8 +5,8 @@ -#define SIZE 50 -#define WARPS 7 +#define SIZE 100 +#define WARPS 8 typedef struct Job_t @@ -31,7 +31,7 @@ typedef struct Queue_t } Queue; -Queue q[8]; +Queue q[64]; void queue_initialize(Queue *); diff --git a/kernel/vx_os/vx_util/queue.s b/kernel/vx_os/vx_util/queue.s index 6fcec494..d9b25891 100644 --- a/kernel/vx_os/vx_util/queue.s +++ b/kernel/vx_os/vx_util/queue.s @@ -58,6 +58,12 @@ ec: queue_dequeue: mv t0, a0 # loading base address of q lw t1, 8 (t0) # t1 = num_j + nop + nop + nop + nop + nop + nop addi t1, t1, -1 # --t1 sw t1, 8 (t0) # num_j = t1 addi t1, t0, 20 # t1 = jobs_addr diff --git a/rtl/VX_context.v b/rtl/VX_context.v index eebe0b99..90267521 100644 --- a/rtl/VX_context.v +++ b/rtl/VX_context.v @@ -3,7 +3,9 @@ module VX_context ( input wire clk, + /* verilator lint_off UNUSED */ input wire in_warp, + /* verilator lint_on UNUSED */ input wire in_wb_warp, input wire in_valid[`NT_M1:0], input wire in_write_register, diff --git a/rtl/VX_context_slave.v b/rtl/VX_context_slave.v index fc5c4d0b..59d77c19 100644 --- a/rtl/VX_context_slave.v +++ b/rtl/VX_context_slave.v @@ -3,7 +3,9 @@ module VX_context_slave ( input wire clk, + /* verilator lint_off UNUSED */ input wire in_warp, + /* verilator lint_on UNUSED */ input wire in_wb_warp, input wire in_valid[`NT_M1:0], input wire in_write_register, diff --git a/rtl/VX_decode.v b/rtl/VX_decode.v index c9b0115a..ae7bfe9b 100644 --- a/rtl/VX_decode.v +++ b/rtl/VX_decode.v @@ -19,6 +19,9 @@ module VX_decode( input wire[31:0] in_src1_fwd_data[`NT_M1:0], input wire in_src2_fwd, input wire[31:0] in_src2_fwd_data[`NT_M1:0], + /* verilator lint_off UNUSED */ + input wire[`NW_M1:0] in_which_wspawn, + /* verilator lint_on UNUSED */ input wire[`NW_M1:0] in_warp_num, @@ -111,78 +114,181 @@ module VX_decode( reg[4:0] alu_op; reg[4:0] mul_alu; + /* verilator lint_off UNUSED */ wire[31:0] w0_t0_registers[31:0]; + /* verilator lint_on UNUSED */ + - wire context_zero_valid = (in_wb_warp_num == 0); - wire[31:0] zero_a_reg_data[`NT_M1:0]; - wire[31:0] zero_b_reg_data[`NT_M1:0]; - reg zero_clone_stall; // always @(*) begin // $display("DECODE WARP: %h", in_warp_num); // end - wire curr_warp_zero = in_warp_num == 0; - wire curr_warp_one = in_warp_num == 1; // always @(*) begin // $display("DECODE WARP: %h PC: %h",in_warp_num, in_curr_PC); // end - VX_context VX_Context_zero( - .clk (clk), - .in_warp (curr_warp_zero), - .in_wb_warp (context_zero_valid), - .in_valid (in_wb_valid), - .in_rd (in_rd), - .in_src1 (out_rs1), - .in_src2 (out_rs2), - .in_curr_PC (in_curr_PC), - .in_is_clone (is_clone), - .in_is_jal (is_jal), - .in_src1_fwd (in_src1_fwd), - .in_src1_fwd_data (in_src1_fwd_data), - .in_src2_fwd (in_src2_fwd), - .in_src2_fwd_data (in_src2_fwd_data), - .in_write_register(write_register), - .in_write_data (in_write_data), - .out_a_reg_data (zero_a_reg_data), - .out_b_reg_data (zero_b_reg_data), - .out_clone_stall (zero_clone_stall), - .w0_t0_registers (w0_t0_registers) - ); + `ifdef ONLY - wire context_one_valid = (in_wb_warp_num == 1); - wire[31:0] one_a_reg_data[`NT_M1:0]; - wire[31:0] one_b_reg_data[`NT_M1:0]; - reg one_clone_stall; - VX_context_slave VX_Context_one( - .clk (clk), - .in_warp (curr_warp_one), - .in_wb_warp (context_one_valid), - .in_valid (in_wb_valid), - .in_rd (in_rd), - .in_src1 (out_rs1), - .in_src2 (out_rs2), - .in_curr_PC (in_curr_PC), - .in_is_clone (is_clone), - .in_is_jal (is_jal), - .in_src1_fwd (in_src1_fwd), - .in_src1_fwd_data (in_src1_fwd_data), - .in_src2_fwd (in_src2_fwd), - .in_src2_fwd_data (in_src2_fwd_data), - .in_write_register(write_register), - .in_write_data (in_write_data), - .in_wspawn_regs (w0_t0_registers), - .in_wspawn (is_wspawn), - .out_a_reg_data (one_a_reg_data), - .out_b_reg_data (one_b_reg_data), - .out_clone_stall (one_clone_stall) - ); + wire[31:0] glob_a_reg_data[`NT_M1:0]; + wire[31:0] glob_b_reg_data[`NT_M1:0]; + reg glob_clone_stall; - assign out_a_reg_data = curr_warp_zero ? zero_a_reg_data : one_a_reg_data; - assign out_b_reg_data = curr_warp_zero ? zero_b_reg_data : one_b_reg_data; - assign out_clone_stall = zero_clone_stall || one_clone_stall; + wire curr_warp_zero = in_warp_num == 0; + wire context_zero_valid = (in_wb_warp_num == 0); + wire real_zero_isclone = is_clone && (in_warp_num == 0); + VX_context VX_Context_zero( + .clk (clk), + .in_warp (curr_warp_zero), + .in_wb_warp (context_zero_valid), + .in_valid (in_wb_valid), + .in_rd (in_rd), + .in_src1 (out_rs1), + .in_src2 (out_rs2), + .in_curr_PC (in_curr_PC), + .in_is_clone (real_zero_isclone), + .in_is_jal (is_jal), + .in_src1_fwd (in_src1_fwd), + .in_src1_fwd_data (in_src1_fwd_data), + .in_src2_fwd (in_src2_fwd), + .in_src2_fwd_data (in_src2_fwd_data), + .in_write_register(write_register), + .in_write_data (in_write_data), + .out_a_reg_data (glob_a_reg_data), + .out_b_reg_data (glob_b_reg_data), + .out_clone_stall (glob_clone_stall), + .w0_t0_registers (w0_t0_registers) + ); + + + assign out_a_reg_data = glob_a_reg_data; + assign out_b_reg_data = glob_b_reg_data; + assign out_clone_stall = glob_clone_stall; + + `else + + wire[31:0] glob_a_reg_data[`NW-1:0][`NT_M1:0]; + wire[31:0] glob_b_reg_data[`NW-1:0][`NT_M1:0]; + reg glob_clone_stall[`NW-1:0]; + + wire curr_warp_zero = in_warp_num == 0; + wire context_zero_valid = (in_wb_warp_num == 0); + wire real_zero_isclone = is_clone && (in_warp_num == 0); + VX_context VX_Context_zero( + .clk (clk), + .in_warp (curr_warp_zero), + .in_wb_warp (context_zero_valid), + .in_valid (in_wb_valid), + .in_rd (in_rd), + .in_src1 (out_rs1), + .in_src2 (out_rs2), + .in_curr_PC (in_curr_PC), + .in_is_clone (real_zero_isclone), + .in_is_jal (is_jal), + .in_src1_fwd (in_src1_fwd), + .in_src1_fwd_data (in_src1_fwd_data), + .in_src2_fwd (in_src2_fwd), + .in_src2_fwd_data (in_src2_fwd_data), + .in_write_register(write_register), + .in_write_data (in_write_data), + .out_a_reg_data (glob_a_reg_data[0]), + .out_b_reg_data (glob_b_reg_data[0]), + .out_clone_stall (glob_clone_stall[0]), + .w0_t0_registers (w0_t0_registers) + ); + + genvar r; + generate + for (r = 1; r < `NW; r = r + 1) begin + wire context_glob_valid = (in_wb_warp_num == r); + wire curr_warp_glob = in_warp_num == r; + wire real_wspawn = is_wspawn && (in_which_wspawn == r); + wire real_isclone = is_clone && (in_warp_num == r); + VX_context_slave VX_Context_one( + .clk (clk), + .in_warp (curr_warp_glob), + .in_wb_warp (context_glob_valid), + .in_valid (in_wb_valid), + .in_rd (in_rd), + .in_src1 (out_rs1), + .in_src2 (out_rs2), + .in_curr_PC (in_curr_PC), + .in_is_clone (real_isclone), + .in_is_jal (is_jal), + .in_src1_fwd (in_src1_fwd), + .in_src1_fwd_data (in_src1_fwd_data), + .in_src2_fwd (in_src2_fwd), + .in_src2_fwd_data (in_src2_fwd_data), + .in_write_register(write_register), + .in_write_data (in_write_data), + .in_wspawn_regs (w0_t0_registers), + .in_wspawn (real_wspawn), + .out_a_reg_data (glob_a_reg_data[r]), + .out_b_reg_data (glob_b_reg_data[r]), + .out_clone_stall (glob_clone_stall[r]) + ); + end + endgenerate + + // always @(posedge clk) + // if(write_register && (in_wb_warp == 3) && (in_wb_valid[0]) && (in_rd == 31)) begin + + // $display("Warp 3 writing ",); + // end + // end + + reg[31:0] temp_out_a_reg_data[`NT_M1:0]; + reg[31:0] temp_out_b_reg_data[`NT_M1:0]; + /* verilator lint_off UNOPTFLAT */ + reg temp_out_clone_stall; + /* verilator lint_on UNOPTFLAT */ + + always @(*) begin + + if (`NW == 1) begin + temp_out_a_reg_data = glob_a_reg_data; + temp_out_b_reg_data = glob_b_reg_data; + end else begin + integer g; + // temp_out_clone_stall = 0; + for (g = 0; g < `NW; g = g + 1) + begin + if (in_warp_num == g[`NW_M1:0]) begin + temp_out_a_reg_data = glob_a_reg_data[g]; + temp_out_b_reg_data = glob_b_reg_data[g]; + end + + // temp_out_clone_stall = temp_out_clone_stall || glob_clone_stall[g]; + end + end + end + + assign out_a_reg_data = temp_out_a_reg_data; + assign out_b_reg_data = temp_out_b_reg_data; + // assign out_clone_stall = temp_out_clone_stall; + + // assign out_a_reg_data = curr_warp_zero ? glob_a_reg_data[0] : glob_a_reg_data[1]; + // assign out_b_reg_data = curr_warp_zero ? glob_b_reg_data[0] : glob_b_reg_data[1]; + + genvar y; + generate + always @(*) begin + temp_out_clone_stall = glob_clone_stall[0]; + for (y = 1; y < `NW; y = y+1) begin + temp_out_clone_stall = temp_out_clone_stall || glob_clone_stall[y]; + end + end + endgenerate + + assign out_clone_stall = temp_out_clone_stall; + + + `endif + + + // assign out_clone_stall = glob_clone_stall[0] || glob_clone_stall[1] || + // glob_clone_stall[2] || glob_clone_stall[3]; // always @(*) begin // if (context_one_valid) begin @@ -234,7 +340,7 @@ module VX_decode( assign out_wspawn_pc = out_a_reg_data[0]; // always @(*) begin - // if (is_jalrs) begin + // if (is_jalrs && in_warp_num == 2) begin // $display("JALRS WOHOOO: rs2 - %h", out_b_reg_data[0]); // end // end @@ -274,9 +380,6 @@ module VX_decode( - // ch_print("DECODE: PC: {0}, INSTRUCTION: {1}", in_curr_PC, in_instruction); - - // assign out_reg_data[0] = ( (is_jal == 1'b1) ? in_curr_PC : ((in_src1_fwd == 1'b1) ? in_src1_fwd_data[0] : rd1_register[0])); // assign out_reg_data[1] = (in_src2_fwd == 1'b1) ? in_src2_fwd_data[0] : rd2_register[0]; @@ -361,6 +464,7 @@ module VX_decode( begin if (is_jalrs || is_jmprt) begin + // $display("OUT JAL DEST: %h", out_a_reg_data[0]); out_jal = 1'b1 && in_valid[0]; out_jal_offset = 32'h0; end diff --git a/rtl/VX_define.h b/rtl/VX_define.h index 5fb42fb8..2273b35e 100644 --- a/rtl/VX_define.h +++ b/rtl/VX_define.h @@ -1,7 +1,10 @@ -#define NT 2 -#define NT_M1 1 +#define NT 4 +#define NT_M1 (NT-1) + +#define NW 8 + #define R_INST 51 #define L_INST 3 diff --git a/rtl/VX_define.v b/rtl/VX_define.v index 153c84ae..2f176f3b 100644 --- a/rtl/VX_define.v +++ b/rtl/VX_define.v @@ -1,8 +1,11 @@ -`define NT 2 -`define NT_M1 1 -`define NW_M1 1 +`define NT 4 +`define NT_M1 (`NT-1) + +`define NW_M1 3 +`define NW 8 +// `define ONLY `define R_INST 7'd51 diff --git a/rtl/VX_fetch.v b/rtl/VX_fetch.v index f9e52047..6739b9d6 100644 --- a/rtl/VX_fetch.v +++ b/rtl/VX_fetch.v @@ -29,7 +29,8 @@ module VX_fetch ( output wire[`NW_M1:0] out_warp_num, output wire[31:0] out_curr_PC, output wire out_valid[`NT_M1:0], - output wire out_ebreak + output wire out_ebreak, + output wire[`NW_M1:0] out_which_wspawn ); reg stall; @@ -37,108 +38,161 @@ module VX_fetch ( reg[`NW_M1:0] warp_num; reg[`NW_M1:0] warp_state; + reg[`NW_M1:0] warp_count; + + reg[31:0] num_ecalls; initial begin warp_num = 0; warp_state = 0; + num_ecalls = 0; + warp_count = 1; + end + + + always @(posedge clk) begin + if (in_ebreak) begin + num_ecalls <= num_ecalls + 1; + $display("--------> New num_ecalls = %h", num_ecalls+1); + end end wire add_warp = in_wspawn && !in_ebreak && !in_clone_stall; wire remove_warp = in_ebreak && !in_wspawn && !in_clone_stall; always @(posedge clk or posedge reset) begin - if (reset || (warp_num == warp_state) || remove_warp || add_warp) begin + if (reset || (warp_num >= warp_state) || remove_warp || add_warp) begin warp_num <= 0; + `ifndef ONLY + end else if (!warp_glob_valid[warp_num+1]) begin + $display("Skipping one"); + warp_num <= warp_num + 2; + `endif end else begin warp_num <= warp_num + 1; end if (add_warp) begin - // $display("Adding a new warp %h", warp_state); warp_state <= warp_state + 1; - end else if (remove_warp) begin - // $display("Removing a warp %h", warp_state); - warp_state <= warp_state - 1; + warp_count <= warp_count + 1; + $display("Adding a new warp %h", warp_state+1); + end else if (remove_warp) begin // No removing, just invalidating + warp_count <= warp_count - 1; + $display("Removing a warp %h %h", in_decode_warp_num, warp_count); + if (warp_count == 2) begin + $display("&&&&&&&&&&&&& STATE 0"); + warp_state <= 0; + end end end - assign out_ebreak = (warp_state == 0) && in_ebreak; + assign out_ebreak = (in_decode_warp_num == 0) && in_ebreak; assign stall = in_clone_stall || in_branch_stall || in_fwd_stall || in_branch_stall_exe || in_interrupt || in_freeze || in_debug; + assign out_which_wspawn = (warp_state+1); + + `ifdef ONLY + + wire warp_zero_change_mask = in_change_mask && (in_decode_warp_num == 0); + wire warp_zero_jal = in_jal && (in_memory_warp_num == 0); + wire warp_zero_branch = in_branch_dir && (in_memory_warp_num == 0); + wire warp_zero_stall = stall || (warp_num != 0); + wire warp_zero_wspawn = (0 == 0) ? 0 : (in_wspawn && ((warp_state+1) == 0)); + wire[31:0] warp_zero_wspawn_pc = in_wspawn_pc; + wire warp_zero_remove = remove_warp && (in_decode_warp_num == 0); + + always @(*) begin : proc_ + if (warp_zero_remove) $display("4Removing warp: %h", 0); + end + + VX_warp VX_Warp( + .clk (clk), + .reset (reset), + .stall (warp_zero_stall), + .remove (warp_zero_remove), + .in_thread_mask(in_thread_mask), + .in_change_mask(warp_zero_change_mask), + .in_jal (warp_zero_jal), + .in_jal_dest (in_jal_dest), + .in_branch_dir (warp_zero_branch), + .in_branch_dest(in_branch_dest), + .in_wspawn (warp_zero_wspawn), + .in_wspawn_pc (warp_zero_wspawn_pc), + .out_PC (out_PC), + .out_valid (out_valid) + ); + + `else + + wire[31:0] warp_glob_pc[`NW-1:0]; + wire warp_glob_valid[`NW-1:0][`NT_M1:0]; + genvar cur_warp; + generate + for (cur_warp = 0; cur_warp < `NW; cur_warp = cur_warp + 1) + begin + wire warp_zero_change_mask = in_change_mask && (in_decode_warp_num == cur_warp); + wire warp_zero_jal = in_jal && (in_memory_warp_num == cur_warp); + wire warp_zero_branch = in_branch_dir && (in_memory_warp_num == cur_warp); + wire warp_zero_stall = stall || (warp_num != cur_warp); + wire warp_zero_wspawn = (cur_warp == 0) ? 0 : (in_wspawn && ((warp_state+1) == cur_warp)); + wire[31:0] warp_zero_wspawn_pc = in_wspawn_pc; + wire warp_zero_remove = remove_warp && (in_decode_warp_num == cur_warp); + + always @(*) begin : proc_ + if (warp_zero_remove) $display("4Removing warp: %h", cur_warp); + end + + VX_warp VX_Warp( + .clk (clk), + .reset (reset), + .stall (warp_zero_stall), + .remove (warp_zero_remove), + .in_thread_mask(in_thread_mask), + .in_change_mask(warp_zero_change_mask), + .in_jal (warp_zero_jal), + .in_jal_dest (in_jal_dest), + .in_branch_dir (warp_zero_branch), + .in_branch_dest(in_branch_dest), + .in_wspawn (warp_zero_wspawn), + .in_wspawn_pc (warp_zero_wspawn_pc), + .out_PC (warp_glob_pc[cur_warp]), + .out_valid (warp_glob_valid[cur_warp]) + ); + end + endgenerate - wire warp_zero_change_mask = in_change_mask && (in_decode_warp_num == 0); - wire warp_zero_jal = in_jal && (in_memory_warp_num == 0); - wire warp_zero_branch = in_branch_dir && (in_memory_warp_num == 0); - wire warp_zero_stall = stall || (warp_num == 1); - wire warp_zero_wspawn = 0; - wire[31:0] warp_zero_wspawn_pc = 32'h0; + reg[31:0] out_PC_var; + reg out_valid_var[`NT_M1:0]; - wire[31:0] warp_zero_pc; - wire warp_zero_valid[`NT_M1:0]; - VX_warp VX_Warp_zero( - .clk (clk), - .reset (reset), - .stall (warp_zero_stall), - .in_thread_mask(in_thread_mask), - .in_change_mask(warp_zero_change_mask), - .in_jal (warp_zero_jal), - .in_jal_dest (in_jal_dest), - .in_branch_dir (warp_zero_branch), - .in_branch_dest(in_branch_dest), - .in_wspawn (warp_zero_wspawn), - .in_wspawn_pc (warp_zero_wspawn_pc), - .out_PC (warp_zero_pc), - .out_valid (warp_zero_valid) - ); + always @(*) begin : help + integer g; + integer h; + for (g = 0; g < `NW; g = g + 1) + begin + if (warp_num == g[`NW_M1:0]) + begin + out_PC_var = warp_glob_pc[g][31:0]; + for (h = 0; h < `NT; h = h + 1) out_valid_var[h] = warp_glob_valid[g][h]; + end + + end + end + + assign out_PC = out_PC_var; + assign out_valid = out_valid_var; + + always @(*) begin + if (out_valid[0]) begin + $display("[%d] %h #%b#",out_warp_num, out_PC, out_valid); + end + end + + `endif - wire warp_one_change_mask = in_change_mask && (in_decode_warp_num == 1); - wire warp_one_jal = in_jal && (in_memory_warp_num == 1); - wire warp_one_branch = in_branch_dir && (in_memory_warp_num == 1); - wire warp_one_stall = stall || (warp_num == 0); - wire[31:0] warp_one_pc; - wire warp_one_valid[`NT_M1:0]; - VX_warp VX_Warp_one( - .clk (clk), - .reset (reset), - .stall (warp_one_stall), - .in_thread_mask(in_thread_mask), - .in_change_mask(warp_one_change_mask), - .in_jal (warp_one_jal), - .in_jal_dest (in_jal_dest), - .in_branch_dir (warp_one_branch), - .in_branch_dest(in_branch_dest), - .in_wspawn (in_wspawn), - .in_wspawn_pc (in_wspawn_pc), - .out_PC (warp_one_pc), - .out_valid (warp_one_valid) - ); - - // always @(*) begin - // if (in_wspawn) begin - // $display("Spawning a warp @ %h",in_wspawn_pc); - // end - // end - - // always @(posedge clk) begin - // $display("curr warp: %h Threads:%d%d PC: %h", warp_num, out_valid[0],out_valid[1], out_PC); - // end - - // always @(*) begin - // if (warp_num == 1) begin - // $display("Going to PC: %h", warp_one_pc); - // end - // end - - assign out_PC = (warp_num == 0) ? warp_zero_pc : warp_one_pc; - assign out_valid = (warp_num == 0) ? warp_zero_valid : warp_one_valid; - - // always @(*) begin - // $display("FETCH PC: %h (%h, %h, %h)",delete, delete, in_jal_dest, in_branch_dest); - // end assign out_curr_PC = out_PC; diff --git a/rtl/VX_warp.v b/rtl/VX_warp.v index cf6039c3..7a87d8c9 100644 --- a/rtl/VX_warp.v +++ b/rtl/VX_warp.v @@ -5,6 +5,7 @@ module VX_warp ( input wire clk, input wire reset, input wire stall, + input wire remove, input wire in_thread_mask[`NT_M1:0], input wire in_change_mask, input wire in_jal, @@ -23,18 +24,24 @@ module VX_warp ( var[31:0] use_PC; reg valid[`NT_M1:0]; + reg valid_zero[`NT_M1:0]; integer ini_cur_th = 0; initial begin real_PC = 0; - for (ini_cur_th = 1; ini_cur_th < `NT; ini_cur_th=ini_cur_th+1) + for (ini_cur_th = 1; ini_cur_th < `NT; ini_cur_th=ini_cur_th+1) begin valid[ini_cur_th] = 0; // Thread 1 active - valid[0] = 1; + valid_zero[ini_cur_th] = 0; + end + valid[0] = 1; + valid_zero[0] = 0; end always @(*) begin - if (in_change_mask) begin + if (remove) begin + assign valid = valid_zero; + end else if (in_change_mask) begin assign valid = in_thread_mask; end end @@ -50,6 +57,7 @@ module VX_warp ( always @(*) begin if (in_jal == 1'b1) begin temp_PC = in_jal_dest; + // $display("LINKING TO %h", temp_PC); end else if (in_branch_dir == 1'b1) begin temp_PC = in_branch_dest; end else begin diff --git a/rtl/Vortex.v b/rtl/Vortex.v index 34c23946..ce7bee31 100644 --- a/rtl/Vortex.v +++ b/rtl/Vortex.v @@ -32,6 +32,7 @@ wire[31:0] fetch_curr_PC; wire fetch_valid[`NT_M1:0]; wire[`NW_M1:0] fetch_warp_num; wire fetch_ebreak; +wire[`NW_M1:0] fetch_which_warp; // From f_d_register wire[31:0] f_d_instruction; @@ -228,7 +229,8 @@ VX_fetch vx_fetch( .out_curr_PC (fetch_curr_PC), .out_warp_num (fetch_warp_num), .out_valid (fetch_valid), - .out_ebreak (fetch_ebreak) + .out_ebreak (fetch_ebreak), + .out_which_wspawn (fetch_which_warp) ); @@ -264,6 +266,7 @@ VX_decode vx_decode( .in_src2_fwd (forwarding_src2_fwd), .in_src2_fwd_data(forwarding_src2_fwd_data), .in_warp_num (f_d_warp_num), + .in_which_wspawn (fetch_which_warp), .out_csr_address (decode_csr_address), .out_is_csr (decode_is_csr), diff --git a/rtl/obj_dir/VVortex b/rtl/obj_dir/VVortex deleted file mode 100755 index 5882e08dba35a8d869979c6893e81d27c8c40e10..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 431484 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

I83%NJM?Eba$ziyAt{K%u$l%yL`S)k)XRI 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

(r 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

@1>s9VQK;17Phsf`e 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 QFZ09VI}Pim{vZ7PACX<|4FCWD diff --git a/rtl/obj_dir/VVortex.cpp b/rtl/obj_dir/VVortex.cpp deleted file mode 100644 index de9647a3..00000000 --- a/rtl/obj_dir/VVortex.cpp +++ /dev/null @@ -1,7576 +0,0 @@ -// Verilated -*- C++ -*- -// DESCRIPTION: Verilator output: Design implementation internals -// See VVortex.h for the primary calling header - -#include "VVortex.h" -#include "VVortex__Syms.h" - - -//-------------------- -// STATIC VARIABLES - -// Begin mtask footprint all: -VL_ST_SIG8(VVortex::__Vtable1_Vortex__DOT__vx_decode__DOT__mul_alu[8],4,0); - -//-------------------- - -VL_CTOR_IMP(VVortex) { - VVortex__Syms* __restrict vlSymsp = __VlSymsp = new VVortex__Syms(this, name()); - VVortex* __restrict vlTOPp VL_ATTR_UNUSED = vlSymsp->TOPp; - // Reset internal values - - // Reset structure values - _ctor_var_reset(); -} - -void VVortex::__Vconfigure(VVortex__Syms* vlSymsp, bool first) { - if (0 && first) {} // Prevent unused - this->__VlSymsp = vlSymsp; -} - -VVortex::~VVortex() { - delete __VlSymsp; __VlSymsp=NULL; -} - -//-------------------- - - -void VVortex::eval() { - VL_DEBUG_IF(VL_DBG_MSGF("+++++TOP Evaluate VVortex::eval\n"); ); - VVortex__Syms* __restrict vlSymsp = this->__VlSymsp; // Setup global symbol table - VVortex* __restrict vlTOPp VL_ATTR_UNUSED = vlSymsp->TOPp; -#ifdef VL_DEBUG - // Debug assertions - _eval_debug_assertions(); -#endif // VL_DEBUG - // Initialize - if (VL_UNLIKELY(!vlSymsp->__Vm_didInit)) _eval_initial_loop(vlSymsp); - // Evaluate till stable - int __VclockLoop = 0; - QData __Vchange = 1; - do { - VL_DEBUG_IF(VL_DBG_MSGF("+ Clock loop\n");); - _eval(vlSymsp); - if (VL_UNLIKELY(++__VclockLoop > 100)) { - // About to fail, so enable debug to see what's not settling. - // Note you must run make with OPT=-DVL_DEBUG for debug prints. - int __Vsaved_debug = Verilated::debug(); - Verilated::debug(1); - __Vchange = _change_request(vlSymsp); - Verilated::debug(__Vsaved_debug); - VL_FATAL_MT(__FILE__,__LINE__,__FILE__,"Verilated model didn't converge"); - } else { - __Vchange = _change_request(vlSymsp); - } - } while (VL_UNLIKELY(__Vchange)); -} - -void VVortex::_eval_initial_loop(VVortex__Syms* __restrict vlSymsp) { - vlSymsp->__Vm_didInit = true; - _eval_initial(vlSymsp); - // Evaluate till stable - int __VclockLoop = 0; - QData __Vchange = 1; - do { - _eval_settle(vlSymsp); - _eval(vlSymsp); - if (VL_UNLIKELY(++__VclockLoop > 100)) { - // About to fail, so enable debug to see what's not settling. - // Note you must run make with OPT=-DVL_DEBUG for debug prints. - int __Vsaved_debug = Verilated::debug(); - Verilated::debug(1); - __Vchange = _change_request(vlSymsp); - Verilated::debug(__Vsaved_debug); - VL_FATAL_MT(__FILE__,__LINE__,__FILE__,"Verilated model didn't DC converge"); - } else { - __Vchange = _change_request(vlSymsp); - } - } while (VL_UNLIKELY(__Vchange)); -} - -//-------------------- -// Internal Methods - -void VVortex::_initial__TOP__1(VVortex__Syms* __restrict vlSymsp) { - VL_DEBUG_IF(VL_DBG_MSGF("+ VVortex::_initial__TOP__1\n"); ); - VVortex* __restrict vlTOPp VL_ATTR_UNUSED = vlSymsp->TOPp; - // Body - // INITIAL at VX_warp.v:28 - vlTOPp->Vortex__DOT__vx_fetch__DOT__VX_Warp_zero__DOT__real_PC = 0U; - vlTOPp->Vortex__DOT__vx_fetch__DOT__VX_Warp_zero__DOT__valid[1U] = 0U; - vlTOPp->Vortex__DOT__vx_fetch__DOT__VX_Warp_zero__DOT__valid[0U] = 1U; - // INITIAL at VX_warp.v:28 - vlTOPp->Vortex__DOT__vx_fetch__DOT__VX_Warp_one__DOT__real_PC = 0U; - vlTOPp->Vortex__DOT__vx_fetch__DOT__VX_Warp_one__DOT__valid[1U] = 0U; - vlTOPp->Vortex__DOT__vx_fetch__DOT__VX_Warp_one__DOT__valid[0U] = 1U; - // INITIAL at VX_context.v:29 - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__state_stall = 0U; - // INITIAL at VX_context_slave.v:36 - // INITIAL at VX_context_slave.v:37 - // INITIAL at VX_context_slave.v:39 - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_state_stall = 0U; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__wspawn_state_stall = 0U; - // INITIAL at VX_m_w_reg.v:41 - vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__rd = 0U; - vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__wb = 0U; - vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__PC_next = 0U; - vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__warp_num = 0U; - // INITIAL at VX_csr_handler.v:27 - vlTOPp->Vortex__DOT__vx_csr_handler__DOT__cycle = VL_ULL(0); - vlTOPp->Vortex__DOT__vx_csr_handler__DOT__instret = VL_ULL(0); - vlTOPp->Vortex__DOT__vx_csr_handler__DOT__decode_csr_address = 0U; - // INITIAL at VX_e_m_reg.v:79 - vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__rd = 0U; - vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__wb = 0U; - vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__PC_next = 0U; - vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__mem_read = 7U; - vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__mem_write = 7U; - vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__csr_address = 0U; - vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__is_csr = 0U; - vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__csr_result = 0U; - vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__curr_PC = 0U; - vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__branch_offset = 0U; - vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__branch_type = 0U; - vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__jal = 0U; - vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__jal_dest = 0U; - vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__warp_num = 0U; - vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__a_reg_data[0U] = 0U; - vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__b_reg_data[0U] = 0U; - vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__valid[0U] = 0U; - vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__alu_result[0U] = 0U; - vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__a_reg_data[1U] = 0U; - vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__b_reg_data[1U] = 0U; - vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__valid[1U] = 0U; - vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__alu_result[1U] = 0U; - // INITIAL at VX_d_e_reg.v:87 - vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__rd = 0U; - vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__a_reg_data[0U] = 0U; - vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__b_reg_data[0U] = 0U; - vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__reg_data_z[0U] = 0U; - vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__valid[0U] = 0U; - vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__valid_z[0U] = 0U; - vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__a_reg_data[1U] = 0U; - vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__b_reg_data[1U] = 0U; - vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__reg_data_z[1U] = 0U; - vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__valid[1U] = 0U; - vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__valid_z[1U] = 0U; - vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op = 0U; - vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__wb = 0U; - vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__PC_next_out = 0U; - vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__rs2_src = 0U; - vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__itype_immed = 0U; - vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__mem_read = 7U; - vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__mem_write = 7U; - vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__branch_type = 0U; - vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__upper_immed = 0U; - vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__csr_address = 0U; - vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__is_csr = 0U; - vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__csr_mask = 0U; - vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__curr_PC = 0U; - vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__jal = 0U; - vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__jal_offset = 0U; - vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__warp_num = 0U; - // INITIAL at VX_fetch.v:41 - vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_num = 0U; - vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_state = 0U; -} - -void VVortex::_settle__TOP__2(VVortex__Syms* __restrict vlSymsp) { - VL_DEBUG_IF(VL_DBG_MSGF("+ VVortex::_settle__TOP__2\n"); ); - VVortex* __restrict vlTOPp VL_ATTR_UNUSED = vlSymsp->TOPp; - // Body - vlTOPp->Vortex__DOT__vx_decode__DOT__jmprt_thread_mask[0U] = 1U; - vlTOPp->Vortex__DOT__vx_decode__DOT__jmprt_thread_mask[1U] = 0U; - vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_cache_driver_out_data[1U] - = 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]; - vlTOPp->Vortex__DOT____Vcellout__vx_m_w_reg__out_valid[1U] - = vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__valid - [1U]; - vlTOPp->Vortex__DOT____Vcellout__vx_m_w_reg__out_valid[0U] - = vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__valid - [0U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__rd1_register[0U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_src1_data; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__rd1_register[1U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__out_src1_data; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__rd1_register[0U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_src1_data; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__rd1_register[1U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__out_src1_data; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[0x1fU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [0x1fU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[0x1eU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [0x1eU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[0x1dU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [0x1dU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[0x1cU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [0x1cU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[0x1bU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [0x1bU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[0x1aU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [0x1aU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[0x19U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [0x19U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[0x18U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [0x18U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[0x17U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [0x17U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[0x16U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [0x16U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[0x15U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [0x15U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[0x14U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [0x14U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[0x13U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [0x13U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[0x12U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [0x12U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[0x11U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [0x11U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[0x10U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [0x10U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[0xfU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [0xfU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[0xeU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [0xeU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[0xdU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [0xdU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[0xcU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [0xcU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[0xbU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [0xbU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[0xaU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [0xaU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[9U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [9U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[8U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [8U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[7U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [7U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[6U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [6U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[5U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [5U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[4U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [4U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[3U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [3U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[2U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [2U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[1U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [1U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[0U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [0U]; - 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__VX_Context_zero__DOT__rd2_register[0U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_src2_data; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__rd2_register[1U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__out_src2_data; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__rd2_register[0U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_src2_data; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__rd2_register[1U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__out_src2_data; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[0x1fU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [0x1fU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[0x1eU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [0x1eU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[0x1dU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [0x1dU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[0x1cU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [0x1cU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[0x1bU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [0x1bU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[0x1aU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [0x1aU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[0x19U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [0x19U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[0x18U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [0x18U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[0x17U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [0x17U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[0x16U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [0x16U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[0x15U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [0x15U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[0x14U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [0x14U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[0x13U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [0x13U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[0x12U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [0x12U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[0x11U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [0x11U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[0x10U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [0x10U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[0xfU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [0xfU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[0xeU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [0xeU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[0xdU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [0xdU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[0xcU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [0xcU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[0xbU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [0xbU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[0xaU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [0xaU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[9U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [9U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[8U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [8U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[7U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [7U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[6U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [6U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[5U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [5U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[4U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [4U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[3U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [3U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[2U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [2U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[1U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [1U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[0U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [0U]; - vlTOPp->Vortex__DOT____Vcellout__vx_m_w_reg__out_alu_result[1U] - = vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__alu_result - [1U]; - vlTOPp->Vortex__DOT____Vcellout__vx_m_w_reg__out_alu_result[0U] - = vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__alu_result - [0U]; - vlTOPp->Vortex__DOT____Vcellout__vx_m_w_reg__out_mem_result[1U] - = vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__mem_result - [1U]; - vlTOPp->Vortex__DOT____Vcellout__vx_m_w_reg__out_mem_result[0U] - = vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__mem_result - [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))); - vlTOPp->Vortex__DOT__decode_csr_address = (0xfffU - & (((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__vx_f_d_reg__DOT__instruction - >> 0x14U) - : 0x55U)); - // ALWAYS at VX_decode.v:473 - vlTOPp->__Vtableidx1 = (7U & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0xcU)); - vlTOPp->Vortex__DOT__vx_decode__DOT__mul_alu = - vlTOPp->__Vtable1_Vortex__DOT__vx_decode__DOT__mul_alu - [vlTOPp->__Vtableidx1]; - vlTOPp->Vortex__DOT__vx_decode__DOT__alu_tempp - = (0xfffU & (((1U == (7U & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0xcU))) | (5U - == - (7U - & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0xcU)))) - ? (0x1fU & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0x14U)) : (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0x14U))); - vlTOPp->Vortex__DOT__vx_decode__DOT__is_csr = ( - (0x73U - == - (0x7fU - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) - & (0U - != - (7U - & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0xcU)))); - vlTOPp->Vortex__DOT__vx_decode__DOT__jal_sys_jal - = ((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__vx_decode__DOT__is_clone = - ((0x6bU == (0x7fU & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) - & (5U == (7U & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0xcU)))); - vlTOPp->Vortex__DOT__vx_decode__DOT__is_wspawn - = ((0x6bU == (0x7fU & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) - & (0U == (7U & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0xcU)))); - vlTOPp->Vortex__DOT__vx_decode__DOT__is_jmprt = - ((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__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)))); - vlTOPp->Vortex__DOT__vx_writeback__DOT__out_pc_data[0U] - = vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__PC_next; - vlTOPp->Vortex__DOT__vx_writeback__DOT__out_pc_data[1U] - = vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__PC_next; - vlTOPp->Vortex__DOT__vx_forwarding__DOT__use_writeback_PC_next[0U] - = vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__PC_next; - vlTOPp->Vortex__DOT__vx_forwarding__DOT__use_writeback_PC_next[1U] - = vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__PC_next; - vlTOPp->Vortex__DOT__csr_decode_csr_data = ((0xc00U - == (IData)(vlTOPp->Vortex__DOT__vx_csr_handler__DOT__decode_csr_address)) - ? (IData)(vlTOPp->Vortex__DOT__vx_csr_handler__DOT__cycle) - : - ((0xc80U - == (IData)(vlTOPp->Vortex__DOT__vx_csr_handler__DOT__decode_csr_address)) - ? (IData)( - (vlTOPp->Vortex__DOT__vx_csr_handler__DOT__cycle - >> 0x20U)) - : - ((0xc02U - == (IData)(vlTOPp->Vortex__DOT__vx_csr_handler__DOT__decode_csr_address)) - ? (IData)(vlTOPp->Vortex__DOT__vx_csr_handler__DOT__instret) - : - ((0xc82U - == (IData)(vlTOPp->Vortex__DOT__vx_csr_handler__DOT__decode_csr_address)) - ? (IData)( - (vlTOPp->Vortex__DOT__vx_csr_handler__DOT__instret - >> 0x20U)) - : - vlTOPp->Vortex__DOT__vx_csr_handler__DOT__csr - [vlTOPp->Vortex__DOT__vx_csr_handler__DOT__decode_csr_address])))); - 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)); - vlTOPp->Vortex__DOT____Vcellout__vx_e_m_reg__out_b_reg_data[1U] - = vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__b_reg_data - [1U]; - vlTOPp->Vortex__DOT____Vcellout__vx_e_m_reg__out_b_reg_data[0U] - = vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__b_reg_data - [0U]; - vlTOPp->Vortex__DOT____Vcellout__vx_e_m_reg__out_valid[1U] - = vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__valid - [1U]; - vlTOPp->Vortex__DOT____Vcellout__vx_e_m_reg__out_valid[0U] - = vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__valid - [0U]; - vlTOPp->Vortex__DOT__vx_forwarding__DOT__use_memory_PC_next[0U] - = vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__PC_next; - vlTOPp->Vortex__DOT__vx_forwarding__DOT__use_memory_PC_next[1U] - = vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__PC_next; - vlTOPp->Vortex__DOT____Vcellout__vx_e_m_reg__out_alu_result[1U] - = vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__alu_result - [1U]; - vlTOPp->Vortex__DOT____Vcellout__vx_e_m_reg__out_alu_result[0U] - = vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__alu_result - [0U]; - vlTOPp->Vortex__DOT____Vcellout__vx_d_e_reg__out_valid[1U] - = vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__valid - [1U]; - vlTOPp->Vortex__DOT____Vcellout__vx_d_e_reg__out_valid[0U] - = vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__valid - [0U]; - vlTOPp->Vortex__DOT__execute_branch_stall = ((0U - != (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__branch_type)) - | (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__jal)); - vlTOPp->Vortex__DOT__vx_forwarding__DOT__use_execute_PC_next[0U] - = vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__PC_next_out; - vlTOPp->Vortex__DOT__vx_forwarding__DOT__use_execute_PC_next[1U] - = vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__PC_next_out; - vlTOPp->Vortex__DOT____Vcellout__vx_d_e_reg__out_a_reg_data[1U] - = vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__a_reg_data - [1U]; - vlTOPp->Vortex__DOT____Vcellout__vx_d_e_reg__out_a_reg_data[0U] - = vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__a_reg_data - [0U]; - vlTOPp->Vortex__DOT____Vcellout__vx_d_e_reg__out_b_reg_data[1U] - = vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__b_reg_data - [1U]; - vlTOPp->Vortex__DOT____Vcellout__vx_d_e_reg__out_b_reg_data[0U] - = vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__b_reg_data - [0U]; - vlTOPp->Vortex__DOT__vx_forwarding__DOT__src1_exe_fwd - = (((((0x1fU & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0xfU)) == (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__rd)) - & (0U != (0x1fU & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0xfU)))) & (0U != (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__wb))) - & ((IData)(vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__warp_num) - == (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__warp_num))); - vlTOPp->Vortex__DOT__vx_forwarding__DOT__src2_exe_fwd - = (((((0x1fU & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 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))) - & ((IData)(vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__warp_num) - == (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__warp_num))); - vlTOPp->Vortex__DOT____Vcellout__vx_memory__out_mem_result[1U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_cache_driver_out_data - [1U]; - vlTOPp->Vortex__DOT____Vcellout__vx_memory__out_mem_result[0U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_cache_driver_out_data - [0U]; - vlTOPp->Vortex__DOT__m_w_valid[1U] = vlTOPp->Vortex__DOT____Vcellout__vx_m_w_reg__out_valid - [1U]; - vlTOPp->Vortex__DOT__m_w_valid[0U] = vlTOPp->Vortex__DOT____Vcellout__vx_m_w_reg__out_valid - [0U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[0x1fU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [0x1fU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[0x1eU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [0x1eU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[0x1dU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [0x1dU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[0x1cU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [0x1cU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[0x1bU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [0x1bU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[0x1aU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [0x1aU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[0x19U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [0x19U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[0x18U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [0x18U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[0x17U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [0x17U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[0x16U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [0x16U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[0x15U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [0x15U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[0x14U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [0x14U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[0x13U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [0x13U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[0x12U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [0x12U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[0x11U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [0x11U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[0x10U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [0x10U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[0xfU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [0xfU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[0xeU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [0xeU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[0xdU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [0xdU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[0xcU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [0xcU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[0xbU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [0xbU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[0xaU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [0xaU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[9U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [9U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[8U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [8U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[7U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [7U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[6U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [6U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[5U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [5U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[4U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [4U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[3U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [3U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[2U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [2U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[1U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [1U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[0U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [0U]; - 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__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[0x1fU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [0x1fU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[0x1eU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [0x1eU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[0x1dU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [0x1dU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[0x1cU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [0x1cU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[0x1bU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [0x1bU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[0x1aU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [0x1aU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[0x19U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [0x19U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[0x18U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [0x18U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[0x17U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [0x17U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[0x16U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [0x16U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[0x15U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [0x15U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[0x14U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [0x14U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[0x13U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [0x13U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[0x12U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [0x12U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[0x11U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [0x11U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[0x10U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [0x10U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[0xfU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [0xfU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[0xeU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [0xeU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[0xdU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [0xdU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[0xcU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [0xcU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[0xbU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [0xbU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[0xaU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [0xaU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[9U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [9U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[8U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [8U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[7U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [7U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[6U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [6U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[5U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [5U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[4U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [4U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[3U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [3U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[2U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [2U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[1U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [1U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[0U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [0U]; - vlTOPp->Vortex__DOT__m_w_alu_result[1U] = vlTOPp->Vortex__DOT____Vcellout__vx_m_w_reg__out_alu_result - [1U]; - vlTOPp->Vortex__DOT__m_w_alu_result[0U] = vlTOPp->Vortex__DOT____Vcellout__vx_m_w_reg__out_alu_result - [0U]; - vlTOPp->Vortex__DOT__m_w_mem_result[1U] = vlTOPp->Vortex__DOT____Vcellout__vx_m_w_reg__out_mem_result - [1U]; - vlTOPp->Vortex__DOT__m_w_mem_result[0U] = vlTOPp->Vortex__DOT____Vcellout__vx_m_w_reg__out_mem_result - [0U]; - // ALWAYS at VX_decode.v:404 - vlTOPp->Vortex__DOT__decode_itype_immed = ((0x40U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? ( - (0x20U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? - ((0x10U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? 0xdeadbeefU - : - ((8U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? 0xdeadbeefU - : - ((4U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? 0xdeadbeefU - : - ((2U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? - ((1U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? - ((0xfffff000U - & (VL_NEGATE_I((IData)( - (1U - & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0x1fU)))) - << 0xcU)) - | ((0x800U - & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0x14U)) - | ((0x400U - & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - << 3U)) - | ((0x3f0U - & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0x15U)) - | (0xfU - & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 8U)))))) - : 0xdeadbeefU) - : 0xdeadbeefU)))) - : 0xdeadbeefU) - : ( - (0x20U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? - ((0x10U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? 0xdeadbeefU - : - ((8U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? 0xdeadbeefU - : - ((4U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? 0xdeadbeefU - : - ((2U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? - ((1U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? - ((0xfffff000U - & (VL_NEGATE_I((IData)( - (1U - & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0x1fU)))) - << 0xcU)) - | ((0xfe0U - & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0x14U)) - | (0x1fU - & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 7U)))) - : 0xdeadbeefU) - : 0xdeadbeefU)))) - : - ((0x10U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? - ((8U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? 0xdeadbeefU - : - ((4U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? 0xdeadbeefU - : - ((2U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? - ((1U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? - ((0xfffff000U - & (VL_NEGATE_I((IData)( - (1U - & ((IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__alu_tempp) - >> 0xbU)))) - << 0xcU)) - | (IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__alu_tempp)) - : 0xdeadbeefU) - : 0xdeadbeefU))) - : - ((8U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? 0xdeadbeefU - : - ((4U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? 0xdeadbeefU - : - ((2U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? - ((1U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? - ((0xfffff000U - & (VL_NEGATE_I((IData)( - (1U - & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0x1fU)))) - << 0xcU)) - | (0xfffU - & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0x14U))) - : 0xdeadbeefU) - : 0xdeadbeefU)))))); - vlTOPp->Vortex__DOT__decode_clone_stall = ((((0U - == (IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__state_stall)) - | (1U - != (IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__state_stall))) - & (IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__is_clone)) - | ((((0U - == (IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_state_stall)) - | (1U - != (IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_state_stall))) - & (IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__is_clone)) - | (((0U - == (IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__wspawn_state_stall)) - & (IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__is_wspawn)) - | (1U - < (IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__wspawn_state_stall))))); - // ALWAYS at VX_decode.v:348 - 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_offset - = ((8U & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? 0xdeadbeefU : ((4U & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? 0xdeadbeefU - : ((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)))) - ? 0xb0000000U - : 0xdeadbeefU) - : 0xdeadbeefU) - : 0xdeadbeefU))); - } 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_offset - = ((2U & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? ((1U & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? ((0xffe00000U - & (VL_NEGATE_I((IData)( - (1U - & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0x1fU)))) - << 0x15U)) - | ((0x100000U - & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0xbU)) - | ((0xff000U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - | ((0x800U - & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 9U)) - | (0x7feU - & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0x14U)))))) - : 0xdeadbeefU) : 0xdeadbeefU); - } 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_offset = 0U; - } - } else { - vlTOPp->Vortex__DOT__decode_jal_offset = 0xdeadbeefU; - } - } else { - vlTOPp->Vortex__DOT__decode_jal_offset = 0xdeadbeefU; - } - } - } else { - vlTOPp->Vortex__DOT__decode_jal_offset - = ((4U & 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) - ? ((0xfffff000U - & (VL_NEGATE_I((IData)( - (1U - & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0x1fU)))) - << 0xcU)) - | (0xfffU & - (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0x14U))) - : 0xdeadbeefU) : 0xdeadbeefU) - : 0xdeadbeefU); - } - } - } else { - vlTOPp->Vortex__DOT__decode_jal_offset = 0xdeadbeefU; - } - } else { - vlTOPp->Vortex__DOT__decode_jal_offset = 0xdeadbeefU; - } - // ALWAYS at VX_decode.v:415 - 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_type = 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_type = 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_type = 0U; - } - } else { - vlTOPp->Vortex__DOT__decode_branch_type = 0U; - } - } else { - vlTOPp->Vortex__DOT__decode_branch_type = 0U; - } - } - } else { - vlTOPp->Vortex__DOT__decode_branch_type - = ((4U & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? 0U : ((2U & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? ((1U & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? ((0x4000U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? ((0x2000U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? - ((0x1000U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? 6U - : 5U) - : - ((0x1000U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? 4U - : 3U)) - : ((0x2000U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? 0U - : - ((0x1000U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? 2U - : 1U))) - : 0U) : 0U)); - } - } - } else { - vlTOPp->Vortex__DOT__decode_branch_type = 0U; - } - } else { - vlTOPp->Vortex__DOT__decode_branch_type = 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__e_m_b_reg_data[1U] = vlTOPp->Vortex__DOT____Vcellout__vx_e_m_reg__out_b_reg_data - [1U]; - vlTOPp->Vortex__DOT__e_m_b_reg_data[0U] = vlTOPp->Vortex__DOT____Vcellout__vx_e_m_reg__out_b_reg_data - [0U]; - vlTOPp->Vortex__DOT__e_m_valid[1U] = vlTOPp->Vortex__DOT____Vcellout__vx_e_m_reg__out_valid - [1U]; - vlTOPp->Vortex__DOT__e_m_valid[0U] = vlTOPp->Vortex__DOT____Vcellout__vx_e_m_reg__out_valid - [0U]; - vlTOPp->Vortex__DOT__e_m_alu_result[1U] = vlTOPp->Vortex__DOT____Vcellout__vx_e_m_reg__out_alu_result - [1U]; - vlTOPp->Vortex__DOT__e_m_alu_result[0U] = vlTOPp->Vortex__DOT____Vcellout__vx_e_m_reg__out_alu_result - [0U]; - vlTOPp->Vortex__DOT__d_e_valid[1U] = vlTOPp->Vortex__DOT____Vcellout__vx_d_e_reg__out_valid - [1U]; - vlTOPp->Vortex__DOT__d_e_valid[0U] = vlTOPp->Vortex__DOT____Vcellout__vx_d_e_reg__out_valid - [0U]; - vlTOPp->Vortex__DOT__d_e_a_reg_data[1U] = vlTOPp->Vortex__DOT____Vcellout__vx_d_e_reg__out_a_reg_data - [1U]; - vlTOPp->Vortex__DOT__d_e_a_reg_data[0U] = vlTOPp->Vortex__DOT____Vcellout__vx_d_e_reg__out_a_reg_data - [0U]; - vlTOPp->Vortex__DOT__d_e_b_reg_data[1U] = vlTOPp->Vortex__DOT____Vcellout__vx_d_e_reg__out_b_reg_data - [1U]; - vlTOPp->Vortex__DOT__d_e_b_reg_data[0U] = vlTOPp->Vortex__DOT____Vcellout__vx_d_e_reg__out_b_reg_data - [0U]; - vlTOPp->Vortex__DOT__vx_forwarding__DOT__src1_mem_fwd - = ((((((0x1fU & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0xfU)) == (IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__rd)) - & (0U != (0x1fU & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0xfU)))) & (0U - != (IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__wb))) - & (~ (IData)(vlTOPp->Vortex__DOT__vx_forwarding__DOT__src1_exe_fwd))) - & ((IData)(vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__warp_num) - == (IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__warp_num))); - vlTOPp->Vortex__DOT__vx_forwarding__DOT__src2_mem_fwd - = ((((((0x1fU & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0x14U)) == (IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__rd)) - & (0U != (0x1fU & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0x14U)))) & (0U - != (IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__wb))) - & (~ (IData)(vlTOPp->Vortex__DOT__vx_forwarding__DOT__src2_exe_fwd))) - & ((IData)(vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__warp_num) - == (IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__warp_num))); - vlTOPp->Vortex__DOT__memory_mem_result[1U] = vlTOPp->Vortex__DOT____Vcellout__vx_memory__out_mem_result - [1U]; - vlTOPp->Vortex__DOT__memory_mem_result[0U] = vlTOPp->Vortex__DOT____Vcellout__vx_memory__out_mem_result - [0U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_wb_valid[1U] - = vlTOPp->Vortex__DOT__m_w_valid[1U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_wb_valid[0U] - = vlTOPp->Vortex__DOT__m_w_valid[0U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x1fU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [0x1fU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x1eU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [0x1eU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x1dU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [0x1dU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x1cU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [0x1cU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x1bU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [0x1bU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x1aU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [0x1aU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x19U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [0x19U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x18U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [0x18U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x17U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [0x17U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x16U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [0x16U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x15U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [0x15U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x14U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [0x14U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x13U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [0x13U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x12U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [0x12U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x11U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [0x11U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x10U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [0x10U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0xfU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [0xfU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0xeU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [0xeU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0xdU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [0xdU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0xcU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [0xcU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0xbU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [0xbU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0xaU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [0xaU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[9U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [9U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[8U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [8U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[7U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [7U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[6U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [6U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[5U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [5U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[4U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [4U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[3U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [3U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[2U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [2U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[1U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [1U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [0U]; - 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__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x1fU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x1fU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x1eU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x1eU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x1dU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x1dU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x1cU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x1cU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x1bU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x1bU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x1aU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x1aU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x19U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x19U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x18U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x18U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x17U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x17U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x16U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x16U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x15U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x15U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x14U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x14U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x13U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x13U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x12U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x12U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x11U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x11U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x10U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x10U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0xfU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0xfU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0xeU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0xeU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0xdU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0xdU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0xcU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0xcU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0xbU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0xbU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0xaU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0xaU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[9U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [9U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[8U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [8U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[7U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [7U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[6U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [6U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[5U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [5U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[4U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [4U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[3U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [3U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[2U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [2U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[1U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [1U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[0x1fU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x1fU]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[0x1eU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x1eU]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[0x1dU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x1dU]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[0x1cU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x1cU]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[0x1bU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x1bU]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[0x1aU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x1aU]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[0x19U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x19U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[0x18U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x18U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[0x17U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x17U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[0x16U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x16U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[0x15U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x15U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[0x14U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x14U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[0x13U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x13U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[0x12U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x12U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[0x11U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x11U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[0x10U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x10U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[0xfU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0xfU]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[0xeU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0xeU]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[0xdU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0xdU]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[0xcU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0xcU]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[0xbU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0xbU]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[0xaU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0xaU]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[9U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [9U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[8U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [8U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[7U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [7U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[6U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [6U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[5U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [5U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[4U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [4U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[3U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [3U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[2U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [2U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[1U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [1U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[0U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_writeback__in_alu_result[1U] - = vlTOPp->Vortex__DOT__m_w_alu_result[1U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_writeback__in_alu_result[0U] - = vlTOPp->Vortex__DOT__m_w_alu_result[0U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_writeback_alu_result[1U] - = vlTOPp->Vortex__DOT__m_w_alu_result[1U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_writeback_alu_result[0U] - = vlTOPp->Vortex__DOT__m_w_alu_result[0U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_writeback__in_mem_result[1U] - = vlTOPp->Vortex__DOT__m_w_mem_result[1U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_writeback__in_mem_result[0U] - = vlTOPp->Vortex__DOT__m_w_mem_result[0U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_writeback_mem_data[1U] - = 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__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)) - ? 1U : 0xaU) : ((0x37U == (0x7fU & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) - ? 0xbU : ((0x17U == - (0x7fU - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) - ? 0xcU : - ((IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__is_csr) - ? ((1U - == - (3U - & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0xcU))) - ? 0xdU - : - ((2U - == - (3U - & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0xcU))) - ? 0xeU - : 0xfU)) - : (((0x23U - == - (0x7fU - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) - | (3U - == - (0x7fU - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction))) - ? 0U - : - ((0x4000U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? - ((0x2000U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? - ((0x1000U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? 9U - : 8U) - : - ((0x1000U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? - ((0U - == - (0x7fU - & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0x19U))) - ? 6U - : 7U) - : 5U)) - : - ((0x2000U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? - ((0x1000U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? 4U - : 3U) - : - ((0x1000U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? 2U - : - ((0x13U - == - (0x7fU - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) - ? 0U - : - ((0U - == - (0x7fU - & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0x19U))) - ? 0U - : 1U)))))))))); - vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_zero_change_mask - = ((IData)(vlTOPp->Vortex__DOT__decode_change_mask) - & (0U == (IData)(vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__warp_num))); - vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_one_change_mask - = ((IData)(vlTOPp->Vortex__DOT__decode_change_mask) - & (1U == (IData)(vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__warp_num))); - vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_rd2[1U] - = vlTOPp->Vortex__DOT__e_m_b_reg_data[1U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_rd2[0U] - = vlTOPp->Vortex__DOT__e_m_b_reg_data[0U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_valid[1U] - = vlTOPp->Vortex__DOT__e_m_valid[1U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_valid[0U] - = vlTOPp->Vortex__DOT__e_m_valid[0U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_alu_result[1U] - = vlTOPp->Vortex__DOT__e_m_alu_result[1U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_alu_result[0U] - = vlTOPp->Vortex__DOT__e_m_alu_result[0U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_valid[1U] - = vlTOPp->Vortex__DOT__d_e_valid[1U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_valid[0U] - = vlTOPp->Vortex__DOT__d_e_valid[0U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data[1U] - = vlTOPp->Vortex__DOT__d_e_a_reg_data[1U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data[0U] - = vlTOPp->Vortex__DOT__d_e_a_reg_data[0U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_b_reg_data[1U] - = vlTOPp->Vortex__DOT__d_e_b_reg_data[1U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_b_reg_data[0U] - = vlTOPp->Vortex__DOT__d_e_b_reg_data[0U]; - vlTOPp->Vortex__DOT__vx_forwarding__DOT__src1_wb_fwd - = (((((((0x1fU & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0xfU)) == (IData)(vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__rd)) - & (0U != (0x1fU & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0xfU)))) & (0U - != (IData)(vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__wb))) - & ((IData)(vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__warp_num) - == (IData)(vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__warp_num))) - & (~ (IData)(vlTOPp->Vortex__DOT__vx_forwarding__DOT__src1_exe_fwd))) - & (~ (IData)(vlTOPp->Vortex__DOT__vx_forwarding__DOT__src1_mem_fwd))); - vlTOPp->Vortex__DOT__forwarding_fwd_stall = ((((IData)(vlTOPp->Vortex__DOT__vx_forwarding__DOT__src1_exe_fwd) - | (IData)(vlTOPp->Vortex__DOT__vx_forwarding__DOT__src2_exe_fwd)) - & (2U - == (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__wb))) - | (((IData)(vlTOPp->Vortex__DOT__vx_forwarding__DOT__src1_mem_fwd) - | (IData)(vlTOPp->Vortex__DOT__vx_forwarding__DOT__src2_mem_fwd)) - & (2U - == (IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__wb)))); - vlTOPp->Vortex__DOT__vx_forwarding__DOT__src2_wb_fwd - = (((((((0x1fU & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0x14U)) == (IData)(vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__rd)) - & (0U != (0x1fU & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0x14U)))) & (0U - != (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))) - & ((IData)(vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__warp_num) - == (IData)(vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__warp_num))); - vlTOPp->Vortex__DOT____Vcellinp__vx_m_w_reg__in_mem_result[1U] - = vlTOPp->Vortex__DOT__memory_mem_result[1U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_m_w_reg__in_mem_result[0U] - = vlTOPp->Vortex__DOT__memory_mem_result[0U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_memory_mem_data[1U] - = 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__vx_decode__DOT____Vcellinp__VX_Context_zero__in_valid[1U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_wb_valid - [1U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_zero__in_valid[0U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_wb_valid - [0U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_valid[1U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_wb_valid - [1U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_valid[0U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_wb_valid - [0U]; - 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:348 - 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 - & ((IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__jal_sys_jal) - & 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__vx_decode__DOT__is_ebreak - = ((0x73U == (0x7fU & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) - & ((IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__jal_sys_jal) - & vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid - [0U])); - // ALWAYS at VX_decode.v:415 - 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__vx_decode__DOT__w0_t0_registers[0x1fU] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [0x1fU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[0x1eU] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [0x1eU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[0x1dU] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [0x1dU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[0x1cU] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [0x1cU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[0x1bU] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [0x1bU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[0x1aU] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [0x1aU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[0x19U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [0x19U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[0x18U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [0x18U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[0x17U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [0x17U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[0x16U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [0x16U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[0x15U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [0x15U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[0x14U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [0x14U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[0x13U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [0x13U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[0x12U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [0x12U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[0x11U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [0x11U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[0x10U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [0x10U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[0xfU] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [0xfU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[0xeU] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [0xeU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[0xdU] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [0xdU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[0xcU] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [0xcU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[0xbU] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [0xbU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[0xaU] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [0xaU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[9U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [9U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[8U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [8U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[7U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [7U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[6U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [6U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[5U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [5U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[4U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [4U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[3U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [3U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[2U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [2U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[1U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [1U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[0U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [0U]; - vlTOPp->Vortex__DOT____Vcellout__vx_writeback__out_write_data[1U] - = ((3U == (IData)(vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__wb)) - ? vlTOPp->Vortex__DOT__vx_writeback__DOT__out_pc_data - [1U] : ((1U == (IData)(vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__wb)) - ? vlTOPp->Vortex__DOT____Vcellinp__vx_writeback__in_alu_result - [1U] : vlTOPp->Vortex__DOT____Vcellinp__vx_writeback__in_mem_result - [1U])); - vlTOPp->Vortex__DOT____Vcellout__vx_writeback__out_write_data[0U] - = ((3U == (IData)(vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__wb)) - ? vlTOPp->Vortex__DOT__vx_writeback__DOT__out_pc_data - [0U] : ((1U == (IData)(vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__wb)) - ? vlTOPp->Vortex__DOT____Vcellinp__vx_writeback__in_alu_result - [0U] : vlTOPp->Vortex__DOT____Vcellinp__vx_writeback__in_mem_result - [0U])); - vlTOPp->Vortex__DOT____Vcellout__vx_memory__out_cache_driver_in_data[1U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_rd2 - [1U]; - vlTOPp->Vortex__DOT____Vcellout__vx_memory__out_cache_driver_in_data[0U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_rd2 - [0U]; - vlTOPp->Vortex__DOT____Vcellout__vx_memory__out_cache_driver_in_valid[1U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_valid - [1U]; - vlTOPp->Vortex__DOT____Vcellout__vx_memory__out_cache_driver_in_valid[0U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_valid - [0U]; - vlTOPp->Vortex__DOT____Vcellout__vx_memory__out_valid[1U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_valid - [1U]; - vlTOPp->Vortex__DOT____Vcellout__vx_memory__out_valid[0U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_valid - [0U]; - vlTOPp->Vortex__DOT____Vcellout__vx_memory__out_cache_driver_in_address[1U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_alu_result - [1U]; - vlTOPp->Vortex__DOT____Vcellout__vx_memory__out_cache_driver_in_address[0U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_alu_result - [0U]; - // ALWAYS at VX_memory.v:113 - vlTOPp->Vortex__DOT__memory_branch_dir = (1U & - ((4U - & (IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__branch_type)) - ? ( - (2U - & (IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__branch_type)) - ? - ((~ (IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__branch_type)) - & (~ - (vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_alu_result - [0U] - >> 0x1fU))) - : - ((1U - & (IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__branch_type)) - ? - (vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_alu_result - [0U] - >> 0x1fU) - : - (~ - (vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_alu_result - [0U] - >> 0x1fU)))) - : ( - (2U - & (IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__branch_type)) - ? - ((1U - & (IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__branch_type)) - ? - (vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_alu_result - [0U] - >> 0x1fU) - : - (0U - != - vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_alu_result - [0U])) - : - ((IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__branch_type) - & (0U - == - vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_alu_result - [0U]))))); - vlTOPp->Vortex__DOT____Vcellout__vx_memory__out_alu_result[1U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_alu_result - [1U]; - vlTOPp->Vortex__DOT____Vcellout__vx_memory__out_alu_result[0U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_alu_result - [0U]; - vlTOPp->Vortex__DOT____Vcellout__vx_execute__out_valid[1U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_valid - [1U]; - vlTOPp->Vortex__DOT____Vcellout__vx_execute__out_valid[0U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_valid - [0U]; - vlTOPp->Vortex__DOT____Vcellout__vx_execute__out_b_reg_data[1U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_b_reg_data - [1U]; - vlTOPp->Vortex__DOT____Vcellout__vx_execute__out_b_reg_data[0U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_b_reg_data - [0U]; - vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__ALU_in2 - = ((IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__rs2_src) - ? vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__itype_immed - : vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_b_reg_data - [0U]); - vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__ALU_in2 - = ((IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__rs2_src) - ? vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__itype_immed - : vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_b_reg_data - [1U]); - 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)); - vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__stalling - = (((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[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->out_ebreak = ((0U == (IData)(vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_state)) - & (IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__is_ebreak)); - vlTOPp->Vortex__DOT__vx_fetch__DOT__add_warp = - (((IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__is_wspawn) - & (~ (IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__is_ebreak))) - & (~ (IData)(vlTOPp->Vortex__DOT__decode_clone_stall))); - vlTOPp->Vortex__DOT__vx_fetch__DOT__remove_warp - = (((IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__is_ebreak) - & (~ (IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__is_wspawn))) - & (~ (IData)(vlTOPp->Vortex__DOT__decode_clone_stall))); - 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__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[0x1fU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [0x1fU]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[0x1eU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [0x1eU]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[0x1dU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [0x1dU]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[0x1cU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [0x1cU]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[0x1bU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [0x1bU]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[0x1aU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [0x1aU]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[0x19U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [0x19U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[0x18U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [0x18U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[0x17U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [0x17U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[0x16U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [0x16U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[0x15U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [0x15U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[0x14U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [0x14U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[0x13U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [0x13U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[0x12U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [0x12U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[0x11U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [0x11U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[0x10U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [0x10U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[0xfU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [0xfU]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[0xeU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [0xeU]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[0xdU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [0xdU]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[0xcU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [0xcU]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[0xbU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [0xbU]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[0xaU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [0xaU]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[9U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [9U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[8U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [8U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[7U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [7U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[6U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [6U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[5U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [5U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[4U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [4U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[3U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [3U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[2U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [2U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[1U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [1U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[0U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [0U]; - vlTOPp->Vortex__DOT__writeback_write_data[1U] = - vlTOPp->Vortex__DOT____Vcellout__vx_writeback__out_write_data - [1U]; - vlTOPp->Vortex__DOT__writeback_write_data[0U] = - vlTOPp->Vortex__DOT____Vcellout__vx_writeback__out_write_data - [0U]; - vlTOPp->out_cache_driver_in_data[1U] = vlTOPp->Vortex__DOT____Vcellout__vx_memory__out_cache_driver_in_data - [1U]; - vlTOPp->out_cache_driver_in_data[0U] = vlTOPp->Vortex__DOT____Vcellout__vx_memory__out_cache_driver_in_data - [0U]; - vlTOPp->out_cache_driver_in_valid[1U] = vlTOPp->Vortex__DOT____Vcellout__vx_memory__out_cache_driver_in_valid - [1U]; - vlTOPp->out_cache_driver_in_valid[0U] = vlTOPp->Vortex__DOT____Vcellout__vx_memory__out_cache_driver_in_valid - [0U]; - vlTOPp->Vortex__DOT__memory_valid[1U] = vlTOPp->Vortex__DOT____Vcellout__vx_memory__out_valid - [1U]; - vlTOPp->Vortex__DOT__memory_valid[0U] = vlTOPp->Vortex__DOT____Vcellout__vx_memory__out_valid - [0U]; - vlTOPp->out_cache_driver_in_address[1U] = vlTOPp->Vortex__DOT____Vcellout__vx_memory__out_cache_driver_in_address - [1U]; - vlTOPp->out_cache_driver_in_address[0U] = vlTOPp->Vortex__DOT____Vcellout__vx_memory__out_cache_driver_in_address - [0U]; - // ALWAYS at VX_warp.v:50 - vlTOPp->Vortex__DOT__vx_fetch__DOT__VX_Warp_zero__DOT__temp_PC - = (((IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__jal) - & (0U == (IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__warp_num))) - ? vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__jal_dest - : (((IData)(vlTOPp->Vortex__DOT__memory_branch_dir) - & (0U == (IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__warp_num))) - ? vlTOPp->Vortex__DOT__memory_branch_dest - : vlTOPp->Vortex__DOT__vx_fetch__DOT__VX_Warp_zero__DOT__real_PC)); - // ALWAYS at VX_warp.v:50 - vlTOPp->Vortex__DOT__vx_fetch__DOT__VX_Warp_one__DOT__temp_PC - = (((IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__jal) - & (1U == (IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__warp_num))) - ? vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__jal_dest - : (((IData)(vlTOPp->Vortex__DOT__memory_branch_dir) - & (1U == (IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__warp_num))) - ? vlTOPp->Vortex__DOT__memory_branch_dest - : vlTOPp->Vortex__DOT__vx_fetch__DOT__VX_Warp_one__DOT__real_PC)); - vlTOPp->Vortex__DOT__memory_alu_result[1U] = vlTOPp->Vortex__DOT____Vcellout__vx_memory__out_alu_result - [1U]; - vlTOPp->Vortex__DOT__memory_alu_result[0U] = vlTOPp->Vortex__DOT____Vcellout__vx_memory__out_alu_result - [0U]; - vlTOPp->Vortex__DOT__execute_valid[1U] = vlTOPp->Vortex__DOT____Vcellout__vx_execute__out_valid - [1U]; - vlTOPp->Vortex__DOT__execute_valid[0U] = vlTOPp->Vortex__DOT____Vcellout__vx_execute__out_valid - [0U]; - vlTOPp->Vortex__DOT__execute_b_reg_data[1U] = vlTOPp->Vortex__DOT____Vcellout__vx_execute__out_b_reg_data - [1U]; - vlTOPp->Vortex__DOT__execute_b_reg_data[0U] = vlTOPp->Vortex__DOT____Vcellout__vx_execute__out_b_reg_data - [0U]; - vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__mult_signed_result - = VL_MULS_QQQ(64,64,64, VL_EXTENDS_QI(64,32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [0U]), - VL_EXTENDS_QI(64,32, vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__ALU_in2)); - vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__mult_signed_result - = VL_MULS_QQQ(64,64,64, VL_EXTENDS_QI(64,32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [1U]), - VL_EXTENDS_QI(64,32, vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__ALU_in2)); - 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__vx_fetch__DOT__warp_zero_stall - = ((IData)(vlTOPp->Vortex__DOT__vx_fetch__DOT__stall) - | (1U == (IData)(vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_num))); - vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_one_stall - = ((IData)(vlTOPp->Vortex__DOT__vx_fetch__DOT__stall) - | (0U == (IData)(vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_num))); - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[0x1fU] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [0x1fU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[0x1eU] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [0x1eU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[0x1dU] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [0x1dU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[0x1cU] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [0x1cU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[0x1bU] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [0x1bU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[0x1aU] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [0x1aU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[0x19U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [0x19U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[0x18U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [0x18U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[0x17U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [0x17U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[0x16U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [0x16U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[0x15U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [0x15U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[0x14U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [0x14U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[0x13U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [0x13U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[0x12U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [0x12U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[0x11U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [0x11U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[0x10U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [0x10U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[0xfU] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [0xfU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[0xeU] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [0xeU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[0xdU] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [0xdU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[0xcU] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [0xcU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[0xbU] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [0xbU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[0xaU] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [0xaU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[9U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [9U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[8U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [8U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[7U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [7U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[6U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [6U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[5U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [5U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[4U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [4U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[3U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [3U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[2U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [2U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[1U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [1U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[0U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [0U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_write_data[1U] - = vlTOPp->Vortex__DOT__writeback_write_data - [1U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_write_data[0U] - = vlTOPp->Vortex__DOT__writeback_write_data - [0U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_m_w_reg__in_valid[1U] - = vlTOPp->Vortex__DOT__memory_valid[1U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_m_w_reg__in_valid[0U] - = vlTOPp->Vortex__DOT__memory_valid[0U]; - vlTOPp->Vortex__DOT__vx_fetch__DOT__out_PC = ((0U - == (IData)(vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_num)) - ? vlTOPp->Vortex__DOT__vx_fetch__DOT__VX_Warp_zero__DOT__temp_PC - : vlTOPp->Vortex__DOT__vx_fetch__DOT__VX_Warp_one__DOT__temp_PC); - vlTOPp->Vortex__DOT____Vcellinp__vx_m_w_reg__in_alu_result[1U] - = vlTOPp->Vortex__DOT__memory_alu_result[1U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_m_w_reg__in_alu_result[0U] - = vlTOPp->Vortex__DOT__memory_alu_result[0U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_memory_alu_result[1U] - = vlTOPp->Vortex__DOT__memory_alu_result[1U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_memory_alu_result[0U] - = vlTOPp->Vortex__DOT__memory_alu_result[0U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_e_m_reg__in_valid[1U] - = vlTOPp->Vortex__DOT__execute_valid[1U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_e_m_reg__in_valid[0U] - = vlTOPp->Vortex__DOT__execute_valid[0U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_e_m_reg__in_b_reg_data[1U] - = vlTOPp->Vortex__DOT__execute_b_reg_data[1U]; - 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 - 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))) - : ((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 - : ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? vlTOPp->Vortex__DOT__csr_decode_csr_data - : (vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__curr_PC - + (vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__upper_immed - << 0xcU)))) : ((2U - & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? - ((1U - & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? - (vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__upper_immed - << 0xcU) - : - ((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 - : 0xffffffffU)) - : - ((1U - & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? - (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]) - : - (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)))) - : ((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)) - ? VL_SHIFTRS_III(32,32,5, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [0U], - (0x1fU - & 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] >> (0x1fU & 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)) - ? (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____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 : 0U))) : ((2U - & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? - ((1U - & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? - (VL_LTS_III(1,32,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 - : 0U) - : - (vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [0U] - << - (0x1fU - & 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)) - ? - (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____Vcellinp__vx_execute__in_a_reg_data - [0U] - + vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__ALU_in2)))))); - // ALWAYS at VX_alu.v:48 - 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))) - : ((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 - : ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? vlTOPp->Vortex__DOT__csr_decode_csr_data - : (vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__curr_PC - + (vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__upper_immed - << 0xcU)))) : ((2U - & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? - ((1U - & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? - (vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__upper_immed - << 0xcU) - : - ((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 - : 0xffffffffU)) - : - ((1U - & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? - (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]) - : - (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)))) - : ((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)) - ? VL_SHIFTRS_III(32,32,5, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [1U], - (0x1fU - & 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] >> (0x1fU & 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)) - ? (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____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 : 0U))) : ((2U - & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? - ((1U - & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? - (VL_LTS_III(1,32,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 - : 0U) - : - (vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [1U] - << - (0x1fU - & 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)) - ? - (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____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_decode__DOT____Vcellinp__VX_Context_zero__in_write_data[1U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_write_data - [1U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_zero__in_write_data[0U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_write_data - [0U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_write_data[1U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_write_data - [1U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_write_data[0U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_write_data - [0U]; - vlTOPp->curr_PC = vlTOPp->Vortex__DOT__vx_fetch__DOT__out_PC; - 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] - = vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__1__KET____DOT__vx_alu__out_alu_result; - vlTOPp->Vortex__DOT__execute_alu_result[1U] = vlTOPp->Vortex__DOT____Vcellout__vx_execute__out_alu_result - [1U]; - vlTOPp->Vortex__DOT__execute_alu_result[0U] = vlTOPp->Vortex__DOT____Vcellout__vx_execute__out_alu_result - [0U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_e_m_reg__in_alu_result[1U] - = vlTOPp->Vortex__DOT__execute_alu_result[1U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_e_m_reg__in_alu_result[0U] - = vlTOPp->Vortex__DOT__execute_alu_result[0U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_execute_alu_result[1U] - = vlTOPp->Vortex__DOT__execute_alu_result[1U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_execute_alu_result[0U] - = vlTOPp->Vortex__DOT__execute_alu_result[0U]; - vlTOPp->Vortex__DOT____Vcellout__vx_forwarding__out_src1_fwd_data[1U] - = ((IData)(vlTOPp->Vortex__DOT__vx_forwarding__DOT__src1_exe_fwd) - ? ((3U == (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__wb)) - ? vlTOPp->Vortex__DOT__vx_forwarding__DOT__use_execute_PC_next - [1U] : vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_execute_alu_result - [1U]) : ((IData)(vlTOPp->Vortex__DOT__vx_forwarding__DOT__src1_mem_fwd) - ? ((3U == (IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__wb)) - ? vlTOPp->Vortex__DOT__vx_forwarding__DOT__use_memory_PC_next - [1U] : ((2U == (IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__wb)) - ? vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_memory_mem_data - [1U] : vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_memory_alu_result - [1U])) : ((IData)(vlTOPp->Vortex__DOT__vx_forwarding__DOT__src1_wb_fwd) - ? ((3U - == (IData)(vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__wb)) - ? - vlTOPp->Vortex__DOT__vx_forwarding__DOT__use_writeback_PC_next - [1U] - : - ((2U - == (IData)(vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__wb)) - ? - vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_writeback_mem_data - [1U] - : - vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_writeback_alu_result - [1U])) - : vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_execute_alu_result - [1U]))); - vlTOPp->Vortex__DOT____Vcellout__vx_forwarding__out_src1_fwd_data[0U] - = ((IData)(vlTOPp->Vortex__DOT__vx_forwarding__DOT__src1_exe_fwd) - ? ((3U == (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__wb)) - ? vlTOPp->Vortex__DOT__vx_forwarding__DOT__use_execute_PC_next - [0U] : vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_execute_alu_result - [0U]) : ((IData)(vlTOPp->Vortex__DOT__vx_forwarding__DOT__src1_mem_fwd) - ? ((3U == (IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__wb)) - ? vlTOPp->Vortex__DOT__vx_forwarding__DOT__use_memory_PC_next - [0U] : ((2U == (IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__wb)) - ? vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_memory_mem_data - [0U] : vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_memory_alu_result - [0U])) : ((IData)(vlTOPp->Vortex__DOT__vx_forwarding__DOT__src1_wb_fwd) - ? ((3U - == (IData)(vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__wb)) - ? - vlTOPp->Vortex__DOT__vx_forwarding__DOT__use_writeback_PC_next - [0U] - : - ((2U - == (IData)(vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__wb)) - ? - vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_writeback_mem_data - [0U] - : - vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_writeback_alu_result - [0U])) - : vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_execute_alu_result - [0U]))); - vlTOPp->Vortex__DOT____Vcellout__vx_forwarding__out_src2_fwd_data[1U] - = ((IData)(vlTOPp->Vortex__DOT__vx_forwarding__DOT__src2_exe_fwd) - ? ((3U == (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__wb)) - ? vlTOPp->Vortex__DOT__vx_forwarding__DOT__use_execute_PC_next - [1U] : vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_execute_alu_result - [1U]) : ((IData)(vlTOPp->Vortex__DOT__vx_forwarding__DOT__src2_mem_fwd) - ? ((3U == (IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__wb)) - ? vlTOPp->Vortex__DOT__vx_forwarding__DOT__use_memory_PC_next - [1U] : ((2U == (IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__wb)) - ? vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_memory_mem_data - [1U] : vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_memory_alu_result - [1U])) : ((IData)(vlTOPp->Vortex__DOT__vx_forwarding__DOT__src2_wb_fwd) - ? ((3U - == (IData)(vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__wb)) - ? - vlTOPp->Vortex__DOT__vx_forwarding__DOT__use_writeback_PC_next - [1U] - : - ((2U - == (IData)(vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__wb)) - ? - vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_writeback_mem_data - [1U] - : - vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_writeback_alu_result - [1U])) - : vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_execute_alu_result - [1U]))); - vlTOPp->Vortex__DOT____Vcellout__vx_forwarding__out_src2_fwd_data[0U] - = ((IData)(vlTOPp->Vortex__DOT__vx_forwarding__DOT__src2_exe_fwd) - ? ((3U == (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__wb)) - ? vlTOPp->Vortex__DOT__vx_forwarding__DOT__use_execute_PC_next - [0U] : vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_execute_alu_result - [0U]) : ((IData)(vlTOPp->Vortex__DOT__vx_forwarding__DOT__src2_mem_fwd) - ? ((3U == (IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__wb)) - ? vlTOPp->Vortex__DOT__vx_forwarding__DOT__use_memory_PC_next - [0U] : ((2U == (IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__wb)) - ? vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_memory_mem_data - [0U] : vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_memory_alu_result - [0U])) : ((IData)(vlTOPp->Vortex__DOT__vx_forwarding__DOT__src2_wb_fwd) - ? ((3U - == (IData)(vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__wb)) - ? - vlTOPp->Vortex__DOT__vx_forwarding__DOT__use_writeback_PC_next - [0U] - : - ((2U - == (IData)(vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__wb)) - ? - vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_writeback_mem_data - [0U] - : - vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_writeback_alu_result - [0U])) - : vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_execute_alu_result - [0U]))); - vlTOPp->Vortex__DOT__forwarding_src1_fwd_data[1U] - = vlTOPp->Vortex__DOT____Vcellout__vx_forwarding__out_src1_fwd_data - [1U]; - vlTOPp->Vortex__DOT__forwarding_src1_fwd_data[0U] - = vlTOPp->Vortex__DOT____Vcellout__vx_forwarding__out_src1_fwd_data - [0U]; - vlTOPp->Vortex__DOT__forwarding_src2_fwd_data[1U] - = vlTOPp->Vortex__DOT____Vcellout__vx_forwarding__out_src2_fwd_data - [1U]; - vlTOPp->Vortex__DOT__forwarding_src2_fwd_data[0U] - = vlTOPp->Vortex__DOT____Vcellout__vx_forwarding__out_src2_fwd_data - [0U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_src1_fwd_data[1U] - = vlTOPp->Vortex__DOT__forwarding_src1_fwd_data - [1U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_src1_fwd_data[0U] - = vlTOPp->Vortex__DOT__forwarding_src1_fwd_data - [0U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_src2_fwd_data[1U] - = vlTOPp->Vortex__DOT__forwarding_src2_fwd_data - [1U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_src2_fwd_data[0U] - = vlTOPp->Vortex__DOT__forwarding_src2_fwd_data - [0U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_zero__in_src1_fwd_data[1U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_src1_fwd_data - [1U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_zero__in_src1_fwd_data[0U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_src1_fwd_data - [0U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_src1_fwd_data[1U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_src1_fwd_data - [1U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_src1_fwd_data[0U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_src1_fwd_data - [0U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_zero__in_src2_fwd_data[1U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_src2_fwd_data - [1U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_zero__in_src2_fwd_data[0U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_src2_fwd_data - [0U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_src2_fwd_data[1U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_src2_fwd_data - [1U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_src2_fwd_data[0U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_src2_fwd_data - [0U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__out_a_reg_data[0U] - = ((0x6fU == (0x7fU & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) - ? vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__curr_PC - : ((IData)(vlTOPp->Vortex__DOT__forwarding_src1_fwd) - ? vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_zero__in_src1_fwd_data - [0U] : vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__rd1_register - [0U])); - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__out_a_reg_data[1U] - = ((0x6fU == (0x7fU & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) - ? vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__curr_PC - : ((IData)(vlTOPp->Vortex__DOT__forwarding_src1_fwd) - ? vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_zero__in_src1_fwd_data - [1U] : vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__rd1_register - [1U])); - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_one__out_a_reg_data[0U] - = ((0x6fU == (0x7fU & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) - ? vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__curr_PC - : ((IData)(vlTOPp->Vortex__DOT__forwarding_src1_fwd) - ? vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_src1_fwd_data - [0U] : vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__rd1_register - [0U])); - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_one__out_a_reg_data[1U] - = ((0x6fU == (0x7fU & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) - ? vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__curr_PC - : ((IData)(vlTOPp->Vortex__DOT__forwarding_src1_fwd) - ? vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_src1_fwd_data - [1U] : vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__rd1_register - [1U])); - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__out_b_reg_data[0U] - = ((IData)(vlTOPp->Vortex__DOT__forwarding_src2_fwd) - ? vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_zero__in_src2_fwd_data - [0U] : vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__rd2_register - [0U]); - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__out_b_reg_data[1U] - = ((IData)(vlTOPp->Vortex__DOT__forwarding_src2_fwd) - ? vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_zero__in_src2_fwd_data - [1U] : vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__rd2_register - [1U]); - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_one__out_b_reg_data[0U] - = ((IData)(vlTOPp->Vortex__DOT__forwarding_src2_fwd) - ? vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_src2_fwd_data - [0U] : vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__rd2_register - [0U]); - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_one__out_b_reg_data[1U] - = ((IData)(vlTOPp->Vortex__DOT__forwarding_src2_fwd) - ? vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_src2_fwd_data - [1U] : vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__rd2_register - [1U]); - vlTOPp->Vortex__DOT__vx_decode__DOT__zero_a_reg_data[1U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__out_a_reg_data - [1U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__zero_a_reg_data[0U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__out_a_reg_data - [0U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__one_a_reg_data[1U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_one__out_a_reg_data - [1U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__one_a_reg_data[0U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_one__out_a_reg_data - [0U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__zero_b_reg_data[1U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__out_b_reg_data - [1U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__zero_b_reg_data[0U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__out_b_reg_data - [0U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__one_b_reg_data[1U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_one__out_b_reg_data - [1U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__one_b_reg_data[0U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_one__out_b_reg_data - [0U]; - vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_a_reg_data[1U] - = ((0U == (IData)(vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__warp_num)) - ? vlTOPp->Vortex__DOT__vx_decode__DOT__zero_a_reg_data - [1U] : vlTOPp->Vortex__DOT__vx_decode__DOT__one_a_reg_data - [1U]); - vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_a_reg_data[0U] - = ((0U == (IData)(vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__warp_num)) - ? vlTOPp->Vortex__DOT__vx_decode__DOT__zero_a_reg_data - [0U] : vlTOPp->Vortex__DOT__vx_decode__DOT__one_a_reg_data - [0U]); - vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_b_reg_data[1U] - = ((0U == (IData)(vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__warp_num)) - ? vlTOPp->Vortex__DOT__vx_decode__DOT__zero_b_reg_data - [1U] : vlTOPp->Vortex__DOT__vx_decode__DOT__one_b_reg_data - [1U]); - vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_b_reg_data[0U] - = ((0U == (IData)(vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__warp_num)) - ? vlTOPp->Vortex__DOT__vx_decode__DOT__zero_b_reg_data - [0U] : vlTOPp->Vortex__DOT__vx_decode__DOT__one_b_reg_data - [0U]); - vlTOPp->Vortex__DOT__decode_a_reg_data[1U] = vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_a_reg_data - [1U]; - vlTOPp->Vortex__DOT__decode_a_reg_data[0U] = vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_a_reg_data - [0U]; - vlTOPp->Vortex__DOT__decode_b_reg_data[1U] = vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_b_reg_data - [1U]; - vlTOPp->Vortex__DOT__decode_b_reg_data[0U] = vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_b_reg_data - [0U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__jalrs_thread_mask[0U] - = VL_LTES_III(1,32,32, 0U, vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_b_reg_data - [0U]); - vlTOPp->Vortex__DOT__vx_decode__DOT__jalrs_thread_mask[1U] - = VL_LTES_III(1,32,32, 1U, vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_b_reg_data - [0U]); - vlTOPp->Vortex__DOT____Vcellinp__vx_d_e_reg__in_a_reg_data[1U] - = vlTOPp->Vortex__DOT__decode_a_reg_data[1U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_d_e_reg__in_a_reg_data[0U] - = vlTOPp->Vortex__DOT__decode_a_reg_data[0U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_d_e_reg__in_b_reg_data[1U] - = vlTOPp->Vortex__DOT__decode_b_reg_data[1U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_d_e_reg__in_b_reg_data[0U] - = vlTOPp->Vortex__DOT__decode_b_reg_data[0U]; - vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_thread_mask[1U] - = ((IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__is_jalrs) - ? vlTOPp->Vortex__DOT__vx_decode__DOT__jalrs_thread_mask - [1U] : vlTOPp->Vortex__DOT__vx_decode__DOT__jmprt_thread_mask - [1U]); - vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_thread_mask[0U] - = ((IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__is_jalrs) - ? vlTOPp->Vortex__DOT__vx_decode__DOT__jalrs_thread_mask - [0U] : vlTOPp->Vortex__DOT__vx_decode__DOT__jmprt_thread_mask - [0U]); - vlTOPp->Vortex__DOT__decode_thread_mask[1U] = vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_thread_mask - [1U]; - vlTOPp->Vortex__DOT__decode_thread_mask[0U] = vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_thread_mask - [0U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_fetch__in_thread_mask[1U] - = vlTOPp->Vortex__DOT__decode_thread_mask[1U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_fetch__in_thread_mask[0U] - = vlTOPp->Vortex__DOT__decode_thread_mask[0U]; - vlTOPp->Vortex__DOT__vx_fetch__DOT____Vcellinp__VX_Warp_zero__in_thread_mask[1U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_fetch__in_thread_mask - [1U]; - vlTOPp->Vortex__DOT__vx_fetch__DOT____Vcellinp__VX_Warp_zero__in_thread_mask[0U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_fetch__in_thread_mask - [0U]; - vlTOPp->Vortex__DOT__vx_fetch__DOT____Vcellinp__VX_Warp_one__in_thread_mask[1U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_fetch__in_thread_mask - [1U]; - vlTOPp->Vortex__DOT__vx_fetch__DOT____Vcellinp__VX_Warp_one__in_thread_mask[0U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_fetch__in_thread_mask - [0U]; - // ALWAYS at VX_warp.v:36 - if (vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_zero_change_mask) { - vlTOPp->Vortex__DOT__vx_fetch__DOT__VX_Warp_zero__DOT__valid[1U] - = vlTOPp->Vortex__DOT__vx_fetch__DOT____Vcellinp__VX_Warp_zero__in_thread_mask - [1U]; - vlTOPp->Vortex__DOT__vx_fetch__DOT__VX_Warp_zero__DOT__valid[0U] - = vlTOPp->Vortex__DOT__vx_fetch__DOT____Vcellinp__VX_Warp_zero__in_thread_mask - [0U]; - } - // ALWAYS at VX_warp.v:36 - if (vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_one_change_mask) { - vlTOPp->Vortex__DOT__vx_fetch__DOT__VX_Warp_one__DOT__valid[1U] - = vlTOPp->Vortex__DOT__vx_fetch__DOT____Vcellinp__VX_Warp_one__in_thread_mask - [1U]; - vlTOPp->Vortex__DOT__vx_fetch__DOT__VX_Warp_one__DOT__valid[0U] - = vlTOPp->Vortex__DOT__vx_fetch__DOT____Vcellinp__VX_Warp_one__in_thread_mask - [0U]; - } - vlTOPp->Vortex__DOT__vx_fetch__DOT____Vcellout__VX_Warp_zero__out_valid[0U] - = ((IData)(vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_zero_change_mask) - ? vlTOPp->Vortex__DOT__vx_fetch__DOT____Vcellinp__VX_Warp_zero__in_thread_mask - [0U] : ((~ (IData)(vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_zero_stall)) - & vlTOPp->Vortex__DOT__vx_fetch__DOT__VX_Warp_zero__DOT__valid - [0U])); - vlTOPp->Vortex__DOT__vx_fetch__DOT____Vcellout__VX_Warp_zero__out_valid[1U] - = ((IData)(vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_zero_change_mask) - ? vlTOPp->Vortex__DOT__vx_fetch__DOT____Vcellinp__VX_Warp_zero__in_thread_mask - [1U] : ((~ (IData)(vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_zero_stall)) - & vlTOPp->Vortex__DOT__vx_fetch__DOT__VX_Warp_zero__DOT__valid - [1U])); - vlTOPp->Vortex__DOT__vx_fetch__DOT____Vcellout__VX_Warp_one__out_valid[0U] - = ((IData)(vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_one_change_mask) - ? vlTOPp->Vortex__DOT__vx_fetch__DOT____Vcellinp__VX_Warp_one__in_thread_mask - [0U] : ((~ (IData)(vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_one_stall)) - & vlTOPp->Vortex__DOT__vx_fetch__DOT__VX_Warp_one__DOT__valid - [0U])); - vlTOPp->Vortex__DOT__vx_fetch__DOT____Vcellout__VX_Warp_one__out_valid[1U] - = ((IData)(vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_one_change_mask) - ? vlTOPp->Vortex__DOT__vx_fetch__DOT____Vcellinp__VX_Warp_one__in_thread_mask - [1U] : ((~ (IData)(vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_one_stall)) - & vlTOPp->Vortex__DOT__vx_fetch__DOT__VX_Warp_one__DOT__valid - [1U])); - vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_zero_valid[1U] - = vlTOPp->Vortex__DOT__vx_fetch__DOT____Vcellout__VX_Warp_zero__out_valid - [1U]; - vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_zero_valid[0U] - = vlTOPp->Vortex__DOT__vx_fetch__DOT____Vcellout__VX_Warp_zero__out_valid - [0U]; - vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_one_valid[1U] - = vlTOPp->Vortex__DOT__vx_fetch__DOT____Vcellout__VX_Warp_one__out_valid - [1U]; - vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_one_valid[0U] - = vlTOPp->Vortex__DOT__vx_fetch__DOT____Vcellout__VX_Warp_one__out_valid - [0U]; - vlTOPp->Vortex__DOT____Vcellout__vx_fetch__out_valid[1U] - = ((0U == (IData)(vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_num)) - ? vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_zero_valid - [1U] : vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_one_valid - [1U]); - vlTOPp->Vortex__DOT____Vcellout__vx_fetch__out_valid[0U] - = ((0U == (IData)(vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_num)) - ? vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_zero_valid - [0U] : vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_one_valid - [0U]); - vlTOPp->Vortex__DOT__fetch_valid[1U] = vlTOPp->Vortex__DOT____Vcellout__vx_fetch__out_valid - [1U]; - vlTOPp->Vortex__DOT__fetch_valid[0U] = vlTOPp->Vortex__DOT____Vcellout__vx_fetch__out_valid - [0U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_f_d_reg__in_valid[1U] - = vlTOPp->Vortex__DOT__fetch_valid[1U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_f_d_reg__in_valid[0U] - = vlTOPp->Vortex__DOT__fetch_valid[0U]; -} - -VL_INLINE_OPT void VVortex::_sequent__TOP__3(VVortex__Syms* __restrict vlSymsp) { - VL_DEBUG_IF(VL_DBG_MSGF("+ VVortex::_sequent__TOP__3\n"); ); - VVortex* __restrict vlTOPp VL_ATTR_UNUSED = vlSymsp->TOPp; - // Variables - // Begin mtask footprint all: - VL_SIG8(__Vdly__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__state_stall,5,0); - VL_SIG8(__Vdlyvdim0__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers__v0,4,0); - VL_SIG8(__Vdlyvset__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers__v0,0,0); - VL_SIG8(__Vdlyvdim0__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v0,4,0); - VL_SIG8(__Vdlyvset__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v0,0,0); - VL_SIG8(__Vdlyvset__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v1,0,0); - VL_SIG8(__Vdly__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_state_stall,5,0); - VL_SIG8(__Vdly__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__wspawn_state_stall,5,0); - VL_SIG8(__Vdlyvdim0__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v0,4,0); - VL_SIG8(__Vdlyvset__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v0,0,0); - VL_SIG8(__Vdlyvset__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v1,0,0); - VL_SIG8(__Vdlyvdim0__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v0,4,0); - VL_SIG8(__Vdlyvset__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v0,0,0); - VL_SIG8(__Vdlyvset__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v1,0,0); - VL_SIG8(__Vdlyvval__Vortex__DOT__vx_d_e_reg__DOT__valid__v0,0,0); - VL_SIG8(__Vdlyvval__Vortex__DOT__vx_d_e_reg__DOT__valid__v1,0,0); - VL_SIG8(__Vdlyvval__Vortex__DOT__vx_e_m_reg__DOT__valid__v0,0,0); - VL_SIG8(__Vdlyvval__Vortex__DOT__vx_e_m_reg__DOT__valid__v1,0,0); - VL_SIG8(__Vdlyvval__Vortex__DOT__vx_m_w_reg__DOT__valid__v0,0,0); - VL_SIG8(__Vdlyvval__Vortex__DOT__vx_m_w_reg__DOT__valid__v1,0,0); - VL_SIG8(__Vdlyvset__Vortex__DOT__vx_csr_handler__DOT__csr__v0,0,0); - VL_SIG16(__Vdlyvdim0__Vortex__DOT__vx_csr_handler__DOT__csr__v0,11,0); - VL_SIG16(__Vdlyvval__Vortex__DOT__vx_csr_handler__DOT__csr__v0,11,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers__v0,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v0,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v1,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v2,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v3,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v4,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v5,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v6,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v7,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v8,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v9,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v10,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v11,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v12,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v13,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v14,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v15,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v16,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v17,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v18,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v19,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v20,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v21,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v22,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v23,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v24,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v25,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v26,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v27,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v28,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v29,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v30,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v31,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v32,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v0,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v1,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v2,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v3,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v4,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v5,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v6,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v7,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v8,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v9,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v10,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v11,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v12,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v13,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v14,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v15,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v16,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v17,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v18,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v19,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v20,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v21,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v22,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v23,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v24,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v25,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v26,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v27,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v28,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v29,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v30,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v31,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v32,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v0,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v1,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v2,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v3,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v4,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v5,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v6,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v7,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v8,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v9,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v10,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v11,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v12,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v13,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v14,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v15,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v16,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v17,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v18,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v19,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v20,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v21,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v22,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v23,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v24,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v25,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v26,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v27,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v28,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v29,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v30,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v31,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v32,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_d_e_reg__DOT__a_reg_data__v0,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_d_e_reg__DOT__a_reg_data__v1,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_d_e_reg__DOT__b_reg_data__v0,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_d_e_reg__DOT__b_reg_data__v1,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_e_m_reg__DOT__alu_result__v0,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_e_m_reg__DOT__alu_result__v1,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_e_m_reg__DOT__b_reg_data__v0,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_e_m_reg__DOT__b_reg_data__v1,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_m_w_reg__DOT__mem_result__v0,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_m_w_reg__DOT__mem_result__v1,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_m_w_reg__DOT__alu_result__v0,31,0); - VL_SIG(__Vdlyvval__Vortex__DOT__vx_m_w_reg__DOT__alu_result__v1,31,0); - // Body - __Vdly__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__state_stall - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__state_stall; - __Vdly__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_state_stall - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_state_stall; - __Vdly__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__wspawn_state_stall - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__wspawn_state_stall; - __Vdlyvset__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers__v0 = 0U; - __Vdlyvset__Vortex__DOT__vx_csr_handler__DOT__csr__v0 = 0U; - __Vdlyvset__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v0 = 0U; - __Vdlyvset__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v1 = 0U; - __Vdlyvset__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v0 = 0U; - __Vdlyvset__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v1 = 0U; - __Vdlyvset__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v0 = 0U; - __Vdlyvset__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v1 = 0U; - // ALWAYS at VX_m_w_reg.v:63 - __Vdlyvval__Vortex__DOT__vx_m_w_reg__DOT__valid__v0 - = vlTOPp->Vortex__DOT____Vcellinp__vx_m_w_reg__in_valid - [1U]; - __Vdlyvval__Vortex__DOT__vx_m_w_reg__DOT__valid__v1 - = vlTOPp->Vortex__DOT____Vcellinp__vx_m_w_reg__in_valid - [0U]; - // ALWAYS at VX_e_m_reg.v:128 - __Vdlyvval__Vortex__DOT__vx_e_m_reg__DOT__b_reg_data__v0 - = vlTOPp->Vortex__DOT____Vcellinp__vx_e_m_reg__in_b_reg_data - [1U]; - __Vdlyvval__Vortex__DOT__vx_e_m_reg__DOT__b_reg_data__v1 - = vlTOPp->Vortex__DOT____Vcellinp__vx_e_m_reg__in_b_reg_data - [0U]; - // ALWAYS at VX_e_m_reg.v:128 - __Vdlyvval__Vortex__DOT__vx_e_m_reg__DOT__valid__v0 - = vlTOPp->Vortex__DOT____Vcellinp__vx_e_m_reg__in_valid - [1U]; - __Vdlyvval__Vortex__DOT__vx_e_m_reg__DOT__valid__v1 - = vlTOPp->Vortex__DOT____Vcellinp__vx_e_m_reg__in_valid - [0U]; - // ALWAYS at VX_context.v:81 - if (((IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__is_clone) - & (0U == (IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__state_stall)))) { - __Vdly__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__state_stall = 0xaU; - } else { - if ((1U == (IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__state_stall))) { - __Vdly__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__state_stall = 0U; - } else { - if ((0U < (IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__state_stall))) { - __Vdly__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__state_stall - = (0x3fU & ((IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__state_stall) - - (IData)(1U))); - } - } - } - // ALWAYS at VX_context_slave.v:102 - if (((IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__is_clone) - & (0U == (IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_state_stall)))) { - __Vdly__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_state_stall = 0xaU; - } else { - if ((1U == (IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_state_stall))) { - __Vdly__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_state_stall = 0U; - } else { - if ((0U < (IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_state_stall))) { - __Vdly__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_state_stall - = (0x3fU & ((IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_state_stall) - - (IData)(1U))); - } - } - } - // ALWAYS at VX_context_slave.v:117 - if (((IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__is_wspawn) - & (0U == (IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__wspawn_state_stall)))) { - __Vdly__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__wspawn_state_stall = 0xaU; - } else { - if ((1U == (IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__wspawn_state_stall))) { - __Vdly__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__wspawn_state_stall = 0U; - } else { - if ((0U < (IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__wspawn_state_stall))) { - __Vdly__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__wspawn_state_stall - = (0x3fU & ((IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__wspawn_state_stall) - - (IData)(1U))); - } - } - } - // ALWAYS at VX_m_w_reg.v:63 - __Vdlyvval__Vortex__DOT__vx_m_w_reg__DOT__alu_result__v0 - = vlTOPp->Vortex__DOT____Vcellinp__vx_m_w_reg__in_alu_result - [1U]; - __Vdlyvval__Vortex__DOT__vx_m_w_reg__DOT__alu_result__v1 - = vlTOPp->Vortex__DOT____Vcellinp__vx_m_w_reg__in_alu_result - [0U]; - // ALWAYS at VX_m_w_reg.v:63 - __Vdlyvval__Vortex__DOT__vx_m_w_reg__DOT__mem_result__v0 - = vlTOPp->Vortex__DOT____Vcellinp__vx_m_w_reg__in_mem_result - [1U]; - __Vdlyvval__Vortex__DOT__vx_m_w_reg__DOT__mem_result__v1 - = vlTOPp->Vortex__DOT____Vcellinp__vx_m_w_reg__in_mem_result - [0U]; - // ALWAYS at VX_d_e_reg.v:145 - vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__upper_immed - = (0xfffffU & ((IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__stalling) - ? 0U : ((0x37U == (0x7fU & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) - ? (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0xcU) : ((0x17U - == - (0x7fU - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) - ? - (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0xcU) - : 0U)))); - // ALWAYS at VX_csr_handler.v:34 - vlTOPp->Vortex__DOT__vx_csr_handler__DOT__decode_csr_address - = vlTOPp->Vortex__DOT__decode_csr_address; - // ALWAYS at VX_csr_handler.v:34 - vlTOPp->Vortex__DOT__vx_csr_handler__DOT__cycle - = (VL_ULL(1) + vlTOPp->Vortex__DOT__vx_csr_handler__DOT__cycle); - // ALWAYS at VX_csr_handler.v:34 - if (vlTOPp->Vortex__DOT__m_w_valid[0U]) { - vlTOPp->Vortex__DOT__vx_csr_handler__DOT__instret - = (VL_ULL(1) + vlTOPp->Vortex__DOT__vx_csr_handler__DOT__instret); - } - // ALWAYS at VX_d_e_reg.v:145 - vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__rs2_src = - (1U & ((IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__stalling) - ? 0U : (1U & (((IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__is_itype) - | (0x23U == (0x7fU & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction))) - ? 1U : 0U)))); - // ALWAYS at VX_e_m_reg.v:128 - __Vdlyvval__Vortex__DOT__vx_e_m_reg__DOT__alu_result__v0 - = vlTOPp->Vortex__DOT____Vcellinp__vx_e_m_reg__in_alu_result - [1U]; - __Vdlyvval__Vortex__DOT__vx_e_m_reg__DOT__alu_result__v1 - = vlTOPp->Vortex__DOT____Vcellinp__vx_e_m_reg__in_alu_result - [0U]; - // ALWAYS at VX_d_e_reg.v:145 - __Vdlyvval__Vortex__DOT__vx_d_e_reg__DOT__valid__v0 - = ((IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__stalling) - ? vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__valid_z - [1U] : vlTOPp->Vortex__DOT____Vcellinp__vx_d_e_reg__in_valid - [1U]); - __Vdlyvval__Vortex__DOT__vx_d_e_reg__DOT__valid__v1 - = ((IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__stalling) - ? vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__valid_z - [0U] : vlTOPp->Vortex__DOT____Vcellinp__vx_d_e_reg__in_valid - [0U]); - // ALWAYS at VX_e_m_reg.v:128 - vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__jal = vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__jal; - // ALWAYS at VX_e_m_reg.v:128 - vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__branch_type - = vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__branch_type; - // ALWAYS at VX_e_m_reg.v:128 - vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__mem_read - = vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__mem_read; - // ALWAYS at VX_e_m_reg.v:128 - vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__mem_write - = vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__mem_write; - // ALWAYS at VX_e_m_reg.v:128 - vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__curr_PC = vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__curr_PC; - // ALWAYS at VX_e_m_reg.v:128 - vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__jal_dest - = (vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [0U] + vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__jal_offset); - // ALWAYS at VX_e_m_reg.v:128 - vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__branch_offset - = vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__itype_immed; - // ALWAYS at VX_m_w_reg.v:63 - vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__PC_next = vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__PC_next; - // ALWAYS at VX_d_e_reg.v:145 - __Vdlyvval__Vortex__DOT__vx_d_e_reg__DOT__a_reg_data__v0 - = ((IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__stalling) - ? vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__reg_data_z - [1U] : vlTOPp->Vortex__DOT____Vcellinp__vx_d_e_reg__in_a_reg_data - [1U]); - __Vdlyvval__Vortex__DOT__vx_d_e_reg__DOT__a_reg_data__v1 - = ((IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__stalling) - ? vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__reg_data_z - [0U] : vlTOPp->Vortex__DOT____Vcellinp__vx_d_e_reg__in_a_reg_data - [0U]); - // ALWAYS at VX_register_file.v:45 - if (((((0U != (IData)(vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__wb)) - & (0U != (IData)(vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__rd))) - & vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_zero__in_valid - [0U]) & (0U == (IData)(vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__warp_num)))) { - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers__v0 - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_zero__in_write_data - [0U]; - __Vdlyvset__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers__v0 = 1U; - __Vdlyvdim0__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers__v0 - = vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__rd; - } - // ALWAYS at VX_csr_handler.v:43 - if (vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__is_csr) { - __Vdlyvval__Vortex__DOT__vx_csr_handler__DOT__csr__v0 - = (0xfffU & vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__csr_result); - __Vdlyvset__Vortex__DOT__vx_csr_handler__DOT__csr__v0 = 1U; - __Vdlyvdim0__Vortex__DOT__vx_csr_handler__DOT__csr__v0 - = vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__csr_address; - } - // ALWAYS at VX_d_e_reg.v:145 - __Vdlyvval__Vortex__DOT__vx_d_e_reg__DOT__b_reg_data__v0 - = ((IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__stalling) - ? vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__reg_data_z - [1U] : vlTOPp->Vortex__DOT____Vcellinp__vx_d_e_reg__in_b_reg_data - [1U]); - __Vdlyvval__Vortex__DOT__vx_d_e_reg__DOT__b_reg_data__v1 - = ((IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__stalling) - ? vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__reg_data_z - [0U] : vlTOPp->Vortex__DOT____Vcellinp__vx_d_e_reg__in_b_reg_data - [0U]); - // ALWAYS at VX_register_file_master_slave.v:50 - if ((((((0U != (IData)(vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__wb)) - & (0U != (IData)(vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__rd))) - & vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_valid - [0U]) & (1U == (IData)(vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__warp_num))) - & (~ (IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__is_wspawn)))) { - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v0 - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_write_data - [0U]; - __Vdlyvset__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v0 = 1U; - __Vdlyvdim0__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v0 - = vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__rd; - } else { - if (((IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__is_wspawn) - & (2U == (IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__wspawn_state_stall)))) { - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v1 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs - [0x1fU]; - __Vdlyvset__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v1 = 1U; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v2 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs - [0x1eU]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v3 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs - [0x1dU]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v4 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs - [0x1cU]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v5 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs - [0x1bU]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v6 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs - [0x1aU]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v7 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs - [0x19U]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v8 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs - [0x18U]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v9 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs - [0x17U]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v10 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs - [0x16U]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v11 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs - [0x15U]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v12 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs - [0x14U]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v13 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs - [0x13U]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v14 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs - [0x12U]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v15 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs - [0x11U]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v16 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs - [0x10U]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v17 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs - [0xfU]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v18 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs - [0xeU]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v19 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs - [0xdU]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v20 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs - [0xcU]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v21 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs - [0xbU]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v22 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs - [0xaU]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v23 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs - [9U]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v24 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs - [8U]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v25 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs - [7U]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v26 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs - [6U]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v27 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs - [5U]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v28 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs - [4U]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v29 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs - [3U]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v30 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs - [2U]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v31 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs - [1U]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v32 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs - [0U]; - } - } - // ALWAYS at VX_register_file_slave.v:53 - if ((((((0U != (IData)(vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__wb)) - & (0U != (IData)(vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__rd))) - & vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_zero__in_valid - [1U]) & (0U == (IData)(vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__warp_num))) - & (~ (IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__is_clone)))) { - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v0 - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_zero__in_write_data - [1U]; - __Vdlyvset__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v0 = 1U; - __Vdlyvdim0__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v0 - = vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__rd; - } else { - if ((((IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__is_clone) - & ((1U == vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__rd1_register - [0U]) & (1U == (IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__state_stall)))) - & (0U == (IData)(vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__warp_num)))) { - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v1 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [0x1fU]; - __Vdlyvset__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v1 = 1U; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v2 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [0x1eU]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v3 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [0x1dU]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v4 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [0x1cU]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v5 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [0x1bU]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v6 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [0x1aU]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v7 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [0x19U]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v8 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [0x18U]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v9 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [0x17U]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v10 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [0x16U]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v11 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [0x15U]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v12 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [0x14U]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v13 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [0x13U]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v14 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [0x12U]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v15 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [0x11U]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v16 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [0x10U]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v17 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [0xfU]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v18 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [0xeU]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v19 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [0xdU]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v20 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [0xcU]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v21 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [0xbU]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v22 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [0xaU]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v23 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [9U]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v24 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [8U]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v25 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [7U]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v26 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [6U]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v27 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [5U]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v28 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [4U]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v29 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [3U]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v30 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [2U]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v31 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [1U]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v32 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [0U]; - } - } - // ALWAYS at VX_register_file_slave.v:53 - if ((((((0U != (IData)(vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__wb)) - & (0U != (IData)(vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__rd))) - & vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_valid - [1U]) & (1U == (IData)(vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__warp_num))) - & (~ (IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__is_clone)))) { - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v0 - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_write_data - [1U]; - __Vdlyvset__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v0 = 1U; - __Vdlyvdim0__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v0 - = vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__rd; - } else { - if ((((IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__is_clone) - & ((1U == vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__rd1_register - [0U]) & (1U == (IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_state_stall)))) - & (1U == (IData)(vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__warp_num)))) { - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v1 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [0x1fU]; - __Vdlyvset__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v1 = 1U; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v2 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [0x1eU]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v3 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [0x1dU]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v4 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [0x1cU]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v5 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [0x1bU]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v6 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [0x1aU]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v7 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [0x19U]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v8 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [0x18U]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v9 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [0x17U]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v10 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [0x16U]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v11 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [0x15U]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v12 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [0x14U]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v13 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [0x13U]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v14 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [0x12U]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v15 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [0x11U]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v16 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [0x10U]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v17 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [0xfU]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v18 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [0xeU]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v19 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [0xdU]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v20 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [0xcU]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v21 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [0xbU]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v22 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [0xaU]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v23 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [9U]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v24 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [8U]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v25 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [7U]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v26 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [6U]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v27 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [5U]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v28 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [4U]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v29 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [3U]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v30 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [2U]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v31 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [1U]; - __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v32 - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs - [0U]; - } - } - // ALWAYSPOST at VX_m_w_reg.v:72 - vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__valid[1U] - = __Vdlyvval__Vortex__DOT__vx_m_w_reg__DOT__valid__v0; - vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__valid[0U] - = __Vdlyvval__Vortex__DOT__vx_m_w_reg__DOT__valid__v1; - // ALWAYSPOST at VX_e_m_reg.v:139 - vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__b_reg_data[1U] - = __Vdlyvval__Vortex__DOT__vx_e_m_reg__DOT__b_reg_data__v0; - vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__b_reg_data[0U] - = __Vdlyvval__Vortex__DOT__vx_e_m_reg__DOT__b_reg_data__v1; - // ALWAYSPOST at VX_e_m_reg.v:148 - vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__valid[1U] - = __Vdlyvval__Vortex__DOT__vx_e_m_reg__DOT__valid__v0; - vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__valid[0U] - = __Vdlyvval__Vortex__DOT__vx_e_m_reg__DOT__valid__v1; - // ALWAYSPOST at VX_m_w_reg.v:65 - vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__alu_result[1U] - = __Vdlyvval__Vortex__DOT__vx_m_w_reg__DOT__alu_result__v0; - vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__alu_result[0U] - = __Vdlyvval__Vortex__DOT__vx_m_w_reg__DOT__alu_result__v1; - // ALWAYSPOST at VX_m_w_reg.v:66 - vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__mem_result[1U] - = __Vdlyvval__Vortex__DOT__vx_m_w_reg__DOT__mem_result__v0; - vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__mem_result[0U] - = __Vdlyvval__Vortex__DOT__vx_m_w_reg__DOT__mem_result__v1; - // ALWAYSPOST at VX_e_m_reg.v:130 - vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__alu_result[1U] - = __Vdlyvval__Vortex__DOT__vx_e_m_reg__DOT__alu_result__v0; - vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__alu_result[0U] - = __Vdlyvval__Vortex__DOT__vx_e_m_reg__DOT__alu_result__v1; - // ALWAYSPOST at VX_d_e_reg.v:167 - vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__valid[1U] - = __Vdlyvval__Vortex__DOT__vx_d_e_reg__DOT__valid__v0; - vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__valid[0U] - = __Vdlyvval__Vortex__DOT__vx_d_e_reg__DOT__valid__v1; - // ALWAYSPOST at VX_d_e_reg.v:150 - vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__a_reg_data[1U] - = __Vdlyvval__Vortex__DOT__vx_d_e_reg__DOT__a_reg_data__v0; - vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__a_reg_data[0U] - = __Vdlyvval__Vortex__DOT__vx_d_e_reg__DOT__a_reg_data__v1; - // ALWAYSPOST at VX_register_file.v:48 - if (__Vdlyvset__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers__v0) { - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers[__Vdlyvdim0__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers__v0] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers__v0; - } - // ALWAYSPOST at VX_csr_handler.v:45 - if (__Vdlyvset__Vortex__DOT__vx_csr_handler__DOT__csr__v0) { - vlTOPp->Vortex__DOT__vx_csr_handler__DOT__csr[__Vdlyvdim0__Vortex__DOT__vx_csr_handler__DOT__csr__v0] - = __Vdlyvval__Vortex__DOT__vx_csr_handler__DOT__csr__v0; - } - // ALWAYSPOST at VX_d_e_reg.v:151 - vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__b_reg_data[1U] - = __Vdlyvval__Vortex__DOT__vx_d_e_reg__DOT__b_reg_data__v0; - vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__b_reg_data[0U] - = __Vdlyvval__Vortex__DOT__vx_d_e_reg__DOT__b_reg_data__v1; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__wspawn_state_stall - = __Vdly__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__wspawn_state_stall; - // ALWAYSPOST at VX_register_file_master_slave.v:53 - if (__Vdlyvset__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v0) { - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers[__Vdlyvdim0__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v0] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v0; - } - if (__Vdlyvset__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v1) { - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers[0x1fU] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v1; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers[0x1eU] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v2; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers[0x1dU] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v3; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers[0x1cU] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v4; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers[0x1bU] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v5; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers[0x1aU] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v6; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers[0x19U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v7; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers[0x18U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v8; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers[0x17U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v9; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers[0x16U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v10; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers[0x15U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v11; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers[0x14U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v12; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers[0x13U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v13; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers[0x12U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v14; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers[0x11U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v15; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers[0x10U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v16; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers[0xfU] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v17; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers[0xeU] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v18; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers[0xdU] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v19; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers[0xcU] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v20; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers[0xbU] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v21; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers[0xaU] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v22; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers[9U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v23; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers[8U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v24; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers[7U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v25; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers[6U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v26; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers[5U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v27; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers[4U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v28; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers[3U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v29; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers[2U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v30; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers[1U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v31; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers[0U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers__v32; - } - // ALWAYSPOST at VX_register_file_slave.v:56 - if (__Vdlyvset__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v0) { - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[__Vdlyvdim0__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v0] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v0; - } - if (__Vdlyvset__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v1) { - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[0x1fU] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v1; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[0x1eU] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v2; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[0x1dU] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v3; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[0x1cU] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v4; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[0x1bU] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v5; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[0x1aU] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v6; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[0x19U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v7; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[0x18U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v8; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[0x17U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v9; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[0x16U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v10; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[0x15U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v11; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[0x14U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v12; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[0x13U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v13; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[0x12U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v14; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[0x11U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v15; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[0x10U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v16; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[0xfU] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v17; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[0xeU] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v18; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[0xdU] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v19; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[0xcU] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v20; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[0xbU] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v21; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[0xaU] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v22; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[9U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v23; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[8U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v24; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[7U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v25; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[6U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v26; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[5U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v27; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[4U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v28; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[3U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v29; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[2U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v30; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[1U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v31; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[0U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v32; - } - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__state_stall - = __Vdly__Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__state_stall; - // ALWAYSPOST at VX_register_file_slave.v:56 - if (__Vdlyvset__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v0) { - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[__Vdlyvdim0__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v0] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v0; - } - if (__Vdlyvset__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v1) { - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[0x1fU] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v1; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[0x1eU] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v2; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[0x1dU] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v3; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[0x1cU] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v4; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[0x1bU] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v5; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[0x1aU] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v6; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[0x19U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v7; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[0x18U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v8; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[0x17U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v9; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[0x16U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v10; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[0x15U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v11; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[0x14U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v12; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[0x13U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v13; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[0x12U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v14; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[0x11U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v15; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[0x10U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v16; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[0xfU] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v17; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[0xeU] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v18; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[0xdU] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v19; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[0xcU] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v20; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[0xbU] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v21; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[0xaU] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v22; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[9U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v23; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[8U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v24; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[7U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v25; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[6U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v26; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[5U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v27; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[4U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v28; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[3U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v29; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[2U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v30; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[1U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v31; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[0U] - = __Vdlyvval__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers__v32; - } - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_state_stall - = __Vdly__Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_state_stall; - vlTOPp->Vortex__DOT____Vcellout__vx_m_w_reg__out_valid[1U] - = vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__valid - [1U]; - vlTOPp->Vortex__DOT____Vcellout__vx_m_w_reg__out_valid[0U] - = vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__valid - [0U]; - vlTOPp->Vortex__DOT____Vcellout__vx_e_m_reg__out_b_reg_data[1U] - = vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__b_reg_data - [1U]; - vlTOPp->Vortex__DOT____Vcellout__vx_e_m_reg__out_b_reg_data[0U] - = vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__b_reg_data - [0U]; - vlTOPp->Vortex__DOT____Vcellout__vx_e_m_reg__out_valid[1U] - = vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__valid - [1U]; - vlTOPp->Vortex__DOT____Vcellout__vx_e_m_reg__out_valid[0U] - = vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__valid - [0U]; - vlTOPp->Vortex__DOT____Vcellout__vx_m_w_reg__out_alu_result[1U] - = vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__alu_result - [1U]; - vlTOPp->Vortex__DOT____Vcellout__vx_m_w_reg__out_alu_result[0U] - = vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__alu_result - [0U]; - vlTOPp->Vortex__DOT____Vcellout__vx_m_w_reg__out_mem_result[1U] - = vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__mem_result - [1U]; - vlTOPp->Vortex__DOT____Vcellout__vx_m_w_reg__out_mem_result[0U] - = vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__mem_result - [0U]; - vlTOPp->Vortex__DOT____Vcellout__vx_e_m_reg__out_alu_result[1U] - = vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__alu_result - [1U]; - vlTOPp->Vortex__DOT____Vcellout__vx_e_m_reg__out_alu_result[0U] - = vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__alu_result - [0U]; - vlTOPp->Vortex__DOT____Vcellout__vx_d_e_reg__out_valid[1U] - = vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__valid - [1U]; - vlTOPp->Vortex__DOT____Vcellout__vx_d_e_reg__out_valid[0U] - = vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__valid - [0U]; - // ALWAYS at VX_d_e_reg.v:145 - vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__jal = ((~ (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__stalling)) - & (IData)(vlTOPp->Vortex__DOT__decode_jal)); - // ALWAYS at VX_d_e_reg.v:145 - vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__branch_type - = ((IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__stalling) - ? 0U : (IData)(vlTOPp->Vortex__DOT__decode_branch_type)); - vlTOPp->out_cache_driver_in_mem_read = vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__mem_read; - // ALWAYS at VX_d_e_reg.v:145 - vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__mem_read - = (7U & ((IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__stalling) - ? 7U : ((3U == (0x7fU & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) - ? (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0xcU) : 7U))); - vlTOPp->out_cache_driver_in_mem_write = vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__mem_write; - // ALWAYS at VX_d_e_reg.v:145 - vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__mem_write - = (7U & ((IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__stalling) - ? 7U : ((0x23U == (0x7fU & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) - ? (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0xcU) : 7U))); - // ALWAYS at VX_d_e_reg.v:145 - vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__curr_PC = - ((IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__stalling) - ? 0U : vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__curr_PC); - // ALWAYS at VX_d_e_reg.v:145 - vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__jal_offset - = ((IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__stalling) - ? 0U : vlTOPp->Vortex__DOT__decode_jal_offset); - 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)); - // ALWAYS at VX_d_e_reg.v:145 - vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__itype_immed - = ((IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__stalling) - ? 0xdeadbeefU : vlTOPp->Vortex__DOT__decode_itype_immed); - vlTOPp->Vortex__DOT__vx_writeback__DOT__out_pc_data[0U] - = vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__PC_next; - vlTOPp->Vortex__DOT__vx_writeback__DOT__out_pc_data[1U] - = vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__PC_next; - vlTOPp->Vortex__DOT__vx_forwarding__DOT__use_writeback_PC_next[0U] - = vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__PC_next; - vlTOPp->Vortex__DOT__vx_forwarding__DOT__use_writeback_PC_next[1U] - = vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__PC_next; - // ALWAYS at VX_e_m_reg.v:128 - vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__PC_next = vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__PC_next_out; - vlTOPp->Vortex__DOT____Vcellout__vx_d_e_reg__out_a_reg_data[1U] - = vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__a_reg_data - [1U]; - vlTOPp->Vortex__DOT____Vcellout__vx_d_e_reg__out_a_reg_data[0U] - = vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__a_reg_data - [0U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[0x1fU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [0x1fU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[0x1eU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [0x1eU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[0x1dU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [0x1dU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[0x1cU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [0x1cU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[0x1bU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [0x1bU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[0x1aU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [0x1aU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[0x19U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [0x19U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[0x18U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [0x18U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[0x17U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [0x17U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[0x16U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [0x16U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[0x15U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [0x15U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[0x14U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [0x14U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[0x13U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [0x13U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[0x12U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [0x12U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[0x11U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [0x11U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[0x10U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [0x10U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[0xfU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [0xfU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[0xeU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [0xeU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[0xdU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [0xdU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[0xcU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [0xcU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[0xbU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [0xbU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[0xaU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [0xaU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[9U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [9U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[8U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [8U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[7U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [7U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[6U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [6U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[5U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [5U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[4U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [4U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[3U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [3U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[2U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [2U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[1U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [1U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[0U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [0U]; - // ALWAYS at VX_e_m_reg.v:128 - vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__csr_address - = vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__csr_address; - // ALWAYS at VX_e_m_reg.v:128 - vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__is_csr = vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__is_csr; - // ALWAYS at VX_e_m_reg.v:128 - vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__csr_result - = ((0xdU == (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__csr_mask - : ((0xeU == (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? (vlTOPp->Vortex__DOT__csr_decode_csr_data - | vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__csr_mask) - : ((0xfU == (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? (vlTOPp->Vortex__DOT__csr_decode_csr_data - & ((IData)(0xffffffffU) - vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__csr_mask)) - : 0xdeadbeefU))); - vlTOPp->Vortex__DOT____Vcellout__vx_d_e_reg__out_b_reg_data[1U] - = vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__b_reg_data - [1U]; - vlTOPp->Vortex__DOT____Vcellout__vx_d_e_reg__out_b_reg_data[0U] - = vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__b_reg_data - [0U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[0x1fU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [0x1fU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[0x1eU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [0x1eU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[0x1dU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [0x1dU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[0x1cU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [0x1cU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[0x1bU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [0x1bU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[0x1aU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [0x1aU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[0x19U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [0x19U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[0x18U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [0x18U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[0x17U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [0x17U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[0x16U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [0x16U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[0x15U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [0x15U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[0x14U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [0x14U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[0x13U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [0x13U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[0x12U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [0x12U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[0x11U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [0x11U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[0x10U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [0x10U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[0xfU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [0xfU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[0xeU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [0xeU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[0xdU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [0xdU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[0xcU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [0xcU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[0xbU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [0xbU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[0xaU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [0xaU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[9U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [9U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[8U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [8U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[7U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [7U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[6U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [6U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[5U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [5U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[4U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [4U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[3U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [3U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[2U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [2U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[1U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [1U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[0U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [0U]; - // ALWAYS at VX_m_w_reg.v:63 - vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__rd = vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__rd; - // ALWAYS at VX_m_w_reg.v:63 - vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__warp_num - = vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__warp_num; - // ALWAYS at VX_m_w_reg.v:63 - vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__wb = vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__wb; - vlTOPp->Vortex__DOT__m_w_valid[1U] = vlTOPp->Vortex__DOT____Vcellout__vx_m_w_reg__out_valid - [1U]; - vlTOPp->Vortex__DOT__m_w_valid[0U] = vlTOPp->Vortex__DOT____Vcellout__vx_m_w_reg__out_valid - [0U]; - vlTOPp->Vortex__DOT__e_m_b_reg_data[1U] = vlTOPp->Vortex__DOT____Vcellout__vx_e_m_reg__out_b_reg_data - [1U]; - vlTOPp->Vortex__DOT__e_m_b_reg_data[0U] = vlTOPp->Vortex__DOT____Vcellout__vx_e_m_reg__out_b_reg_data - [0U]; - vlTOPp->Vortex__DOT__e_m_valid[1U] = vlTOPp->Vortex__DOT____Vcellout__vx_e_m_reg__out_valid - [1U]; - vlTOPp->Vortex__DOT__e_m_valid[0U] = vlTOPp->Vortex__DOT____Vcellout__vx_e_m_reg__out_valid - [0U]; - vlTOPp->Vortex__DOT__m_w_alu_result[1U] = vlTOPp->Vortex__DOT____Vcellout__vx_m_w_reg__out_alu_result - [1U]; - vlTOPp->Vortex__DOT__m_w_alu_result[0U] = vlTOPp->Vortex__DOT____Vcellout__vx_m_w_reg__out_alu_result - [0U]; - vlTOPp->Vortex__DOT__m_w_mem_result[1U] = vlTOPp->Vortex__DOT____Vcellout__vx_m_w_reg__out_mem_result - [1U]; - vlTOPp->Vortex__DOT__m_w_mem_result[0U] = vlTOPp->Vortex__DOT____Vcellout__vx_m_w_reg__out_mem_result - [0U]; - vlTOPp->Vortex__DOT__e_m_alu_result[1U] = vlTOPp->Vortex__DOT____Vcellout__vx_e_m_reg__out_alu_result - [1U]; - vlTOPp->Vortex__DOT__e_m_alu_result[0U] = vlTOPp->Vortex__DOT____Vcellout__vx_e_m_reg__out_alu_result - [0U]; - vlTOPp->Vortex__DOT__d_e_valid[1U] = vlTOPp->Vortex__DOT____Vcellout__vx_d_e_reg__out_valid - [1U]; - vlTOPp->Vortex__DOT__d_e_valid[0U] = vlTOPp->Vortex__DOT____Vcellout__vx_d_e_reg__out_valid - [0U]; - vlTOPp->Vortex__DOT__d_e_a_reg_data[1U] = vlTOPp->Vortex__DOT____Vcellout__vx_d_e_reg__out_a_reg_data - [1U]; - vlTOPp->Vortex__DOT__d_e_a_reg_data[0U] = vlTOPp->Vortex__DOT____Vcellout__vx_d_e_reg__out_a_reg_data - [0U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[0x1fU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [0x1fU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[0x1eU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [0x1eU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[0x1dU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [0x1dU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[0x1cU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [0x1cU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[0x1bU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [0x1bU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[0x1aU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [0x1aU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[0x19U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [0x19U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[0x18U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [0x18U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[0x17U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [0x17U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[0x16U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [0x16U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[0x15U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [0x15U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[0x14U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [0x14U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[0x13U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [0x13U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[0x12U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [0x12U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[0x11U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [0x11U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[0x10U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [0x10U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[0xfU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [0xfU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[0xeU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [0xeU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[0xdU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [0xdU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[0xcU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [0xcU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[0xbU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [0xbU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[0xaU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [0xaU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[9U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [9U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[8U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [8U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[7U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [7U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[6U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [6U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[5U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [5U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[4U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [4U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[3U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [3U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[2U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [2U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[1U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [1U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[0U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs - [0U]; - vlTOPp->Vortex__DOT__csr_decode_csr_data = ((0xc00U - == (IData)(vlTOPp->Vortex__DOT__vx_csr_handler__DOT__decode_csr_address)) - ? (IData)(vlTOPp->Vortex__DOT__vx_csr_handler__DOT__cycle) - : - ((0xc80U - == (IData)(vlTOPp->Vortex__DOT__vx_csr_handler__DOT__decode_csr_address)) - ? (IData)( - (vlTOPp->Vortex__DOT__vx_csr_handler__DOT__cycle - >> 0x20U)) - : - ((0xc02U - == (IData)(vlTOPp->Vortex__DOT__vx_csr_handler__DOT__decode_csr_address)) - ? (IData)(vlTOPp->Vortex__DOT__vx_csr_handler__DOT__instret) - : - ((0xc82U - == (IData)(vlTOPp->Vortex__DOT__vx_csr_handler__DOT__decode_csr_address)) - ? (IData)( - (vlTOPp->Vortex__DOT__vx_csr_handler__DOT__instret - >> 0x20U)) - : - vlTOPp->Vortex__DOT__vx_csr_handler__DOT__csr - [vlTOPp->Vortex__DOT__vx_csr_handler__DOT__decode_csr_address])))); - vlTOPp->Vortex__DOT__d_e_b_reg_data[1U] = vlTOPp->Vortex__DOT____Vcellout__vx_d_e_reg__out_b_reg_data - [1U]; - vlTOPp->Vortex__DOT__d_e_b_reg_data[0U] = vlTOPp->Vortex__DOT____Vcellout__vx_d_e_reg__out_b_reg_data - [0U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[0x1fU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [0x1fU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[0x1eU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [0x1eU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[0x1dU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [0x1dU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[0x1cU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [0x1cU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[0x1bU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [0x1bU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[0x1aU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [0x1aU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[0x19U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [0x19U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[0x18U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [0x18U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[0x17U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [0x17U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[0x16U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [0x16U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[0x15U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [0x15U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[0x14U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [0x14U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[0x13U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [0x13U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[0x12U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [0x12U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[0x11U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [0x11U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[0x10U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [0x10U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[0xfU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [0xfU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[0xeU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [0xeU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[0xdU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [0xdU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[0xcU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [0xcU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[0xbU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [0xbU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[0xaU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [0xaU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[9U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [9U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[8U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [8U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[7U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [7U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[6U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [6U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[5U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [5U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[4U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [4U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[3U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [3U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[2U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [2U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[1U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [1U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[0U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs - [0U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_wb_valid[1U] - = vlTOPp->Vortex__DOT__m_w_valid[1U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_wb_valid[0U] - = vlTOPp->Vortex__DOT__m_w_valid[0U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_rd2[1U] - = vlTOPp->Vortex__DOT__e_m_b_reg_data[1U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_rd2[0U] - = vlTOPp->Vortex__DOT__e_m_b_reg_data[0U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_valid[1U] - = vlTOPp->Vortex__DOT__e_m_valid[1U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_valid[0U] - = vlTOPp->Vortex__DOT__e_m_valid[0U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_writeback__in_alu_result[1U] - = vlTOPp->Vortex__DOT__m_w_alu_result[1U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_writeback__in_alu_result[0U] - = vlTOPp->Vortex__DOT__m_w_alu_result[0U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_writeback_alu_result[1U] - = vlTOPp->Vortex__DOT__m_w_alu_result[1U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_writeback_alu_result[0U] - = vlTOPp->Vortex__DOT__m_w_alu_result[0U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_writeback__in_mem_result[1U] - = vlTOPp->Vortex__DOT__m_w_mem_result[1U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_writeback__in_mem_result[0U] - = vlTOPp->Vortex__DOT__m_w_mem_result[0U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_writeback_mem_data[1U] - = 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_memory__in_alu_result[1U] - = vlTOPp->Vortex__DOT__e_m_alu_result[1U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_alu_result[0U] - = vlTOPp->Vortex__DOT__e_m_alu_result[0U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_valid[1U] - = vlTOPp->Vortex__DOT__d_e_valid[1U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_valid[0U] - = vlTOPp->Vortex__DOT__d_e_valid[0U]; - vlTOPp->Vortex__DOT__execute_branch_stall = ((0U - != (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__branch_type)) - | (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__jal)); - vlTOPp->Vortex__DOT__vx_forwarding__DOT__use_memory_PC_next[0U] - = vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__PC_next; - vlTOPp->Vortex__DOT__vx_forwarding__DOT__use_memory_PC_next[1U] - = vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__PC_next; - // ALWAYS at VX_d_e_reg.v:145 - vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__PC_next_out - = ((IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__stalling) - ? 0U : ((IData)(4U) + vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__curr_PC)); - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data[1U] - = vlTOPp->Vortex__DOT__d_e_a_reg_data[1U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data[0U] - = vlTOPp->Vortex__DOT__d_e_a_reg_data[0U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x1fU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x1fU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x1eU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x1eU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x1dU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x1dU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x1cU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x1cU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x1bU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x1bU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x1aU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x1aU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x19U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x19U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x18U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x18U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x17U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x17U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x16U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x16U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x15U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x15U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x14U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x14U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x13U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x13U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x12U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x12U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x11U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x11U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x10U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x10U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0xfU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0xfU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0xeU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0xeU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0xdU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0xdU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0xcU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0xcU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0xbU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0xbU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0xaU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0xaU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[9U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [9U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[8U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [8U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[7U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [7U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[6U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [6U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[5U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [5U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[4U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [4U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[3U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [3U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[2U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [2U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[1U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [1U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[0x1fU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x1fU]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[0x1eU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x1eU]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[0x1dU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x1dU]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[0x1cU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x1cU]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[0x1bU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x1bU]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[0x1aU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x1aU]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[0x19U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x19U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[0x18U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x18U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[0x17U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x17U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[0x16U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x16U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[0x15U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x15U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[0x14U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x14U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[0x13U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x13U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[0x12U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x12U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[0x11U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x11U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[0x10U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0x10U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[0xfU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0xfU]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[0xeU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0xeU]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[0xdU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0xdU]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[0xcU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0xcU]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[0xbU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0xbU]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[0xaU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0xaU]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[9U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [9U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[8U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [8U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[7U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [7U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[6U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [6U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[5U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [5U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[4U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [4U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[3U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [3U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[2U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [2U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[1U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [1U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[0U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters - [0U]; - // ALWAYS at VX_d_e_reg.v:145 - vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__csr_address - = ((IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__stalling) - ? 0U : (IData)(vlTOPp->Vortex__DOT__decode_csr_address)); - // ALWAYS at VX_d_e_reg.v:145 - vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__is_csr = - ((~ (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__stalling)) - & (IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__is_csr)); - // ALWAYS at VX_d_e_reg.v:145 - vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__csr_mask - = ((IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__stalling) - ? 0U : (((IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__is_csr) - & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0xeU)) ? (0x1fU & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0xfU)) - : vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_a_reg_data - [0U])); - // ALWAYS at VX_d_e_reg.v:145 - vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op = - ((IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__stalling) - ? 0xfU : (((vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0x19U) & (0x33U == (0x7fU - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction))) - ? (IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__mul_alu) - : (IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__temp_final_alu))); - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_b_reg_data[1U] - = vlTOPp->Vortex__DOT__d_e_b_reg_data[1U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_b_reg_data[0U] - = vlTOPp->Vortex__DOT__d_e_b_reg_data[0U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x1fU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [0x1fU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x1eU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [0x1eU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x1dU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [0x1dU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x1cU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [0x1cU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x1bU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [0x1bU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x1aU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [0x1aU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x19U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [0x19U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x18U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [0x18U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x17U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [0x17U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x16U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [0x16U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x15U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [0x15U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x14U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [0x14U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x13U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [0x13U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x12U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [0x12U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x11U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [0x11U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0x10U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [0x10U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0xfU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [0xfU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0xeU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [0xeU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0xdU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [0xdU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0xcU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [0xcU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0xbU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [0xbU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0xaU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [0xaU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[9U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [9U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[8U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [8U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[7U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [7U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[6U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [6U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[5U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [5U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[4U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [4U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[3U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [3U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[2U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [2U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[1U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [1U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[0U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters - [0U]; - // ALWAYS at VX_e_m_reg.v:128 - vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__rd = vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__rd; - // ALWAYS at VX_e_m_reg.v:128 - vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__warp_num - = vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__warp_num; - // ALWAYS at VX_e_m_reg.v:128 - vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__wb = vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__wb; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_zero__in_valid[1U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_wb_valid - [1U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_zero__in_valid[0U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_wb_valid - [0U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_valid[1U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_wb_valid - [1U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_valid[0U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_wb_valid - [0U]; - vlTOPp->Vortex__DOT____Vcellout__vx_memory__out_cache_driver_in_data[1U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_rd2 - [1U]; - vlTOPp->Vortex__DOT____Vcellout__vx_memory__out_cache_driver_in_data[0U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_rd2 - [0U]; - vlTOPp->Vortex__DOT____Vcellout__vx_memory__out_cache_driver_in_valid[1U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_valid - [1U]; - vlTOPp->Vortex__DOT____Vcellout__vx_memory__out_cache_driver_in_valid[0U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_valid - [0U]; - vlTOPp->Vortex__DOT____Vcellout__vx_memory__out_valid[1U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_valid - [1U]; - vlTOPp->Vortex__DOT____Vcellout__vx_memory__out_valid[0U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_valid - [0U]; - vlTOPp->Vortex__DOT____Vcellout__vx_writeback__out_write_data[1U] - = ((3U == (IData)(vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__wb)) - ? vlTOPp->Vortex__DOT__vx_writeback__DOT__out_pc_data - [1U] : ((1U == (IData)(vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__wb)) - ? vlTOPp->Vortex__DOT____Vcellinp__vx_writeback__in_alu_result - [1U] : vlTOPp->Vortex__DOT____Vcellinp__vx_writeback__in_mem_result - [1U])); - vlTOPp->Vortex__DOT____Vcellout__vx_writeback__out_write_data[0U] - = ((3U == (IData)(vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__wb)) - ? vlTOPp->Vortex__DOT__vx_writeback__DOT__out_pc_data - [0U] : ((1U == (IData)(vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__wb)) - ? vlTOPp->Vortex__DOT____Vcellinp__vx_writeback__in_alu_result - [0U] : vlTOPp->Vortex__DOT____Vcellinp__vx_writeback__in_mem_result - [0U])); - vlTOPp->Vortex__DOT____Vcellout__vx_memory__out_cache_driver_in_address[1U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_alu_result - [1U]; - vlTOPp->Vortex__DOT____Vcellout__vx_memory__out_cache_driver_in_address[0U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_alu_result - [0U]; - // ALWAYS at VX_memory.v:113 - vlTOPp->Vortex__DOT__memory_branch_dir = (1U & - ((4U - & (IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__branch_type)) - ? ( - (2U - & (IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__branch_type)) - ? - ((~ (IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__branch_type)) - & (~ - (vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_alu_result - [0U] - >> 0x1fU))) - : - ((1U - & (IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__branch_type)) - ? - (vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_alu_result - [0U] - >> 0x1fU) - : - (~ - (vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_alu_result - [0U] - >> 0x1fU)))) - : ( - (2U - & (IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__branch_type)) - ? - ((1U - & (IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__branch_type)) - ? - (vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_alu_result - [0U] - >> 0x1fU) - : - (0U - != - vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_alu_result - [0U])) - : - ((IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__branch_type) - & (0U - == - vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_alu_result - [0U]))))); - vlTOPp->Vortex__DOT____Vcellout__vx_memory__out_alu_result[1U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_alu_result - [1U]; - vlTOPp->Vortex__DOT____Vcellout__vx_memory__out_alu_result[0U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_alu_result - [0U]; - vlTOPp->Vortex__DOT____Vcellout__vx_execute__out_valid[1U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_valid - [1U]; - vlTOPp->Vortex__DOT____Vcellout__vx_execute__out_valid[0U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_valid - [0U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[0x1fU] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [0x1fU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[0x1eU] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [0x1eU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[0x1dU] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [0x1dU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[0x1cU] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [0x1cU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[0x1bU] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [0x1bU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[0x1aU] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [0x1aU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[0x19U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [0x19U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[0x18U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [0x18U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[0x17U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [0x17U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[0x16U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [0x16U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[0x15U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [0x15U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[0x14U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [0x14U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[0x13U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [0x13U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[0x12U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [0x12U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[0x11U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [0x11U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[0x10U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [0x10U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[0xfU] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [0xfU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[0xeU] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [0xeU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[0xdU] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [0xdU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[0xcU] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [0xcU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[0xbU] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [0xbU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[0xaU] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [0xaU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[9U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [9U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[8U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [8U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[7U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [7U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[6U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [6U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[5U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [5U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[4U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [4U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[3U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [3U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[2U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [2U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[1U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [1U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers[0U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers - [0U]; - vlTOPp->Vortex__DOT____Vcellout__vx_execute__out_b_reg_data[1U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_b_reg_data - [1U]; - vlTOPp->Vortex__DOT____Vcellout__vx_execute__out_b_reg_data[0U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_b_reg_data - [0U]; - vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__ALU_in2 - = ((IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__rs2_src) - ? vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__itype_immed - : vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_b_reg_data - [0U]); - vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__ALU_in2 - = ((IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__rs2_src) - ? vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__itype_immed - : vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_b_reg_data - [1U]); - vlTOPp->out_cache_driver_in_data[1U] = vlTOPp->Vortex__DOT____Vcellout__vx_memory__out_cache_driver_in_data - [1U]; - vlTOPp->out_cache_driver_in_data[0U] = vlTOPp->Vortex__DOT____Vcellout__vx_memory__out_cache_driver_in_data - [0U]; - vlTOPp->out_cache_driver_in_valid[1U] = vlTOPp->Vortex__DOT____Vcellout__vx_memory__out_cache_driver_in_valid - [1U]; - vlTOPp->out_cache_driver_in_valid[0U] = vlTOPp->Vortex__DOT____Vcellout__vx_memory__out_cache_driver_in_valid - [0U]; - vlTOPp->Vortex__DOT__memory_valid[1U] = vlTOPp->Vortex__DOT____Vcellout__vx_memory__out_valid - [1U]; - vlTOPp->Vortex__DOT__memory_valid[0U] = vlTOPp->Vortex__DOT____Vcellout__vx_memory__out_valid - [0U]; - vlTOPp->Vortex__DOT__writeback_write_data[1U] = - vlTOPp->Vortex__DOT____Vcellout__vx_writeback__out_write_data - [1U]; - vlTOPp->Vortex__DOT__writeback_write_data[0U] = - vlTOPp->Vortex__DOT____Vcellout__vx_writeback__out_write_data - [0U]; - vlTOPp->out_cache_driver_in_address[1U] = vlTOPp->Vortex__DOT____Vcellout__vx_memory__out_cache_driver_in_address - [1U]; - vlTOPp->out_cache_driver_in_address[0U] = vlTOPp->Vortex__DOT____Vcellout__vx_memory__out_cache_driver_in_address - [0U]; - vlTOPp->Vortex__DOT__memory_alu_result[1U] = vlTOPp->Vortex__DOT____Vcellout__vx_memory__out_alu_result - [1U]; - vlTOPp->Vortex__DOT__memory_alu_result[0U] = vlTOPp->Vortex__DOT____Vcellout__vx_memory__out_alu_result - [0U]; - vlTOPp->Vortex__DOT__execute_valid[1U] = vlTOPp->Vortex__DOT____Vcellout__vx_execute__out_valid - [1U]; - vlTOPp->Vortex__DOT__execute_valid[0U] = vlTOPp->Vortex__DOT____Vcellout__vx_execute__out_valid - [0U]; - vlTOPp->Vortex__DOT__vx_forwarding__DOT__use_execute_PC_next[0U] - = vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__PC_next_out; - vlTOPp->Vortex__DOT__vx_forwarding__DOT__use_execute_PC_next[1U] - = vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__PC_next_out; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[0x1fU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [0x1fU]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[0x1eU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [0x1eU]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[0x1dU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [0x1dU]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[0x1cU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [0x1cU]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[0x1bU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [0x1bU]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[0x1aU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [0x1aU]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[0x19U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [0x19U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[0x18U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [0x18U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[0x17U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [0x17U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[0x16U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [0x16U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[0x15U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [0x15U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[0x14U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [0x14U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[0x13U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [0x13U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[0x12U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [0x12U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[0x11U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [0x11U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[0x10U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [0x10U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[0xfU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [0xfU]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[0xeU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [0xeU]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[0xdU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [0xdU]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[0xcU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [0xcU]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[0xbU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [0xbU]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[0xaU] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [0xaU]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[9U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [9U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[8U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [8U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[7U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [7U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[6U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [6U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[5U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [5U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[4U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [4U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[3U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [3U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[2U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [2U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[1U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [1U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[0U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__w0_t0_registers - [0U]; - vlTOPp->Vortex__DOT__execute_b_reg_data[1U] = vlTOPp->Vortex__DOT____Vcellout__vx_execute__out_b_reg_data - [1U]; - vlTOPp->Vortex__DOT__execute_b_reg_data[0U] = vlTOPp->Vortex__DOT____Vcellout__vx_execute__out_b_reg_data - [0U]; - vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__mult_signed_result - = VL_MULS_QQQ(64,64,64, VL_EXTENDS_QI(64,32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [0U]), - VL_EXTENDS_QI(64,32, vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__ALU_in2)); - vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__mult_signed_result - = VL_MULS_QQQ(64,64,64, VL_EXTENDS_QI(64,32, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [1U]), - VL_EXTENDS_QI(64,32, vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__ALU_in2)); - // ALWAYS at VX_d_e_reg.v:145 - vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__rd = (0x1fU - & ((IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__stalling) - ? 0U - : - (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 7U))); - // ALWAYS at VX_d_e_reg.v:145 - vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__warp_num - = (3U & ((IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__stalling) - ? 0U : (IData)(vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__warp_num))); - // ALWAYS at VX_d_e_reg.v:145 - vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__wb = ((IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__stalling) - ? 0U - : - (((((0x6fU - == - (0x7fU - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) - | (0x67U - == - (0x7fU - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction))) - | (IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__is_jalrs)) - | ((0x73U - == - (0x7fU - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) - & (0U - == - (7U - & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0xcU))))) - ? 3U - : - ((3U - == - (0x7fU - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) - ? 2U - : - ((((((IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__is_itype) - | (0x33U - == - (0x7fU - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction))) - | (0x37U - == - (0x7fU - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction))) - | (0x17U - == - (0x7fU - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction))) - | (IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__is_csr)) - ? 1U - : 0U)))); - vlTOPp->Vortex__DOT____Vcellinp__vx_m_w_reg__in_valid[1U] - = vlTOPp->Vortex__DOT__memory_valid[1U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_m_w_reg__in_valid[0U] - = vlTOPp->Vortex__DOT__memory_valid[0U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_write_data[1U] - = vlTOPp->Vortex__DOT__writeback_write_data - [1U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_write_data[0U] - = vlTOPp->Vortex__DOT__writeback_write_data - [0U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_m_w_reg__in_alu_result[1U] - = vlTOPp->Vortex__DOT__memory_alu_result[1U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_m_w_reg__in_alu_result[0U] - = vlTOPp->Vortex__DOT__memory_alu_result[0U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_memory_alu_result[1U] - = vlTOPp->Vortex__DOT__memory_alu_result[1U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_memory_alu_result[0U] - = vlTOPp->Vortex__DOT__memory_alu_result[0U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_e_m_reg__in_valid[1U] - = vlTOPp->Vortex__DOT__execute_valid[1U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_e_m_reg__in_valid[0U] - = vlTOPp->Vortex__DOT__execute_valid[0U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[0x1fU] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [0x1fU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[0x1eU] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [0x1eU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[0x1dU] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [0x1dU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[0x1cU] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [0x1cU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[0x1bU] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [0x1bU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[0x1aU] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [0x1aU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[0x19U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [0x19U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[0x18U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [0x18U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[0x17U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [0x17U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[0x16U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [0x16U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[0x15U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [0x15U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[0x14U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [0x14U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[0x13U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [0x13U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[0x12U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [0x12U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[0x11U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [0x11U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[0x10U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [0x10U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[0xfU] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [0xfU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[0xeU] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [0xeU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[0xdU] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [0xdU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[0xcU] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [0xcU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[0xbU] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [0xbU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[0xaU] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [0xaU]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[9U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [9U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[8U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [8U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[7U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [7U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[6U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [6U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[5U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [5U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[4U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [4U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[3U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [3U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[2U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [2U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[1U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [1U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[0U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs - [0U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_e_m_reg__in_b_reg_data[1U] - = vlTOPp->Vortex__DOT__execute_b_reg_data[1U]; - 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 - 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))) - : ((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 - : ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? vlTOPp->Vortex__DOT__csr_decode_csr_data - : (vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__curr_PC - + (vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__upper_immed - << 0xcU)))) : ((2U - & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? - ((1U - & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? - (vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__upper_immed - << 0xcU) - : - ((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 - : 0xffffffffU)) - : - ((1U - & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? - (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]) - : - (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)))) - : ((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)) - ? VL_SHIFTRS_III(32,32,5, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [0U], - (0x1fU - & 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] >> (0x1fU & 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)) - ? (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____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 : 0U))) : ((2U - & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? - ((1U - & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? - (VL_LTS_III(1,32,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 - : 0U) - : - (vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [0U] - << - (0x1fU - & 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)) - ? - (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____Vcellinp__vx_execute__in_a_reg_data - [0U] - + vlTOPp->Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__ALU_in2)))))); - // ALWAYS at VX_alu.v:48 - 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))) - : ((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 - : ((1U & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? vlTOPp->Vortex__DOT__csr_decode_csr_data - : (vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__curr_PC - + (vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__upper_immed - << 0xcU)))) : ((2U - & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? - ((1U - & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? - (vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__upper_immed - << 0xcU) - : - ((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 - : 0xffffffffU)) - : - ((1U - & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? - (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]) - : - (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)))) - : ((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)) - ? VL_SHIFTRS_III(32,32,5, - vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [1U], - (0x1fU - & 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] >> (0x1fU & 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)) - ? (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____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 : 0U))) : ((2U - & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? - ((1U - & (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__alu_op)) - ? - (VL_LTS_III(1,32,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 - : 0U) - : - (vlTOPp->Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data - [1U] - << - (0x1fU - & 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)) - ? - (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____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_decode__DOT____Vcellinp__VX_Context_zero__in_write_data[1U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_write_data - [1U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_zero__in_write_data[0U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_write_data - [0U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_write_data[1U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_write_data - [1U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_write_data[0U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_write_data - [0U]; - 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] - = vlTOPp->Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__1__KET____DOT__vx_alu__out_alu_result; - vlTOPp->Vortex__DOT__execute_alu_result[1U] = vlTOPp->Vortex__DOT____Vcellout__vx_execute__out_alu_result - [1U]; - vlTOPp->Vortex__DOT__execute_alu_result[0U] = vlTOPp->Vortex__DOT____Vcellout__vx_execute__out_alu_result - [0U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_e_m_reg__in_alu_result[1U] - = vlTOPp->Vortex__DOT__execute_alu_result[1U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_e_m_reg__in_alu_result[0U] - = vlTOPp->Vortex__DOT__execute_alu_result[0U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_execute_alu_result[1U] - = vlTOPp->Vortex__DOT__execute_alu_result[1U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_execute_alu_result[0U] - = vlTOPp->Vortex__DOT__execute_alu_result[0U]; -} - -VL_INLINE_OPT void VVortex::_sequent__TOP__4(VVortex__Syms* __restrict vlSymsp) { - VL_DEBUG_IF(VL_DBG_MSGF("+ VVortex::_sequent__TOP__4\n"); ); - VVortex* __restrict vlTOPp VL_ATTR_UNUSED = vlSymsp->TOPp; - // Variables - // Begin mtask footprint all: - VL_SIG8(__Vdly__Vortex__DOT__vx_fetch__DOT__warp_num,1,0); - VL_SIG8(__Vdly__Vortex__DOT__vx_fetch__DOT__warp_state,1,0); - 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__v2,0,0); - VL_SIG8(__Vdlyvset__Vortex__DOT__vx_f_d_reg__DOT__valid__v2,0,0); - VL_SIG8(__Vdlyvval__Vortex__DOT__vx_f_d_reg__DOT__valid__v3,0,0); - // Body - __Vdly__Vortex__DOT__vx_fetch__DOT__warp_state - = vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_state; - __Vdly__Vortex__DOT__vx_fetch__DOT__warp_num = vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_num; - __Vdlyvset__Vortex__DOT__vx_f_d_reg__DOT__valid__v0 = 0U; - __Vdlyvset__Vortex__DOT__vx_f_d_reg__DOT__valid__v2 = 0U; - // ALWAYS at VX_warp.v:63 - vlTOPp->Vortex__DOT__vx_fetch__DOT__VX_Warp_zero__DOT__real_PC - = ((IData)(vlTOPp->reset) ? 0U : ((IData)(vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_zero_stall) - ? vlTOPp->Vortex__DOT__vx_fetch__DOT__VX_Warp_zero__DOT__temp_PC - : ((IData)(4U) - + vlTOPp->Vortex__DOT__vx_fetch__DOT__VX_Warp_zero__DOT__temp_PC))); - // ALWAYS at VX_fetch.v:49 - __Vdly__Vortex__DOT__vx_fetch__DOT__warp_num = - (3U & (((((IData)(vlTOPp->reset) | ((IData)(vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_num) - == (IData)(vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_state))) - | (IData)(vlTOPp->Vortex__DOT__vx_fetch__DOT__remove_warp)) - | (IData)(vlTOPp->Vortex__DOT__vx_fetch__DOT__add_warp)) - ? 0U : ((IData)(1U) + (IData)(vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_num)))); - if (vlTOPp->Vortex__DOT__vx_fetch__DOT__add_warp) { - __Vdly__Vortex__DOT__vx_fetch__DOT__warp_state - = (3U & ((IData)(1U) + (IData)(vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_state))); - } else { - if (vlTOPp->Vortex__DOT__vx_fetch__DOT__remove_warp) { - __Vdly__Vortex__DOT__vx_fetch__DOT__warp_state - = (3U & ((IData)(vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_state) - - (IData)(1U))); - } - } - // ALWAYS at VX_warp.v:63 - vlTOPp->Vortex__DOT__vx_fetch__DOT__VX_Warp_one__DOT__real_PC - = ((IData)(vlTOPp->reset) ? 0U : ((IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__is_wspawn) - ? vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_a_reg_data - [0U] : ((IData)(vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_one_stall) - ? vlTOPp->Vortex__DOT__vx_fetch__DOT__VX_Warp_one__DOT__temp_PC - : - ((IData)(4U) - + vlTOPp->Vortex__DOT__vx_fetch__DOT__VX_Warp_one__DOT__temp_PC)))); - // ALWAYS at VX_f_d_reg.v:36 - 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__out_PC; - } - } - // ALWAYS at VX_f_d_reg.v:36 - 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__v2 - = vlTOPp->Vortex__DOT____Vcellinp__vx_f_d_reg__in_valid - [1U]; - __Vdlyvset__Vortex__DOT__vx_f_d_reg__DOT__valid__v2 = 1U; - __Vdlyvval__Vortex__DOT__vx_f_d_reg__DOT__valid__v3 - = vlTOPp->Vortex__DOT____Vcellinp__vx_f_d_reg__in_valid - [0U]; - } - } - // ALWAYS at VX_f_d_reg.v:36 - if (vlTOPp->reset) { - vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__warp_num = 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__warp_num - = vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_num; - } - } - vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_state - = __Vdly__Vortex__DOT__vx_fetch__DOT__warp_state; - // ALWAYSPOST at VX_f_d_reg.v:42 - 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; - } - if (__Vdlyvset__Vortex__DOT__vx_f_d_reg__DOT__valid__v2) { - vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid[1U] - = __Vdlyvval__Vortex__DOT__vx_f_d_reg__DOT__valid__v2; - vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__valid[0U] - = __Vdlyvval__Vortex__DOT__vx_f_d_reg__DOT__valid__v3; - } - vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_num = __Vdly__Vortex__DOT__vx_fetch__DOT__warp_num; - // ALWAYS at VX_warp.v:50 - vlTOPp->Vortex__DOT__vx_fetch__DOT__VX_Warp_zero__DOT__temp_PC - = (((IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__jal) - & (0U == (IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__warp_num))) - ? vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__jal_dest - : (((IData)(vlTOPp->Vortex__DOT__memory_branch_dir) - & (0U == (IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__warp_num))) - ? vlTOPp->Vortex__DOT__memory_branch_dest - : vlTOPp->Vortex__DOT__vx_fetch__DOT__VX_Warp_zero__DOT__real_PC)); - // ALWAYS at VX_warp.v:50 - vlTOPp->Vortex__DOT__vx_fetch__DOT__VX_Warp_one__DOT__temp_PC - = (((IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__jal) - & (1U == (IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__warp_num))) - ? vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__jal_dest - : (((IData)(vlTOPp->Vortex__DOT__memory_branch_dir) - & (1U == (IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__warp_num))) - ? vlTOPp->Vortex__DOT__memory_branch_dest - : vlTOPp->Vortex__DOT__vx_fetch__DOT__VX_Warp_one__DOT__real_PC)); - 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_fetch__DOT__out_PC = ((0U - == (IData)(vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_num)) - ? vlTOPp->Vortex__DOT__vx_fetch__DOT__VX_Warp_zero__DOT__temp_PC - : vlTOPp->Vortex__DOT__vx_fetch__DOT__VX_Warp_one__DOT__temp_PC); - 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->curr_PC = vlTOPp->Vortex__DOT__vx_fetch__DOT__out_PC; - 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[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[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____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]; -} - -VL_INLINE_OPT void VVortex::_combo__TOP__5(VVortex__Syms* __restrict vlSymsp) { - VL_DEBUG_IF(VL_DBG_MSGF("+ VVortex::_combo__TOP__5\n"); ); - VVortex* __restrict vlTOPp VL_ATTR_UNUSED = vlSymsp->TOPp; - // Body - vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_cache_driver_out_data[1U] - = 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]; - vlTOPp->Vortex__DOT____Vcellout__vx_memory__out_mem_result[1U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_cache_driver_out_data - [1U]; - vlTOPp->Vortex__DOT____Vcellout__vx_memory__out_mem_result[0U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_memory__in_cache_driver_out_data - [0U]; - vlTOPp->Vortex__DOT__memory_mem_result[1U] = vlTOPp->Vortex__DOT____Vcellout__vx_memory__out_mem_result - [1U]; - vlTOPp->Vortex__DOT__memory_mem_result[0U] = vlTOPp->Vortex__DOT____Vcellout__vx_memory__out_mem_result - [0U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_m_w_reg__in_mem_result[1U] - = vlTOPp->Vortex__DOT__memory_mem_result[1U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_m_w_reg__in_mem_result[0U] - = vlTOPp->Vortex__DOT__memory_mem_result[0U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_memory_mem_data[1U] - = 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]; -} - -VL_INLINE_OPT void VVortex::_sequent__TOP__6(VVortex__Syms* __restrict vlSymsp) { - VL_DEBUG_IF(VL_DBG_MSGF("+ VVortex::_sequent__TOP__6\n"); ); - VVortex* __restrict vlTOPp VL_ATTR_UNUSED = vlSymsp->TOPp; - // Body - // ALWAYS at VX_register_file_slave.v:68 - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__out_src1_data - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers - [(0x1fU & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0xfU))]; - // ALWAYS at VX_register_file_slave.v:68 - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__out_src1_data - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers - [(0x1fU & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0xfU))]; - // ALWAYS at VX_register_file_master_slave.v:66 - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_src1_data - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [(0x1fU & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0xfU))]; - // ALWAYS at VX_register_file_slave.v:68 - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__out_src2_data - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers - [(0x1fU & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0x14U))]; - // ALWAYS at VX_register_file_slave.v:68 - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__out_src2_data - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers - [(0x1fU & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0x14U))]; - // ALWAYS at VX_register_file_master_slave.v:66 - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_src2_data - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers - [(0x1fU & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0x14U))]; - // ALWAYS at VX_register_file.v:52 - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_src1_data - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [(0x1fU & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0xfU))]; - // ALWAYS at VX_register_file.v:52 - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_src2_data - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers - [(0x1fU & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0x14U))]; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__rd1_register[1U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__out_src1_data; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__rd1_register[1U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__out_src1_data; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__rd1_register[0U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_src1_data; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__rd2_register[1U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__out_src2_data; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__rd2_register[1U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__out_src2_data; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__rd2_register[0U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_src2_data; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__rd1_register[0U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_src1_data; - vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__rd2_register[0U] - = vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_src2_data; -} - -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; - // Body - // ALWAYS at VX_f_d_reg.v:36 - if (vlTOPp->reset) { - vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction = 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__instruction - = ((IData)(vlTOPp->Vortex__DOT__vx_fetch__DOT__stall) - ? 0U : vlTOPp->fe_instruction); - } - } - 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))); - vlTOPp->Vortex__DOT__decode_csr_address = (0xfffU - & (((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__vx_f_d_reg__DOT__instruction - >> 0x14U) - : 0x55U)); - // ALWAYS at VX_decode.v:473 - vlTOPp->__Vtableidx1 = (7U & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0xcU)); - vlTOPp->Vortex__DOT__vx_decode__DOT__mul_alu = - vlTOPp->__Vtable1_Vortex__DOT__vx_decode__DOT__mul_alu - [vlTOPp->__Vtableidx1]; - vlTOPp->Vortex__DOT__vx_decode__DOT__alu_tempp - = (0xfffU & (((1U == (7U & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0xcU))) | (5U - == - (7U - & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0xcU)))) - ? (0x1fU & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0x14U)) : (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0x14U))); - vlTOPp->Vortex__DOT__vx_decode__DOT__is_csr = ( - (0x73U - == - (0x7fU - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) - & (0U - != - (7U - & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0xcU)))); - vlTOPp->Vortex__DOT__vx_decode__DOT__jal_sys_jal - = ((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__vx_decode__DOT__is_clone = - ((0x6bU == (0x7fU & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) - & (5U == (7U & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0xcU)))); - vlTOPp->Vortex__DOT__vx_decode__DOT__is_wspawn - = ((0x6bU == (0x7fU & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) - & (0U == (7U & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0xcU)))); - vlTOPp->Vortex__DOT__vx_decode__DOT__is_jmprt = - ((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__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)))); - vlTOPp->Vortex__DOT__vx_forwarding__DOT__src1_exe_fwd - = (((((0x1fU & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0xfU)) == (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__rd)) - & (0U != (0x1fU & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0xfU)))) & (0U != (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__wb))) - & ((IData)(vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__warp_num) - == (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__warp_num))); - vlTOPp->Vortex__DOT__vx_forwarding__DOT__src2_exe_fwd - = (((((0x1fU & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 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))) - & ((IData)(vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__warp_num) - == (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__warp_num))); - // ALWAYS at VX_decode.v:404 - vlTOPp->Vortex__DOT__decode_itype_immed = ((0x40U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? ( - (0x20U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? - ((0x10U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? 0xdeadbeefU - : - ((8U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? 0xdeadbeefU - : - ((4U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? 0xdeadbeefU - : - ((2U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? - ((1U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? - ((0xfffff000U - & (VL_NEGATE_I((IData)( - (1U - & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0x1fU)))) - << 0xcU)) - | ((0x800U - & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0x14U)) - | ((0x400U - & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - << 3U)) - | ((0x3f0U - & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0x15U)) - | (0xfU - & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 8U)))))) - : 0xdeadbeefU) - : 0xdeadbeefU)))) - : 0xdeadbeefU) - : ( - (0x20U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? - ((0x10U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? 0xdeadbeefU - : - ((8U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? 0xdeadbeefU - : - ((4U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? 0xdeadbeefU - : - ((2U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? - ((1U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? - ((0xfffff000U - & (VL_NEGATE_I((IData)( - (1U - & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0x1fU)))) - << 0xcU)) - | ((0xfe0U - & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0x14U)) - | (0x1fU - & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 7U)))) - : 0xdeadbeefU) - : 0xdeadbeefU)))) - : - ((0x10U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? - ((8U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? 0xdeadbeefU - : - ((4U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? 0xdeadbeefU - : - ((2U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? - ((1U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? - ((0xfffff000U - & (VL_NEGATE_I((IData)( - (1U - & ((IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__alu_tempp) - >> 0xbU)))) - << 0xcU)) - | (IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__alu_tempp)) - : 0xdeadbeefU) - : 0xdeadbeefU))) - : - ((8U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? 0xdeadbeefU - : - ((4U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? 0xdeadbeefU - : - ((2U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? - ((1U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? - ((0xfffff000U - & (VL_NEGATE_I((IData)( - (1U - & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0x1fU)))) - << 0xcU)) - | (0xfffU - & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0x14U))) - : 0xdeadbeefU) - : 0xdeadbeefU)))))); - vlTOPp->Vortex__DOT__vx_decode__DOT__is_ebreak - = ((0x73U == (0x7fU & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) - & ((IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__jal_sys_jal) - & vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_valid - [0U])); - vlTOPp->Vortex__DOT__decode_clone_stall = ((((0U - == (IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__state_stall)) - | (1U - != (IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__state_stall))) - & (IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__is_clone)) - | ((((0U - == (IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_state_stall)) - | (1U - != (IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_state_stall))) - & (IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__is_clone)) - | (((0U - == (IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__wspawn_state_stall)) - & (IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__is_wspawn)) - | (1U - < (IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__wspawn_state_stall))))); - // ALWAYS at VX_decode.v:348 - 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_offset - = ((8U & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? 0xdeadbeefU : ((4U & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? 0xdeadbeefU - : ((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)))) - ? 0xb0000000U - : 0xdeadbeefU) - : 0xdeadbeefU) - : 0xdeadbeefU))); - } 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_offset - = ((2U & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? ((1U & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? ((0xffe00000U - & (VL_NEGATE_I((IData)( - (1U - & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0x1fU)))) - << 0x15U)) - | ((0x100000U - & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0xbU)) - | ((0xff000U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - | ((0x800U - & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 9U)) - | (0x7feU - & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0x14U)))))) - : 0xdeadbeefU) : 0xdeadbeefU); - } 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_offset = 0U; - } - } else { - vlTOPp->Vortex__DOT__decode_jal_offset = 0xdeadbeefU; - } - } else { - vlTOPp->Vortex__DOT__decode_jal_offset = 0xdeadbeefU; - } - } - } else { - vlTOPp->Vortex__DOT__decode_jal_offset - = ((4U & 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) - ? ((0xfffff000U - & (VL_NEGATE_I((IData)( - (1U - & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0x1fU)))) - << 0xcU)) - | (0xfffU & - (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0x14U))) - : 0xdeadbeefU) : 0xdeadbeefU) - : 0xdeadbeefU); - } - } - } else { - vlTOPp->Vortex__DOT__decode_jal_offset = 0xdeadbeefU; - } - } else { - vlTOPp->Vortex__DOT__decode_jal_offset = 0xdeadbeefU; - } - // ALWAYS at VX_decode.v:348 - 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 - & ((IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__jal_sys_jal) - & 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:415 - 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_type = 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_type = 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_type = 0U; - } - } else { - vlTOPp->Vortex__DOT__decode_branch_type = 0U; - } - } else { - vlTOPp->Vortex__DOT__decode_branch_type = 0U; - } - } - } else { - vlTOPp->Vortex__DOT__decode_branch_type - = ((4U & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? 0U : ((2U & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? ((1U & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? ((0x4000U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? ((0x2000U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? - ((0x1000U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? 6U - : 5U) - : - ((0x1000U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? 4U - : 3U)) - : ((0x2000U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? 0U - : - ((0x1000U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? 2U - : 1U))) - : 0U) : 0U)); - } - } - } else { - vlTOPp->Vortex__DOT__decode_branch_type = 0U; - } - } else { - vlTOPp->Vortex__DOT__decode_branch_type = 0U; - } - // ALWAYS at VX_decode.v:415 - 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 - = ((((((0x1fU & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0xfU)) == (IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__rd)) - & (0U != (0x1fU & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0xfU)))) & (0U - != (IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__wb))) - & (~ (IData)(vlTOPp->Vortex__DOT__vx_forwarding__DOT__src1_exe_fwd))) - & ((IData)(vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__warp_num) - == (IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__warp_num))); - vlTOPp->Vortex__DOT__vx_forwarding__DOT__src2_mem_fwd - = ((((((0x1fU & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0x14U)) == (IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__rd)) - & (0U != (0x1fU & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0x14U)))) & (0U - != (IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__wb))) - & (~ (IData)(vlTOPp->Vortex__DOT__vx_forwarding__DOT__src2_exe_fwd))) - & ((IData)(vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__warp_num) - == (IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__warp_num))); - vlTOPp->out_ebreak = ((0U == (IData)(vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_state)) - & (IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__is_ebreak)); - vlTOPp->Vortex__DOT__vx_fetch__DOT__add_warp = - (((IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__is_wspawn) - & (~ (IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__is_ebreak))) - & (~ (IData)(vlTOPp->Vortex__DOT__decode_clone_stall))); - vlTOPp->Vortex__DOT__vx_fetch__DOT__remove_warp - = (((IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__is_ebreak) - & (~ (IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__is_wspawn))) - & (~ (IData)(vlTOPp->Vortex__DOT__decode_clone_stall))); - 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)) - ? 1U : 0xaU) : ((0x37U == (0x7fU & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) - ? 0xbU : ((0x17U == - (0x7fU - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) - ? 0xcU : - ((IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__is_csr) - ? ((1U - == - (3U - & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0xcU))) - ? 0xdU - : - ((2U - == - (3U - & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0xcU))) - ? 0xeU - : 0xfU)) - : (((0x23U - == - (0x7fU - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) - | (3U - == - (0x7fU - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction))) - ? 0U - : - ((0x4000U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? - ((0x2000U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? - ((0x1000U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? 9U - : 8U) - : - ((0x1000U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? - ((0U - == - (0x7fU - & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0x19U))) - ? 6U - : 7U) - : 5U)) - : - ((0x2000U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? - ((0x1000U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? 4U - : 3U) - : - ((0x1000U - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction) - ? 2U - : - ((0x13U - == - (0x7fU - & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) - ? 0U - : - ((0U - == - (0x7fU - & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0x19U))) - ? 0U - : 1U)))))))))); - vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_zero_change_mask - = ((IData)(vlTOPp->Vortex__DOT__decode_change_mask) - & (0U == (IData)(vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__warp_num))); - vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_one_change_mask - = ((IData)(vlTOPp->Vortex__DOT__decode_change_mask) - & (1U == (IData)(vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__warp_num))); - vlTOPp->Vortex__DOT__vx_forwarding__DOT__src1_wb_fwd - = (((((((0x1fU & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0xfU)) == (IData)(vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__rd)) - & (0U != (0x1fU & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0xfU)))) & (0U - != (IData)(vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__wb))) - & ((IData)(vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__warp_num) - == (IData)(vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__warp_num))) - & (~ (IData)(vlTOPp->Vortex__DOT__vx_forwarding__DOT__src1_exe_fwd))) - & (~ (IData)(vlTOPp->Vortex__DOT__vx_forwarding__DOT__src1_mem_fwd))); - vlTOPp->Vortex__DOT__forwarding_fwd_stall = ((((IData)(vlTOPp->Vortex__DOT__vx_forwarding__DOT__src1_exe_fwd) - | (IData)(vlTOPp->Vortex__DOT__vx_forwarding__DOT__src2_exe_fwd)) - & (2U - == (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__wb))) - | (((IData)(vlTOPp->Vortex__DOT__vx_forwarding__DOT__src1_mem_fwd) - | (IData)(vlTOPp->Vortex__DOT__vx_forwarding__DOT__src2_mem_fwd)) - & (2U - == (IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__wb)))); - vlTOPp->Vortex__DOT__vx_forwarding__DOT__src2_wb_fwd - = (((((((0x1fU & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0x14U)) == (IData)(vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__rd)) - & (0U != (0x1fU & (vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction - >> 0x14U)))) & (0U - != (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))) - & ((IData)(vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__warp_num) - == (IData)(vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__warp_num))); - 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)); - vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__stalling - = (((IData)(vlTOPp->Vortex__DOT__forwarding_fwd_stall) - | (IData)(vlTOPp->Vortex__DOT__execute_branch_stall)) - | (IData)(vlTOPp->Vortex__DOT__decode_clone_stall)); - 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__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__vx_fetch__DOT__warp_zero_stall - = ((IData)(vlTOPp->Vortex__DOT__vx_fetch__DOT__stall) - | (1U == (IData)(vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_num))); - vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_one_stall - = ((IData)(vlTOPp->Vortex__DOT__vx_fetch__DOT__stall) - | (0U == (IData)(vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_num))); -} - -VL_INLINE_OPT void VVortex::_combo__TOP__8(VVortex__Syms* __restrict vlSymsp) { - VL_DEBUG_IF(VL_DBG_MSGF("+ VVortex::_combo__TOP__8\n"); ); - VVortex* __restrict vlTOPp VL_ATTR_UNUSED = vlSymsp->TOPp; - // Body - vlTOPp->Vortex__DOT____Vcellout__vx_forwarding__out_src1_fwd_data[1U] - = ((IData)(vlTOPp->Vortex__DOT__vx_forwarding__DOT__src1_exe_fwd) - ? ((3U == (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__wb)) - ? vlTOPp->Vortex__DOT__vx_forwarding__DOT__use_execute_PC_next - [1U] : vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_execute_alu_result - [1U]) : ((IData)(vlTOPp->Vortex__DOT__vx_forwarding__DOT__src1_mem_fwd) - ? ((3U == (IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__wb)) - ? vlTOPp->Vortex__DOT__vx_forwarding__DOT__use_memory_PC_next - [1U] : ((2U == (IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__wb)) - ? vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_memory_mem_data - [1U] : vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_memory_alu_result - [1U])) : ((IData)(vlTOPp->Vortex__DOT__vx_forwarding__DOT__src1_wb_fwd) - ? ((3U - == (IData)(vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__wb)) - ? - vlTOPp->Vortex__DOT__vx_forwarding__DOT__use_writeback_PC_next - [1U] - : - ((2U - == (IData)(vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__wb)) - ? - vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_writeback_mem_data - [1U] - : - vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_writeback_alu_result - [1U])) - : vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_execute_alu_result - [1U]))); - vlTOPp->Vortex__DOT____Vcellout__vx_forwarding__out_src1_fwd_data[0U] - = ((IData)(vlTOPp->Vortex__DOT__vx_forwarding__DOT__src1_exe_fwd) - ? ((3U == (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__wb)) - ? vlTOPp->Vortex__DOT__vx_forwarding__DOT__use_execute_PC_next - [0U] : vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_execute_alu_result - [0U]) : ((IData)(vlTOPp->Vortex__DOT__vx_forwarding__DOT__src1_mem_fwd) - ? ((3U == (IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__wb)) - ? vlTOPp->Vortex__DOT__vx_forwarding__DOT__use_memory_PC_next - [0U] : ((2U == (IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__wb)) - ? vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_memory_mem_data - [0U] : vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_memory_alu_result - [0U])) : ((IData)(vlTOPp->Vortex__DOT__vx_forwarding__DOT__src1_wb_fwd) - ? ((3U - == (IData)(vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__wb)) - ? - vlTOPp->Vortex__DOT__vx_forwarding__DOT__use_writeback_PC_next - [0U] - : - ((2U - == (IData)(vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__wb)) - ? - vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_writeback_mem_data - [0U] - : - vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_writeback_alu_result - [0U])) - : vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_execute_alu_result - [0U]))); - vlTOPp->Vortex__DOT____Vcellout__vx_forwarding__out_src2_fwd_data[1U] - = ((IData)(vlTOPp->Vortex__DOT__vx_forwarding__DOT__src2_exe_fwd) - ? ((3U == (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__wb)) - ? vlTOPp->Vortex__DOT__vx_forwarding__DOT__use_execute_PC_next - [1U] : vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_execute_alu_result - [1U]) : ((IData)(vlTOPp->Vortex__DOT__vx_forwarding__DOT__src2_mem_fwd) - ? ((3U == (IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__wb)) - ? vlTOPp->Vortex__DOT__vx_forwarding__DOT__use_memory_PC_next - [1U] : ((2U == (IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__wb)) - ? vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_memory_mem_data - [1U] : vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_memory_alu_result - [1U])) : ((IData)(vlTOPp->Vortex__DOT__vx_forwarding__DOT__src2_wb_fwd) - ? ((3U - == (IData)(vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__wb)) - ? - vlTOPp->Vortex__DOT__vx_forwarding__DOT__use_writeback_PC_next - [1U] - : - ((2U - == (IData)(vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__wb)) - ? - vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_writeback_mem_data - [1U] - : - vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_writeback_alu_result - [1U])) - : vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_execute_alu_result - [1U]))); - vlTOPp->Vortex__DOT____Vcellout__vx_forwarding__out_src2_fwd_data[0U] - = ((IData)(vlTOPp->Vortex__DOT__vx_forwarding__DOT__src2_exe_fwd) - ? ((3U == (IData)(vlTOPp->Vortex__DOT__vx_d_e_reg__DOT__wb)) - ? vlTOPp->Vortex__DOT__vx_forwarding__DOT__use_execute_PC_next - [0U] : vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_execute_alu_result - [0U]) : ((IData)(vlTOPp->Vortex__DOT__vx_forwarding__DOT__src2_mem_fwd) - ? ((3U == (IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__wb)) - ? vlTOPp->Vortex__DOT__vx_forwarding__DOT__use_memory_PC_next - [0U] : ((2U == (IData)(vlTOPp->Vortex__DOT__vx_e_m_reg__DOT__wb)) - ? vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_memory_mem_data - [0U] : vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_memory_alu_result - [0U])) : ((IData)(vlTOPp->Vortex__DOT__vx_forwarding__DOT__src2_wb_fwd) - ? ((3U - == (IData)(vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__wb)) - ? - vlTOPp->Vortex__DOT__vx_forwarding__DOT__use_writeback_PC_next - [0U] - : - ((2U - == (IData)(vlTOPp->Vortex__DOT__vx_m_w_reg__DOT__wb)) - ? - vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_writeback_mem_data - [0U] - : - vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_writeback_alu_result - [0U])) - : vlTOPp->Vortex__DOT____Vcellinp__vx_forwarding__in_execute_alu_result - [0U]))); - vlTOPp->Vortex__DOT__forwarding_src1_fwd_data[1U] - = vlTOPp->Vortex__DOT____Vcellout__vx_forwarding__out_src1_fwd_data - [1U]; - vlTOPp->Vortex__DOT__forwarding_src1_fwd_data[0U] - = vlTOPp->Vortex__DOT____Vcellout__vx_forwarding__out_src1_fwd_data - [0U]; - vlTOPp->Vortex__DOT__forwarding_src2_fwd_data[1U] - = vlTOPp->Vortex__DOT____Vcellout__vx_forwarding__out_src2_fwd_data - [1U]; - vlTOPp->Vortex__DOT__forwarding_src2_fwd_data[0U] - = vlTOPp->Vortex__DOT____Vcellout__vx_forwarding__out_src2_fwd_data - [0U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_src1_fwd_data[1U] - = vlTOPp->Vortex__DOT__forwarding_src1_fwd_data - [1U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_src1_fwd_data[0U] - = vlTOPp->Vortex__DOT__forwarding_src1_fwd_data - [0U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_src2_fwd_data[1U] - = vlTOPp->Vortex__DOT__forwarding_src2_fwd_data - [1U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_src2_fwd_data[0U] - = vlTOPp->Vortex__DOT__forwarding_src2_fwd_data - [0U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_zero__in_src1_fwd_data[1U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_src1_fwd_data - [1U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_zero__in_src1_fwd_data[0U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_src1_fwd_data - [0U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_src1_fwd_data[1U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_src1_fwd_data - [1U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_src1_fwd_data[0U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_src1_fwd_data - [0U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_zero__in_src2_fwd_data[1U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_src2_fwd_data - [1U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_zero__in_src2_fwd_data[0U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_src2_fwd_data - [0U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_src2_fwd_data[1U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_src2_fwd_data - [1U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_src2_fwd_data[0U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_decode__in_src2_fwd_data - [0U]; - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__out_a_reg_data[0U] - = ((0x6fU == (0x7fU & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) - ? vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__curr_PC - : ((IData)(vlTOPp->Vortex__DOT__forwarding_src1_fwd) - ? vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_zero__in_src1_fwd_data - [0U] : vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__rd1_register - [0U])); - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__out_a_reg_data[1U] - = ((0x6fU == (0x7fU & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) - ? vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__curr_PC - : ((IData)(vlTOPp->Vortex__DOT__forwarding_src1_fwd) - ? vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_zero__in_src1_fwd_data - [1U] : vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__rd1_register - [1U])); - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_one__out_a_reg_data[0U] - = ((0x6fU == (0x7fU & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) - ? vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__curr_PC - : ((IData)(vlTOPp->Vortex__DOT__forwarding_src1_fwd) - ? vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_src1_fwd_data - [0U] : vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__rd1_register - [0U])); - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_one__out_a_reg_data[1U] - = ((0x6fU == (0x7fU & vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__instruction)) - ? vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__curr_PC - : ((IData)(vlTOPp->Vortex__DOT__forwarding_src1_fwd) - ? vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_src1_fwd_data - [1U] : vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__rd1_register - [1U])); - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__out_b_reg_data[0U] - = ((IData)(vlTOPp->Vortex__DOT__forwarding_src2_fwd) - ? vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_zero__in_src2_fwd_data - [0U] : vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__rd2_register - [0U]); - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__out_b_reg_data[1U] - = ((IData)(vlTOPp->Vortex__DOT__forwarding_src2_fwd) - ? vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_zero__in_src2_fwd_data - [1U] : vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__rd2_register - [1U]); - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_one__out_b_reg_data[0U] - = ((IData)(vlTOPp->Vortex__DOT__forwarding_src2_fwd) - ? vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_src2_fwd_data - [0U] : vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__rd2_register - [0U]); - vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_one__out_b_reg_data[1U] - = ((IData)(vlTOPp->Vortex__DOT__forwarding_src2_fwd) - ? vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_src2_fwd_data - [1U] : vlTOPp->Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__rd2_register - [1U]); - vlTOPp->Vortex__DOT__vx_decode__DOT__zero_a_reg_data[1U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__out_a_reg_data - [1U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__zero_a_reg_data[0U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__out_a_reg_data - [0U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__one_a_reg_data[1U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_one__out_a_reg_data - [1U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__one_a_reg_data[0U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_one__out_a_reg_data - [0U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__zero_b_reg_data[1U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__out_b_reg_data - [1U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__zero_b_reg_data[0U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__out_b_reg_data - [0U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__one_b_reg_data[1U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_one__out_b_reg_data - [1U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__one_b_reg_data[0U] - = vlTOPp->Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_one__out_b_reg_data - [0U]; - vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_a_reg_data[1U] - = ((0U == (IData)(vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__warp_num)) - ? vlTOPp->Vortex__DOT__vx_decode__DOT__zero_a_reg_data - [1U] : vlTOPp->Vortex__DOT__vx_decode__DOT__one_a_reg_data - [1U]); - vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_a_reg_data[0U] - = ((0U == (IData)(vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__warp_num)) - ? vlTOPp->Vortex__DOT__vx_decode__DOT__zero_a_reg_data - [0U] : vlTOPp->Vortex__DOT__vx_decode__DOT__one_a_reg_data - [0U]); - vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_b_reg_data[1U] - = ((0U == (IData)(vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__warp_num)) - ? vlTOPp->Vortex__DOT__vx_decode__DOT__zero_b_reg_data - [1U] : vlTOPp->Vortex__DOT__vx_decode__DOT__one_b_reg_data - [1U]); - vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_b_reg_data[0U] - = ((0U == (IData)(vlTOPp->Vortex__DOT__vx_f_d_reg__DOT__warp_num)) - ? vlTOPp->Vortex__DOT__vx_decode__DOT__zero_b_reg_data - [0U] : vlTOPp->Vortex__DOT__vx_decode__DOT__one_b_reg_data - [0U]); - vlTOPp->Vortex__DOT__decode_a_reg_data[1U] = vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_a_reg_data - [1U]; - vlTOPp->Vortex__DOT__decode_a_reg_data[0U] = vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_a_reg_data - [0U]; - vlTOPp->Vortex__DOT__decode_b_reg_data[1U] = vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_b_reg_data - [1U]; - vlTOPp->Vortex__DOT__decode_b_reg_data[0U] = vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_b_reg_data - [0U]; - vlTOPp->Vortex__DOT__vx_decode__DOT__jalrs_thread_mask[0U] - = VL_LTES_III(1,32,32, 0U, vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_b_reg_data - [0U]); - vlTOPp->Vortex__DOT__vx_decode__DOT__jalrs_thread_mask[1U] - = VL_LTES_III(1,32,32, 1U, vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_b_reg_data - [0U]); - vlTOPp->Vortex__DOT____Vcellinp__vx_d_e_reg__in_a_reg_data[1U] - = vlTOPp->Vortex__DOT__decode_a_reg_data[1U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_d_e_reg__in_a_reg_data[0U] - = vlTOPp->Vortex__DOT__decode_a_reg_data[0U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_d_e_reg__in_b_reg_data[1U] - = vlTOPp->Vortex__DOT__decode_b_reg_data[1U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_d_e_reg__in_b_reg_data[0U] - = vlTOPp->Vortex__DOT__decode_b_reg_data[0U]; - vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_thread_mask[1U] - = ((IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__is_jalrs) - ? vlTOPp->Vortex__DOT__vx_decode__DOT__jalrs_thread_mask - [1U] : vlTOPp->Vortex__DOT__vx_decode__DOT__jmprt_thread_mask - [1U]); - vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_thread_mask[0U] - = ((IData)(vlTOPp->Vortex__DOT__vx_decode__DOT__is_jalrs) - ? vlTOPp->Vortex__DOT__vx_decode__DOT__jalrs_thread_mask - [0U] : vlTOPp->Vortex__DOT__vx_decode__DOT__jmprt_thread_mask - [0U]); - vlTOPp->Vortex__DOT__decode_thread_mask[1U] = vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_thread_mask - [1U]; - vlTOPp->Vortex__DOT__decode_thread_mask[0U] = vlTOPp->Vortex__DOT____Vcellout__vx_decode__out_thread_mask - [0U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_fetch__in_thread_mask[1U] - = vlTOPp->Vortex__DOT__decode_thread_mask[1U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_fetch__in_thread_mask[0U] - = vlTOPp->Vortex__DOT__decode_thread_mask[0U]; - vlTOPp->Vortex__DOT__vx_fetch__DOT____Vcellinp__VX_Warp_zero__in_thread_mask[1U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_fetch__in_thread_mask - [1U]; - vlTOPp->Vortex__DOT__vx_fetch__DOT____Vcellinp__VX_Warp_zero__in_thread_mask[0U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_fetch__in_thread_mask - [0U]; - vlTOPp->Vortex__DOT__vx_fetch__DOT____Vcellinp__VX_Warp_one__in_thread_mask[1U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_fetch__in_thread_mask - [1U]; - vlTOPp->Vortex__DOT__vx_fetch__DOT____Vcellinp__VX_Warp_one__in_thread_mask[0U] - = vlTOPp->Vortex__DOT____Vcellinp__vx_fetch__in_thread_mask - [0U]; - // ALWAYS at VX_warp.v:36 - if (vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_zero_change_mask) { - vlTOPp->Vortex__DOT__vx_fetch__DOT__VX_Warp_zero__DOT__valid[1U] - = vlTOPp->Vortex__DOT__vx_fetch__DOT____Vcellinp__VX_Warp_zero__in_thread_mask - [1U]; - vlTOPp->Vortex__DOT__vx_fetch__DOT__VX_Warp_zero__DOT__valid[0U] - = vlTOPp->Vortex__DOT__vx_fetch__DOT____Vcellinp__VX_Warp_zero__in_thread_mask - [0U]; - } - // ALWAYS at VX_warp.v:36 - if (vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_one_change_mask) { - vlTOPp->Vortex__DOT__vx_fetch__DOT__VX_Warp_one__DOT__valid[1U] - = vlTOPp->Vortex__DOT__vx_fetch__DOT____Vcellinp__VX_Warp_one__in_thread_mask - [1U]; - vlTOPp->Vortex__DOT__vx_fetch__DOT__VX_Warp_one__DOT__valid[0U] - = vlTOPp->Vortex__DOT__vx_fetch__DOT____Vcellinp__VX_Warp_one__in_thread_mask - [0U]; - } - vlTOPp->Vortex__DOT__vx_fetch__DOT____Vcellout__VX_Warp_zero__out_valid[0U] - = ((IData)(vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_zero_change_mask) - ? vlTOPp->Vortex__DOT__vx_fetch__DOT____Vcellinp__VX_Warp_zero__in_thread_mask - [0U] : ((~ (IData)(vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_zero_stall)) - & vlTOPp->Vortex__DOT__vx_fetch__DOT__VX_Warp_zero__DOT__valid - [0U])); - vlTOPp->Vortex__DOT__vx_fetch__DOT____Vcellout__VX_Warp_zero__out_valid[1U] - = ((IData)(vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_zero_change_mask) - ? vlTOPp->Vortex__DOT__vx_fetch__DOT____Vcellinp__VX_Warp_zero__in_thread_mask - [1U] : ((~ (IData)(vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_zero_stall)) - & vlTOPp->Vortex__DOT__vx_fetch__DOT__VX_Warp_zero__DOT__valid - [1U])); - vlTOPp->Vortex__DOT__vx_fetch__DOT____Vcellout__VX_Warp_one__out_valid[0U] - = ((IData)(vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_one_change_mask) - ? vlTOPp->Vortex__DOT__vx_fetch__DOT____Vcellinp__VX_Warp_one__in_thread_mask - [0U] : ((~ (IData)(vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_one_stall)) - & vlTOPp->Vortex__DOT__vx_fetch__DOT__VX_Warp_one__DOT__valid - [0U])); - vlTOPp->Vortex__DOT__vx_fetch__DOT____Vcellout__VX_Warp_one__out_valid[1U] - = ((IData)(vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_one_change_mask) - ? vlTOPp->Vortex__DOT__vx_fetch__DOT____Vcellinp__VX_Warp_one__in_thread_mask - [1U] : ((~ (IData)(vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_one_stall)) - & vlTOPp->Vortex__DOT__vx_fetch__DOT__VX_Warp_one__DOT__valid - [1U])); - vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_zero_valid[1U] - = vlTOPp->Vortex__DOT__vx_fetch__DOT____Vcellout__VX_Warp_zero__out_valid - [1U]; - vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_zero_valid[0U] - = vlTOPp->Vortex__DOT__vx_fetch__DOT____Vcellout__VX_Warp_zero__out_valid - [0U]; - vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_one_valid[1U] - = vlTOPp->Vortex__DOT__vx_fetch__DOT____Vcellout__VX_Warp_one__out_valid - [1U]; - vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_one_valid[0U] - = vlTOPp->Vortex__DOT__vx_fetch__DOT____Vcellout__VX_Warp_one__out_valid - [0U]; - vlTOPp->Vortex__DOT____Vcellout__vx_fetch__out_valid[1U] - = ((0U == (IData)(vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_num)) - ? vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_zero_valid - [1U] : vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_one_valid - [1U]); - vlTOPp->Vortex__DOT____Vcellout__vx_fetch__out_valid[0U] - = ((0U == (IData)(vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_num)) - ? vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_zero_valid - [0U] : vlTOPp->Vortex__DOT__vx_fetch__DOT__warp_one_valid - [0U]); - vlTOPp->Vortex__DOT__fetch_valid[1U] = vlTOPp->Vortex__DOT____Vcellout__vx_fetch__out_valid - [1U]; - vlTOPp->Vortex__DOT__fetch_valid[0U] = vlTOPp->Vortex__DOT____Vcellout__vx_fetch__out_valid - [0U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_f_d_reg__in_valid[1U] - = vlTOPp->Vortex__DOT__fetch_valid[1U]; - vlTOPp->Vortex__DOT____Vcellinp__vx_f_d_reg__in_valid[0U] - = vlTOPp->Vortex__DOT__fetch_valid[0U]; -} - -void VVortex::_eval(VVortex__Syms* __restrict vlSymsp) { - VL_DEBUG_IF(VL_DBG_MSGF("+ VVortex::_eval\n"); ); - VVortex* __restrict vlTOPp VL_ATTR_UNUSED = vlSymsp->TOPp; - // Body - if (((IData)(vlTOPp->clk) & (~ (IData)(vlTOPp->__Vclklast__TOP__clk)))) { - vlTOPp->_sequent__TOP__3(vlSymsp); - } - if ((((IData)(vlTOPp->clk) & (~ (IData)(vlTOPp->__Vclklast__TOP__clk))) - | ((IData)(vlTOPp->reset) & (~ (IData)(vlTOPp->__Vclklast__TOP__reset))))) { - vlTOPp->_sequent__TOP__4(vlSymsp); - } - vlTOPp->_combo__TOP__5(vlSymsp); - if (((~ (IData)(vlTOPp->clk)) & (IData)(vlTOPp->__Vclklast__TOP__clk))) { - vlTOPp->_sequent__TOP__6(vlSymsp); - } - if ((((IData)(vlTOPp->clk) & (~ (IData)(vlTOPp->__Vclklast__TOP__clk))) - | ((IData)(vlTOPp->reset) & (~ (IData)(vlTOPp->__Vclklast__TOP__reset))))) { - vlTOPp->_sequent__TOP__7(vlSymsp); - } - vlTOPp->_combo__TOP__8(vlSymsp); - // Final - vlTOPp->__Vclklast__TOP__clk = vlTOPp->clk; - vlTOPp->__Vclklast__TOP__reset = vlTOPp->reset; -} - -void VVortex::_eval_initial(VVortex__Syms* __restrict vlSymsp) { - VL_DEBUG_IF(VL_DBG_MSGF("+ VVortex::_eval_initial\n"); ); - VVortex* __restrict vlTOPp VL_ATTR_UNUSED = vlSymsp->TOPp; - // Body - vlTOPp->_initial__TOP__1(vlSymsp); - vlTOPp->__Vclklast__TOP__clk = vlTOPp->clk; - vlTOPp->__Vclklast__TOP__reset = vlTOPp->reset; -} - -void VVortex::final() { - VL_DEBUG_IF(VL_DBG_MSGF("+ VVortex::final\n"); ); - // Variables - VVortex__Syms* __restrict vlSymsp = this->__VlSymsp; - VVortex* __restrict vlTOPp VL_ATTR_UNUSED = vlSymsp->TOPp; -} - -void VVortex::_eval_settle(VVortex__Syms* __restrict vlSymsp) { - VL_DEBUG_IF(VL_DBG_MSGF("+ VVortex::_eval_settle\n"); ); - VVortex* __restrict vlTOPp VL_ATTR_UNUSED = vlSymsp->TOPp; - // Body - vlTOPp->_settle__TOP__2(vlSymsp); -} - -VL_INLINE_OPT QData VVortex::_change_request(VVortex__Syms* __restrict vlSymsp) { - VL_DEBUG_IF(VL_DBG_MSGF("+ VVortex::_change_request\n"); ); - VVortex* __restrict vlTOPp VL_ATTR_UNUSED = vlSymsp->TOPp; - // Body - // Change detection - QData __req = false; // Logically a bool - return __req; -} - -#ifdef VL_DEBUG -void VVortex::_eval_debug_assertions() { - VL_DEBUG_IF(VL_DBG_MSGF("+ VVortex::_eval_debug_assertions\n"); ); - // Body - if (VL_UNLIKELY((clk & 0xfeU))) { - Verilated::overWidthError("clk");} - if (VL_UNLIKELY((reset & 0xfeU))) { - Verilated::overWidthError("reset");} -} -#endif // VL_DEBUG - -void VVortex::_ctor_var_reset() { - VL_DEBUG_IF(VL_DBG_MSGF("+ VVortex::_ctor_var_reset\n"); ); - // Body - clk = VL_RAND_RESET_I(1); - reset = VL_RAND_RESET_I(1); - fe_instruction = VL_RAND_RESET_I(32); - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - in_cache_driver_out_data[__Vi0] = VL_RAND_RESET_I(32); - }} - curr_PC = VL_RAND_RESET_I(32); - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - out_cache_driver_in_address[__Vi0] = VL_RAND_RESET_I(32); - }} - out_cache_driver_in_mem_read = VL_RAND_RESET_I(3); - out_cache_driver_in_mem_write = VL_RAND_RESET_I(3); - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - out_cache_driver_in_valid[__Vi0] = VL_RAND_RESET_I(1); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - out_cache_driver_in_data[__Vi0] = VL_RAND_RESET_I(32); - }} - out_ebreak = VL_RAND_RESET_I(1); - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__fetch_valid[__Vi0] = VL_RAND_RESET_I(1); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__f_d_valid[__Vi0] = VL_RAND_RESET_I(1); - }} - Vortex__DOT__decode_branch_stall = VL_RAND_RESET_I(1); - Vortex__DOT__decode_csr_address = VL_RAND_RESET_I(12); - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__decode_a_reg_data[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__decode_b_reg_data[__Vi0] = VL_RAND_RESET_I(32); - }} - Vortex__DOT__decode_itype_immed = VL_RAND_RESET_I(32); - Vortex__DOT__decode_branch_type = VL_RAND_RESET_I(3); - Vortex__DOT__decode_jal = VL_RAND_RESET_I(1); - Vortex__DOT__decode_jal_offset = VL_RAND_RESET_I(32); - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__decode_valid[__Vi0] = VL_RAND_RESET_I(1); - }} - Vortex__DOT__decode_clone_stall = VL_RAND_RESET_I(1); - Vortex__DOT__decode_change_mask = VL_RAND_RESET_I(1); - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__decode_thread_mask[__Vi0] = VL_RAND_RESET_I(1); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__d_e_a_reg_data[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__d_e_b_reg_data[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__d_e_valid[__Vi0] = VL_RAND_RESET_I(1); - }} - Vortex__DOT__execute_branch_stall = VL_RAND_RESET_I(1); - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__execute_alu_result[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__execute_b_reg_data[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__execute_valid[__Vi0] = VL_RAND_RESET_I(1); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__e_m_alu_result[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__e_m_b_reg_data[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__e_m_valid[__Vi0] = VL_RAND_RESET_I(1); - }} - Vortex__DOT__memory_branch_dir = VL_RAND_RESET_I(1); - Vortex__DOT__memory_branch_dest = VL_RAND_RESET_I(32); - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__memory_alu_result[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__memory_mem_result[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__memory_valid[__Vi0] = VL_RAND_RESET_I(1); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__m_w_alu_result[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__m_w_mem_result[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__m_w_valid[__Vi0] = VL_RAND_RESET_I(1); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__writeback_write_data[__Vi0] = VL_RAND_RESET_I(32); - }} - Vortex__DOT__csr_decode_csr_data = VL_RAND_RESET_I(32); - Vortex__DOT__forwarding_fwd_stall = VL_RAND_RESET_I(1); - Vortex__DOT__forwarding_src1_fwd = VL_RAND_RESET_I(1); - Vortex__DOT__forwarding_src2_fwd = VL_RAND_RESET_I(1); - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__forwarding_src1_fwd_data[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__forwarding_src2_fwd_data[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT____Vcellout__vx_fetch__out_valid[__Vi0] = VL_RAND_RESET_I(1); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT____Vcellinp__vx_fetch__in_thread_mask[__Vi0] = VL_RAND_RESET_I(1); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT____Vcellout__vx_f_d_reg__out_valid[__Vi0] = VL_RAND_RESET_I(1); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT____Vcellinp__vx_f_d_reg__in_valid[__Vi0] = VL_RAND_RESET_I(1); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT____Vcellout__vx_decode__out_thread_mask[__Vi0] = VL_RAND_RESET_I(1); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT____Vcellout__vx_decode__out_valid[__Vi0] = VL_RAND_RESET_I(1); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT____Vcellout__vx_decode__out_b_reg_data[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT____Vcellout__vx_decode__out_a_reg_data[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT____Vcellinp__vx_decode__in_src2_fwd_data[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT____Vcellinp__vx_decode__in_src1_fwd_data[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT____Vcellinp__vx_decode__in_wb_valid[__Vi0] = VL_RAND_RESET_I(1); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT____Vcellinp__vx_decode__in_write_data[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT____Vcellinp__vx_decode__in_valid[__Vi0] = VL_RAND_RESET_I(1); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT____Vcellout__vx_d_e_reg__out_valid[__Vi0] = VL_RAND_RESET_I(1); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT____Vcellout__vx_d_e_reg__out_b_reg_data[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT____Vcellout__vx_d_e_reg__out_a_reg_data[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT____Vcellinp__vx_d_e_reg__in_valid[__Vi0] = VL_RAND_RESET_I(1); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT____Vcellinp__vx_d_e_reg__in_b_reg_data[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT____Vcellinp__vx_d_e_reg__in_a_reg_data[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT____Vcellout__vx_execute__out_valid[__Vi0] = VL_RAND_RESET_I(1); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT____Vcellout__vx_execute__out_b_reg_data[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT____Vcellout__vx_execute__out_alu_result[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT____Vcellinp__vx_execute__in_valid[__Vi0] = VL_RAND_RESET_I(1); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT____Vcellinp__vx_execute__in_b_reg_data[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT____Vcellout__vx_e_m_reg__out_valid[__Vi0] = VL_RAND_RESET_I(1); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT____Vcellout__vx_e_m_reg__out_b_reg_data[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT____Vcellout__vx_e_m_reg__out_alu_result[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT____Vcellinp__vx_e_m_reg__in_valid[__Vi0] = VL_RAND_RESET_I(1); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT____Vcellinp__vx_e_m_reg__in_b_reg_data[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT____Vcellinp__vx_e_m_reg__in_alu_result[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT____Vcellout__vx_memory__out_cache_driver_in_valid[__Vi0] = VL_RAND_RESET_I(1); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT____Vcellout__vx_memory__out_cache_driver_in_data[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT____Vcellout__vx_memory__out_cache_driver_in_address[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT____Vcellout__vx_memory__out_valid[__Vi0] = VL_RAND_RESET_I(1); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT____Vcellout__vx_memory__out_mem_result[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT____Vcellout__vx_memory__out_alu_result[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT____Vcellinp__vx_memory__in_cache_driver_out_data[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT____Vcellinp__vx_memory__in_valid[__Vi0] = VL_RAND_RESET_I(1); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT____Vcellinp__vx_memory__in_rd2[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT____Vcellinp__vx_memory__in_alu_result[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT____Vcellout__vx_m_w_reg__out_valid[__Vi0] = VL_RAND_RESET_I(1); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT____Vcellout__vx_m_w_reg__out_mem_result[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT____Vcellout__vx_m_w_reg__out_alu_result[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT____Vcellinp__vx_m_w_reg__in_valid[__Vi0] = VL_RAND_RESET_I(1); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT____Vcellinp__vx_m_w_reg__in_mem_result[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT____Vcellinp__vx_m_w_reg__in_alu_result[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT____Vcellout__vx_writeback__out_write_data[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT____Vcellinp__vx_writeback__in_mem_result[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT____Vcellinp__vx_writeback__in_alu_result[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT____Vcellout__vx_forwarding__out_src2_fwd_data[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT____Vcellout__vx_forwarding__out_src1_fwd_data[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT____Vcellinp__vx_forwarding__in_writeback_mem_data[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT____Vcellinp__vx_forwarding__in_writeback_alu_result[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT____Vcellinp__vx_forwarding__in_memory_mem_data[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT____Vcellinp__vx_forwarding__in_memory_alu_result[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT____Vcellinp__vx_forwarding__in_execute_alu_result[__Vi0] = VL_RAND_RESET_I(32); - }} - Vortex__DOT__vx_fetch__DOT__stall = VL_RAND_RESET_I(1); - Vortex__DOT__vx_fetch__DOT__out_PC = VL_RAND_RESET_I(32); - Vortex__DOT__vx_fetch__DOT__warp_num = VL_RAND_RESET_I(2); - Vortex__DOT__vx_fetch__DOT__warp_state = VL_RAND_RESET_I(2); - Vortex__DOT__vx_fetch__DOT__add_warp = VL_RAND_RESET_I(1); - Vortex__DOT__vx_fetch__DOT__remove_warp = VL_RAND_RESET_I(1); - Vortex__DOT__vx_fetch__DOT__warp_zero_change_mask = VL_RAND_RESET_I(1); - Vortex__DOT__vx_fetch__DOT__warp_zero_stall = VL_RAND_RESET_I(1); - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__vx_fetch__DOT__warp_zero_valid[__Vi0] = VL_RAND_RESET_I(1); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__vx_fetch__DOT____Vcellout__VX_Warp_zero__out_valid[__Vi0] = VL_RAND_RESET_I(1); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__vx_fetch__DOT____Vcellinp__VX_Warp_zero__in_thread_mask[__Vi0] = VL_RAND_RESET_I(1); - }} - Vortex__DOT__vx_fetch__DOT__warp_one_change_mask = VL_RAND_RESET_I(1); - Vortex__DOT__vx_fetch__DOT__warp_one_stall = VL_RAND_RESET_I(1); - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__vx_fetch__DOT__warp_one_valid[__Vi0] = VL_RAND_RESET_I(1); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__vx_fetch__DOT____Vcellout__VX_Warp_one__out_valid[__Vi0] = VL_RAND_RESET_I(1); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__vx_fetch__DOT____Vcellinp__VX_Warp_one__in_thread_mask[__Vi0] = VL_RAND_RESET_I(1); - }} - Vortex__DOT__vx_fetch__DOT__VX_Warp_zero__DOT__real_PC = VL_RAND_RESET_I(32); - Vortex__DOT__vx_fetch__DOT__VX_Warp_zero__DOT__temp_PC = VL_RAND_RESET_I(32); - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__vx_fetch__DOT__VX_Warp_zero__DOT__valid[__Vi0] = VL_RAND_RESET_I(1); - }} - Vortex__DOT__vx_fetch__DOT__VX_Warp_one__DOT__real_PC = VL_RAND_RESET_I(32); - Vortex__DOT__vx_fetch__DOT__VX_Warp_one__DOT__temp_PC = VL_RAND_RESET_I(32); - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__vx_fetch__DOT__VX_Warp_one__DOT__valid[__Vi0] = VL_RAND_RESET_I(1); - }} - Vortex__DOT__vx_f_d_reg__DOT__instruction = VL_RAND_RESET_I(32); - Vortex__DOT__vx_f_d_reg__DOT__curr_PC = VL_RAND_RESET_I(32); - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__vx_f_d_reg__DOT__valid[__Vi0] = VL_RAND_RESET_I(1); - }} - Vortex__DOT__vx_f_d_reg__DOT__warp_num = VL_RAND_RESET_I(2); - Vortex__DOT__vx_decode__DOT__is_itype = VL_RAND_RESET_I(1); - Vortex__DOT__vx_decode__DOT__is_csr = VL_RAND_RESET_I(1); - Vortex__DOT__vx_decode__DOT__is_clone = VL_RAND_RESET_I(1); - Vortex__DOT__vx_decode__DOT__is_jalrs = VL_RAND_RESET_I(1); - Vortex__DOT__vx_decode__DOT__is_jmprt = VL_RAND_RESET_I(1); - Vortex__DOT__vx_decode__DOT__is_wspawn = VL_RAND_RESET_I(1); - Vortex__DOT__vx_decode__DOT__jal_sys_jal = VL_RAND_RESET_I(1); - Vortex__DOT__vx_decode__DOT__alu_tempp = VL_RAND_RESET_I(12); - Vortex__DOT__vx_decode__DOT__mul_alu = VL_RAND_RESET_I(5); - { int __Vi0=0; for (; __Vi0<32; ++__Vi0) { - Vortex__DOT__vx_decode__DOT__w0_t0_registers[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__vx_decode__DOT__zero_a_reg_data[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__vx_decode__DOT__zero_b_reg_data[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<32; ++__Vi0) { - Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__out_b_reg_data[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__out_a_reg_data[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_zero__in_write_data[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_zero__in_src2_fwd_data[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_zero__in_src1_fwd_data[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_zero__in_valid[__Vi0] = VL_RAND_RESET_I(1); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__vx_decode__DOT__one_a_reg_data[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__vx_decode__DOT__one_b_reg_data[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_one__out_b_reg_data[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_one__out_a_reg_data[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<32; ++__Vi0) { - Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_write_data[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_src2_fwd_data[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_src1_fwd_data[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_valid[__Vi0] = VL_RAND_RESET_I(1); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__vx_decode__DOT__jalrs_thread_mask[__Vi0] = VL_RAND_RESET_I(1); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__vx_decode__DOT__jmprt_thread_mask[__Vi0] = VL_RAND_RESET_I(1); - }} - Vortex__DOT__vx_decode__DOT__is_ebreak = VL_RAND_RESET_I(1); - Vortex__DOT__vx_decode__DOT__temp_final_alu = VL_RAND_RESET_I(5); - Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__state_stall = VL_RAND_RESET_I(6); - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__rd1_register[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__rd2_register[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<32; ++__Vi0) { - Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[__Vi0] = VL_RAND_RESET_I(32); - }} - Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_src2_data = VL_RAND_RESET_I(32); - Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_src1_data = VL_RAND_RESET_I(32); - { int __Vi0=0; for (; __Vi0<32; ++__Vi0) { - Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[__Vi0] = VL_RAND_RESET_I(32); - }} - Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__out_src2_data = VL_RAND_RESET_I(32); - Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__out_src1_data = VL_RAND_RESET_I(32); - { int __Vi0=0; for (; __Vi0<32; ++__Vi0) { - Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<32; ++__Vi0) { - Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<32; ++__Vi0) { - Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__rd1_register[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__rd2_register[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<32; ++__Vi0) { - Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[__Vi0] = VL_RAND_RESET_I(32); - }} - Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_state_stall = VL_RAND_RESET_I(6); - Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__wspawn_state_stall = VL_RAND_RESET_I(6); - Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_src2_data = VL_RAND_RESET_I(32); - Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_src1_data = VL_RAND_RESET_I(32); - { int __Vi0=0; for (; __Vi0<32; ++__Vi0) { - Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<32; ++__Vi0) { - Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[__Vi0] = VL_RAND_RESET_I(32); - }} - Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__out_src2_data = VL_RAND_RESET_I(32); - Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__out_src1_data = VL_RAND_RESET_I(32); - { int __Vi0=0; for (; __Vi0<32; ++__Vi0) { - Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<32; ++__Vi0) { - Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<32; ++__Vi0) { - Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[__Vi0] = VL_RAND_RESET_I(32); - }} - Vortex__DOT__vx_d_e_reg__DOT__rd = VL_RAND_RESET_I(5); - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__vx_d_e_reg__DOT__a_reg_data[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__vx_d_e_reg__DOT__b_reg_data[__Vi0] = VL_RAND_RESET_I(32); - }} - Vortex__DOT__vx_d_e_reg__DOT__alu_op = VL_RAND_RESET_I(5); - Vortex__DOT__vx_d_e_reg__DOT__wb = VL_RAND_RESET_I(2); - Vortex__DOT__vx_d_e_reg__DOT__PC_next_out = VL_RAND_RESET_I(32); - Vortex__DOT__vx_d_e_reg__DOT__rs2_src = VL_RAND_RESET_I(1); - Vortex__DOT__vx_d_e_reg__DOT__itype_immed = VL_RAND_RESET_I(32); - Vortex__DOT__vx_d_e_reg__DOT__mem_read = VL_RAND_RESET_I(3); - Vortex__DOT__vx_d_e_reg__DOT__mem_write = VL_RAND_RESET_I(3); - Vortex__DOT__vx_d_e_reg__DOT__branch_type = VL_RAND_RESET_I(3); - Vortex__DOT__vx_d_e_reg__DOT__upper_immed = VL_RAND_RESET_I(20); - Vortex__DOT__vx_d_e_reg__DOT__csr_address = VL_RAND_RESET_I(12); - Vortex__DOT__vx_d_e_reg__DOT__is_csr = VL_RAND_RESET_I(1); - Vortex__DOT__vx_d_e_reg__DOT__csr_mask = VL_RAND_RESET_I(32); - Vortex__DOT__vx_d_e_reg__DOT__curr_PC = VL_RAND_RESET_I(32); - Vortex__DOT__vx_d_e_reg__DOT__jal = VL_RAND_RESET_I(1); - Vortex__DOT__vx_d_e_reg__DOT__jal_offset = VL_RAND_RESET_I(32); - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__vx_d_e_reg__DOT__valid[__Vi0] = VL_RAND_RESET_I(1); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__vx_d_e_reg__DOT__reg_data_z[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__vx_d_e_reg__DOT__valid_z[__Vi0] = VL_RAND_RESET_I(1); - }} - Vortex__DOT__vx_d_e_reg__DOT__warp_num = VL_RAND_RESET_I(2); - Vortex__DOT__vx_d_e_reg__DOT__stalling = VL_RAND_RESET_I(1); - Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__0__KET____DOT__vx_alu__out_alu_result = VL_RAND_RESET_I(32); - Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__1__KET____DOT__vx_alu__out_alu_result = VL_RAND_RESET_I(32); - Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__ALU_in2 = VL_RAND_RESET_I(32); - Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__mult_signed_result = VL_RAND_RESET_Q(64); - Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__ALU_in2 = VL_RAND_RESET_I(32); - Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__mult_signed_result = VL_RAND_RESET_Q(64); - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__vx_e_m_reg__DOT__alu_result[__Vi0] = VL_RAND_RESET_I(32); - }} - Vortex__DOT__vx_e_m_reg__DOT__rd = VL_RAND_RESET_I(5); - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__vx_e_m_reg__DOT__a_reg_data[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__vx_e_m_reg__DOT__b_reg_data[__Vi0] = VL_RAND_RESET_I(32); - }} - Vortex__DOT__vx_e_m_reg__DOT__wb = VL_RAND_RESET_I(2); - Vortex__DOT__vx_e_m_reg__DOT__PC_next = VL_RAND_RESET_I(32); - Vortex__DOT__vx_e_m_reg__DOT__mem_read = VL_RAND_RESET_I(3); - Vortex__DOT__vx_e_m_reg__DOT__mem_write = VL_RAND_RESET_I(3); - Vortex__DOT__vx_e_m_reg__DOT__csr_address = VL_RAND_RESET_I(12); - Vortex__DOT__vx_e_m_reg__DOT__is_csr = VL_RAND_RESET_I(1); - Vortex__DOT__vx_e_m_reg__DOT__csr_result = VL_RAND_RESET_I(32); - Vortex__DOT__vx_e_m_reg__DOT__curr_PC = VL_RAND_RESET_I(32); - Vortex__DOT__vx_e_m_reg__DOT__branch_offset = VL_RAND_RESET_I(32); - Vortex__DOT__vx_e_m_reg__DOT__branch_type = VL_RAND_RESET_I(3); - Vortex__DOT__vx_e_m_reg__DOT__jal = VL_RAND_RESET_I(1); - Vortex__DOT__vx_e_m_reg__DOT__jal_dest = VL_RAND_RESET_I(32); - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__vx_e_m_reg__DOT__valid[__Vi0] = VL_RAND_RESET_I(1); - }} - Vortex__DOT__vx_e_m_reg__DOT__warp_num = VL_RAND_RESET_I(2); - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__vx_m_w_reg__DOT__alu_result[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__vx_m_w_reg__DOT__mem_result[__Vi0] = VL_RAND_RESET_I(32); - }} - Vortex__DOT__vx_m_w_reg__DOT__rd = VL_RAND_RESET_I(5); - Vortex__DOT__vx_m_w_reg__DOT__wb = VL_RAND_RESET_I(2); - Vortex__DOT__vx_m_w_reg__DOT__PC_next = VL_RAND_RESET_I(32); - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__vx_m_w_reg__DOT__valid[__Vi0] = VL_RAND_RESET_I(1); - }} - Vortex__DOT__vx_m_w_reg__DOT__warp_num = VL_RAND_RESET_I(2); - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__vx_writeback__DOT__out_pc_data[__Vi0] = VL_RAND_RESET_I(32); - }} - Vortex__DOT__vx_forwarding__DOT__src1_exe_fwd = VL_RAND_RESET_I(1); - Vortex__DOT__vx_forwarding__DOT__src1_mem_fwd = VL_RAND_RESET_I(1); - Vortex__DOT__vx_forwarding__DOT__src1_wb_fwd = VL_RAND_RESET_I(1); - Vortex__DOT__vx_forwarding__DOT__src2_exe_fwd = VL_RAND_RESET_I(1); - Vortex__DOT__vx_forwarding__DOT__src2_mem_fwd = VL_RAND_RESET_I(1); - Vortex__DOT__vx_forwarding__DOT__src2_wb_fwd = VL_RAND_RESET_I(1); - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__vx_forwarding__DOT__use_execute_PC_next[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__vx_forwarding__DOT__use_memory_PC_next[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<2; ++__Vi0) { - Vortex__DOT__vx_forwarding__DOT__use_writeback_PC_next[__Vi0] = VL_RAND_RESET_I(32); - }} - { int __Vi0=0; for (; __Vi0<4096; ++__Vi0) { - Vortex__DOT__vx_csr_handler__DOT__csr[__Vi0] = VL_RAND_RESET_I(12); - }} - Vortex__DOT__vx_csr_handler__DOT__cycle = VL_RAND_RESET_Q(64); - Vortex__DOT__vx_csr_handler__DOT__instret = VL_RAND_RESET_Q(64); - Vortex__DOT__vx_csr_handler__DOT__decode_csr_address = VL_RAND_RESET_I(12); - __Vtableidx1 = VL_RAND_RESET_I(3); - __Vtable1_Vortex__DOT__vx_decode__DOT__mul_alu[0] = 0x10U; - __Vtable1_Vortex__DOT__vx_decode__DOT__mul_alu[1] = 0x11U; - __Vtable1_Vortex__DOT__vx_decode__DOT__mul_alu[2] = 0x12U; - __Vtable1_Vortex__DOT__vx_decode__DOT__mul_alu[3] = 0x13U; - __Vtable1_Vortex__DOT__vx_decode__DOT__mul_alu[4] = 0x14U; - __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; -} diff --git a/rtl/obj_dir/VVortex.h b/rtl/obj_dir/VVortex.h deleted file mode 100644 index 5f027ce3..00000000 --- a/rtl/obj_dir/VVortex.h +++ /dev/null @@ -1,361 +0,0 @@ -// Verilated -*- C++ -*- -// DESCRIPTION: Verilator output: Primary design header -// -// This header should be included by all source files instantiating the design. -// The class here is then constructed to instantiate the design. -// See the Verilator manual for examples. - -#ifndef _VVortex_H_ -#define _VVortex_H_ - -#include "verilated.h" - -class VVortex__Syms; - -//---------- - -VL_MODULE(VVortex) { - public: - - // PORTS - // The application code writes and reads these signals to - // propagate new values into/out from the Verilated model. - // Begin mtask footprint all: - VL_IN8(clk,0,0); - VL_IN8(reset,0,0); - VL_OUT8(out_cache_driver_in_mem_read,2,0); - VL_OUT8(out_cache_driver_in_mem_write,2,0); - VL_OUT8(out_ebreak,0,0); - VL_IN(fe_instruction,31,0); - VL_OUT(curr_PC,31,0); - VL_IN(in_cache_driver_out_data[2],31,0); - VL_OUT(out_cache_driver_in_address[2],31,0); - VL_OUT8(out_cache_driver_in_valid[2],0,0); - VL_OUT(out_cache_driver_in_data[2],31,0); - - // LOCAL SIGNALS - // Internals; generally not touched by application code - // Anonymous structures to workaround compiler member-count bugs - struct { - // Begin mtask footprint all: - VL_SIG8(Vortex__DOT__decode_branch_stall,0,0); - VL_SIG8(Vortex__DOT__decode_branch_type,2,0); - VL_SIG8(Vortex__DOT__decode_jal,0,0); - VL_SIG8(Vortex__DOT__decode_clone_stall,0,0); - VL_SIG8(Vortex__DOT__decode_change_mask,0,0); - VL_SIG8(Vortex__DOT__execute_branch_stall,0,0); - VL_SIG8(Vortex__DOT__memory_branch_dir,0,0); - VL_SIG8(Vortex__DOT__forwarding_fwd_stall,0,0); - VL_SIG8(Vortex__DOT__forwarding_src1_fwd,0,0); - VL_SIG8(Vortex__DOT__forwarding_src2_fwd,0,0); - VL_SIG8(Vortex__DOT__vx_fetch__DOT__stall,0,0); - VL_SIG8(Vortex__DOT__vx_fetch__DOT__warp_num,1,0); - VL_SIG8(Vortex__DOT__vx_fetch__DOT__warp_state,1,0); - VL_SIG8(Vortex__DOT__vx_fetch__DOT__add_warp,0,0); - VL_SIG8(Vortex__DOT__vx_fetch__DOT__remove_warp,0,0); - VL_SIG8(Vortex__DOT__vx_fetch__DOT__warp_zero_change_mask,0,0); - VL_SIG8(Vortex__DOT__vx_fetch__DOT__warp_zero_stall,0,0); - VL_SIG8(Vortex__DOT__vx_fetch__DOT__warp_one_change_mask,0,0); - VL_SIG8(Vortex__DOT__vx_fetch__DOT__warp_one_stall,0,0); - VL_SIG8(Vortex__DOT__vx_f_d_reg__DOT__warp_num,1,0); - VL_SIG8(Vortex__DOT__vx_decode__DOT__is_itype,0,0); - VL_SIG8(Vortex__DOT__vx_decode__DOT__is_csr,0,0); - VL_SIG8(Vortex__DOT__vx_decode__DOT__is_clone,0,0); - VL_SIG8(Vortex__DOT__vx_decode__DOT__is_jalrs,0,0); - VL_SIG8(Vortex__DOT__vx_decode__DOT__is_jmprt,0,0); - VL_SIG8(Vortex__DOT__vx_decode__DOT__is_wspawn,0,0); - VL_SIG8(Vortex__DOT__vx_decode__DOT__jal_sys_jal,0,0); - VL_SIG8(Vortex__DOT__vx_decode__DOT__mul_alu,4,0); - VL_SIG8(Vortex__DOT__vx_decode__DOT__is_ebreak,0,0); - VL_SIG8(Vortex__DOT__vx_decode__DOT__temp_final_alu,4,0); - VL_SIG8(Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__state_stall,5,0); - VL_SIG8(Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_state_stall,5,0); - VL_SIG8(Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__wspawn_state_stall,5,0); - VL_SIG8(Vortex__DOT__vx_d_e_reg__DOT__rd,4,0); - VL_SIG8(Vortex__DOT__vx_d_e_reg__DOT__alu_op,4,0); - VL_SIG8(Vortex__DOT__vx_d_e_reg__DOT__wb,1,0); - VL_SIG8(Vortex__DOT__vx_d_e_reg__DOT__rs2_src,0,0); - VL_SIG8(Vortex__DOT__vx_d_e_reg__DOT__mem_read,2,0); - VL_SIG8(Vortex__DOT__vx_d_e_reg__DOT__mem_write,2,0); - VL_SIG8(Vortex__DOT__vx_d_e_reg__DOT__branch_type,2,0); - VL_SIG8(Vortex__DOT__vx_d_e_reg__DOT__is_csr,0,0); - VL_SIG8(Vortex__DOT__vx_d_e_reg__DOT__jal,0,0); - VL_SIG8(Vortex__DOT__vx_d_e_reg__DOT__warp_num,1,0); - VL_SIG8(Vortex__DOT__vx_d_e_reg__DOT__stalling,0,0); - VL_SIG8(Vortex__DOT__vx_e_m_reg__DOT__rd,4,0); - VL_SIG8(Vortex__DOT__vx_e_m_reg__DOT__wb,1,0); - VL_SIG8(Vortex__DOT__vx_e_m_reg__DOT__mem_read,2,0); - VL_SIG8(Vortex__DOT__vx_e_m_reg__DOT__mem_write,2,0); - VL_SIG8(Vortex__DOT__vx_e_m_reg__DOT__is_csr,0,0); - VL_SIG8(Vortex__DOT__vx_e_m_reg__DOT__branch_type,2,0); - VL_SIG8(Vortex__DOT__vx_e_m_reg__DOT__jal,0,0); - VL_SIG8(Vortex__DOT__vx_e_m_reg__DOT__warp_num,1,0); - VL_SIG8(Vortex__DOT__vx_m_w_reg__DOT__rd,4,0); - VL_SIG8(Vortex__DOT__vx_m_w_reg__DOT__wb,1,0); - VL_SIG8(Vortex__DOT__vx_m_w_reg__DOT__warp_num,1,0); - VL_SIG8(Vortex__DOT__vx_forwarding__DOT__src1_exe_fwd,0,0); - VL_SIG8(Vortex__DOT__vx_forwarding__DOT__src1_mem_fwd,0,0); - VL_SIG8(Vortex__DOT__vx_forwarding__DOT__src1_wb_fwd,0,0); - VL_SIG8(Vortex__DOT__vx_forwarding__DOT__src2_exe_fwd,0,0); - VL_SIG8(Vortex__DOT__vx_forwarding__DOT__src2_mem_fwd,0,0); - VL_SIG8(Vortex__DOT__vx_forwarding__DOT__src2_wb_fwd,0,0); - VL_SIG16(Vortex__DOT__decode_csr_address,11,0); - VL_SIG16(Vortex__DOT__vx_decode__DOT__alu_tempp,11,0); - VL_SIG16(Vortex__DOT__vx_d_e_reg__DOT__csr_address,11,0); - }; - struct { - VL_SIG16(Vortex__DOT__vx_e_m_reg__DOT__csr_address,11,0); - VL_SIG16(Vortex__DOT__vx_csr_handler__DOT__decode_csr_address,11,0); - VL_SIG(Vortex__DOT__decode_itype_immed,31,0); - VL_SIG(Vortex__DOT__decode_jal_offset,31,0); - VL_SIG(Vortex__DOT__memory_branch_dest,31,0); - VL_SIG(Vortex__DOT__csr_decode_csr_data,31,0); - VL_SIG(Vortex__DOT__vx_fetch__DOT__out_PC,31,0); - VL_SIG(Vortex__DOT__vx_fetch__DOT__VX_Warp_zero__DOT__real_PC,31,0); - VL_SIG(Vortex__DOT__vx_fetch__DOT__VX_Warp_zero__DOT__temp_PC,31,0); - VL_SIG(Vortex__DOT__vx_fetch__DOT__VX_Warp_one__DOT__real_PC,31,0); - VL_SIG(Vortex__DOT__vx_fetch__DOT__VX_Warp_one__DOT__temp_PC,31,0); - VL_SIG(Vortex__DOT__vx_f_d_reg__DOT__instruction,31,0); - VL_SIG(Vortex__DOT__vx_f_d_reg__DOT__curr_PC,31,0); - VL_SIG(Vortex__DOT__vx_d_e_reg__DOT__PC_next_out,31,0); - VL_SIG(Vortex__DOT__vx_d_e_reg__DOT__itype_immed,31,0); - VL_SIG(Vortex__DOT__vx_d_e_reg__DOT__upper_immed,19,0); - VL_SIG(Vortex__DOT__vx_d_e_reg__DOT__csr_mask,31,0); - VL_SIG(Vortex__DOT__vx_d_e_reg__DOT__curr_PC,31,0); - VL_SIG(Vortex__DOT__vx_d_e_reg__DOT__jal_offset,31,0); - VL_SIG(Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__ALU_in2,31,0); - VL_SIG(Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__ALU_in2,31,0); - VL_SIG(Vortex__DOT__vx_e_m_reg__DOT__PC_next,31,0); - VL_SIG(Vortex__DOT__vx_e_m_reg__DOT__csr_result,31,0); - VL_SIG(Vortex__DOT__vx_e_m_reg__DOT__curr_PC,31,0); - VL_SIG(Vortex__DOT__vx_e_m_reg__DOT__branch_offset,31,0); - VL_SIG(Vortex__DOT__vx_e_m_reg__DOT__jal_dest,31,0); - VL_SIG(Vortex__DOT__vx_m_w_reg__DOT__PC_next,31,0); - VL_SIG64(Vortex__DOT__vx_execute__DOT__genblk1__BRA__0__KET____DOT__vx_alu__DOT__mult_signed_result,63,0); - VL_SIG64(Vortex__DOT__vx_execute__DOT__genblk1__BRA__1__KET____DOT__vx_alu__DOT__mult_signed_result,63,0); - VL_SIG64(Vortex__DOT__vx_csr_handler__DOT__cycle,63,0); - VL_SIG64(Vortex__DOT__vx_csr_handler__DOT__instret,63,0); - VL_SIG8(Vortex__DOT__fetch_valid[2],0,0); - VL_SIG8(Vortex__DOT__f_d_valid[2],0,0); - VL_SIG(Vortex__DOT__decode_a_reg_data[2],31,0); - VL_SIG(Vortex__DOT__decode_b_reg_data[2],31,0); - VL_SIG8(Vortex__DOT__decode_valid[2],0,0); - VL_SIG8(Vortex__DOT__decode_thread_mask[2],0,0); - VL_SIG(Vortex__DOT__d_e_a_reg_data[2],31,0); - VL_SIG(Vortex__DOT__d_e_b_reg_data[2],31,0); - VL_SIG8(Vortex__DOT__d_e_valid[2],0,0); - VL_SIG(Vortex__DOT__execute_alu_result[2],31,0); - VL_SIG(Vortex__DOT__execute_b_reg_data[2],31,0); - VL_SIG8(Vortex__DOT__execute_valid[2],0,0); - VL_SIG(Vortex__DOT__e_m_alu_result[2],31,0); - VL_SIG(Vortex__DOT__e_m_b_reg_data[2],31,0); - VL_SIG8(Vortex__DOT__e_m_valid[2],0,0); - VL_SIG(Vortex__DOT__memory_alu_result[2],31,0); - VL_SIG(Vortex__DOT__memory_mem_result[2],31,0); - VL_SIG8(Vortex__DOT__memory_valid[2],0,0); - VL_SIG(Vortex__DOT__m_w_alu_result[2],31,0); - VL_SIG(Vortex__DOT__m_w_mem_result[2],31,0); - VL_SIG8(Vortex__DOT__m_w_valid[2],0,0); - VL_SIG(Vortex__DOT__writeback_write_data[2],31,0); - VL_SIG(Vortex__DOT__forwarding_src1_fwd_data[2],31,0); - VL_SIG(Vortex__DOT__forwarding_src2_fwd_data[2],31,0); - VL_SIG8(Vortex__DOT__vx_fetch__DOT__warp_zero_valid[2],0,0); - VL_SIG8(Vortex__DOT__vx_fetch__DOT__warp_one_valid[2],0,0); - VL_SIG8(Vortex__DOT__vx_fetch__DOT__VX_Warp_zero__DOT__valid[2],0,0); - VL_SIG8(Vortex__DOT__vx_fetch__DOT__VX_Warp_one__DOT__valid[2],0,0); - VL_SIG8(Vortex__DOT__vx_f_d_reg__DOT__valid[2],0,0); - VL_SIG(Vortex__DOT__vx_decode__DOT__w0_t0_registers[32],31,0); - VL_SIG(Vortex__DOT__vx_decode__DOT__zero_a_reg_data[2],31,0); - VL_SIG(Vortex__DOT__vx_decode__DOT__zero_b_reg_data[2],31,0); - VL_SIG(Vortex__DOT__vx_decode__DOT__one_a_reg_data[2],31,0); - }; - struct { - VL_SIG(Vortex__DOT__vx_decode__DOT__one_b_reg_data[2],31,0); - VL_SIG8(Vortex__DOT__vx_decode__DOT__jalrs_thread_mask[2],0,0); - VL_SIG8(Vortex__DOT__vx_decode__DOT__jmprt_thread_mask[2],0,0); - VL_SIG(Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__rd1_register[2],31,0); - VL_SIG(Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__rd2_register[2],31,0); - VL_SIG(Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__clone_regsiters[32],31,0); - VL_SIG(Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__vx_register_file_master__DOT__registers[32],31,0); - VL_SIG(Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[32],31,0); - VL_SIG(Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__rd1_register[2],31,0); - VL_SIG(Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__rd2_register[2],31,0); - VL_SIG(Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__clone_regsiters[32],31,0); - VL_SIG(Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__vx_register_file_master__DOT__registers[32],31,0); - VL_SIG(Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__DOT__registers[32],31,0); - VL_SIG(Vortex__DOT__vx_d_e_reg__DOT__a_reg_data[2],31,0); - VL_SIG(Vortex__DOT__vx_d_e_reg__DOT__b_reg_data[2],31,0); - VL_SIG8(Vortex__DOT__vx_d_e_reg__DOT__valid[2],0,0); - VL_SIG(Vortex__DOT__vx_d_e_reg__DOT__reg_data_z[2],31,0); - VL_SIG8(Vortex__DOT__vx_d_e_reg__DOT__valid_z[2],0,0); - VL_SIG(Vortex__DOT__vx_e_m_reg__DOT__alu_result[2],31,0); - VL_SIG(Vortex__DOT__vx_e_m_reg__DOT__a_reg_data[2],31,0); - VL_SIG(Vortex__DOT__vx_e_m_reg__DOT__b_reg_data[2],31,0); - VL_SIG8(Vortex__DOT__vx_e_m_reg__DOT__valid[2],0,0); - VL_SIG(Vortex__DOT__vx_m_w_reg__DOT__alu_result[2],31,0); - VL_SIG(Vortex__DOT__vx_m_w_reg__DOT__mem_result[2],31,0); - VL_SIG8(Vortex__DOT__vx_m_w_reg__DOT__valid[2],0,0); - VL_SIG(Vortex__DOT__vx_writeback__DOT__out_pc_data[2],31,0); - VL_SIG(Vortex__DOT__vx_forwarding__DOT__use_execute_PC_next[2],31,0); - VL_SIG(Vortex__DOT__vx_forwarding__DOT__use_memory_PC_next[2],31,0); - VL_SIG(Vortex__DOT__vx_forwarding__DOT__use_writeback_PC_next[2],31,0); - VL_SIG16(Vortex__DOT__vx_csr_handler__DOT__csr[4096],11,0); - }; - - // LOCAL VARIABLES - // Internals; generally not touched by application code - // Anonymous structures to workaround compiler member-count bugs - struct { - // Begin mtask footprint all: - VL_SIG8(__Vtableidx1,2,0); - VL_SIG8(__Vclklast__TOP__clk,0,0); - VL_SIG8(__Vclklast__TOP__reset,0,0); - VL_SIG(Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_src2_data,31,0); - VL_SIG(Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_src1_data,31,0); - VL_SIG(Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__out_src2_data,31,0); - VL_SIG(Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__out_src1_data,31,0); - VL_SIG(Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_src2_data,31,0); - VL_SIG(Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_src1_data,31,0); - VL_SIG(Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__out_src2_data,31,0); - VL_SIG(Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__out_src1_data,31,0); - VL_SIG(Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__0__KET____DOT__vx_alu__out_alu_result,31,0); - VL_SIG(Vortex__DOT__vx_execute__DOT____Vcellout__genblk1__BRA__1__KET____DOT__vx_alu__out_alu_result,31,0); - VL_SIG8(Vortex__DOT____Vcellout__vx_fetch__out_valid[2],0,0); - VL_SIG8(Vortex__DOT____Vcellinp__vx_fetch__in_thread_mask[2],0,0); - VL_SIG8(Vortex__DOT____Vcellout__vx_f_d_reg__out_valid[2],0,0); - VL_SIG8(Vortex__DOT____Vcellinp__vx_f_d_reg__in_valid[2],0,0); - VL_SIG8(Vortex__DOT____Vcellout__vx_decode__out_thread_mask[2],0,0); - VL_SIG8(Vortex__DOT____Vcellout__vx_decode__out_valid[2],0,0); - VL_SIG(Vortex__DOT____Vcellout__vx_decode__out_b_reg_data[2],31,0); - VL_SIG(Vortex__DOT____Vcellout__vx_decode__out_a_reg_data[2],31,0); - VL_SIG(Vortex__DOT____Vcellinp__vx_decode__in_src2_fwd_data[2],31,0); - VL_SIG(Vortex__DOT____Vcellinp__vx_decode__in_src1_fwd_data[2],31,0); - VL_SIG8(Vortex__DOT____Vcellinp__vx_decode__in_wb_valid[2],0,0); - VL_SIG(Vortex__DOT____Vcellinp__vx_decode__in_write_data[2],31,0); - VL_SIG8(Vortex__DOT____Vcellinp__vx_decode__in_valid[2],0,0); - VL_SIG8(Vortex__DOT____Vcellout__vx_d_e_reg__out_valid[2],0,0); - VL_SIG(Vortex__DOT____Vcellout__vx_d_e_reg__out_b_reg_data[2],31,0); - VL_SIG(Vortex__DOT____Vcellout__vx_d_e_reg__out_a_reg_data[2],31,0); - VL_SIG8(Vortex__DOT____Vcellinp__vx_d_e_reg__in_valid[2],0,0); - VL_SIG(Vortex__DOT____Vcellinp__vx_d_e_reg__in_b_reg_data[2],31,0); - VL_SIG(Vortex__DOT____Vcellinp__vx_d_e_reg__in_a_reg_data[2],31,0); - VL_SIG8(Vortex__DOT____Vcellout__vx_execute__out_valid[2],0,0); - VL_SIG(Vortex__DOT____Vcellout__vx_execute__out_b_reg_data[2],31,0); - VL_SIG(Vortex__DOT____Vcellout__vx_execute__out_alu_result[2],31,0); - VL_SIG8(Vortex__DOT____Vcellinp__vx_execute__in_valid[2],0,0); - VL_SIG(Vortex__DOT____Vcellinp__vx_execute__in_b_reg_data[2],31,0); - VL_SIG(Vortex__DOT____Vcellinp__vx_execute__in_a_reg_data[2],31,0); - VL_SIG8(Vortex__DOT____Vcellout__vx_e_m_reg__out_valid[2],0,0); - VL_SIG(Vortex__DOT____Vcellout__vx_e_m_reg__out_b_reg_data[2],31,0); - VL_SIG(Vortex__DOT____Vcellout__vx_e_m_reg__out_alu_result[2],31,0); - VL_SIG8(Vortex__DOT____Vcellinp__vx_e_m_reg__in_valid[2],0,0); - VL_SIG(Vortex__DOT____Vcellinp__vx_e_m_reg__in_b_reg_data[2],31,0); - VL_SIG(Vortex__DOT____Vcellinp__vx_e_m_reg__in_alu_result[2],31,0); - VL_SIG8(Vortex__DOT____Vcellout__vx_memory__out_cache_driver_in_valid[2],0,0); - VL_SIG(Vortex__DOT____Vcellout__vx_memory__out_cache_driver_in_data[2],31,0); - VL_SIG(Vortex__DOT____Vcellout__vx_memory__out_cache_driver_in_address[2],31,0); - VL_SIG8(Vortex__DOT____Vcellout__vx_memory__out_valid[2],0,0); - VL_SIG(Vortex__DOT____Vcellout__vx_memory__out_mem_result[2],31,0); - VL_SIG(Vortex__DOT____Vcellout__vx_memory__out_alu_result[2],31,0); - VL_SIG(Vortex__DOT____Vcellinp__vx_memory__in_cache_driver_out_data[2],31,0); - VL_SIG8(Vortex__DOT____Vcellinp__vx_memory__in_valid[2],0,0); - VL_SIG(Vortex__DOT____Vcellinp__vx_memory__in_rd2[2],31,0); - VL_SIG(Vortex__DOT____Vcellinp__vx_memory__in_alu_result[2],31,0); - VL_SIG8(Vortex__DOT____Vcellout__vx_m_w_reg__out_valid[2],0,0); - VL_SIG(Vortex__DOT____Vcellout__vx_m_w_reg__out_mem_result[2],31,0); - VL_SIG(Vortex__DOT____Vcellout__vx_m_w_reg__out_alu_result[2],31,0); - VL_SIG8(Vortex__DOT____Vcellinp__vx_m_w_reg__in_valid[2],0,0); - VL_SIG(Vortex__DOT____Vcellinp__vx_m_w_reg__in_mem_result[2],31,0); - VL_SIG(Vortex__DOT____Vcellinp__vx_m_w_reg__in_alu_result[2],31,0); - VL_SIG(Vortex__DOT____Vcellout__vx_writeback__out_write_data[2],31,0); - VL_SIG(Vortex__DOT____Vcellinp__vx_writeback__in_mem_result[2],31,0); - VL_SIG(Vortex__DOT____Vcellinp__vx_writeback__in_alu_result[2],31,0); - VL_SIG(Vortex__DOT____Vcellout__vx_forwarding__out_src2_fwd_data[2],31,0); - }; - struct { - VL_SIG(Vortex__DOT____Vcellout__vx_forwarding__out_src1_fwd_data[2],31,0); - VL_SIG(Vortex__DOT____Vcellinp__vx_forwarding__in_writeback_mem_data[2],31,0); - VL_SIG(Vortex__DOT____Vcellinp__vx_forwarding__in_writeback_alu_result[2],31,0); - VL_SIG(Vortex__DOT____Vcellinp__vx_forwarding__in_memory_mem_data[2],31,0); - VL_SIG(Vortex__DOT____Vcellinp__vx_forwarding__in_memory_alu_result[2],31,0); - VL_SIG(Vortex__DOT____Vcellinp__vx_forwarding__in_execute_alu_result[2],31,0); - VL_SIG8(Vortex__DOT__vx_fetch__DOT____Vcellout__VX_Warp_zero__out_valid[2],0,0); - VL_SIG8(Vortex__DOT__vx_fetch__DOT____Vcellinp__VX_Warp_zero__in_thread_mask[2],0,0); - VL_SIG8(Vortex__DOT__vx_fetch__DOT____Vcellout__VX_Warp_one__out_valid[2],0,0); - VL_SIG8(Vortex__DOT__vx_fetch__DOT____Vcellinp__VX_Warp_one__in_thread_mask[2],0,0); - VL_SIG(Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__w0_t0_registers[32],31,0); - VL_SIG(Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__out_b_reg_data[2],31,0); - VL_SIG(Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_zero__out_a_reg_data[2],31,0); - VL_SIG(Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_zero__in_write_data[2],31,0); - VL_SIG(Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_zero__in_src2_fwd_data[2],31,0); - VL_SIG(Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_zero__in_src1_fwd_data[2],31,0); - VL_SIG8(Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_zero__in_valid[2],0,0); - VL_SIG(Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_one__out_b_reg_data[2],31,0); - VL_SIG(Vortex__DOT__vx_decode__DOT____Vcellout__VX_Context_one__out_a_reg_data[2],31,0); - VL_SIG(Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_wspawn_regs[32],31,0); - VL_SIG(Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_write_data[2],31,0); - VL_SIG(Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_src2_fwd_data[2],31,0); - VL_SIG(Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_src1_fwd_data[2],31,0); - VL_SIG8(Vortex__DOT__vx_decode__DOT____Vcellinp__VX_Context_one__in_valid[2],0,0); - VL_SIG(Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellout__vx_register_file_master__out_regs[32],31,0); - VL_SIG(Vortex__DOT__vx_decode__DOT__VX_Context_zero__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[32],31,0); - VL_SIG(Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellout__vx_register_file_master__out_regs[32],31,0); - VL_SIG(Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__vx_register_file_master__in_wspawn_regs[32],31,0); - VL_SIG(Vortex__DOT__vx_decode__DOT__VX_Context_one__DOT____Vcellinp__gen_code_label__BRA__1__KET____DOT__vx_register_file_slave__in_regs[32],31,0); - }; - static VL_ST_SIG8(__Vtable1_Vortex__DOT__vx_decode__DOT__mul_alu[8],4,0); - - // INTERNAL VARIABLES - // Internals; generally not touched by application code - VVortex__Syms* __VlSymsp; // Symbol table - - // PARAMETERS - // Parameters marked /*verilator public*/ for use by application code - - // CONSTRUCTORS - private: - VL_UNCOPYABLE(VVortex); ///< Copying not allowed - public: - /// Construct the model; called by application code - /// The special name may be used to make a wrapper with a - /// single model invisible with respect to DPI scope names. - VVortex(const char* name="TOP"); - /// Destroy the model; called (often implicitly) by application code - ~VVortex(); - - // API METHODS - /// Evaluate the model. Application must call when inputs change. - void eval(); - /// Simulation complete, run final blocks. Application must call on completion. - void final(); - - // INTERNAL METHODS - private: - static void _eval_initial_loop(VVortex__Syms* __restrict vlSymsp); - public: - void __Vconfigure(VVortex__Syms* symsp, bool first); - private: - static QData _change_request(VVortex__Syms* __restrict vlSymsp); - public: - static void _combo__TOP__5(VVortex__Syms* __restrict vlSymsp); - static void _combo__TOP__8(VVortex__Syms* __restrict vlSymsp); - private: - void _ctor_var_reset(); - public: - static void _eval(VVortex__Syms* __restrict vlSymsp); - private: -#ifdef VL_DEBUG - void _eval_debug_assertions(); -#endif // VL_DEBUG - public: - static void _eval_initial(VVortex__Syms* __restrict vlSymsp); - static void _eval_settle(VVortex__Syms* __restrict vlSymsp); - static void _initial__TOP__1(VVortex__Syms* __restrict vlSymsp); - static void _sequent__TOP__3(VVortex__Syms* __restrict vlSymsp); - static void _sequent__TOP__4(VVortex__Syms* __restrict vlSymsp); - static void _sequent__TOP__6(VVortex__Syms* __restrict vlSymsp); - static void _sequent__TOP__7(VVortex__Syms* __restrict vlSymsp); - static void _settle__TOP__2(VVortex__Syms* __restrict vlSymsp); -} VL_ATTR_ALIGNED(128); - -#endif // guard diff --git a/rtl/obj_dir/VVortex.mk b/rtl/obj_dir/VVortex.mk deleted file mode 100644 index edc5fcca..00000000 --- a/rtl/obj_dir/VVortex.mk +++ /dev/null @@ -1,66 +0,0 @@ -# Verilated -*- Makefile -*- -# DESCRIPTION: Verilator output: Makefile for building Verilated archive or executable -# -# Execute this makefile from the object directory: -# make -f VVortex.mk - -default: VVortex - -### Constants... -# Perl executable (from $PERL) -PERL = perl -# Path to Verilator kit (from $VERILATOR_ROOT) -VERILATOR_ROOT = /usr/local/Cellar/verilator/4.010/share/verilator -# SystemC include directory with systemc.h (from $SYSTEMC_INCLUDE) -SYSTEMC_INCLUDE ?= -# SystemC library directory with libsystemc.a (from $SYSTEMC_LIBDIR) -SYSTEMC_LIBDIR ?= - -### Switches... -# SystemC output mode? 0/1 (from --sc) -VM_SC = 0 -# Legacy or SystemC output mode? 0/1 (from --sc) -VM_SP_OR_SC = $(VM_SC) -# Deprecated -VM_PCLI = 1 -# Deprecated: SystemC architecture to find link library path (from $SYSTEMC_ARCH) -VM_SC_TARGET_ARCH = linux - -### Vars... -# Design prefix (from --prefix) -VM_PREFIX = VVortex -# Module prefix (from --prefix) -VM_MODPREFIX = VVortex -# User CFLAGS (from -CFLAGS on Verilator command line) -VM_USER_CFLAGS = \ - -# User LDLIBS (from -LDFLAGS on Verilator command line) -VM_USER_LDLIBS = \ - -# User .cpp files (from .cpp's on Verilator command line) -VM_USER_CLASSES = \ - test_bench \ - -# User .cpp directories (from .cpp's on Verilator command line) -VM_USER_DIR = \ - . \ - - -### Default rules... -# Include list of all generated classes -include VVortex_classes.mk -# Include global rules -include $(VERILATOR_ROOT)/include/verilated.mk - -### Executable rules... (from --exe) -VPATH += $(VM_USER_DIR) - -test_bench.o: test_bench.cpp - $(OBJCACHE) $(CXX) $(CXXFLAGS) $(CPPFLAGS) $(OPT_FAST) -c -o $@ $< - -### Link rules... (from --exe) -VVortex: $(VK_USER_OBJS) $(VK_GLOBAL_OBJS) $(VM_PREFIX)__ALL.a - $(LINK) $(LDFLAGS) $^ $(LOADLIBES) $(LDLIBS) -o $@ $(LIBS) $(SC_LIBS) - - -# Verilated -*- Makefile -*- diff --git a/rtl/obj_dir/VVortex__ALL.a b/rtl/obj_dir/VVortex__ALL.a deleted file mode 100644 index 0656f70edc0aa525b760369f1206652ebe76b3ba..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 92480 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 Q>AkUitG&4(Lsww^KQ9(V5C8xG diff --git a/rtl/obj_dir/VVortex__ALLsup.cpp b/rtl/obj_dir/VVortex__ALLsup.cpp deleted file mode 100644 index 989c6da6..00000000 --- a/rtl/obj_dir/VVortex__ALLsup.cpp +++ /dev/null @@ -1,3 +0,0 @@ -// DESCRIPTION: Generated by verilator_includer via makefile -#define VL_INCLUDE_OPT include -#include "VVortex__Syms.cpp" diff --git a/rtl/obj_dir/VVortex__ALLsup.d b/rtl/obj_dir/VVortex__ALLsup.d deleted file mode 100644 index 41db4492..00000000 --- a/rtl/obj_dir/VVortex__ALLsup.d +++ /dev/null @@ -1,4 +0,0 @@ -VVortex__ALLsup.o: VVortex__ALLsup.cpp VVortex__Syms.cpp VVortex__Syms.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__ALLsup.o b/rtl/obj_dir/VVortex__ALLsup.o deleted file mode 100644 index 87227610bb301cc35f1e27106686885e987ac04e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1552 zcmb7EL2DC16rQa$OtrqsGwjydGXMTP(h&w55+_4_jYD6S?j?EZ@>B8y!XAA$uJ*({W$Dm zOgX{ufp@~g9r#4yumSip+W3dPlzYQe1M@jF89C{Zaqd_(N2~>(OWvLP!~NBJxgb5N z-Nj&GigmIz0^c~#nI^YtrnTg7$H;KruJ=JEUXb_`dU8Zxq76AWOT{I_ba>T%khd2& zpPFn<*pnnKQN>(zW>E}DbHdu>Iky&hwrmtFu^F6iSf1Ou*k-!ai$jdIdKp`kTON$z z+Yk53B0Y?e!>B36HPoSo9RT~0L~9*RMm6L#FU?B-%l}$RbH8eh?{UqoA82lMUvpD? zS~G?9XDoNT;{ivkx}&-0-`or{P^6_*t@%iOMg6^`Z`4_9Y{%!f+)tXD+;ykFXwAA% z@HRz8v%c%)_w{P-TeNuRv25SqV{dd_baXq1yv4elFWNpIW^H0t%q7wr+tK+gcC;~| zsBE0E@t!$0-~CX@UX%yxNqe8CVmaYQ{QI;i1D6HT&uTOOzA3Bv)C^N`>vJVU27yM`vGIh6bF*gfjFrpV+%z0>5fa=i7;N}HVS!Xg)fh=TZu%=8(OeN*l+xN4?O?? diff --git a/rtl/obj_dir/VVortex__Syms.cpp b/rtl/obj_dir/VVortex__Syms.cpp deleted file mode 100644 index d5a17e1a..00000000 --- a/rtl/obj_dir/VVortex__Syms.cpp +++ /dev/null @@ -1,19 +0,0 @@ -// Verilated -*- C++ -*- -// DESCRIPTION: Verilator output: Symbol table implementation internals - -#include "VVortex__Syms.h" -#include "VVortex.h" - -// FUNCTIONS -VVortex__Syms::VVortex__Syms(VVortex* topp, const char* namep) - // Setup locals - : __Vm_namep(namep) - , __Vm_didInit(false) - // Setup submodule names -{ - // Pointer to top level - TOPp = topp; - // Setup each module's pointers to their submodules - // Setup each module's pointer back to symbol table (for public functions) - TOPp->__Vconfigure(this, true); -} diff --git a/rtl/obj_dir/VVortex__Syms.h b/rtl/obj_dir/VVortex__Syms.h deleted file mode 100644 index bf4ad048..00000000 --- a/rtl/obj_dir/VVortex__Syms.h +++ /dev/null @@ -1,34 +0,0 @@ -// Verilated -*- C++ -*- -// DESCRIPTION: Verilator output: Symbol table internal header -// -// Internal details; most calling programs do not need this header - -#ifndef _VVortex__Syms_H_ -#define _VVortex__Syms_H_ - -#include "verilated.h" - -// INCLUDE MODULE CLASSES -#include "VVortex.h" - -// SYMS CLASS -class VVortex__Syms : public VerilatedSyms { - public: - - // LOCAL STATE - const char* __Vm_namep; - bool __Vm_didInit; - - // SUBCELL STATE - VVortex* TOPp; - - // CREATORS - VVortex__Syms(VVortex* topp, const char* namep); - ~VVortex__Syms() {} - - // METHODS - inline const char* name() { return __Vm_namep; } - -} VL_ATTR_ALIGNED(64); - -#endif // guard diff --git a/rtl/obj_dir/VVortex__ver.d b/rtl/obj_dir/VVortex__ver.d deleted file mode 100644 index 59bfa3e0..00000000 --- a/rtl/obj_dir/VVortex__ver.d +++ /dev/null @@ -1 +0,0 @@ -obj_dir/VVortex.cpp obj_dir/VVortex.h obj_dir/VVortex.mk obj_dir/VVortex__Syms.cpp obj_dir/VVortex__Syms.h obj_dir/VVortex__ver.d obj_dir/VVortex_classes.mk : /usr/local/Cellar/verilator/4.010/bin/verilator_bin /usr/local/Cellar/verilator/4.010/bin/verilator_bin VX_alu.v VX_context.v VX_context_slave.v VX_csr_handler.v VX_d_e_reg.v VX_decode.v VX_define.v VX_e_m_reg.v VX_execute.v VX_f_d_reg.v VX_fetch.v VX_forwarding.v VX_m_w_reg.v VX_memory.v VX_register_file.v VX_register_file_master_slave.v VX_register_file_slave.v VX_warp.v VX_writeback.v Vortex.v diff --git a/rtl/obj_dir/VVortex__verFiles.dat b/rtl/obj_dir/VVortex__verFiles.dat deleted file mode 100644 index 692021e3..00000000 --- a/rtl/obj_dir/VVortex__verFiles.dat +++ /dev/null @@ -1,31 +0,0 @@ -# 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 2785 12890803842 1558067516 0 1558067516 0 "VX_alu.v" -S 3486 12890803843 1558067516 0 1558067516 0 "VX_context.v" -S 4928 12890803844 1558067516 0 1558067516 0 "VX_context_slave.v" -S 1495 12889457987 1554023089 0 1554023089 0 "VX_csr_handler.v" -S 5512 12890803845 1558067516 0 1558067516 0 "VX_d_e_reg.v" -S 14563 12890803846 1558067516 0 1558067516 0 "VX_decode.v" -S 1574 12890803847 1558067516 0 1558067516 0 "VX_define.v" -S 4267 12890803848 1558067516 0 1558067516 0 "VX_e_m_reg.v" -S 3692 12890803849 1558067516 0 1558067516 0 "VX_execute.v" -S 1751 12890803850 1558067516 0 1558067516 0 "VX_f_d_reg.v" -S 4619 12890803851 1558067516 0 1558067516 0 "VX_fetch.v" -S 6293 12890803852 1558067516 0 1558067516 0 "VX_forwarding.v" -S 1866 12890803853 1558067516 0 1558067516 0 "VX_m_w_reg.v" -S 4352 12890803854 1558067516 0 1558067516 0 "VX_memory.v" -S 1249 12890803855 1558067516 0 1558067516 0 "VX_register_file.v" -S 1655 12890803856 1558067516 0 1558067516 0 "VX_register_file_master_slave.v" -S 1599 12890803857 1558067516 0 1558067516 0 "VX_register_file_slave.v" -S 1686 12890803859 1558067516 0 1558067516 0 "VX_warp.v" -S 1568 12890803860 1558067516 0 1558067516 0 "VX_writeback.v" -S 18714 12890803861 1558067516 0 1558067516 0 "Vortex.v" -T 451065 12890803863 1558067556 0 1558067556 0 "obj_dir/VVortex.cpp" -T 20559 12890803864 1558067556 0 1558067556 0 "obj_dir/VVortex.h" -T 1800 12890416977 1558067556 0 1558067556 0 "obj_dir/VVortex.mk" -T 530 12890416973 1558067556 0 1558067556 0 "obj_dir/VVortex__Syms.cpp" -T 711 12890416972 1558067556 0 1558067556 0 "obj_dir/VVortex__Syms.h" -T 563 12890416978 1558067556 0 1558067556 0 "obj_dir/VVortex__ver.d" -T 0 0 1558067556 0 1558067556 0 "obj_dir/VVortex__verFiles.dat" -T 1159 12890416976 1558067556 0 1558067556 0 "obj_dir/VVortex_classes.mk" diff --git a/rtl/obj_dir/VVortex_classes.mk b/rtl/obj_dir/VVortex_classes.mk deleted file mode 100644 index ebd3a07e..00000000 --- a/rtl/obj_dir/VVortex_classes.mk +++ /dev/null @@ -1,38 +0,0 @@ -# Verilated -*- Makefile -*- -# DESCRIPTION: Verilator output: Make include file with class lists -# -# This file lists generated Verilated files, for including in higher level makefiles. -# See VVortex.mk for the caller. - -### Switches... -# Coverage output mode? 0/1 (from --coverage) -VM_COVERAGE = 0 -# Threaded output mode? 0/1/N threads (from --threads) -VM_THREADS = 0 -# Tracing output mode? 0/1 (from --trace) -VM_TRACE = 0 - -### Object file lists... -# Generated module classes, fast-path, compile with highest optimization -VM_CLASSES_FAST += \ - VVortex \ - -# Generated module classes, non-fast-path, compile with low/medium optimization -VM_CLASSES_SLOW += \ - -# Generated support classes, fast-path, compile with highest optimization -VM_SUPPORT_FAST += \ - -# Generated support classes, non-fast-path, compile with low/medium optimization -VM_SUPPORT_SLOW += \ - VVortex__Syms \ - -# Global classes, need linked once per executable, fast-path, compile with highest optimization -VM_GLOBAL_FAST += \ - verilated \ - -# Global classes, need linked once per executable, non-fast-path, compile with low/medium optimization -VM_GLOBAL_SLOW += \ - - -# Verilated -*- Makefile -*- diff --git a/rtl/obj_dir/test_bench.d b/rtl/obj_dir/test_bench.d deleted file mode 100644 index b918f78f..00000000 --- a/rtl/obj_dir/test_bench.d +++ /dev/null @@ -1,4 +0,0 @@ -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.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 deleted file mode 100644 index 05684420663e90c9797e241a14e86a9b1ee4ead8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 66380 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%0AVEB7f$d zdK;m=`j`iKRNftllCyTh7kD29V#YYsBOMf4)1aqY?P^|R%}DxhzI^`sEZB~1eE0F1 z^%?SqMmRaOmAY)Z0|?X=_A$68W$eedSsK;TqF?YBUnn-yDAym-hPpTi*O;_B6KAY# z;J7UjsFMwuGCS@_IC2|FH-*z{WQ|wi@>3m z{r8}_yS^fT(_3uJ;8Tfl6f41^+f4r_e==>}6#pNS@BYV51 zzfeeIl-Irj0ta~F)cq4WOE{5+ z-VE{F^B7`*%kGI=znuBZTZ8u(w@c8JAVH%E( z4m{aB@OanKuaC?a2AMhH=JAQgFnXQ%4knJ7)i({RF=jP}bsL-riBWKv-&mO6nB_NS z_>E1_Q~Gpd@NS1BE*(uTg4y7KU-;(8PBY+rqJ+8bk3qM zjw15li_`;Efjd zZ}*UVn>+J3tB6#9 zBaiZ=6=sG>1+)%J2ksqh`P}Hb`v;%fcg$XFwLW&;{cU)K$frg-@15Vdt$pYOa3q6( zZQP5x#N;=r^clSV;n;yf+cOq|nHc98?feue7Fpd3g^qSo_NKCPqn$Zoc=P+1AsJhq z7FGPn=l^Vc|NzKT`|WVXe+B4$8w1TmRnp<|?g3HsfOu!``+kGqcf zHqD}T&3UG4r0DxI+9OG5&(t#}#i#r8Mwq4DFN|J1eD+AO>sXov+Uq3RZ+#?@d3K-q zKRocOi6bC(`1OIr!XAb_-2JN?JAY-5N1{3N@caPsM#90TGJ`nwHJF19+8f)RaQi27 zsLdn?brk|-1oJVG`Gd;2314}Z-n3^G?G3l@roE9M>95J~lLmIy0F!OT7yMv~*~Z;4 z4XiFxAKA9gmGZQIzI9}*YY=|_BCnb<2OBMhsiS>b>^Crr zmKGMF;kjV6Wj!hbb%8$P;LoTz8u|5C5N@0&er5vh=)fM-@ZeKNk39dx&)Uk^)r3%s zs4_lMMzq@X+#ePpK6j2^Fw&Bx(M|>_?SA^GKIXx2cV>QsYQ)fp?21TzXnc8Y|Vr?nqHybU$XIv%3FJVIBGwYO~UTqxYhdieT1F}OiRmF%D+4{d3=R?ID{ofgv0BBPxl zLrU+8SwF$+lDPC$4z?5knaICufBGBzC+5+*b(Bn`FfWmp0_{kUU|8fCd?1v&Wo+81 zGXU_W66|)_#M03W`KEbD%52PHyPV-IPjODXM@tqDB^&P=-9f)0ICqb$WTpZatL}yh z%;qw2K02geM&hwdZUHHCctO?{ib-&0tZK^(H_XC}DC54_ehN;F%@Uq}i(b<)YDjQ8 zDBZTF)RNnD7_BU@E-*4Q69lFofu)+V-G>uClz#M9I)T)_2Lvy<2XjhfB<7U3DLOTK zHX!%bu1)t{su1}i$1DNFPntaBiz|$t5glsvX+}5Ebr;@=w&5LI?Iz7&0Re>5QMMJk zXZ{}&(74MS(K@oJA3rC)jI@z^keB73xXoyN0Qw6mMU=y}N6XlBoUj;M1d9RN9>D@e zMlB;lPEev9bX_5GAPOWQ1K7%Hrgs@xUCS*ZFg;hkzy4uzV0vya*pnlpxLf@x(VR!ScJ9MQVrpLTfACQ>jW90r%5uy@@u9FZ9c989UQj)HO$=VX7L~Y& zo)$X+BNc41U+9i4lBML%xnEr{@>RGY(R7WR4|0lxz1UB&lV9Zbb=rcZ!6_26D z{8Nu%I9p6Q>v~;Q{9s5@wVxnZZ-h>%XM+di!w={ONyGjddr{BFg!VfI{sX5t7w(j4 zANrj!z|IUm?}?`+&AW9(1Lm6iXYg86?Gi1&Xq-rK0Owc;<-kKf(_d2Yz6A8^vDK%I7pt`+KRcA2X1sa5>Zy6ob%ePIbVy-Gf=>1=La- zVMG04ucG}i&%06kLctxg5sjZ;u1rt;YDvplsTyy99VyR#hk*lmLL zX@7fzsJOqq3HJ;q{#@D{*tBo+rf1^MpP*-ffyLyW|D(YN+8q3E@VrtZ+_qPkw+{R# zG+(6P@rw2{C=*R{1ZP@cBFI0iAFHGE_J)dWu6DlLoR3Cjr#6xXKxl*M^BNrp`390M>LeOBZRS=s#pkDMAk?6_Nj#pTA9Dj}Nhr&m%=);%4fHnOVuo z`D~f*r?x(%mv9f+&d0{1`k^#bE}JegzKzgRp8)#6s>sgYp+}3U)xmWor~L+688aPJ z^LkO-jy!uxqck(fqlX^&RqeI*6IajYk>={zQ_$au)U_07bYOQEUW<jagsm(U^UIVU@iTK9rY=EyI-Vl-&yNW7>Cb{?Z!u7cwZ-U#-8?IzOh;pN%fz%up%9L9OR`OnXND92xK7{iU!| zG(z^R@o_Y3Ad@HV=)ozxcibHQWFq-uT+?v`^rW7psr7uXiEp9x;^=R)zpI8k{1iXh zng-)fbN)j#J$x1ZWnQ4vjUp{BNC=5TUVDxAGn;t^6IQkhL8Op$c4PR-RzAX|!ai%3 zM`A3sldMGB6rqKrijhMT!mV>fdl1r>(a!)XVlnJq`X7d;ACF_;iMo3w*UcL+>%c3D zHvYs+{PEky$*o62QPLM|Kwn+{mo`82_YjqF%mu}X3Yl#GCvGs?Mw<0v+f+H|G9hf6 zp&3-|d0cV?ps>jaXS00gP^YhDBv%RS! zC)7U-`McP;nQk|SE|}hC21Z)t&v?fkCfaG4FKk#rP@(yB*{d|T?ggiPBdtZP#}#Ic z+c!?b4|rDR9(keCWcDs)e�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 diff --git a/rtl/results.txt b/rtl/results.txt index 28b5491f..e69de29b 100644 --- a/rtl/results.txt +++ b/rtl/results.txt @@ -1,7 +0,0 @@ -# Dynamic Instructions: 222955 -# of total cycles: 222962 -# of forwarding stalls: 0 -# of branch stalls: 0 -# CPI: 1.00003 -# time to simulate: 6.95312e-310 milliseconds -# GRADE: Failed on test: 4294967295 diff --git a/rtl/test_bench.h b/rtl/test_bench.h index 1d4790a6..df92dead 100644 --- a/rtl/test_bench.h +++ b/rtl/test_bench.h @@ -148,7 +148,6 @@ bool Vortex::ibus_driver() ////////////////////// STATS ////////////////////// - ++stats_total_cycles; if (((((unsigned int)curr_inst) != 0) && (((unsigned int)curr_inst) != 0xffffffff))) @@ -175,10 +174,13 @@ bool Vortex::dbus_driver() // std::cout << "DBUS DRIVER\n" << std::endl; ////////////////////// DBUS ////////////////////// + bool did = false; + for (unsigned curr_th = 0; curr_th < NT; curr_th++) { if ((vortex->out_cache_driver_in_mem_write != NO_MEM_WRITE) && vortex->out_cache_driver_in_valid[curr_th]) { + did = true; data_write = (uint32_t) vortex->out_cache_driver_in_data[curr_th]; addr = (uint32_t) vortex->out_cache_driver_in_address[curr_th]; @@ -187,6 +189,18 @@ bool Vortex::dbus_driver() std::cerr << (char) data_write; } + if ((addr >= 0x810002cc) && (addr < 0x810002d0)) + { + int index = (addr - 0x810002cc) / 4; + std::cerr << GREEN << "1done[" << index << "] = " << data_write << DEFAULT << "\n"; + } + + if ((addr >= 0x810059f4) && (addr < 0x810059f4)) + { + int index = (addr - 0x810059f4) / 4; + std::cerr << RED << "2done[" << index << "] = " << data_write << DEFAULT << "\n"; + } + if (vortex->out_cache_driver_in_mem_write == SB_MEM_WRITE) { data_write = ( data_write) & 0xFF; @@ -208,14 +222,15 @@ bool Vortex::dbus_driver() } + + // printf("----\n"); for (unsigned curr_th = 0; curr_th < NT; curr_th++) { if ((vortex->out_cache_driver_in_mem_read != NO_MEM_READ) && vortex->out_cache_driver_in_valid[curr_th]) { - - + did = true; addr = (uint32_t) vortex->out_cache_driver_in_address[curr_th]; ram.getWord(addr, &data_read); @@ -258,6 +273,15 @@ bool Vortex::dbus_driver() } } + + if (did && (NW > 1)) + { + + if (NW < NT) + { + this->stats_total_cycles += NT % (NW -1); + } + } // printf("******\n"); @@ -294,7 +318,6 @@ bool Vortex::simulate(std::string file_to_simulate) unsigned curr_inst; unsigned new_PC; - int cycle = 0; // while (this->stop && (!(stop && (counter > 5)))) // { @@ -360,10 +383,10 @@ bool Vortex::simulate(std::string file_to_simulate) counter = 0; } - cycle++; + ++stats_total_cycles; } - std::cerr << "Total Cycles: " << cycle << "\n"; + std::cerr << "New Total Cycles: " << (this->stats_total_cycles) << "\n"; uint32_t status; ram.getWord(0, &status);