data/full_repos/permissive/150152921/apps/md5/step1/tbench/Md5CoreTest.v
1: b'%Error: data/full_repos/permissive/150152921/apps/md5/step1/tbench/Md5CoreTest.v:19: Cannot find include file: Md5CoreTestMacros.v\n`include "Md5CoreTestMacros.v" \n         ^~~~~~~~~~~~~~~~~~~~~\n        ... Looked in:\n             data/full_repos/permissive/150152921/apps/md5/step1/tbench,data/full_repos/permissive/150152921/Md5CoreTestMacros.v\n             data/full_repos/permissive/150152921/apps/md5/step1/tbench,data/full_repos/permissive/150152921/Md5CoreTestMacros.v.v\n             data/full_repos/permissive/150152921/apps/md5/step1/tbench,data/full_repos/permissive/150152921/Md5CoreTestMacros.v.sv\n             Md5CoreTestMacros.v\n             Md5CoreTestMacros.v.v\n             Md5CoreTestMacros.v.sv\n             obj_dir/Md5CoreTestMacros.v\n             obj_dir/Md5CoreTestMacros.v.v\n             obj_dir/Md5CoreTestMacros.v.sv\n%Warning-STMTDLY: data/full_repos/permissive/150152921/apps/md5/step1/tbench/Md5CoreTest.v:44: Unsupported: Ignoring delay on this delayed statement.\n    forever #10 clk = !clk;\n            ^\n                  ... Use "/* verilator lint_off STMTDLY */" and lint_on around source to disable this message.\n%Warning-STMTDLY: data/full_repos/permissive/150152921/apps/md5/step1/tbench/Md5CoreTest.v:50: Unsupported: Ignoring delay on this delayed statement.\n    #5 reset = 1;\n    ^\n%Warning-STMTDLY: data/full_repos/permissive/150152921/apps/md5/step1/tbench/Md5CoreTest.v:51: Unsupported: Ignoring delay on this delayed statement.\n    #4 reset = 0;\n    ^\n%Error: data/full_repos/permissive/150152921/apps/md5/step1/tbench/Md5CoreTest.v:57: Define or directive not defined: \'`TestCase\'\n`TestCase(  \n^~~~~~~~~\n%Error: data/full_repos/permissive/150152921/apps/md5/step1/tbench/Md5CoreTest.v:58: syntax error, unexpected \'(\'\n  0, \n  ^\n%Error: data/full_repos/permissive/150152921/apps/md5/step1/tbench/Md5CoreTest.v:67: Define or directive not defined: \'`TestCase\'\n`TestCase(  \n^~~~~~~~~\n%Error: data/full_repos/permissive/150152921/apps/md5/step1/tbench/Md5CoreTest.v:74: Too many digits for 32 bit number: \'b00000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000001000001\n%Error: data/full_repos/permissive/150152921/apps/md5/step1/tbench/Md5CoreTest.v:77: Define or directive not defined: \'`TestCase\'\n`TestCase(  \n^~~~~~~~~\n%Error: data/full_repos/permissive/150152921/apps/md5/step1/tbench/Md5CoreTest.v:84: Too many digits for 32 bit number: \'b00000000000000000000000000000000000000000000000000000000000110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000010000010100000101000001\n%Error: data/full_repos/permissive/150152921/apps/md5/step1/tbench/Md5CoreTest.v:87: Define or directive not defined: \'`TestCase\'\n`TestCase(  \n^~~~~~~~~\n%Error: data/full_repos/permissive/150152921/apps/md5/step1/tbench/Md5CoreTest.v:94: Too many digits for 32 bit number: \'b00000000000000000000000000000000000000000000000000000000010110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000110010001101100011100100110111101010111001000000110111101101100011011000110010101001000\n%Error: data/full_repos/permissive/150152921/apps/md5/step1/tbench/Md5CoreTest.v:97: Define or directive not defined: \'`TestCase\'\n`TestCase(  \n^~~~~~~~~\n%Error: data/full_repos/permissive/150152921/apps/md5/step1/tbench/Md5CoreTest.v:104: Too many digits for 32 bit number: \'b00000000000000000000000000000000000000000000000000000001010110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000001100111011011110110010000100000011110010111101001100001011011000010000001100101011010000111010000100000011100100110010101110110011011110010000001110011011100000110110101110101011010100010000001111000011011110110011000100000011011100111011101101111011100100110001000100000011010110110001101101001011101010111000100100000011001010110100001010100\n%Error: data/full_repos/permissive/150152921/apps/md5/step1/tbench/Md5CoreTest.v:107: Define or directive not defined: \'`TestCase\'\n`TestCase(  \n^~~~~~~~~\n%Error: data/full_repos/permissive/150152921/apps/md5/step1/tbench/Md5CoreTest.v:114: Too many digits for 32 bit number: \'b00000000000000000000000000000000000000000000000000000001011000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000010111001100111011011110110010000100000011110010111101001100001011011000010000001100101011010000111010000100000011100100110010101110110011011110010000001110011011100000110110101110101011010100010000001111000011011110110011000100000011011100111011101101111011100100110001000100000011010110110001101101001011101010111000100100000011001010110100001010100\n%Error: data/full_repos/permissive/150152921/apps/md5/step1/tbench/Md5CoreTest.v:119: Define or directive not defined: \'`Stages\'\nalways @(posedge clk) if (count == 6 + `Stages) test_all <= test0&test1&test2&test3&test4&test5;\n                                       ^~~~~~~\n%Error: data/full_repos/permissive/150152921/apps/md5/step1/tbench/Md5CoreTest.v:119: syntax error, unexpected \')\', expecting TYPE-IDENTIFIER\nalways @(posedge clk) if (count == 6 + `Stages) test_all <= test0&test1&test2&test3&test4&test5;\n                                              ^\n%Error: data/full_repos/permissive/150152921/apps/md5/step1/tbench/Md5CoreTest.v:121: Define or directive not defined: \'`Stages\'\n    if (count == 6 + `Stages+1) begin\n                     ^~~~~~~\n%Error: data/full_repos/permissive/150152921/apps/md5/step1/tbench/Md5CoreTest.v:131: Define or directive not defined: \'`Stages\'\nalways @(posedge clk) if (count == 6 + `Stages+2) $finish;\n                                       ^~~~~~~\n%Error: Exiting due to 17 error(s), 3 warning(s)\n'
module Md5CoreTest;

reg clk, reset, test_all;
wire [31:0] a, b, c, d;
reg [31:0] count = 0;
reg [511:0] chunk;

top m (
  .CLK(clk), 
  .WB_IN(chunk), 
  .A_IN('h67452301), 
  .B_IN('hefcdab89), 
  .C_IN('h98badcfe), 
  .D_IN('h10325476), 
  .A_OUT(a), 
  .B_OUT(b), 
  .C_OUT(c), 
  .D_OUT(d)
);

initial
  begin
    clk = 0;
    forever #10 clk = !clk;
  end
  
initial
  begin
    reset = 0;
    #5 reset = 1;
    #4 reset = 0;
  end
 
`define DoneCount 6 + `Stages


`TestCase(  
  0, 
  test0,
  'hd98c1dd4,
  'h04b2008f,
  'h980980e9,
  'h7e42f8ec,
  'b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000)


`TestCase(  
  1, 
  test1,
  'h7062c57f,
  'ha80fa7e7,
  'hb735591a,
  'h29beac2e,
  'b00000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000001000001)


`TestCase(  
  2, 
  test2,
  'hb3fffae1,
  'hc2e614e6,
  'h9642a7fb,
  'hb7862396,
  'b00000000000000000000000000000000000000000000000000000000000110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000010000010100000101000001)


`TestCase(  
  3, 
  test3,
  'hb18d0ab1,
  'h4175e064,
  'h9ba9b705,
  'he53f2ee7,
  'b00000000000000000000000000000000000000000000000000000000010110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000110010001101100011100100110111101010111001000000110111101101100011011000110010101001000)


`TestCase(  
  4, 
  test4,
  'h9d7d109e,
  'h82b62b37,
  'h351dd86b,
  'hd619a442,
  'b00000000000000000000000000000000000000000000000000000001010110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000001100111011011110110010000100000011110010111101001100001011011000010000001100101011010000111010000100000011100100110010101110110011011110010000001110011011100000110110101110101011010100010000001111000011011110110011000100000011011100111011101101111011100100110001000100000011010110110001101101001011101010111000100100000011001010110100001010100)


`TestCase(  
  5, 
  test5,
  'hc209d9e4,
  'h1cfbd090,
  'hadff68a0,
  'hd0cb22df,
  'b00000000000000000000000000000000000000000000000000000001011000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000010111001100111011011110110010000100000011110010111101001100001011011000010000001100101011010000111010000100000011100100110010101110110011011110010000001110011011100000110110101110101011010100010000001111000011011110110011000100000011011100111011101101111011100100110001000100000011010110110001101101001011101010111000100100000011001010110100001010100) 
    
`define TestAllExp test0&test1&test2&test3&test4&test5
    
always @(posedge clk) count <= count + 1;
always @(posedge clk) if (count == `DoneCount) test_all <= `TestAllExp;
always @(posedge clk) begin
    if (count == `DoneCount+1) begin
        if (test_all == 1'b1) begin
            $display("Good!");
        end else begin
            $display ("Bad @ %d", count);
            $error;
            $stop;
        end
    end
end
always @(posedge clk) if (count == `DoneCount+2) $finish;
    
endmodule
module Md5CoreTest;


reg clk, reset, test_all;
wire [31:0] a, b, c, d;
reg [31:0] count = 0;
reg [511:0] chunk;

top m (
  .CLK(clk), 
  .WB_IN(chunk), 
  .A_IN('h67452301), 
  .B_IN('hefcdab89), 
  .C_IN('h98badcfe), 
  .D_IN('h10325476), 
  .A_OUT(a), 
  .B_OUT(b), 
  .C_OUT(c), 
  .D_OUT(d)
);

initial
  begin
    clk = 0;
    forever #10 clk = !clk;
  end
  
initial
  begin
    reset = 0;
    #5 reset = 1;
    #4 reset = 0;
  end
 
`define DoneCount 6 + `Stages


`TestCase(  
  0, 
  test0,
  'hd98c1dd4,
  'h04b2008f,
  'h980980e9,
  'h7e42f8ec,
  'b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000)


`TestCase(  
  1, 
  test1,
  'h7062c57f,
  'ha80fa7e7,
  'hb735591a,
  'h29beac2e,
  'b00000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000001000001)


`TestCase(  
  2, 
  test2,
  'hb3fffae1,
  'hc2e614e6,
  'h9642a7fb,
  'hb7862396,
  'b00000000000000000000000000000000000000000000000000000000000110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000010000010100000101000001)


`TestCase(  
  3, 
  test3,
  'hb18d0ab1,
  'h4175e064,
  'h9ba9b705,
  'he53f2ee7,
  'b00000000000000000000000000000000000000000000000000000000010110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000110010001101100011100100110111101010111001000000110111101101100011011000110010101001000)


`TestCase(  
  4, 
  test4,
  'h9d7d109e,
  'h82b62b37,
  'h351dd86b,
  'hd619a442,
  'b00000000000000000000000000000000000000000000000000000001010110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000001100111011011110110010000100000011110010111101001100001011011000010000001100101011010000111010000100000011100100110010101110110011011110010000001110011011100000110110101110101011010100010000001111000011011110110011000100000011011100111011101101111011100100110001000100000011010110110001101101001011101010111000100100000011001010110100001010100)


`TestCase(  
  5, 
  test5,
  'hc209d9e4,
  'h1cfbd090,
  'hadff68a0,
  'hd0cb22df,
  'b00000000000000000000000000000000000000000000000000000001011000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000010111001100111011011110110010000100000011110010111101001100001011011000010000001100101011010000111010000100000011100100110010101110110011011110010000001110011011100000110110101110101011010100010000001111000011011110110011000100000011011100111011101101111011100100110001000100000011010110110001101101001011101010111000100100000011001010110100001010100) 
    
`define TestAllExp test0&test1&test2&test3&test4&test5
    
always @(posedge clk) count <= count + 1;
always @(posedge clk) if (count == `DoneCount) test_all <= `TestAllExp;
always @(posedge clk) begin
    if (count == `DoneCount+1) begin
        if (test_all == 1'b1) begin
            $display("Good!");
        end else begin
            $display ("Bad @ %d", count);
            $error;
            $stop;
        end
    end
end
always @(posedge clk) if (count == `DoneCount+2) $finish;
    
endmodule