data/full_repos/permissive/488660558/mixcolumn/MatrixMultiplication.v
1: b"%Error: data/full_repos/permissive/488660558/mixcolumn/MatrixMultiplication.v:11: Cannot find file containing module: 'MUL2'\n    MUL2 mul2_0(.In(a0), .Out(temp2[0]));\n    ^~~~\n        ... Looked in:\n             data/full_repos/permissive/488660558/mixcolumn,data/full_repos/permissive/488660558/MUL2\n             data/full_repos/permissive/488660558/mixcolumn,data/full_repos/permissive/488660558/MUL2.v\n             data/full_repos/permissive/488660558/mixcolumn,data/full_repos/permissive/488660558/MUL2.sv\n             MUL2\n             MUL2.v\n             MUL2.sv\n             obj_dir/MUL2\n             obj_dir/MUL2.v\n             obj_dir/MUL2.sv\n%Error: data/full_repos/permissive/488660558/mixcolumn/MatrixMultiplication.v:12: Cannot find file containing module: 'MUL2'\n    MUL2 mul2_1(.In(a1), .Out(temp2[1]));\n    ^~~~\n%Error: data/full_repos/permissive/488660558/mixcolumn/MatrixMultiplication.v:13: Cannot find file containing module: 'MUL2'\n    MUL2 mul2_2(.In(a2), .Out(temp2[2]));\n    ^~~~\n%Error: data/full_repos/permissive/488660558/mixcolumn/MatrixMultiplication.v:14: Cannot find file containing module: 'MUL2'\n    MUL2 mul2_3(.In(a3), .Out(temp2[3]));\n    ^~~~\n%Error: Exiting due to 4 error(s)\n"
module Column_Multiplication(a0,a1,a2,a3,b0,b1,b2,b3);

    input [7:0] a0, a1, a2, a3;
    output [7:0] b0, b1, b2, b3;

    wire [7:0] temp2 [0:3];
    wire [7:0] temp3 [0:3];

    MUL2 mul2_0(.In(a0), .Out(temp2[0]));
    MUL2 mul2_1(.In(a1), .Out(temp2[1]));
    MUL2 mul2_2(.In(a2), .Out(temp2[2]));
    MUL2 mul2_3(.In(a3), .Out(temp2[3]));

    assign temp3[0]=temp2[0]^a0;
    assign temp3[1]=temp2[1]^a1;
    assign temp3[2]=temp2[2]^a2;
    assign temp3[3]=temp2[3]^a3;
    
    assign b0=temp2[0]^temp3[1]^a2^a3;
    assign b1=temp2[1]^temp3[2]^a3^a0;
    assign b2=temp2[2]^temp3[3]^a0^a1;
    assign b3=temp2[3]^temp3[0]^a1^a2;

endmodule
module Column_Multiplication(a0,a1,a2,a3,b0,b1,b2,b3);


    input [7:0] a0, a1, a2, a3;
    output [7:0] b0, b1, b2, b3;

    wire [7:0] temp2 [0:3];
    wire [7:0] temp3 [0:3];

    MUL2 mul2_0(.In(a0), .Out(temp2[0]));
    MUL2 mul2_1(.In(a1), .Out(temp2[1]));
    MUL2 mul2_2(.In(a2), .Out(temp2[2]));
    MUL2 mul2_3(.In(a3), .Out(temp2[3]));

    assign temp3[0]=temp2[0]^a0;
    assign temp3[1]=temp2[1]^a1;
    assign temp3[2]=temp2[2]^a2;
    assign temp3[3]=temp2[3]^a3;
    
    assign b0=temp2[0]^temp3[1]^a2^a3;
    assign b1=temp2[1]^temp3[2]^a3^a0;
    assign b2=temp2[2]^temp3[3]^a0^a1;
    assign b3=temp2[3]^temp3[0]^a1^a2;

endmodule