diff options
Diffstat (limited to 'testsuite/synth/ret01/ret05.vhdl')
-rw-r--r-- | testsuite/synth/ret01/ret05.vhdl | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/testsuite/synth/ret01/ret05.vhdl b/testsuite/synth/ret01/ret05.vhdl new file mode 100644 index 000000000..c14e36d11 --- /dev/null +++ b/testsuite/synth/ret01/ret05.vhdl @@ -0,0 +1,21 @@ +library ieee; +use ieee.std_logic_1164.all; + +entity ret02 is + port (di : std_logic_vector (7 downto 0); + res : out integer); +end ret02; + +architecture behav of ret02 is + function ffs (v : std_logic_vector (7 downto 0)) return integer is + begin + for i in v'range loop + if v (i) = '1' then + return i; + end if; + end loop; + return -1; + end ffs; +begin + res <= ffs (di); +end behav; |