hp-saturn/mask_gen_tb
2019-02-04 17:00:08 +01:00

645 lines
17 KiB
Text
Executable file

#! /usr/bin/vvp -v
:ivl_version "10.1 (stable)";
:ivl_delay_selection "TYPICAL";
:vpi_time_precision + 0;
:vpi_module "system";
:vpi_module "vhdl_sys";
:vpi_module "v2005_math";
:vpi_module "va_math";
S_0x562a0b875c60 .scope module, "mask_gen_tb" "mask_gen_tb" 2 89;
.timescale 0 0;
v0x562a0b8968d0_0 .var "clock", 0 0;
v0x562a0b896990_0 .net "m", 63 0, v0x562a0b896040_0; 1 drivers
v0x562a0b896a60_0 .var "ns", 3 0;
v0x562a0b896b60_0 .var "nw", 3 0;
S_0x562a0b875de0 .scope module, "U0" "mask_gen" 2 100, 2 1 0, S_0x562a0b875c60;
.timescale 0 0;
.port_info 0 /INPUT 1 "clk"
.port_info 1 /INPUT 4 "nibble_width"
.port_info 2 /INPUT 4 "nibble_start"
.port_info 3 /OUTPUT 64 "mask"
v0x562a0b85f770_0 .var "bitmask", 15 0;
v0x562a0b895de0_0 .var "bitmask_1", 15 0;
v0x562a0b895ec0_0 .var "bitmask_2", 15 0;
v0x562a0b895f80_0 .net "clk", 0 0, v0x562a0b8968d0_0; 1 drivers
v0x562a0b896040_0 .var "mask", 63 0;
v0x562a0b896170_0 .var "n_max", 4 0;
v0x562a0b896250_0 .net "nibble_start", 3 0, v0x562a0b896a60_0; 1 drivers
v0x562a0b896330_0 .net "nibble_width", 3 0, v0x562a0b896b60_0; 1 drivers
v0x562a0b896410_0 .net "nm1", 3 0, L_0x562a0b896c30; 1 drivers
E_0x562a0b8468f0 .event posedge, v0x562a0b895f80_0;
L_0x562a0b896c30 .part v0x562a0b896170_0, 0, 4;
S_0x562a0b896570 .scope task, "run_mask_gen" "run_mask_gen" 2 151, 2 151 0, S_0x562a0b875c60;
.timescale 0 0;
v0x562a0b896710_0 .var "_ns", 3 0;
v0x562a0b8967f0_0 .var "_nw", 3 0;
TD_mask_gen_tb.run_mask_gen ;
%vpi_call 2 155 "$display", "running", v0x562a0b8967f0_0, v0x562a0b896710_0 {0 0 0};
%wait E_0x562a0b8468f0;
%load/vec4 v0x562a0b8967f0_0;
%store/vec4 v0x562a0b896b60_0, 0, 4;
%load/vec4 v0x562a0b896710_0;
%store/vec4 v0x562a0b896a60_0, 0, 4;
%end;
.scope S_0x562a0b875de0;
T_1 ;
%wait E_0x562a0b8468f0;
%load/vec4 v0x562a0b896250_0;
%pad/u 32;
%pushi/vec4 0, 0, 32;
%cmp/e;
%flag_get/vec4 4;
%ix/load 4, 0, 0;
%flag_set/imm 4, 0;
%store/vec4 v0x562a0b895de0_0, 4, 1;
%load/vec4 v0x562a0b896250_0;
%pad/u 32;
%pushi/vec4 1, 0, 32;
%cmp/e;
%flag_get/vec4 4;
%load/vec4 v0x562a0b895de0_0;
%parti/s 1, 0, 2;
%or;
%ix/load 4, 1, 0;
%flag_set/imm 4, 0;
%store/vec4 v0x562a0b895de0_0, 4, 1;
%load/vec4 v0x562a0b896250_0;
%pad/u 32;
%pushi/vec4 2, 0, 32;
%cmp/e;
%flag_get/vec4 4;
%load/vec4 v0x562a0b895de0_0;
%parti/s 1, 1, 2;
%or;
%ix/load 4, 2, 0;
%flag_set/imm 4, 0;
%store/vec4 v0x562a0b895de0_0, 4, 1;
%load/vec4 v0x562a0b896250_0;
%pad/u 32;
%pushi/vec4 3, 0, 32;
%cmp/e;
%flag_get/vec4 4;
%load/vec4 v0x562a0b895de0_0;
%parti/s 1, 2, 3;
%or;
%ix/load 4, 3, 0;
%flag_set/imm 4, 0;
%store/vec4 v0x562a0b895de0_0, 4, 1;
%load/vec4 v0x562a0b896250_0;
%pad/u 32;
%pushi/vec4 4, 0, 32;
%cmp/e;
%flag_get/vec4 4;
%load/vec4 v0x562a0b895de0_0;
%parti/s 1, 3, 3;
%or;
%ix/load 4, 4, 0;
%flag_set/imm 4, 0;
%store/vec4 v0x562a0b895de0_0, 4, 1;
%load/vec4 v0x562a0b896250_0;
%pad/u 32;
%pushi/vec4 5, 0, 32;
%cmp/e;
%flag_get/vec4 4;
%load/vec4 v0x562a0b895de0_0;
%parti/s 1, 4, 4;
%or;
%ix/load 4, 5, 0;
%flag_set/imm 4, 0;
%store/vec4 v0x562a0b895de0_0, 4, 1;
%load/vec4 v0x562a0b896250_0;
%pad/u 32;
%pushi/vec4 6, 0, 32;
%cmp/e;
%flag_get/vec4 4;
%load/vec4 v0x562a0b895de0_0;
%parti/s 1, 5, 4;
%or;
%ix/load 4, 6, 0;
%flag_set/imm 4, 0;
%store/vec4 v0x562a0b895de0_0, 4, 1;
%load/vec4 v0x562a0b896250_0;
%pad/u 32;
%pushi/vec4 7, 0, 32;
%cmp/e;
%flag_get/vec4 4;
%load/vec4 v0x562a0b895de0_0;
%parti/s 1, 6, 4;
%or;
%ix/load 4, 7, 0;
%flag_set/imm 4, 0;
%store/vec4 v0x562a0b895de0_0, 4, 1;
%load/vec4 v0x562a0b896250_0;
%pad/u 32;
%pushi/vec4 8, 0, 32;
%cmp/e;
%flag_get/vec4 4;
%load/vec4 v0x562a0b895de0_0;
%parti/s 1, 7, 4;
%or;
%ix/load 4, 8, 0;
%flag_set/imm 4, 0;
%store/vec4 v0x562a0b895de0_0, 4, 1;
%load/vec4 v0x562a0b896250_0;
%pad/u 32;
%pushi/vec4 9, 0, 32;
%cmp/e;
%flag_get/vec4 4;
%load/vec4 v0x562a0b895de0_0;
%parti/s 1, 8, 5;
%or;
%ix/load 4, 9, 0;
%flag_set/imm 4, 0;
%store/vec4 v0x562a0b895de0_0, 4, 1;
%load/vec4 v0x562a0b896250_0;
%pad/u 32;
%pushi/vec4 10, 0, 32;
%cmp/e;
%flag_get/vec4 4;
%load/vec4 v0x562a0b895de0_0;
%parti/s 1, 9, 5;
%or;
%ix/load 4, 10, 0;
%flag_set/imm 4, 0;
%store/vec4 v0x562a0b895de0_0, 4, 1;
%load/vec4 v0x562a0b896250_0;
%pad/u 32;
%pushi/vec4 11, 0, 32;
%cmp/e;
%flag_get/vec4 4;
%load/vec4 v0x562a0b895de0_0;
%parti/s 1, 10, 5;
%or;
%ix/load 4, 11, 0;
%flag_set/imm 4, 0;
%store/vec4 v0x562a0b895de0_0, 4, 1;
%load/vec4 v0x562a0b896250_0;
%pad/u 32;
%pushi/vec4 12, 0, 32;
%cmp/e;
%flag_get/vec4 4;
%load/vec4 v0x562a0b895de0_0;
%parti/s 1, 11, 5;
%or;
%ix/load 4, 12, 0;
%flag_set/imm 4, 0;
%store/vec4 v0x562a0b895de0_0, 4, 1;
%load/vec4 v0x562a0b896250_0;
%pad/u 32;
%pushi/vec4 13, 0, 32;
%cmp/e;
%flag_get/vec4 4;
%load/vec4 v0x562a0b895de0_0;
%parti/s 1, 12, 5;
%or;
%ix/load 4, 13, 0;
%flag_set/imm 4, 0;
%store/vec4 v0x562a0b895de0_0, 4, 1;
%load/vec4 v0x562a0b896250_0;
%pad/u 32;
%pushi/vec4 14, 0, 32;
%cmp/e;
%flag_get/vec4 4;
%load/vec4 v0x562a0b895de0_0;
%parti/s 1, 13, 5;
%or;
%ix/load 4, 14, 0;
%flag_set/imm 4, 0;
%store/vec4 v0x562a0b895de0_0, 4, 1;
%load/vec4 v0x562a0b896250_0;
%pad/u 32;
%pushi/vec4 15, 0, 32;
%cmp/e;
%flag_get/vec4 4;
%load/vec4 v0x562a0b895de0_0;
%parti/s 1, 14, 5;
%or;
%ix/load 4, 15, 0;
%flag_set/imm 4, 0;
%store/vec4 v0x562a0b895de0_0, 4, 1;
%vpi_call 2 37 "$display", "bm1 : %b", v0x562a0b895de0_0 {0 0 0};
%load/vec4 v0x562a0b896250_0;
%pad/u 5;
%load/vec4 v0x562a0b896330_0;
%pad/u 5;
%add;
%addi 1, 0, 5;
%assign/vec4 v0x562a0b896170_0, 0;
%vpi_call 2 41 "$display", "n_max : %h", v0x562a0b896170_0 {0 0 0};
%load/vec4 v0x562a0b896410_0;
%pad/u 32;
%pushi/vec4 15, 0, 32;
%cmp/e;
%flag_get/vec4 4;
%ix/load 4, 15, 0;
%flag_set/imm 4, 0;
%store/vec4 v0x562a0b895ec0_0, 4, 1;
%load/vec4 v0x562a0b896410_0;
%pad/u 32;
%pushi/vec4 14, 0, 32;
%cmp/e;
%flag_get/vec4 4;
%load/vec4 v0x562a0b895ec0_0;
%parti/s 1, 15, 5;
%or;
%ix/load 4, 14, 0;
%flag_set/imm 4, 0;
%store/vec4 v0x562a0b895ec0_0, 4, 1;
%load/vec4 v0x562a0b896410_0;
%pad/u 32;
%pushi/vec4 13, 0, 32;
%cmp/e;
%flag_get/vec4 4;
%load/vec4 v0x562a0b895ec0_0;
%parti/s 1, 14, 5;
%or;
%ix/load 4, 13, 0;
%flag_set/imm 4, 0;
%store/vec4 v0x562a0b895ec0_0, 4, 1;
%load/vec4 v0x562a0b896410_0;
%pad/u 32;
%pushi/vec4 12, 0, 32;
%cmp/e;
%flag_get/vec4 4;
%load/vec4 v0x562a0b895ec0_0;
%parti/s 1, 13, 5;
%or;
%ix/load 4, 12, 0;
%flag_set/imm 4, 0;
%store/vec4 v0x562a0b895ec0_0, 4, 1;
%load/vec4 v0x562a0b896410_0;
%pad/u 32;
%pushi/vec4 11, 0, 32;
%cmp/e;
%flag_get/vec4 4;
%load/vec4 v0x562a0b895ec0_0;
%parti/s 1, 12, 5;
%or;
%ix/load 4, 11, 0;
%flag_set/imm 4, 0;
%store/vec4 v0x562a0b895ec0_0, 4, 1;
%load/vec4 v0x562a0b896410_0;
%pad/u 32;
%pushi/vec4 10, 0, 32;
%cmp/e;
%flag_get/vec4 4;
%load/vec4 v0x562a0b895ec0_0;
%parti/s 1, 11, 5;
%or;
%ix/load 4, 10, 0;
%flag_set/imm 4, 0;
%store/vec4 v0x562a0b895ec0_0, 4, 1;
%load/vec4 v0x562a0b896410_0;
%pad/u 32;
%pushi/vec4 9, 0, 32;
%cmp/e;
%flag_get/vec4 4;
%load/vec4 v0x562a0b895ec0_0;
%parti/s 1, 10, 5;
%or;
%ix/load 4, 9, 0;
%flag_set/imm 4, 0;
%store/vec4 v0x562a0b895ec0_0, 4, 1;
%load/vec4 v0x562a0b896410_0;
%pad/u 32;
%pushi/vec4 8, 0, 32;
%cmp/e;
%flag_get/vec4 4;
%load/vec4 v0x562a0b895ec0_0;
%parti/s 1, 9, 5;
%or;
%ix/load 4, 8, 0;
%flag_set/imm 4, 0;
%store/vec4 v0x562a0b895ec0_0, 4, 1;
%load/vec4 v0x562a0b896410_0;
%pad/u 32;
%pushi/vec4 7, 0, 32;
%cmp/e;
%flag_get/vec4 4;
%load/vec4 v0x562a0b895ec0_0;
%parti/s 1, 8, 5;
%or;
%ix/load 4, 7, 0;
%flag_set/imm 4, 0;
%store/vec4 v0x562a0b895ec0_0, 4, 1;
%load/vec4 v0x562a0b896410_0;
%pad/u 32;
%pushi/vec4 6, 0, 32;
%cmp/e;
%flag_get/vec4 4;
%load/vec4 v0x562a0b895ec0_0;
%parti/s 1, 7, 4;
%or;
%ix/load 4, 6, 0;
%flag_set/imm 4, 0;
%store/vec4 v0x562a0b895ec0_0, 4, 1;
%load/vec4 v0x562a0b896410_0;
%pad/u 32;
%pushi/vec4 5, 0, 32;
%cmp/e;
%flag_get/vec4 4;
%load/vec4 v0x562a0b895ec0_0;
%parti/s 1, 6, 4;
%or;
%ix/load 4, 5, 0;
%flag_set/imm 4, 0;
%store/vec4 v0x562a0b895ec0_0, 4, 1;
%load/vec4 v0x562a0b896410_0;
%pad/u 32;
%pushi/vec4 4, 0, 32;
%cmp/e;
%flag_get/vec4 4;
%load/vec4 v0x562a0b895ec0_0;
%parti/s 1, 5, 4;
%or;
%ix/load 4, 4, 0;
%flag_set/imm 4, 0;
%store/vec4 v0x562a0b895ec0_0, 4, 1;
%load/vec4 v0x562a0b896410_0;
%pad/u 32;
%pushi/vec4 3, 0, 32;
%cmp/e;
%flag_get/vec4 4;
%load/vec4 v0x562a0b895ec0_0;
%parti/s 1, 4, 4;
%or;
%ix/load 4, 3, 0;
%flag_set/imm 4, 0;
%store/vec4 v0x562a0b895ec0_0, 4, 1;
%load/vec4 v0x562a0b896410_0;
%pad/u 32;
%pushi/vec4 2, 0, 32;
%cmp/e;
%flag_get/vec4 4;
%load/vec4 v0x562a0b895ec0_0;
%parti/s 1, 3, 3;
%or;
%ix/load 4, 2, 0;
%flag_set/imm 4, 0;
%store/vec4 v0x562a0b895ec0_0, 4, 1;
%load/vec4 v0x562a0b896410_0;
%pad/u 32;
%pushi/vec4 1, 0, 32;
%cmp/e;
%flag_get/vec4 4;
%load/vec4 v0x562a0b895ec0_0;
%parti/s 1, 2, 3;
%or;
%ix/load 4, 1, 0;
%flag_set/imm 4, 0;
%store/vec4 v0x562a0b895ec0_0, 4, 1;
%load/vec4 v0x562a0b896410_0;
%pad/u 32;
%pushi/vec4 0, 0, 32;
%cmp/e;
%flag_get/vec4 4;
%load/vec4 v0x562a0b895ec0_0;
%parti/s 1, 1, 2;
%or;
%ix/load 4, 0, 0;
%flag_set/imm 4, 0;
%store/vec4 v0x562a0b895ec0_0, 4, 1;
%vpi_call 2 60 "$display", "bm2 : %b", v0x562a0b895ec0_0 {0 0 0};
%load/vec4 v0x562a0b896170_0;
%parti/s 1, 4, 4;
%flag_set/vec4 8;
%jmp/0 T_1.0, 8;
%load/vec4 v0x562a0b895de0_0;
%load/vec4 v0x562a0b895ec0_0;
%or;
%jmp/1 T_1.1, 8;
T_1.0 ; End of true expr.
%load/vec4 v0x562a0b895de0_0;
%load/vec4 v0x562a0b895ec0_0;
%and;
%jmp/0 T_1.1, 8;
; End of false expr.
%blend;
T_1.1;
%store/vec4 v0x562a0b85f770_0, 0, 16;
%vpi_call 2 63 "$display", "bm : %b", v0x562a0b85f770_0 {0 0 0};
%load/vec4 v0x562a0b85f770_0;
%parti/s 1, 0, 2;
%replicate 4;
%ix/load 4, 0, 0;
%flag_set/imm 4, 0;
%store/vec4 v0x562a0b896040_0, 4, 4;
%load/vec4 v0x562a0b85f770_0;
%parti/s 1, 1, 2;
%replicate 4;
%ix/load 4, 4, 0;
%flag_set/imm 4, 0;
%store/vec4 v0x562a0b896040_0, 4, 4;
%load/vec4 v0x562a0b85f770_0;
%parti/s 1, 2, 3;
%replicate 4;
%ix/load 4, 8, 0;
%flag_set/imm 4, 0;
%store/vec4 v0x562a0b896040_0, 4, 4;
%load/vec4 v0x562a0b85f770_0;
%parti/s 1, 3, 3;
%replicate 4;
%ix/load 4, 12, 0;
%flag_set/imm 4, 0;
%store/vec4 v0x562a0b896040_0, 4, 4;
%load/vec4 v0x562a0b85f770_0;
%parti/s 1, 4, 4;
%replicate 4;
%ix/load 4, 16, 0;
%flag_set/imm 4, 0;
%store/vec4 v0x562a0b896040_0, 4, 4;
%load/vec4 v0x562a0b85f770_0;
%parti/s 1, 5, 4;
%replicate 4;
%ix/load 4, 20, 0;
%flag_set/imm 4, 0;
%store/vec4 v0x562a0b896040_0, 4, 4;
%load/vec4 v0x562a0b85f770_0;
%parti/s 1, 6, 4;
%replicate 4;
%ix/load 4, 24, 0;
%flag_set/imm 4, 0;
%store/vec4 v0x562a0b896040_0, 4, 4;
%load/vec4 v0x562a0b85f770_0;
%parti/s 1, 7, 4;
%replicate 4;
%ix/load 4, 28, 0;
%flag_set/imm 4, 0;
%store/vec4 v0x562a0b896040_0, 4, 4;
%load/vec4 v0x562a0b85f770_0;
%parti/s 1, 8, 5;
%replicate 4;
%ix/load 4, 32, 0;
%flag_set/imm 4, 0;
%store/vec4 v0x562a0b896040_0, 4, 4;
%load/vec4 v0x562a0b85f770_0;
%parti/s 1, 9, 5;
%replicate 4;
%ix/load 4, 36, 0;
%flag_set/imm 4, 0;
%store/vec4 v0x562a0b896040_0, 4, 4;
%load/vec4 v0x562a0b85f770_0;
%parti/s 1, 10, 5;
%replicate 4;
%ix/load 4, 40, 0;
%flag_set/imm 4, 0;
%store/vec4 v0x562a0b896040_0, 4, 4;
%load/vec4 v0x562a0b85f770_0;
%parti/s 1, 11, 5;
%replicate 4;
%ix/load 4, 44, 0;
%flag_set/imm 4, 0;
%store/vec4 v0x562a0b896040_0, 4, 4;
%load/vec4 v0x562a0b85f770_0;
%parti/s 1, 12, 5;
%replicate 4;
%ix/load 4, 48, 0;
%flag_set/imm 4, 0;
%store/vec4 v0x562a0b896040_0, 4, 4;
%load/vec4 v0x562a0b85f770_0;
%parti/s 1, 13, 5;
%replicate 4;
%ix/load 4, 52, 0;
%flag_set/imm 4, 0;
%store/vec4 v0x562a0b896040_0, 4, 4;
%load/vec4 v0x562a0b85f770_0;
%parti/s 1, 14, 5;
%replicate 4;
%ix/load 4, 56, 0;
%flag_set/imm 4, 0;
%store/vec4 v0x562a0b896040_0, 4, 4;
%load/vec4 v0x562a0b85f770_0;
%parti/s 1, 15, 5;
%replicate 4;
%ix/load 4, 60, 0;
%flag_set/imm 4, 0;
%store/vec4 v0x562a0b896040_0, 4, 4;
%jmp T_1;
.thread T_1;
.scope S_0x562a0b875c60;
T_2 ;
%delay 10, 0;
%load/vec4 v0x562a0b8968d0_0;
%pushi/vec4 0, 0, 1;
%cmp/e;
%flag_get/vec4 6;
%store/vec4 v0x562a0b8968d0_0, 0, 1;
%jmp T_2;
.thread T_2;
.scope S_0x562a0b875c60;
T_3 ;
%vpi_call 2 113 "$monitor", "clk %b | nw %d | ns %d | m %h", v0x562a0b8968d0_0, v0x562a0b896b60_0, v0x562a0b896a60_0, v0x562a0b896990_0 {0 0 0};
%end;
.thread T_3;
.scope S_0x562a0b875c60;
T_4 ;
%vpi_call 2 121 "$dumpfile", "text.vcd" {0 0 0};
%vpi_call 2 122 "$dumpvars", v0x562a0b8968d0_0, v0x562a0b896b60_0, v0x562a0b896a60_0, v0x562a0b896990_0 {0 0 0};
%vpi_call 2 123 "$display", $time, "starting simulation" {0 0 0};
%pushi/vec4 0, 0, 1;
%store/vec4 v0x562a0b8968d0_0, 0, 1;
%vpi_call 2 125 "$display", "starting the simulation" {0 0 0};
%pushi/vec4 4, 0, 4;
%store/vec4 v0x562a0b8967f0_0, 0, 4;
%pushi/vec4 0, 0, 4;
%store/vec4 v0x562a0b896710_0, 0, 4;
%fork TD_mask_gen_tb.run_mask_gen, S_0x562a0b896570;
%join;
%pushi/vec4 4, 0, 4;
%store/vec4 v0x562a0b8967f0_0, 0, 4;
%pushi/vec4 1, 0, 4;
%store/vec4 v0x562a0b896710_0, 0, 4;
%fork TD_mask_gen_tb.run_mask_gen, S_0x562a0b896570;
%join;
%pushi/vec4 4, 0, 4;
%store/vec4 v0x562a0b8967f0_0, 0, 4;
%pushi/vec4 2, 0, 4;
%store/vec4 v0x562a0b896710_0, 0, 4;
%fork TD_mask_gen_tb.run_mask_gen, S_0x562a0b896570;
%join;
%pushi/vec4 4, 0, 4;
%store/vec4 v0x562a0b8967f0_0, 0, 4;
%pushi/vec4 3, 0, 4;
%store/vec4 v0x562a0b896710_0, 0, 4;
%fork TD_mask_gen_tb.run_mask_gen, S_0x562a0b896570;
%join;
%pushi/vec4 4, 0, 4;
%store/vec4 v0x562a0b8967f0_0, 0, 4;
%pushi/vec4 4, 0, 4;
%store/vec4 v0x562a0b896710_0, 0, 4;
%fork TD_mask_gen_tb.run_mask_gen, S_0x562a0b896570;
%join;
%pushi/vec4 4, 0, 4;
%store/vec4 v0x562a0b8967f0_0, 0, 4;
%pushi/vec4 5, 0, 4;
%store/vec4 v0x562a0b896710_0, 0, 4;
%fork TD_mask_gen_tb.run_mask_gen, S_0x562a0b896570;
%join;
%pushi/vec4 4, 0, 4;
%store/vec4 v0x562a0b8967f0_0, 0, 4;
%pushi/vec4 6, 0, 4;
%store/vec4 v0x562a0b896710_0, 0, 4;
%fork TD_mask_gen_tb.run_mask_gen, S_0x562a0b896570;
%join;
%pushi/vec4 4, 0, 4;
%store/vec4 v0x562a0b8967f0_0, 0, 4;
%pushi/vec4 7, 0, 4;
%store/vec4 v0x562a0b896710_0, 0, 4;
%fork TD_mask_gen_tb.run_mask_gen, S_0x562a0b896570;
%join;
%pushi/vec4 4, 0, 4;
%store/vec4 v0x562a0b8967f0_0, 0, 4;
%pushi/vec4 8, 0, 4;
%store/vec4 v0x562a0b896710_0, 0, 4;
%fork TD_mask_gen_tb.run_mask_gen, S_0x562a0b896570;
%join;
%pushi/vec4 4, 0, 4;
%store/vec4 v0x562a0b8967f0_0, 0, 4;
%pushi/vec4 9, 0, 4;
%store/vec4 v0x562a0b896710_0, 0, 4;
%fork TD_mask_gen_tb.run_mask_gen, S_0x562a0b896570;
%join;
%pushi/vec4 4, 0, 4;
%store/vec4 v0x562a0b8967f0_0, 0, 4;
%pushi/vec4 10, 0, 4;
%store/vec4 v0x562a0b896710_0, 0, 4;
%fork TD_mask_gen_tb.run_mask_gen, S_0x562a0b896570;
%join;
%pushi/vec4 4, 0, 4;
%store/vec4 v0x562a0b8967f0_0, 0, 4;
%pushi/vec4 11, 0, 4;
%store/vec4 v0x562a0b896710_0, 0, 4;
%fork TD_mask_gen_tb.run_mask_gen, S_0x562a0b896570;
%join;
%pushi/vec4 4, 0, 4;
%store/vec4 v0x562a0b8967f0_0, 0, 4;
%pushi/vec4 12, 0, 4;
%store/vec4 v0x562a0b896710_0, 0, 4;
%fork TD_mask_gen_tb.run_mask_gen, S_0x562a0b896570;
%join;
%pushi/vec4 4, 0, 4;
%store/vec4 v0x562a0b8967f0_0, 0, 4;
%pushi/vec4 13, 0, 4;
%store/vec4 v0x562a0b896710_0, 0, 4;
%fork TD_mask_gen_tb.run_mask_gen, S_0x562a0b896570;
%join;
%pushi/vec4 4, 0, 4;
%store/vec4 v0x562a0b8967f0_0, 0, 4;
%pushi/vec4 14, 0, 4;
%store/vec4 v0x562a0b896710_0, 0, 4;
%fork TD_mask_gen_tb.run_mask_gen, S_0x562a0b896570;
%join;
%pushi/vec4 4, 0, 4;
%store/vec4 v0x562a0b8967f0_0, 0, 4;
%pushi/vec4 15, 0, 4;
%store/vec4 v0x562a0b896710_0, 0, 4;
%fork TD_mask_gen_tb.run_mask_gen, S_0x562a0b896570;
%join;
%vpi_call 2 147 "$finish" {0 0 0};
%end;
.thread T_4;
# The file index is used to find the file name in the following table.
:file_names 3;
"N/A";
"<interactive>";
"mask_gen.v";