From 9fbdcec2cfc8afb6193ba9e48825acedb355cb6b Mon Sep 17 00:00:00 2001 From: Tristan Gingold Date: Fri, 15 May 2020 08:18:27 +0200 Subject: testsuite/synth: add tests for #1310 --- testsuite/synth/issue1310/issue.vhdl | 22 ++++++++++++++++++++++ testsuite/synth/issue1310/issue2.vhdl | 19 +++++++++++++++++++ testsuite/synth/issue1310/testsuite.sh | 9 +++++++++ 3 files changed, 50 insertions(+) create mode 100644 testsuite/synth/issue1310/issue.vhdl create mode 100644 testsuite/synth/issue1310/issue2.vhdl create mode 100755 testsuite/synth/issue1310/testsuite.sh (limited to 'testsuite') diff --git a/testsuite/synth/issue1310/issue.vhdl b/testsuite/synth/issue1310/issue.vhdl new file mode 100644 index 000000000..9ed2e902c --- /dev/null +++ b/testsuite/synth/issue1310/issue.vhdl @@ -0,0 +1,22 @@ +library ieee; +use ieee.std_logic_1164.all; +use ieee.numeric_std.all; + +entity issue is + port (sig_gt, sig_ge, sig_lt, sig_le : out boolean; + uns_gt, uns_ge, uns_lt, uns_le : out boolean); +end issue; + +architecture beh of issue is +begin + -- all of those works + uns_gt <= (unsigned'("1111") > unsigned'("0111")); + uns_ge <= (unsigned'("1111") >= unsigned'("0111")); + uns_lt <= (unsigned'("1111") < unsigned'("0111")); + uns_le <= (unsigned'("1111") <= unsigned'("0111")); + + sig_gt <= (signed'("1111") > signed'("0111")); + sig_ge <= (signed'("1111") >= signed'("0111")); + sig_lt <= (signed'("1111") < signed'("0111")); + sig_le <= (signed'("1111") <= signed'("0111")); +end architecture beh; diff --git a/testsuite/synth/issue1310/issue2.vhdl b/testsuite/synth/issue1310/issue2.vhdl new file mode 100644 index 000000000..4fbe56000 --- /dev/null +++ b/testsuite/synth/issue1310/issue2.vhdl @@ -0,0 +1,19 @@ +library ieee; +use ieee.std_logic_1164.all; +use ieee.numeric_std.all; + +entity issue2 is +end issue2; + +architecture beh of issue2 is +begin + assert (unsigned'("1111") > unsigned'("0111")); + assert (unsigned'("1111") >= unsigned'("0111")); + assert (unsigned'("0111") < unsigned'("1111")); + assert (unsigned'("0111") <= unsigned'("1111")); + + assert (signed'("0111") > signed'("1111")); + assert (signed'("0111") >= signed'("1111")); + assert (signed'("1111") < signed'("0111")); + assert (signed'("1111") <= signed'("0111")); +end architecture beh; diff --git a/testsuite/synth/issue1310/testsuite.sh b/testsuite/synth/issue1310/testsuite.sh new file mode 100755 index 000000000..be51264d6 --- /dev/null +++ b/testsuite/synth/issue1310/testsuite.sh @@ -0,0 +1,9 @@ +#! /bin/sh + +. ../../testenv.sh + +synth_analyze issue +synth_analyze issue2 +clean + +echo "Test successful" -- cgit v1.2.3