If you have some sort of Verilog implementation like:
module Example1 (input logic n);
always @(*) begin
a <= n;
b <= n;
c <= n;
end
endmodule;
and another implementation like:
module Exmaple2 (input logic n);
assign a = n;
assign b = n;
assign c = n;
endmodule;
Is the synthesis algorithm that Verilog runs going to create the same netlist for each circuit?
I am under the impression the synthesizer is able to simplify logic somehow, and in my understanding the above two examples are essentially identical.