; RUN: llhd-opt %s -l proc %bar (i1$ %clk, i1$ %d) -> (i1$ %q) { init: %clk.prb = prb i1$ %clk wait %check, %clk check: %clk.prb1 = prb i1$ %clk %0 = const i1 0 %1 = eq i1 %clk.prb, %0 %2 = neq i1 %clk.prb1, %0 %posedge = and i1 %1, %2 br %posedge, %init, %event event: %3 = const time 0s 1d %d.prb = prb i1$ %d drv i1$ %q, %d.prb, %3 br %init } ; CHECK: entity %bar (i1$ %clk, i1$ %d) -> (i1$ %q) { ; CHECK-NEXT: %d.prb = prb i1$ %d ; CHECK-NEXT: %0 = prb i1$ %clk ; CHECK-NEXT: reg i1$ %q, [%d.prb, rise %0] ; CHECK-NEXT: } entity @foo (i1$ %clk, i1$ %d) -> (i1$ %q) { inst %bar (i1$ %clk, i1$ %d) -> (i1$ %q) }