diff options
Diffstat (limited to 'testsuite/synth/func01/func03.vhdl')
-rw-r--r-- | testsuite/synth/func01/func03.vhdl | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/testsuite/synth/func01/func03.vhdl b/testsuite/synth/func01/func03.vhdl new file mode 100644 index 000000000..10022c9cb --- /dev/null +++ b/testsuite/synth/func01/func03.vhdl @@ -0,0 +1,20 @@ +library ieee; +use ieee.std_logic_1164.all; + +entity func03 is + port (a : std_logic_vector (7 downto 0); + b : out std_logic_vector (7 downto 0)); +end func03; + +architecture behav of func03 is + function gen_mask (len : natural) return std_logic_vector is + variable res : std_logic_vector (len - 1 downto 0); + begin + res := (0 => '1', others => '0'); + return res; + end gen_mask; + constant mask : std_logic_vector(7 downto 0) := gen_mask (8); +begin + b <= a and mask; +end behav; + |