data/full_repos/permissive/207610706/src/key_scheduler/inv_mix_columns.sv
1: b'%Error: data/full_repos/permissive/207610706/src/key_scheduler/inv_mix_columns.sv:110: Cannot find file containing module: \'aes_const_mult_02\'\naes_const_mult_02 times_x_1(in_byte, temp[0]);\n^~~~~~~~~~~~~~~~~\n        ... Looked in:\n             data/full_repos/permissive/207610706/src/key_scheduler,data/full_repos/permissive/207610706/aes_const_mult_02\n             data/full_repos/permissive/207610706/src/key_scheduler,data/full_repos/permissive/207610706/aes_const_mult_02.v\n             data/full_repos/permissive/207610706/src/key_scheduler,data/full_repos/permissive/207610706/aes_const_mult_02.sv\n             aes_const_mult_02\n             aes_const_mult_02.v\n             aes_const_mult_02.sv\n             obj_dir/aes_const_mult_02\n             obj_dir/aes_const_mult_02.v\n             obj_dir/aes_const_mult_02.sv\n%Error: data/full_repos/permissive/207610706/src/key_scheduler/inv_mix_columns.sv:111: Cannot find file containing module: \'aes_const_mult_02\'\naes_const_mult_02 times_x_2(temp[0], temp[1]);\n^~~~~~~~~~~~~~~~~\n%Error: data/full_repos/permissive/207610706/src/key_scheduler/inv_mix_columns.sv:112: Cannot find file containing module: \'aes_const_mult_02\'\naes_const_mult_02 times_x_3(temp[1], temp[2]);\n^~~~~~~~~~~~~~~~~\n%Error: data/full_repos/permissive/207610706/src/key_scheduler/inv_mix_columns.sv:95: Cannot find file containing module: \'aes_const_mult_02\'\naes_const_mult_02 times_x_1(in_byte, temp[0]);\n^~~~~~~~~~~~~~~~~\n%Error: data/full_repos/permissive/207610706/src/key_scheduler/inv_mix_columns.sv:96: Cannot find file containing module: \'aes_const_mult_02\'\naes_const_mult_02 times_x_2(temp[0], temp[1]);\n^~~~~~~~~~~~~~~~~\n%Error: data/full_repos/permissive/207610706/src/key_scheduler/inv_mix_columns.sv:97: Cannot find file containing module: \'aes_const_mult_02\'\naes_const_mult_02 times_x_3(temp[1], temp[2]);\n^~~~~~~~~~~~~~~~~\n%Error: data/full_repos/permissive/207610706/src/key_scheduler/inv_mix_columns.sv:80: Cannot find file containing module: \'aes_const_mult_02\'\naes_const_mult_02 times_x_1(in_byte, temp[0]);\n^~~~~~~~~~~~~~~~~\n%Error: data/full_repos/permissive/207610706/src/key_scheduler/inv_mix_columns.sv:81: Cannot find file containing module: \'aes_const_mult_02\'\naes_const_mult_02 times_x_2(temp[0], temp[1]);\n^~~~~~~~~~~~~~~~~\n%Error: data/full_repos/permissive/207610706/src/key_scheduler/inv_mix_columns.sv:82: Cannot find file containing module: \'aes_const_mult_02\'\naes_const_mult_02 times_x_3(temp[1], temp[2]);\n^~~~~~~~~~~~~~~~~\n%Error: data/full_repos/permissive/207610706/src/key_scheduler/inv_mix_columns.sv:65: Cannot find file containing module: \'aes_const_mult_02\'\naes_const_mult_02 times_x_1(in_byte, temp[0]);\n^~~~~~~~~~~~~~~~~\n%Error: data/full_repos/permissive/207610706/src/key_scheduler/inv_mix_columns.sv:66: Cannot find file containing module: \'aes_const_mult_02\'\naes_const_mult_02 times_x_2(temp[0], temp[1]);\n^~~~~~~~~~~~~~~~~\n%Error: data/full_repos/permissive/207610706/src/key_scheduler/inv_mix_columns.sv:67: Cannot find file containing module: \'aes_const_mult_02\'\naes_const_mult_02 times_x_3(temp[1], temp[2]);\n^~~~~~~~~~~~~~~~~\n%Warning-LITENDIAN: data/full_repos/permissive/207610706/src/key_scheduler/inv_mix_columns.sv:15: Little bit endian vector: MSB < LSB of bit range: 0:31\ninput [0:31] in_word;\n      ^\n                    ... Use "/* verilator lint_off LITENDIAN */" and lint_on around source to disable this message.\n%Warning-LITENDIAN: data/full_repos/permissive/207610706/src/key_scheduler/inv_mix_columns.sv:16: Little bit endian vector: MSB < LSB of bit range: 0:31\noutput [0:31] out_word;\n       ^\n%Warning-LITENDIAN: data/full_repos/permissive/207610706/src/key_scheduler/inv_mix_columns.sv:3: Little bit endian vector: MSB < LSB of bit range: 0:127\ninput [0:127] in_key;\n      ^\n%Warning-LITENDIAN: data/full_repos/permissive/207610706/src/key_scheduler/inv_mix_columns.sv:4: Little bit endian vector: MSB < LSB of bit range: 0:127\noutput [0:127] out_key;\n       ^\n%Error: Exiting due to 12 error(s), 4 warning(s)\n'
module column_slice(in_word, out_word);

input [0:31] in_word;
output [0:31] out_word;

wire [7:0] in_bytes[0:3];
wire [7:0] in_bytes_0e[0:3];
wire [7:0] in_bytes_0b[0:3];
wire [7:0] in_bytes_0d[0:3];
wire [7:0] in_bytes_09[0:3];

wire [7:0] out_bytes[0:3];

assign in_bytes[0] = in_word[0:7];
assign in_bytes[1] = in_word[8:15];
assign in_bytes[2] = in_word[16:23];
assign in_bytes[3] = in_word[24:31];

genvar i;
generate
    for(i = 0; i < 4; i=i+1)
        begin: multiplier_instances
        aes_const_mult_0e m_0e(in_bytes[i], in_bytes_0e[i]);
        aes_const_mult_0b m_0b(in_bytes[i], in_bytes_0b[i]);
        aes_const_mult_0d m_0d(in_bytes[i], in_bytes_0d[i]);
        aes_const_mult_09 m_09(in_bytes[i], in_bytes_09[i]);
        end
endgenerate

assign out_bytes[0] = in_bytes_0e[0] ^ in_bytes_0b[1] ^ in_bytes_0d[2] ^ in_bytes_09[3];
assign out_bytes[1] = in_bytes_09[0] ^ in_bytes_0e[1] ^ in_bytes_0b[2] ^ in_bytes_0d[3];
assign out_bytes[2] = in_bytes_0d[0] ^ in_bytes_09[1] ^ in_bytes_0e[2] ^ in_bytes_0b[3];
assign out_bytes[3] = in_bytes_0b[0] ^ in_bytes_0d[1] ^ in_bytes_09[2] ^ in_bytes_0e[3];

assign out_word = {out_bytes[0], out_bytes[1], out_bytes[2], out_bytes[3]};

endmodule
module column_slice(in_word, out_word);


input [0:31] in_word;
output [0:31] out_word;

wire [7:0] in_bytes[0:3];
wire [7:0] in_bytes_0e[0:3];
wire [7:0] in_bytes_0b[0:3];
wire [7:0] in_bytes_0d[0:3];
wire [7:0] in_bytes_09[0:3];

wire [7:0] out_bytes[0:3];

assign in_bytes[0] = in_word[0:7];
assign in_bytes[1] = in_word[8:15];
assign in_bytes[2] = in_word[16:23];
assign in_bytes[3] = in_word[24:31];

genvar i;
generate
    for(i = 0; i < 4; i=i+1)
        begin: multiplier_instances
        aes_const_mult_0e m_0e(in_bytes[i], in_bytes_0e[i]);
        aes_const_mult_0b m_0b(in_bytes[i], in_bytes_0b[i]);
        aes_const_mult_0d m_0d(in_bytes[i], in_bytes_0d[i]);
        aes_const_mult_09 m_09(in_bytes[i], in_bytes_09[i]);
        end
endgenerate

assign out_bytes[0] = in_bytes_0e[0] ^ in_bytes_0b[1] ^ in_bytes_0d[2] ^ in_bytes_09[3];
assign out_bytes[1] = in_bytes_09[0] ^ in_bytes_0e[1] ^ in_bytes_0b[2] ^ in_bytes_0d[3];
assign out_bytes[2] = in_bytes_0d[0] ^ in_bytes_09[1] ^ in_bytes_0e[2] ^ in_bytes_0b[3];
assign out_bytes[3] = in_bytes_0b[0] ^ in_bytes_0d[1] ^ in_bytes_09[2] ^ in_bytes_0e[3];

assign out_word = {out_bytes[0], out_bytes[1], out_bytes[2], out_bytes[3]};

endmodule