#! /home/hlocal/bin/vvp
:ivl_version "0.9.4 " "(v0_9_4)";
:vpi_time_precision - 12;
:vpi_module "system";
:vpi_module "v2005_math";
:vpi_module "va_math";
S_0x1d00fe0 .scope module, "test_rv32i" "test_rv32i" 2 4;
 .timescale -9 -12;
P_0x1d2f388 .param/l "STEP" 2 5, +C4<01010>;
v0x1d892d0_0 .net *"_s1", 0 0, L_0x1d89f80; 1 drivers
v0x1d89350_0 .net "addr", 31 0, L_0x1d8e0e0; 1 drivers
v0x1d89400_0 .var "clk", 0 0;
v0x1d89510_0 .var/i "count", 31 0;
v0x1d895c0_0 .net "datain", 31 0, L_0x1d8a070; 1 drivers
v0x1d89bb0_0 .net "datain0", 31 0, L_0x1d972f0; 1 drivers
v0x1d89c30_0 .net "datain1", 31 0, L_0x1d96ea0; 1 drivers
v0x1d89cb0_0 .net "dataout", 31 0, L_0x1d7f100; 1 drivers
v0x1d89d30_0 .net "ecall_op", 0 0, L_0x1d8da30; 1 drivers
v0x1d89db0_0 .var/i "icount", 31 0;
v0x1d89e30_0 .var "rst_n", 0 0;
v0x1d89eb0_0 .net "we", 0 0, L_0x1d8e370; 1 drivers
E_0x1cfd660 .event negedge, v0x1d7df50_0;
L_0x1d89f80 .part L_0x1d8e0e0, 10, 1;
L_0x1d8a070 .functor MUXZ 32, L_0x1d972f0, L_0x1d96ea0, L_0x1d89f80, C4<>;
L_0x1d973a0 .part L_0x1d8e0e0, 2, 8;
L_0x1d96f00 .part L_0x1d8e0e0, 2, 8;
S_0x1d7e800 .scope module, "rv32i_1" "rv32i" 2 18, 3 14, S_0x1d00fe0;
 .timescale -9 -12;
L_0x1d7f100 .functor BUFZ 32, v0x1d88830_0, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
L_0x1d8a830 .functor BUFZ 32, v0x1d882f0_0, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
L_0x1d8aed0 .functor AND 1, L_0x1d8bc30, L_0x1d8bd60, C4<1>, C4<1>;
L_0x1d8be50 .functor AND 1, L_0x1d8bf50, L_0x1d8c0c0, C4<1>, C4<1>;
L_0x1d8b870 .functor AND 1, L_0x1d8c690, L_0x1d8ca90, C4<1>, C4<1>;
L_0x1d8cda0 .functor AND 1, L_0x1d8c1f0, L_0x1d8ccb0, C4<1>, C4<1>;
L_0x1d8cbb0 .functor AND 1, L_0x1d8c1f0, L_0x1d8cf20, C4<1>, C4<1>;
L_0x1d8d2d0 .functor AND 1, L_0x1d8c1f0, L_0x1d8d120, C4<1>, C4<1>;
L_0x1d8d010 .functor AND 1, L_0x1d8c1f0, L_0x1d8d4a0, C4<1>, C4<1>;
L_0x1d8d7a0 .functor AND 1, L_0x1d8c1f0, L_0x1d8d6b0, C4<1>, C4<1>;
L_0x1d8d440 .functor AND 1, L_0x1d8c1f0, L_0x1d8d990, C4<1>, C4<1>;
L_0x1d8da30 .functor AND 1, L_0x1d8db60, L_0x1d8d8f0, C4<1>, C4<1>;
L_0x1d8d850 .functor AND 1, L_0x1d8df00, L_0x1d8c350, C4<1>, C4<1>;
L_0x1d8dd70 .functor AND 1, L_0x1d8d850, L_0x1d8e040, C4<1>, C4<1>;
L_0x1d8e370 .functor AND 1, L_0x1d8e280, L_0x1d8aed0, C4<1>, C4<1>;
L_0x1d8e510 .functor AND 1, L_0x1d8cda0, L_0x1d8e670, C4<1>, C4<1>;
L_0x1d8e610 .functor AND 1, L_0x1d8cbb0, L_0x1d8e910, C4<1>, C4<1>;
L_0x1d8ea90 .functor OR 1, L_0x1d8e510, L_0x1d8e610, C4<0>, C4<0>;
L_0x1d8dc40 .functor OR 1, L_0x1d8c560, L_0x1d8be50, C4<0>, C4<0>;
L_0x1d8f1e0 .functor OR 1, L_0x1d8dc40, L_0x1d8b870, C4<0>, C4<0>;
L_0x1d8fe10 .functor OR 1, L_0x1d8c1f0, L_0x1d8c7c0, C4<0>, C4<0>;
L_0x1d8fe70 .functor AND 1, L_0x1d8fff0, L_0x1d8fe10, C4<1>, C4<1>;
L_0x1d8e1d0 .functor AND 1, L_0x1d90130, L_0x1d8be50, C4<1>, C4<1>;
L_0x1d8edc0 .functor OR 1, L_0x1d90560, L_0x1d90600, C4<0>, C4<0>;
L_0x1d90280 .functor OR 1, L_0x1d8be50, L_0x1d8aed0, C4<0>, C4<0>;
L_0x1d902e0 .functor AND 1, L_0x1d908d0, L_0x1d90280, C4<1>, C4<1>;
L_0x1d90800 .functor OR 1, L_0x1d8edc0, L_0x1d902e0, C4<0>, C4<0>;
L_0x1d90a80 .functor OR 1, L_0x1d8c1f0, L_0x1d8c7c0, C4<0>, C4<0>;
L_0x1d90dc0 .functor OR 1, L_0x1d90a80, L_0x1d8b870, C4<0>, C4<0>;
L_0x1d90e20 .functor AND 1, L_0x1d90ef0, L_0x1d90dc0, C4<1>, C4<1>;
L_0x1d91260 .functor OR 1, L_0x1d90800, L_0x1d90e20, C4<0>, C4<0>;
L_0x1d91450 .functor OR 1, L_0x1d8c7c0, L_0x1d8b870, C4<0>, C4<0>;
L_0x1d90b70 .functor AND 1, L_0x1d913b0, L_0x1d91450, C4<1>, C4<1>;
L_0x1d90f90 .functor AND 1, L_0x1d91650, L_0x1d8be50, C4<1>, C4<1>;
L_0x1d91110 .functor OR 1, L_0x1d90b70, L_0x1d90f90, C4<0>, C4<0>;
L_0x1d91930 .functor OR 1, L_0x1d8c350, L_0x1d8c560, C4<0>, C4<0>;
L_0x1d90ff0 .functor AND 1, L_0x1d91590, L_0x1d91930, C4<1>, C4<1>;
L_0x1d91ac0 .functor OR 1, L_0x1d91110, L_0x1d90ff0, C4<0>, C4<0>;
v0x1d83920_0 .net *"_s10", 31 0, L_0x1d8a830; 1 drivers
v0x1d839a0_0 .net *"_s101", 2 0, C4<100>; 1 drivers
v0x1d83a40_0 .net *"_s103", 0 0, L_0x1d8d120; 1 drivers
v0x1d83ae0_0 .net *"_s107", 2 0, C4<101>; 1 drivers
v0x1d83b90_0 .net *"_s109", 0 0, L_0x1d8d4a0; 1 drivers
v0x1d83c30_0 .net *"_s113", 2 0, C4<110>; 1 drivers
v0x1d83cd0_0 .net *"_s115", 0 0, L_0x1d8d6b0; 1 drivers
v0x1d83d70_0 .net *"_s119", 2 0, C4<111>; 1 drivers
v0x1d83e10_0 .net *"_s12", 0 0, L_0x1d8a890; 1 drivers
v0x1d83eb0_0 .net *"_s121", 0 0, L_0x1d8d990; 1 drivers
v0x1d83f50_0 .net *"_s125", 6 0, C4<1110011>; 1 drivers
v0x1d83ff0_0 .net *"_s127", 0 0, L_0x1d8db60; 1 drivers
v0x1d84090_0 .net *"_s129", 2 0, C4<000>; 1 drivers
v0x1d84130_0 .net *"_s131", 0 0, L_0x1d8d8f0; 1 drivers
v0x1d84250_0 .net *"_s136", 0 0, L_0x1d8df00; 1 drivers
v0x1d842f0_0 .net *"_s137", 0 0, L_0x1d8d850; 1 drivers
v0x1d841b0_0 .net *"_s140", 0 0, L_0x1d8e040; 1 drivers
v0x1d84440_0 .net *"_s144", 0 0, L_0x1d8e280; 1 drivers
v0x1d84560_0 .net *"_s148", 0 0, L_0x1d8e470; 1 drivers
v0x1d845e0_0 .net *"_s151", 0 0, L_0x1d8e670; 1 drivers
v0x1d844c0_0 .net *"_s153", 0 0, L_0x1d8e510; 1 drivers
v0x1d84710_0 .net *"_s155", 0 0, L_0x1d8e910; 1 drivers
v0x1d84660_0 .net *"_s157", 0 0, L_0x1d8e610; 1 drivers
v0x1d84850_0 .net *"_s159", 0 0, L_0x1d8ea90; 1 drivers
v0x1d847b0_0 .net *"_s162", 18 0, L_0x1d8ec30; 1 drivers
v0x1d849a0_0 .net *"_s163", 31 0, L_0x1d8e710; 1 drivers
v0x1d848f0_0 .net *"_s165", 31 0, C4<00000000000000000000000000000100>; 1 drivers
v0x1d84b00_0 .net *"_s170", 0 0, L_0x1d8f080; 1 drivers
v0x1d84a40_0 .net *"_s171", 31 0, C4<00000000000000000000000000000100>; 1 drivers
v0x1d84c70_0 .net *"_s173", 0 0, L_0x1d8dc40; 1 drivers
v0x1d84b80_0 .net *"_s175", 0 0, L_0x1d8f1e0; 1 drivers
v0x1d84df0_0 .net *"_s177", 31 0, L_0x1d8eb90; 1 drivers
v0x1d84cf0_0 .net *"_s179", 31 0, L_0x1d8eef0; 1 drivers
v0x1d84f80_0 .net *"_s182", 10 0, L_0x1d8f580; 1 drivers
v0x1d84e70_0 .net *"_s183", 31 0, L_0x1d8f3e0; 1 drivers
v0x1d85120_0 .net *"_s185", 31 0, L_0x1d8f4d0; 1 drivers
v0x1d85000_0 .net *"_s187", 31 0, L_0x1d8f880; 1 drivers
v0x1d850a0_0 .net *"_s189", 31 0, L_0x1d8f9c0; 1 drivers
v0x1d852e0_0 .net *"_s191", 31 0, L_0x1d8fc30; 1 drivers
v0x1d85360_0 .net *"_s196", 0 0, L_0x1d8fb50; 1 drivers
v0x1d851a0_0 .net *"_s198", 0 0, L_0x1d8fff0; 1 drivers
v0x1d85240_0 .net *"_s199", 0 0, L_0x1d8fe10; 1 drivers
v0x1d85540_0 .net *"_s20", 0 0, L_0x1d8af30; 1 drivers
v0x1d855c0_0 .net *"_s201", 0 0, L_0x1d8fe70; 1 drivers
v0x1d853e0_0 .net *"_s203", 31 0, L_0x1d8f2e0; 1 drivers
v0x1d85480_0 .net *"_s208", 0 0, L_0x1d90130; 1 drivers
v0x1d857c0_0 .net *"_s209", 0 0, L_0x1d8e1d0; 1 drivers
v0x1d85840_0 .net *"_s214", 0 0, L_0x1d90560; 1 drivers
v0x1d85660_0 .net *"_s216", 0 0, L_0x1d90600; 1 drivers
v0x1d85700_0 .net *"_s217", 0 0, L_0x1d8edc0; 1 drivers
v0x1d85a60_0 .net *"_s22", 0 0, L_0x1d8b060; 1 drivers
v0x1d85ae0_0 .net *"_s220", 0 0, L_0x1d908d0; 1 drivers
v0x1d858e0_0 .net *"_s221", 0 0, L_0x1d90280; 1 drivers
v0x1d85980_0 .net *"_s223", 0 0, L_0x1d902e0; 1 drivers
v0x1d85d20_0 .net *"_s225", 0 0, L_0x1d90800; 1 drivers
v0x1d85da0_0 .net *"_s228", 0 0, L_0x1d90ef0; 1 drivers
v0x1d85b60_0 .net *"_s229", 0 0, L_0x1d90a80; 1 drivers
v0x1d85c00_0 .net *"_s231", 0 0, L_0x1d90dc0; 1 drivers
v0x1d85ca0_0 .net *"_s233", 0 0, L_0x1d90e20; 1 drivers
v0x1d86020_0 .net *"_s238", 0 0, L_0x1d913b0; 1 drivers
v0x1d85e40_0 .net *"_s239", 0 0, L_0x1d91450; 1 drivers
v0x1d85ee0_0 .net *"_s24", 5 0, L_0x1d8b200; 1 drivers
v0x1d85f80_0 .net *"_s241", 0 0, L_0x1d90b70; 1 drivers
v0x1d862c0_0 .net *"_s244", 0 0, L_0x1d91650; 1 drivers
v0x1d860c0_0 .net *"_s245", 0 0, L_0x1d90f90; 1 drivers
v0x1d86160_0 .net *"_s247", 0 0, L_0x1d91110; 1 drivers
v0x1d86200_0 .net *"_s250", 0 0, L_0x1d91590; 1 drivers
v0x1d86560_0 .net *"_s251", 0 0, L_0x1d91930; 1 drivers
v0x1d86360_0 .net *"_s253", 0 0, L_0x1d90ff0; 1 drivers
v0x1d86400_0 .net *"_s26", 3 0, L_0x1d8b2a0; 1 drivers
v0x1d864a0_0 .net *"_s27", 0 0, C4<0>; 1 drivers
v0x1d86820_0 .net *"_s32", 0 0, L_0x1d8b530; 1 drivers
v0x1d865e0_0 .net *"_s34", 7 0, L_0x1d8b660; 1 drivers
v0x1d86680_0 .net *"_s36", 0 0, L_0x1d8b790; 1 drivers
v0x1d86720_0 .net *"_s38", 9 0, L_0x1d8b8d0; 1 drivers
v0x1d86b00_0 .net *"_s39", 0 0, C4<0>; 1 drivers
v0x1d868a0_0 .net *"_s43", 6 0, C4<0100011>; 1 drivers
v0x1d86940_0 .net *"_s45", 0 0, L_0x1d8bc30; 1 drivers
v0x1d869e0_0 .net *"_s47", 2 0, C4<010>; 1 drivers
v0x1d86a80_0 .net *"_s49", 0 0, L_0x1d8bd60; 1 drivers
v0x1d86e10_0 .net *"_s53", 6 0, C4<0000011>; 1 drivers
v0x1d86e90_0 .net *"_s55", 0 0, L_0x1d8bf50; 1 drivers
v0x1d86ba0_0 .net *"_s57", 2 0, C4<010>; 1 drivers
v0x1d86c40_0 .net *"_s59", 0 0, L_0x1d8c0c0; 1 drivers
v0x1d86ce0_0 .net *"_s63", 6 0, C4<0110011>; 1 drivers
v0x1d86d80_0 .net *"_s67", 6 0, C4<0010011>; 1 drivers
v0x1d871f0_0 .net *"_s71", 6 0, C4<1100011>; 1 drivers
v0x1d87290_0 .net *"_s75", 6 0, C4<1101111>; 1 drivers
v0x1d86f30_0 .net *"_s79", 6 0, C4<1100111>; 1 drivers
v0x1d86fd0_0 .net *"_s81", 0 0, L_0x1d8c690; 1 drivers
v0x1d87070_0 .net *"_s83", 2 0, C4<000>; 1 drivers
v0x1d87110_0 .net *"_s85", 0 0, L_0x1d8ca90; 1 drivers
v0x1d87600_0 .net *"_s89", 2 0, C4<000>; 1 drivers
v0x1d87680_0 .net *"_s91", 0 0, L_0x1d8ccb0; 1 drivers
v0x1d87330_0 .net *"_s95", 2 0, C4<001>; 1 drivers
v0x1d873d0_0 .net *"_s97", 0 0, L_0x1d8cf20; 1 drivers
v0x1d87470_0 .net "a", 31 0, L_0x1d96bd0; 1 drivers
v0x1d874f0_0 .net "addcom", 0 0, L_0x1d91260; 1 drivers
v0x1d87a20_0 .alias "adr", 31 0, v0x1d89350_0;
v0x1d87aa0_0 .net "alu_op", 0 0, L_0x1d8c350; 1 drivers
v0x1d87700_0 .net "aluresult", 31 0, L_0x1d92460; 1 drivers
v0x1d877b0_0 .net "b", 31 0, L_0x1d97070; 1 drivers
v0x1d87860_0 .net "beq_op", 0 0, L_0x1d8cda0; 1 drivers
v0x1d878e0_0 .net "bge_op", 0 0, L_0x1d8d010; 1 drivers
v0x1d87960_0 .net "bgeu_op", 0 0, L_0x1d8d440; 1 drivers
v0x1d87e70_0 .net "blt_op", 0 0, L_0x1d8d2d0; 1 drivers
v0x1d87b20_0 .net "bltu_op", 0 0, L_0x1d8d7a0; 1 drivers
v0x1d87bc0_0 .net "bne_op", 0 0, L_0x1d8cbb0; 1 drivers
v0x1d87c60_0 .net "bra_op", 0 0, L_0x1d8c1f0; 1 drivers
v0x1d87d00_0 .net "bra_srcb", 31 0, L_0x1d8ee50; 1 drivers
v0x1d87da0_0 .net "clk", 0 0, v0x1d89400_0; 1 drivers
v0x1d88270_0 .alias "ecall_op", 0 0, v0x1d89d30_0;
v0x1d87ef0_0 .net "ext", 0 0, L_0x1d8dd70; 1 drivers
v0x1d87f70_0 .net "funct3", 2 0, L_0x1d8a570; 1 drivers
v0x1d88020_0 .net "funct7", 6 0, L_0x1d8a2a0; 1 drivers
v0x1d880a0_0 .net "imm_b", 12 0, L_0x1d8b3c0; 1 drivers
v0x1d88120_0 .net "imm_i", 11 0, L_0x1d8ab20; 1 drivers
v0x1d881c0_0 .net "imm_j", 20 0, L_0x1d8b970; 1 drivers
v0x1d886b0_0 .net "imm_op", 0 0, L_0x1d8c560; 1 drivers
v0x1d88730_0 .net "imm_s", 11 0, L_0x1d8ac10; 1 drivers
v0x1d882f0_0 .var "ir", 31 0;
v0x1d88370_0 .net "jal_op", 0 0, L_0x1d8c7c0; 1 drivers
v0x1d88410_0 .net "jalr_op", 0 0, L_0x1d8b870; 1 drivers
v0x1d884b0_0 .net "lw_op", 0 0, L_0x1d8be50; 1 drivers
v0x1d88550_0 .net "opcode", 6 0, L_0x1d8a790; 1 drivers
v0x1d885f0_0 .var "pc", 31 0;
v0x1d88bb0_0 .net "rd", 4 0, L_0x1d8a6f0; 1 drivers
v0x1d88c60_0 .alias "readdata", 31 0, v0x1d895c0_0;
v0x1d887b0_0 .var "reg1", 31 0;
v0x1d88830_0 .var "reg2", 31 0;
v0x1d888d0_0 .var "regalu", 31 0;
v0x1d88970_0 .net "result", 31 0, L_0x1d906c0; 1 drivers
v0x1d88a20_0 .net "rs1", 4 0, L_0x1d8a480; 1 drivers
v0x1d88ad0_0 .net "rs2", 4 0, L_0x1d8a340; 1 drivers
v0x1d89120_0 .net "rst_n", 0 0, v0x1d89e30_0; 1 drivers
v0x1d891a0_0 .net "rwe", 0 0, L_0x1d91ac0; 1 drivers
v0x1d88ce0_0 .net "sext", 19 0, L_0x1d8a980; 1 drivers
v0x1d88d60_0 .net "srca", 31 0, L_0x1d90420; 1 drivers
v0x1d88de0_0 .net "srcb", 31 0, L_0x1d8fd70; 1 drivers
v0x1d88eb0_0 .net/s "sreg1", 31 0, v0x1d887b0_0; 1 drivers
v0x1d88f30_0 .net/s "sreg2", 31 0, v0x1d88830_0; 1 drivers
v0x1d88fb0_0 .var "stat", 4 0;
v0x1d89030_0 .net "sw_op", 0 0, L_0x1d8aed0; 1 drivers
v0x1d896a0_0 .alias "we", 0 0, v0x1d89eb0_0;
v0x1d89220_0 .alias "writedata", 31 0, v0x1d89cb0_0;
E_0x1d7e5f0/0 .event negedge, v0x1d89120_0;
E_0x1d7e5f0/1 .event posedge, v0x1d7df50_0;
E_0x1d7e5f0 .event/or E_0x1d7e5f0/0, E_0x1d7e5f0/1;
L_0x1d8a2a0 .part L_0x1d8a830, 25, 7;
L_0x1d8a340 .part L_0x1d8a830, 20, 5;
L_0x1d8a480 .part L_0x1d8a830, 15, 5;
L_0x1d8a570 .part L_0x1d8a830, 12, 3;
L_0x1d8a6f0 .part L_0x1d8a830, 7, 5;
L_0x1d8a790 .part L_0x1d8a830, 0, 7;
L_0x1d8a890 .part v0x1d882f0_0, 31, 1;
LS_0x1d8a980_0_0 .concat [ 1 1 1 1], L_0x1d8a890, L_0x1d8a890, L_0x1d8a890, L_0x1d8a890;
LS_0x1d8a980_0_4 .concat [ 1 1 1 1], L_0x1d8a890, L_0x1d8a890, L_0x1d8a890, L_0x1d8a890;
LS_0x1d8a980_0_8 .concat [ 1 1 1 1], L_0x1d8a890, L_0x1d8a890, L_0x1d8a890, L_0x1d8a890;
LS_0x1d8a980_0_12 .concat [ 1 1 1 1], L_0x1d8a890, L_0x1d8a890, L_0x1d8a890, L_0x1d8a890;
LS_0x1d8a980_0_16 .concat [ 1 1 1 1], L_0x1d8a890, L_0x1d8a890, L_0x1d8a890, L_0x1d8a890;
LS_0x1d8a980_1_0 .concat [ 4 4 4 4], LS_0x1d8a980_0_0, LS_0x1d8a980_0_4, LS_0x1d8a980_0_8, LS_0x1d8a980_0_12;
LS_0x1d8a980_1_4 .concat [ 4 0 0 0], LS_0x1d8a980_0_16;
L_0x1d8a980 .concat [ 16 4 0 0], LS_0x1d8a980_1_0, LS_0x1d8a980_1_4;
L_0x1d8ab20 .concat [ 5 7 0 0], L_0x1d8a340, L_0x1d8a2a0;
L_0x1d8ac10 .concat [ 5 7 0 0], L_0x1d8a6f0, L_0x1d8a2a0;
L_0x1d8af30 .part L_0x1d8a2a0, 6, 1;
L_0x1d8b060 .part L_0x1d8a6f0, 0, 1;
L_0x1d8b200 .part L_0x1d8a2a0, 0, 6;
L_0x1d8b2a0 .part L_0x1d8a6f0, 1, 4;
LS_0x1d8b3c0_0_0 .concat [ 1 4 6 1], C4<0>, L_0x1d8b2a0, L_0x1d8b200, L_0x1d8b060;
LS_0x1d8b3c0_0_4 .concat [ 1 0 0 0], L_0x1d8af30;
L_0x1d8b3c0 .concat [ 12 1 0 0], LS_0x1d8b3c0_0_0, LS_0x1d8b3c0_0_4;
L_0x1d8b530 .part v0x1d882f0_0, 31, 1;
L_0x1d8b660 .part v0x1d882f0_0, 12, 8;
L_0x1d8b790 .part v0x1d882f0_0, 20, 1;
L_0x1d8b8d0 .part v0x1d882f0_0, 21, 10;
LS_0x1d8b970_0_0 .concat [ 1 10 1 8], C4<0>, L_0x1d8b8d0, L_0x1d8b790, L_0x1d8b660;
LS_0x1d8b970_0_4 .concat [ 1 0 0 0], L_0x1d8b530;
L_0x1d8b970 .concat [ 20 1 0 0], LS_0x1d8b970_0_0, LS_0x1d8b970_0_4;
L_0x1d8bc30 .cmp/eq 7, L_0x1d8a790, C4<0100011>;
L_0x1d8bd60 .cmp/eq 3, L_0x1d8a570, C4<010>;
L_0x1d8bf50 .cmp/eq 7, L_0x1d8a790, C4<0000011>;
L_0x1d8c0c0 .cmp/eq 3, L_0x1d8a570, C4<010>;
L_0x1d8c350 .cmp/eq 7, L_0x1d8a790, C4<0110011>;
L_0x1d8c560 .cmp/eq 7, L_0x1d8a790, C4<0010011>;
L_0x1d8c1f0 .cmp/eq 7, L_0x1d8a790, C4<1100011>;
L_0x1d8c7c0 .cmp/eq 7, L_0x1d8a790, C4<1101111>;
L_0x1d8c690 .cmp/eq 7, L_0x1d8a790, C4<1100111>;
L_0x1d8ca90 .cmp/eq 3, L_0x1d8a570, C4<000>;
L_0x1d8ccb0 .cmp/eq 3, L_0x1d8a570, C4<000>;
L_0x1d8cf20 .cmp/eq 3, L_0x1d8a570, C4<001>;
L_0x1d8d120 .cmp/eq 3, L_0x1d8a570, C4<100>;
L_0x1d8d4a0 .cmp/eq 3, L_0x1d8a570, C4<101>;
L_0x1d8d6b0 .cmp/eq 3, L_0x1d8a570, C4<110>;
L_0x1d8d990 .cmp/eq 3, L_0x1d8a570, C4<111>;
L_0x1d8db60 .cmp/eq 7, L_0x1d8a790, C4<1110011>;
L_0x1d8d8f0 .cmp/eq 3, L_0x1d8a570, C4<000>;
L_0x1d8df00 .part v0x1d88fb0_0, 4, 1;
L_0x1d8e040 .part L_0x1d8a2a0, 5, 1;
L_0x1d8e280 .part v0x1d88fb0_0, 3, 1;
L_0x1d8e470 .part v0x1d88fb0_0, 0, 1;
L_0x1d8e0e0 .functor MUXZ 32, v0x1d888d0_0, v0x1d885f0_0, L_0x1d8e470, C4<>;
L_0x1d8e670 .cmp/eq 32, v0x1d887b0_0, v0x1d88830_0;
L_0x1d8e910 .cmp/ne 32, v0x1d887b0_0, v0x1d88830_0;
L_0x1d8ec30 .part L_0x1d8a980, 0, 19;
L_0x1d8e710 .concat [ 13 19 0 0], L_0x1d8b3c0, L_0x1d8ec30;
L_0x1d8ee50 .functor MUXZ 32, C4<00000000000000000000000000000100>, L_0x1d8e710, L_0x1d8ea90, C4<>;
L_0x1d8f080 .part v0x1d88fb0_0, 1, 1;
L_0x1d8eb90 .concat [ 12 20 0 0], L_0x1d8ab20, L_0x1d8a980;
L_0x1d8eef0 .concat [ 12 20 0 0], L_0x1d8ac10, L_0x1d8a980;
L_0x1d8f580 .part L_0x1d8a980, 0, 11;
L_0x1d8f3e0 .concat [ 21 11 0 0], L_0x1d8b970, L_0x1d8f580;
L_0x1d8f4d0 .functor MUXZ 32, v0x1d88830_0, L_0x1d8f3e0, L_0x1d8c7c0, C4<>;
L_0x1d8f880 .functor MUXZ 32, L_0x1d8f4d0, L_0x1d8eef0, L_0x1d8aed0, C4<>;
L_0x1d8f9c0 .functor MUXZ 32, L_0x1d8f880, L_0x1d8ee50, L_0x1d8c1f0, C4<>;
L_0x1d8fc30 .functor MUXZ 32, L_0x1d8f9c0, L_0x1d8eb90, L_0x1d8f1e0, C4<>;
L_0x1d8fd70 .functor MUXZ 32, L_0x1d8fc30, C4<00000000000000000000000000000100>, L_0x1d8f080, C4<>;
L_0x1d8fb50 .part v0x1d88fb0_0, 1, 1;
L_0x1d8fff0 .part v0x1d88fb0_0, 4, 1;
L_0x1d8f2e0 .functor MUXZ 32, v0x1d887b0_0, v0x1d885f0_0, L_0x1d8fe70, C4<>;
L_0x1d90420 .functor MUXZ 32, L_0x1d8f2e0, v0x1d885f0_0, L_0x1d8fb50, C4<>;
L_0x1d90130 .part v0x1d88fb0_0, 3, 1;
L_0x1d906c0 .functor MUXZ 32, L_0x1d92460, L_0x1d8a070, L_0x1d8e1d0, C4<>;
L_0x1d90560 .part v0x1d88fb0_0, 0, 1;
L_0x1d90600 .part v0x1d88fb0_0, 1, 1;
L_0x1d908d0 .part v0x1d88fb0_0, 2, 1;
L_0x1d90ef0 .part v0x1d88fb0_0, 4, 1;
L_0x1d913b0 .part v0x1d88fb0_0, 1, 1;
L_0x1d91650 .part v0x1d88fb0_0, 3, 1;
L_0x1d91590 .part v0x1d88fb0_0, 4, 1;
S_0x1d7fab0 .scope module, "alu_1" "alu" 3 94, 4 3, S_0x1d7e800;
 .timescale -9 -12;
L_0x1d92690 .functor AND 1, L_0x1d925a0, L_0x1d8dd70, C4<1>, C4<1>;
L_0x1d92d70 .functor NOT 1, L_0x1d8dd70, C4<0>, C4<0>, C4<0>;
L_0x1d92e60 .functor AND 1, L_0x1d92930, L_0x1d92d70, C4<1>, C4<1>;
L_0x1d93740 .functor XOR 34, L_0x1d93490, L_0x1d93170, C4<0000000000000000000000000000000000>, C4<0000000000000000000000000000000000>;
L_0x1d93880 .functor OR 34, L_0x1d93530, L_0x1d93c10, C4<0000000000000000000000000000000000>, C4<0000000000000000000000000000000000>;
L_0x1d94280 .functor AND 34, L_0x1d93fe0, L_0x1d94150, C4<1111111111111111111111111111111111>, C4<1111111111111111111111111111111111>;
L_0x1d94a00 .functor NOT 1, L_0x1d8dd70, C4<0>, C4<0>, C4<0>;
L_0x1d94a60 .functor AND 1, L_0x1d94b70, L_0x1d94a00, C4<1>, C4<1>;
L_0x1d94e10 .functor AND 1, L_0x1d94d70, L_0x1d8dd70, C4<1>, C4<1>;
v0x1d7fba0_0 .net *"_s100", 2 0, C4<010>; 1 drivers
v0x1d7fc60_0 .net *"_s102", 0 0, L_0x1d94400; 1 drivers
v0x1d7fd00_0 .net *"_s104", 33 0, L_0x1d94080; 1 drivers
v0x1d7fda0_0 .net *"_s107", 1 0, C4<00>; 1 drivers
v0x1d7fe20_0 .net *"_s108", 2 0, C4<011>; 1 drivers
v0x1d7fec0_0 .net *"_s110", 0 0, L_0x1d946f0; 1 drivers
v0x1d7ff60_0 .net *"_s112", 33 0, L_0x1d944f0; 1 drivers
v0x1d80000_0 .net *"_s115", 1 0, C4<00>; 1 drivers
v0x1d800f0_0 .net *"_s116", 2 0, C4<001>; 1 drivers
v0x1d80190_0 .net *"_s118", 0 0, L_0x1d93d40; 1 drivers
v0x1d80230_0 .net *"_s12", 0 0, L_0x1d92090; 1 drivers
v0x1d802d0_0 .net *"_s120", 33 0, L_0x1d947e0; 1 drivers
v0x1d80370_0 .net *"_s123", 1 0, C4<00>; 1 drivers
v0x1d80410_0 .net *"_s124", 33 0, L_0x1d94c30; 1 drivers
v0x1d80530_0 .net *"_s126", 2 0, C4<101>; 1 drivers
v0x1d805d0_0 .net *"_s128", 0 0, L_0x1d94b70; 1 drivers
v0x1d80490_0 .net *"_s130", 0 0, L_0x1d94a00; 1 drivers
v0x1d80720_0 .net *"_s132", 0 0, L_0x1d94a60; 1 drivers
v0x1d80840_0 .net *"_s134", 33 0, L_0x1d95060; 1 drivers
v0x1d808c0_0 .net *"_s137", 1 0, C4<00>; 1 drivers
v0x1d807a0_0 .net *"_s138", 33 0, L_0x1d94f00; 1 drivers
v0x1d809f0_0 .net/s *"_s14", 31 0, C4<00000000000000000000000000000001>; 1 drivers
v0x1d80940_0 .net *"_s140", 2 0, C4<101>; 1 drivers
v0x1d80b30_0 .net *"_s142", 0 0, L_0x1d94d70; 1 drivers
v0x1d80a90_0 .net *"_s144", 0 0, L_0x1d94e10; 1 drivers
v0x1d80c80_0 .net/s *"_s146", 33 0, L_0x1d95100; 1 drivers
v0x1d80bd0_0 .net/s *"_s148", 33 0, C4<0000000000000000000000000000000000>; 1 drivers
v0x1d80de0_0 .net *"_s150", 33 0, L_0x1d95610; 1 drivers
v0x1d80d20_0 .net *"_s152", 33 0, L_0x1d957f0; 1 drivers
v0x1d80f50_0 .net *"_s154", 33 0, L_0x1d95980; 1 drivers
v0x1d80e60_0 .net *"_s156", 33 0, L_0x1d95b70; 1 drivers
v0x1d810d0_0 .net *"_s158", 33 0, L_0x1d95cb0; 1 drivers
v0x1d80fd0_0 .net/s *"_s16", 31 0, C4<00000000000000000000000000000000>; 1 drivers
v0x1d81260_0 .net *"_s160", 33 0, L_0x1d95eb0; 1 drivers
v0x1d81150_0 .net *"_s162", 33 0, L_0x1d95ff0; 1 drivers
v0x1d81400_0 .net *"_s164", 33 0, L_0x1d96200; 1 drivers
v0x1d812e0_0 .net *"_s166", 33 0, L_0x1d96340; 1 drivers
v0x1d81380_0 .net *"_s168", 33 0, L_0x1d96560; 1 drivers
v0x1d815c0_0 .net *"_s20", 31 0, L_0x1d923c0; 1 drivers
v0x1d81640_0 .net *"_s24", 2 0, C4<000>; 1 drivers
v0x1d81480_0 .net *"_s26", 0 0, L_0x1d925a0; 1 drivers
v0x1d81520_0 .net *"_s28", 0 0, L_0x1d92690; 1 drivers
v0x1d81820_0 .net *"_s30", 33 0, L_0x1d92740; 1 drivers
v0x1d818a0_0 .net *"_s33", 1 0, C4<00>; 1 drivers
v0x1d816c0_0 .net *"_s34", 33 0, L_0x1d921b0; 1 drivers
v0x1d81760_0 .net *"_s37", 1 0, C4<00>; 1 drivers
v0x1d81aa0_0 .net *"_s38", 33 0, L_0x1d92b30; 1 drivers
v0x1d81b20_0 .net *"_s4", 0 0, L_0x1d91e80; 1 drivers
v0x1d81940_0 .net *"_s40", 2 0, C4<000>; 1 drivers
v0x1d819e0_0 .net *"_s42", 0 0, L_0x1d92930; 1 drivers
v0x1d81d40_0 .net *"_s44", 0 0, L_0x1d92d70; 1 drivers
v0x1d81dc0_0 .net *"_s46", 0 0, L_0x1d92e60; 1 drivers
v0x1d81bc0_0 .net *"_s48", 33 0, L_0x1d92f10; 1 drivers
v0x1d81c60_0 .net *"_s51", 1 0, C4<00>; 1 drivers
v0x1d82000_0 .net *"_s52", 33 0, L_0x1d93040; 1 drivers
v0x1d82080_0 .net *"_s55", 1 0, C4<00>; 1 drivers
v0x1d81e40_0 .net *"_s56", 33 0, L_0x1d92c70; 1 drivers
v0x1d81ee0_0 .net *"_s58", 2 0, C4<100>; 1 drivers
v0x1d81f80_0 .net/s *"_s6", 31 0, C4<00000000000000000000000000000001>; 1 drivers
v0x1d82300_0 .net *"_s60", 0 0, L_0x1d933a0; 1 drivers
v0x1d82120_0 .net *"_s62", 33 0, L_0x1d93490; 1 drivers
v0x1d821c0_0 .net *"_s65", 1 0, C4<00>; 1 drivers
v0x1d82260_0 .net *"_s66", 33 0, L_0x1d93170; 1 drivers
v0x1d825a0_0 .net *"_s69", 1 0, C4<00>; 1 drivers
v0x1d823a0_0 .net *"_s70", 33 0, L_0x1d93740; 1 drivers
v0x1d82440_0 .net *"_s72", 2 0, C4<110>; 1 drivers
v0x1d824e0_0 .net *"_s74", 0 0, L_0x1d935d0; 1 drivers
v0x1d82840_0 .net *"_s76", 33 0, L_0x1d93530; 1 drivers
v0x1d82640_0 .net *"_s79", 1 0, C4<00>; 1 drivers
v0x1d826e0_0 .net/s *"_s8", 31 0, C4<00000000000000000000000000000000>; 1 drivers
v0x1d82780_0 .net *"_s80", 33 0, L_0x1d93c10; 1 drivers
v0x1d82b00_0 .net *"_s83", 1 0, C4<00>; 1 drivers
v0x1d828c0_0 .net *"_s84", 33 0, L_0x1d93880; 1 drivers
v0x1d82960_0 .net *"_s86", 2 0, C4<111>; 1 drivers
v0x1d82a00_0 .net *"_s88", 0 0, L_0x1d93ef0; 1 drivers
v0x1d82de0_0 .net *"_s90", 33 0, L_0x1d93fe0; 1 drivers
v0x1d82b80_0 .net *"_s93", 1 0, C4<00>; 1 drivers
v0x1d82c20_0 .net *"_s94", 33 0, L_0x1d94150; 1 drivers
v0x1d82cc0_0 .net *"_s97", 1 0, C4<00>; 1 drivers
v0x1d82d60_0 .net *"_s98", 33 0, L_0x1d94280; 1 drivers
v0x1d830f0_0 .alias "a", 31 0, v0x1d88d60_0;
v0x1d83170_0 .alias "addcom", 0 0, v0x1d874f0_0;
v0x1d82e80_0 .alias "b", 31 0, v0x1d88de0_0;
v0x1d82f20_0 .alias "ext", 0 0, v0x1d87ef0_0;
v0x1d82fc0_0 .alias "s", 2 0, v0x1d87f70_0;
v0x1d83060_0 .alias/s "sa", 31 0, v0x1d88d60_0;
v0x1d834b0_0 .alias/s "sb", 31 0, v0x1d88de0_0;
v0x1d83530_0 .net "shamt", 4 0, L_0x1d91990; 1 drivers
v0x1d831f0_0 .net/s "slt", 31 0, L_0x1d91f20; 1 drivers
v0x1d83270_0 .net "sltu", 31 0, L_0x1d8f120; 1 drivers
v0x1d83310_0 .net/s "sy", 31 0, L_0x1d91d50; 1 drivers
v0x1d833b0_0 .alias "y", 31 0, v0x1d87700_0;
v0x1d838a0_0 .net "yy", 31 0, L_0x1d966a0; 1 drivers
L_0x1d91990 .part L_0x1d8fd70, 0, 5;
L_0x1d91d50 .shift/rs 32, L_0x1d90420, L_0x1d91990;
L_0x1d91e80 .cmp/gt 32, L_0x1d8fd70, L_0x1d90420;
L_0x1d8f120 .functor MUXZ 32, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000001>, L_0x1d91e80, C4<>;
L_0x1d92090 .cmp/gt.s 32, L_0x1d8fd70, L_0x1d90420;
L_0x1d91f20 .functor MUXZ 32, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000001>, L_0x1d92090, C4<>;
L_0x1d923c0 .arith/sum 32, L_0x1d90420, L_0x1d8fd70;
L_0x1d92460 .functor MUXZ 32, L_0x1d966a0, L_0x1d923c0, L_0x1d91260, C4<>;
L_0x1d925a0 .cmp/eq 3, L_0x1d8a570, C4<000>;
L_0x1d92740 .concat [ 32 2 0 0], L_0x1d90420, C4<00>;
L_0x1d921b0 .concat [ 32 2 0 0], L_0x1d8fd70, C4<00>;
L_0x1d92b30 .arith/sub 34, L_0x1d92740, L_0x1d921b0;
L_0x1d92930 .cmp/eq 3, L_0x1d8a570, C4<000>;
L_0x1d92f10 .concat [ 32 2 0 0], L_0x1d90420, C4<00>;
L_0x1d93040 .concat [ 32 2 0 0], L_0x1d8fd70, C4<00>;
L_0x1d92c70 .arith/sum 34, L_0x1d92f10, L_0x1d93040;
L_0x1d933a0 .cmp/eq 3, L_0x1d8a570, C4<100>;
L_0x1d93490 .concat [ 32 2 0 0], L_0x1d90420, C4<00>;
L_0x1d93170 .concat [ 32 2 0 0], L_0x1d8fd70, C4<00>;
L_0x1d935d0 .cmp/eq 3, L_0x1d8a570, C4<110>;
L_0x1d93530 .concat [ 32 2 0 0], L_0x1d90420, C4<00>;
L_0x1d93c10 .concat [ 32 2 0 0], L_0x1d8fd70, C4<00>;
L_0x1d93ef0 .cmp/eq 3, L_0x1d8a570, C4<111>;
L_0x1d93fe0 .concat [ 32 2 0 0], L_0x1d90420, C4<00>;
L_0x1d94150 .concat [ 32 2 0 0], L_0x1d8fd70, C4<00>;
L_0x1d94400 .cmp/eq 3, L_0x1d8a570, C4<010>;
L_0x1d94080 .concat [ 32 2 0 0], L_0x1d91f20, C4<00>;
L_0x1d946f0 .cmp/eq 3, L_0x1d8a570, C4<011>;
L_0x1d944f0 .concat [ 32 2 0 0], L_0x1d8f120, C4<00>;
L_0x1d93d40 .cmp/eq 3, L_0x1d8a570, C4<001>;
L_0x1d947e0 .concat [ 32 2 0 0], L_0x1d90420, C4<00>;
L_0x1d94c30 .shift/l 34, L_0x1d947e0, L_0x1d91990;
L_0x1d94b70 .cmp/eq 3, L_0x1d8a570, C4<101>;
L_0x1d95060 .concat [ 32 2 0 0], L_0x1d90420, C4<00>;
L_0x1d94f00 .shift/r 34, L_0x1d95060, L_0x1d91990;
L_0x1d94d70 .cmp/eq 3, L_0x1d8a570, C4<101>;
L_0x1d95100 .extend/s 34, L_0x1d91d50;
L_0x1d95610 .functor MUXZ 34, C4<0000000000000000000000000000000000>, L_0x1d95100, L_0x1d94e10, C4<>;
L_0x1d957f0 .functor MUXZ 34, L_0x1d95610, L_0x1d94f00, L_0x1d94a60, C4<>;
L_0x1d95980 .functor MUXZ 34, L_0x1d957f0, L_0x1d94c30, L_0x1d93d40, C4<>;
L_0x1d95b70 .functor MUXZ 34, L_0x1d95980, L_0x1d944f0, L_0x1d946f0, C4<>;
L_0x1d95cb0 .functor MUXZ 34, L_0x1d95b70, L_0x1d94080, L_0x1d94400, C4<>;
L_0x1d95eb0 .functor MUXZ 34, L_0x1d95cb0, L_0x1d94280, L_0x1d93ef0, C4<>;
L_0x1d95ff0 .functor MUXZ 34, L_0x1d95eb0, L_0x1d93880, L_0x1d935d0, C4<>;
L_0x1d96200 .functor MUXZ 34, L_0x1d95ff0, L_0x1d93740, L_0x1d933a0, C4<>;
L_0x1d96340 .functor MUXZ 34, L_0x1d96200, L_0x1d92c70, L_0x1d92e60, C4<>;
L_0x1d96560 .functor MUXZ 34, L_0x1d96340, L_0x1d92b30, L_0x1d92690, C4<>;
L_0x1d966a0 .part L_0x1d96560, 0, 32;
S_0x1d7e930 .scope module, "rfile_1" "rfile" 3 96, 5 2, S_0x1d7e800;
 .timescale -9 -12;
v0x1d7ea20_0 .net *"_s1", 0 0, L_0x1d963e0; 1 drivers
v0x1d7eae0_0 .net *"_s10", 31 0, C4<00000000000000000000000000000000>; 1 drivers
v0x1d7eb80_0 .net *"_s12", 31 0, L_0x1d95430; 1 drivers
v0x1d7ec20_0 .net *"_s17", 0 0, L_0x1d96c70; 1 drivers
v0x1d7ecd0_0 .net *"_s18", 1 0, L_0x1d96d10; 1 drivers
v0x1d7ed70_0 .net *"_s2", 1 0, L_0x1d96480; 1 drivers
v0x1d7ee50_0 .net *"_s21", 0 0, C4<0>; 1 drivers
v0x1d7eef0_0 .net *"_s22", 1 0, C4<00>; 1 drivers
v0x1d7efe0_0 .net *"_s24", 0 0, L_0x1d96a10; 1 drivers
v0x1d7f080_0 .net *"_s26", 31 0, C4<00000000000000000000000000000000>; 1 drivers
v0x1d7f180_0 .net *"_s28", 31 0, L_0x1d96fd0; 1 drivers
v0x1d7f220_0 .net *"_s5", 0 0, C4<0>; 1 drivers
v0x1d7f330_0 .net *"_s6", 1 0, C4<00>; 1 drivers
v0x1d7f3d0_0 .net *"_s8", 0 0, L_0x1d95340; 1 drivers
v0x1d7f4f0_0 .alias "a1", 4 0, v0x1d88a20_0;
v0x1d7f590_0 .alias "a2", 4 0, v0x1d88ad0_0;
v0x1d7f450_0 .alias "a3", 4 0, v0x1d88bb0_0;
v0x1d7f6e0_0 .alias "clk", 0 0, v0x1d87da0_0;
v0x1d7f610_0 .alias "rd1", 31 0, v0x1d87470_0;
v0x1d7f820_0 .alias "rd2", 31 0, v0x1d877b0_0;
v0x1d7f780 .array "rf", 31 0, 31 0;
v0x1d7f950_0 .alias "wd3", 31 0, v0x1d88970_0;
v0x1d7f8c0_0 .alias "we3", 0 0, v0x1d891a0_0;
L_0x1d963e0 .reduce/or L_0x1d8a480;
L_0x1d96480 .concat [ 1 1 0 0], L_0x1d963e0, C4<0>;
L_0x1d95340 .cmp/eq 2, L_0x1d96480, C4<00>;
L_0x1d95430 .array/port v0x1d7f780, L_0x1d8a480;
L_0x1d96bd0 .functor MUXZ 32, L_0x1d95430, C4<00000000000000000000000000000000>, L_0x1d95340, C4<>;
L_0x1d96c70 .reduce/or L_0x1d8a340;
L_0x1d96d10 .concat [ 1 1 0 0], L_0x1d96c70, C4<0>;
L_0x1d96a10 .cmp/eq 2, L_0x1d96d10, C4<00>;
L_0x1d96fd0 .array/port v0x1d7f780, L_0x1d8a340;
L_0x1d97070 .functor MUXZ 32, L_0x1d96fd0, C4<00000000000000000000000000000000>, L_0x1d96a10, C4<>;
S_0x1d7e2a0 .scope module, "mem_0" "mem" 2 21, 6 2, S_0x1d00fe0;
 .timescale -9 -12;
L_0x1d972f0 .functor BUFZ 32, L_0x1d97250, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
v0x1d7e390_0 .net *"_s0", 31 0, L_0x1d97250; 1 drivers
v0x1d7e450_0 .net "a", 7 0, L_0x1d973a0; 1 drivers
v0x1d7e4f0_0 .alias "clk", 0 0, v0x1d87da0_0;
v0x1d7e570 .array "mem", 255 0, 31 0;
v0x1d7e620_0 .alias "rd", 31 0, v0x1d89bb0_0;
v0x1d7e6a0_0 .net "wd", 31 0, C4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; 0 drivers
v0x1d7e760_0 .net "we", 0 0, C4<0>; 1 drivers
L_0x1d97250 .array/port v0x1d7e570, L_0x1d973a0;
S_0x1cffc80 .scope module, "mem_1" "mem" 2 23, 6 2, S_0x1d00fe0;
 .timescale -9 -12;
L_0x1d96ea0 .functor BUFZ 32, L_0x1d96e00, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
v0x1cd9750_0 .net *"_s0", 31 0, L_0x1d96e00; 1 drivers
v0x1d7deb0_0 .net "a", 7 0, L_0x1d96f00; 1 drivers
v0x1d7df50_0 .alias "clk", 0 0, v0x1d87da0_0;
v0x1d7dff0 .array "mem", 255 0, 31 0;
v0x1d7e0a0_0 .alias "rd", 31 0, v0x1d89c30_0;
v0x1d7e120_0 .alias "wd", 31 0, v0x1d89cb0_0;
v0x1d7e200_0 .alias "we", 0 0, v0x1d89eb0_0;
E_0x1d2bda0 .event posedge, v0x1d7df50_0;
L_0x1d96e00 .array/port v0x1d7dff0, L_0x1d96f00;
    .scope S_0x1d7e930;
T_0 ;
    %wait E_0x1d2bda0;
    %load/v 8, v0x1d7f8c0_0, 1;
    %jmp/0xz  T_0.0, 8;
    %load/v 8, v0x1d7f950_0, 32;
    %ix/getv 3, v0x1d7f450_0;
    %jmp/1 t_0, 4;
    %ix/load 0, 32, 0; word width
    %ix/load 1, 0, 0; part off
    %assign/av v0x1d7f780, 0, 8;
t_0 ;
T_0.0 ;
    %jmp T_0;
    .thread T_0;
    .scope S_0x1d7e800;
T_1 ;
    %wait E_0x1d7e5f0;
    %load/v 8, v0x1d89120_0, 1;
    %inv 8, 1;
    %jmp/0xz  T_1.0, 8;
    %ix/load 0, 32, 0;
    %assign/v0 v0x1d882f0_0, 0, 0;
    %jmp T_1.1;
T_1.0 ;
    %load/v 8, v0x1d88fb0_0, 1; Only need 1 of 5 bits
; Save base=8 wid=1 in lookaside.
    %jmp/0xz  T_1.2, 8;
    %load/v 8, v0x1d88c60_0, 32;
    %ix/load 0, 32, 0;
    %assign/v0 v0x1d882f0_0, 0, 8;
T_1.2 ;
T_1.1 ;
    %jmp T_1;
    .thread T_1;
    .scope S_0x1d7e800;
T_2 ;
    %wait E_0x1d7e5f0;
    %load/v 8, v0x1d89120_0, 1;
    %inv 8, 1;
    %jmp/0xz  T_2.0, 8;
    %ix/load 0, 32, 0;
    %assign/v0 v0x1d885f0_0, 0, 0;
    %jmp T_2.1;
T_2.0 ;
    %ix/load 1, 1, 0;
    %mov 4, 0, 1;
    %jmp/1 T_2.2, 4;
    %load/x1p 8, v0x1d88fb0_0, 1;
    %jmp T_2.3;
T_2.2 ;
    %mov 8, 2, 1;
T_2.3 ;
; Save base=8 wid=1 in lookaside.
    %load/v 9, v0x1d87c60_0, 1;
    %load/v 10, v0x1d88370_0, 1;
    %or 9, 10, 1;
    %load/v 10, v0x1d88410_0, 1;
    %or 9, 10, 1;
    %inv 9, 1;
    %and 8, 9, 1;
    %ix/load 1, 4, 0;
    %mov 4, 0, 1;
    %jmp/1 T_2.4, 4;
    %load/x1p 9, v0x1d88fb0_0, 1;
    %jmp T_2.5;
T_2.4 ;
    %mov 9, 2, 1;
T_2.5 ;
; Save base=9 wid=1 in lookaside.
    %load/v 10, v0x1d87c60_0, 1;
    %load/v 11, v0x1d88370_0, 1;
    %or 10, 11, 1;
    %and 9, 10, 1;
    %or 8, 9, 1;
    %jmp/0xz  T_2.6, 8;
    %load/v 8, v0x1d87700_0, 32;
    %ix/load 0, 32, 0;
    %assign/v0 v0x1d885f0_0, 0, 8;
    %jmp T_2.7;
T_2.6 ;
    %ix/load 1, 4, 0;
    %mov 4, 0, 1;
    %jmp/1 T_2.8, 4;
    %load/x1p 8, v0x1d88fb0_0, 1;
    %jmp T_2.9;
T_2.8 ;
    %mov 8, 2, 1;
T_2.9 ;
; Save base=8 wid=1 in lookaside.
    %load/v 9, v0x1d88410_0, 1;
    %and 8, 9, 1;
    %jmp/0xz  T_2.10, 8;
    %mov 8, 0, 1;
    %ix/load 1, 1, 0;
    %mov 4, 0, 1;
    %jmp/1 T_2.12, 4;
    %load/x1p 40, v0x1d87700_0, 31;
    %jmp T_2.13;
T_2.12 ;
    %mov 40, 2, 31;
T_2.13 ;
    %mov 9, 40, 31; Move signal select into place
    %ix/load 0, 32, 0;
    %assign/v0 v0x1d885f0_0, 0, 8;
T_2.10 ;
T_2.7 ;
T_2.1 ;
    %jmp T_2;
    .thread T_2;
    .scope S_0x1d7e800;
T_3 ;
    %wait E_0x1d7e5f0;
    %load/v 8, v0x1d89120_0, 1;
    %inv 8, 1;
    %jmp/0xz  T_3.0, 8;
    %ix/load 0, 32, 0;
    %assign/v0 v0x1d887b0_0, 0, 0;
    %ix/load 0, 32, 0;
    %assign/v0 v0x1d88830_0, 0, 0;
    %jmp T_3.1;
T_3.0 ;
    %ix/load 1, 1, 0;
    %mov 4, 0, 1;
    %jmp/1 T_3.2, 4;
    %load/x1p 8, v0x1d88fb0_0, 1;
    %jmp T_3.3;
T_3.2 ;
    %mov 8, 2, 1;
T_3.3 ;
; Save base=8 wid=1 in lookaside.
    %jmp/0xz  T_3.4, 8;
    %load/v 8, v0x1d87470_0, 32;
    %ix/load 0, 32, 0;
    %assign/v0 v0x1d887b0_0, 0, 8;
    %load/v 8, v0x1d877b0_0, 32;
    %ix/load 0, 32, 0;
    %assign/v0 v0x1d88830_0, 0, 8;
T_3.4 ;
T_3.1 ;
    %jmp T_3;
    .thread T_3;
    .scope S_0x1d7e800;
T_4 ;
    %wait E_0x1d7e5f0;
    %load/v 8, v0x1d89120_0, 1;
    %inv 8, 1;
    %jmp/0xz  T_4.0, 8;
    %ix/load 0, 32, 0;
    %assign/v0 v0x1d888d0_0, 0, 0;
    %jmp T_4.1;
T_4.0 ;
    %load/v 8, v0x1d87700_0, 32;
    %ix/load 0, 32, 0;
    %assign/v0 v0x1d888d0_0, 0, 8;
T_4.1 ;
    %jmp T_4;
    .thread T_4;
    .scope S_0x1d7e800;
T_5 ;
    %wait E_0x1d7e5f0;
    %load/v 8, v0x1d89120_0, 1;
    %inv 8, 1;
    %jmp/0xz  T_5.0, 8;
    %movi 8, 1, 5;
    %ix/load 0, 5, 0;
    %assign/v0 v0x1d88fb0_0, 0, 8;
    %jmp T_5.1;
T_5.0 ;
    %load/v 8, v0x1d88fb0_0, 5;
    %cmpi/u 8, 1, 5;
    %jmp/1 T_5.2, 6;
    %cmpi/u 8, 2, 5;
    %jmp/1 T_5.3, 6;
    %cmpi/u 8, 4, 5;
    %jmp/1 T_5.4, 6;
    %cmpi/u 8, 8, 5;
    %jmp/1 T_5.5, 6;
    %cmpi/u 8, 16, 5;
    %jmp/1 T_5.6, 6;
    %jmp T_5.7;
T_5.2 ;
    %movi 8, 2, 5;
    %ix/load 0, 5, 0;
    %assign/v0 v0x1d88fb0_0, 0, 8;
    %jmp T_5.7;
T_5.3 ;
    %load/v 8, v0x1d884b0_0, 1;
    %load/v 9, v0x1d89030_0, 1;
    %or 8, 9, 1;
    %jmp/0xz  T_5.8, 8;
    %movi 8, 4, 5;
    %ix/load 0, 5, 0;
    %assign/v0 v0x1d88fb0_0, 0, 8;
    %jmp T_5.9;
T_5.8 ;
    %movi 8, 16, 5;
    %ix/load 0, 5, 0;
    %assign/v0 v0x1d88fb0_0, 0, 8;
T_5.9 ;
    %jmp T_5.7;
T_5.4 ;
    %movi 8, 8, 5;
    %ix/load 0, 5, 0;
    %assign/v0 v0x1d88fb0_0, 0, 8;
    %jmp T_5.7;
T_5.5 ;
    %movi 8, 1, 5;
    %ix/load 0, 5, 0;
    %assign/v0 v0x1d88fb0_0, 0, 8;
    %jmp T_5.7;
T_5.6 ;
    %movi 8, 1, 5;
    %ix/load 0, 5, 0;
    %assign/v0 v0x1d88fb0_0, 0, 8;
    %jmp T_5.7;
T_5.7 ;
T_5.1 ;
    %jmp T_5;
    .thread T_5;
    .scope S_0x1d7e2a0;
T_6 ;
    %wait E_0x1d2bda0;
    %load/v 8, v0x1d7e760_0, 1;
    %jmp/0xz  T_6.0, 8;
    %load/v 8, v0x1d7e6a0_0, 32;
    %ix/getv 3, v0x1d7e450_0;
    %jmp/1 t_1, 4;
    %ix/load 0, 32, 0; word width
    %ix/load 1, 0, 0; part off
    %assign/av v0x1d7e570, 0, 8;
t_1 ;
T_6.0 ;
    %jmp T_6;
    .thread T_6;
    .scope S_0x1cffc80;
T_7 ;
    %wait E_0x1d2bda0;
    %load/v 8, v0x1d7e200_0, 1;
    %jmp/0xz  T_7.0, 8;
    %load/v 8, v0x1d7e120_0, 32;
    %ix/getv 3, v0x1d7deb0_0;
    %jmp/1 t_2, 4;
    %ix/load 0, 32, 0; word width
    %ix/load 1, 0, 0; part off
    %assign/av v0x1d7dff0, 0, 8;
t_2 ;
T_7.0 ;
    %jmp T_7;
    .thread T_7;
    .scope S_0x1d00fe0;
T_8 ;
    %delay 5000, 0;
    %load/v 8, v0x1d89400_0, 1;
    %inv 8, 1;
    %ix/load 0, 1, 0;
    %assign/v0 v0x1d89400_0, 0, 8;
    %jmp T_8;
    .thread T_8;
    .scope S_0x1d00fe0;
T_9 ;
    %vpi_call 2 27 "$readmemh", "imem.dat", v0x1d7e570;
    %vpi_call 2 28 "$readmemh", "dmem.dat", v0x1d7dff0;
    %end;
    .thread T_9;
    .scope S_0x1d00fe0;
T_10 ;
    %vpi_call 2 32 "$dumpfile", "rv32i.vcd";
    %vpi_call 2 33 "$dumpvars", 1'sb0, S_0x1d7e800;
    %ix/load 0, 32, 0;
    %assign/v0 v0x1d89510_0, 0, 0;
    %ix/load 0, 32, 0;
    %assign/v0 v0x1d89db0_0, 0, 0;
    %ix/load 0, 1, 0;
    %assign/v0 v0x1d89400_0, 0, 0;
    %ix/load 0, 1, 0;
    %assign/v0 v0x1d89e30_0, 0, 0;
    %delay 2000, 0;
    %delay 10000, 0;
    %ix/load 0, 1, 0;
    %assign/v0 v0x1d89e30_0, 0, 1;
    %delay 10000000, 0;
    %vpi_call 2 42 "$finish";
    %end;
    .thread T_10;
    .scope S_0x1d00fe0;
T_11 ;
    %wait E_0x1cfd660;
    %load/v 8, v0x1d89510_0, 32;
    %mov 40, 39, 1;
    %addi 8, 1, 33;
    %ix/load 0, 32, 0;
    %assign/v0 v0x1d89510_0, 0, 8;
    %load/v 8, v0x1d88fb0_0, 5;
    %mov 13, 0, 1;
    %cmpi/u 8, 1, 6;
    %jmp/0xz  T_11.0, 4;
    %load/v 8, v0x1d89db0_0, 32;
    %mov 40, 39, 1;
    %addi 8, 1, 33;
    %ix/load 0, 32, 0;
    %assign/v0 v0x1d89db0_0, 0, 8;
T_11.0 ;
    %load/v 8, v0x1d89d30_0, 1;
    %jmp/0xz  T_11.2, 8;
    %vpi_call 2 49 "$display", "ecall detected Clock Count: %d Inst Count: %d", v0x1d89510_0, v0x1d89db0_0;
    %vpi_call 2 50 "$finish";
T_11.2 ;
    %jmp T_11;
    .thread T_11;
    .scope S_0x1d00fe0;
T_12 ;
    %wait E_0x1cfd660;
    %vpi_call 2 54 "$display", "pc:%h %d stat:%b idatain:%h", v0x1d885f0_0, v0x1d885f0_0, v0x1d88fb0_0, v0x1d882f0_0;
    %vpi_call 2 55 "$display", "x1:%h x2:%h x3:%h x4:%h x5:%h x6:%h x7:%h", &A<v0x1d7f780, 1>, &A<v0x1d7f780, 2>, &A<v0x1d7f780, 3>, &A<v0x1d7f780, 4>, &A<v0x1d7f780, 5>, &A<v0x1d7f780, 6>, &A<v0x1d7f780, 7>;
    %vpi_call 2 73 "$display", "dmem 0x400:%h %h %h %h", &A<v0x1d7dff0, 0>, &A<v0x1d7dff0, 1>, &A<v0x1d7dff0, 2>, &A<v0x1d7dff0, 3>;
    %jmp T_12;
    .thread T_12;
# The file index is used to find the file name in the following table.
:file_names 7;
    "N/A";
    "<interactive>";
    "test_rv32i.v";
    "rv32i.v";
    "alu.v";
    "rfile.v";
    "mem.v";
