aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorTristan Gingold <tgingold@free.fr>2022-06-05 12:18:39 +0200
committerTristan Gingold <tgingold@free.fr>2022-06-05 12:18:39 +0200
commit137641dbb2cf2900aea2da2ae90b9b4dfdc2bd5e (patch)
treee6cf6795169453de6af27b6f1528a33ca1dba4bc /src
parent0a3ee42a6dcde77a64934e3976dea4d24aa7e9e4 (diff)
downloadghdl-137641dbb2cf2900aea2da2ae90b9b4dfdc2bd5e.tar.gz
ghdl-137641dbb2cf2900aea2da2ae90b9b4dfdc2bd5e.tar.bz2
ghdl-137641dbb2cf2900aea2da2ae90b9b4dfdc2bd5e.zip
synth-vhdl_oper: handle more bit_vector operations. Fix #2074
Diffstat (limited to 'src')
-rw-r--r--src/synth/synth-vhdl_oper.adb21
1 files changed, 13 insertions, 8 deletions
diff --git a/src/synth/synth-vhdl_oper.adb b/src/synth/synth-vhdl_oper.adb
index 7c589b993..a60e9b295 100644
--- a/src/synth/synth-vhdl_oper.adb
+++ b/src/synth/synth-vhdl_oper.adb
@@ -774,28 +774,33 @@ package body Synth.Vhdl_Oper is
| Iir_Predefined_Ieee_1164_Scalar_Xnor =>
return Synth_Bit_Dyadic (Id_Xnor);
- when Iir_Predefined_Ieee_1164_Vector_And
+ when Iir_Predefined_TF_Array_And
+ | Iir_Predefined_Ieee_1164_Vector_And
| Iir_Predefined_Ieee_Numeric_Std_And_Uns_Uns
| Iir_Predefined_Ieee_Numeric_Std_And_Sgn_Sgn =>
return Synth_Vec_Dyadic (Id_And);
- when Iir_Predefined_Ieee_1164_Vector_Or
+ when Iir_Predefined_TF_Array_Or
+ | Iir_Predefined_Ieee_1164_Vector_Or
| Iir_Predefined_Ieee_Numeric_Std_Or_Uns_Uns
| Iir_Predefined_Ieee_Numeric_Std_Or_Sgn_Sgn =>
return Synth_Vec_Dyadic (Id_Or);
- when Iir_Predefined_Ieee_1164_Vector_Nand
+ when Iir_Predefined_TF_Array_Nand
+ | Iir_Predefined_Ieee_1164_Vector_Nand
| Iir_Predefined_Ieee_Numeric_Std_Nand_Uns_Uns
| Iir_Predefined_Ieee_Numeric_Std_Nand_Sgn_Sgn =>
return Synth_Vec_Dyadic (Id_Nand);
- when Iir_Predefined_Ieee_1164_Vector_Nor
+ when Iir_Predefined_TF_Array_Nor
+ | Iir_Predefined_Ieee_1164_Vector_Nor
| Iir_Predefined_Ieee_Numeric_Std_Nor_Uns_Uns
| Iir_Predefined_Ieee_Numeric_Std_Nor_Sgn_Sgn =>
return Synth_Vec_Dyadic (Id_Nor);
when Iir_Predefined_TF_Array_Xor
- | Iir_Predefined_Ieee_1164_Vector_Xor
- | Iir_Predefined_Ieee_Numeric_Std_Xor_Uns_Uns
- | Iir_Predefined_Ieee_Numeric_Std_Xor_Sgn_Sgn =>
+ | Iir_Predefined_Ieee_1164_Vector_Xor
+ | Iir_Predefined_Ieee_Numeric_Std_Xor_Uns_Uns
+ | Iir_Predefined_Ieee_Numeric_Std_Xor_Sgn_Sgn =>
return Synth_Vec_Dyadic (Id_Xor);
- when Iir_Predefined_Ieee_1164_Vector_Xnor
+ when Iir_Predefined_TF_Array_Xnor
+ | Iir_Predefined_Ieee_1164_Vector_Xnor
| Iir_Predefined_Ieee_Numeric_Std_Xnor_Uns_Uns
| Iir_Predefined_Ieee_Numeric_Std_Xnor_Sgn_Sgn =>
return Synth_Vec_Dyadic (Id_Xnor);