data/full_repos/permissive/19340845/src/ProgramCounter.v
data/verilator_xmls/b131cd75-ac81-4b4c-8ccb-768dcbe45b45.xml
module ProgramCounter (
   input         load, reset, notUpdate, clk,
   input [15:0]  address,
   output [15:0] counter);
   
   reg [15:0]    count = 16'b0;
   
   always @ (posedge clk) begin
      if (reset)
	count = 16'b0;
      else if (load)
	count = address + 16'b1;
      else if (!notUpdate)
        count = count + 16'b1;
   end
   
   assign counter = count;
endmodule
module ProgramCounter (
   input         load, reset, notUpdate, clk,
   input [15:0]  address,
   output [15:0] counter);

   
   reg [15:0]    count = 16'b0;
   
   always @ (posedge clk) begin
      if (reset)
	count = 16'b0;
      else if (load)
	count = address + 16'b1;
      else if (!notUpdate)
        count = count + 16'b1;
   end
   
   assign counter = count;
endmodule