diff options
-rw-r--r-- | testsuite/synth/issue2041/mymodule.vhdl | 33 | ||||
-rwxr-xr-x | testsuite/synth/issue2041/testsuite.sh | 8 |
2 files changed, 41 insertions, 0 deletions
diff --git a/testsuite/synth/issue2041/mymodule.vhdl b/testsuite/synth/issue2041/mymodule.vhdl new file mode 100644 index 000000000..124d9f2f6 --- /dev/null +++ b/testsuite/synth/issue2041/mymodule.vhdl @@ -0,0 +1,33 @@ +library ieee; +use ieee.std_logic_1164.all; + +entity mymodule is + port ( + clk: in std_logic; + reset: in std_logic; + i: in std_logic_vector(1 downto 0); + o: out std_logic + ); +end mymodule; + +architecture rtl of mymodule is +signal o_next: std_logic; +begin +process(i) begin + o_next <= '0'; + case i is + when "00" => o_next <= '0'; + when others => o_next <= '1'; + end case; +end process; + +process(clk, reset) begin + if rising_edge(clk) then + if reset = '1' then + o <= '0'; + else + o <= o_next; + end if; + end if; +end process; +end rtl ; diff --git a/testsuite/synth/issue2041/testsuite.sh b/testsuite/synth/issue2041/testsuite.sh new file mode 100755 index 000000000..e5c91ff5c --- /dev/null +++ b/testsuite/synth/issue2041/testsuite.sh @@ -0,0 +1,8 @@ +#! /bin/sh + +. ../../testenv.sh + +synth --out=verilog mymodule.vhdl -e > syn_mymodule.v +grep -q default syn_mymodule.v + +echo "Test successful" |