From 1ed07f150ef05cf71e04a626c403f28ad1510358 Mon Sep 17 00:00:00 2001 From: Tristan Gingold Date: Thu, 10 Oct 2019 07:43:56 +0200 Subject: synth-oper: handle more operators. --- src/synth/synth-oper.adb | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/synth/synth-oper.adb b/src/synth/synth-oper.adb index 82a23f310..4ccb85ff7 100644 --- a/src/synth/synth-oper.adb +++ b/src/synth/synth-oper.adb @@ -487,12 +487,14 @@ package body Synth.Oper is raise Internal_Error; end if; - when Iir_Predefined_Ieee_Numeric_Std_Add_Uns_Nat => + when Iir_Predefined_Ieee_Numeric_Std_Add_Uns_Nat + | Iir_Predefined_Ieee_Std_Logic_Unsigned_Add_Slv_Int => -- "+" (Unsigned, Natural) return Synth_Dyadic_Uns_Nat (Id_Add); when Iir_Predefined_Ieee_Numeric_Std_Add_Uns_Uns | Iir_Predefined_Ieee_Numeric_Std_Add_Uns_Log - | Iir_Predefined_Ieee_Std_Logic_Unsigned_Add_Slv_Sl => + | Iir_Predefined_Ieee_Std_Logic_Unsigned_Add_Slv_Sl + | Iir_Predefined_Ieee_Std_Logic_Unsigned_Add_Slv_Slv => -- "+" (Unsigned, Unsigned) return Synth_Dyadic_Uns (Id_Add, True); when Iir_Predefined_Ieee_Numeric_Std_Add_Sgn_Int => @@ -1043,7 +1045,8 @@ package body Synth.Oper is end if; return Create_Value_Net (Get_Net (L), Create_Res_Bound (L)); end; - when Iir_Predefined_Ieee_Numeric_Std_Touns_Nat_Nat_Uns => + when Iir_Predefined_Ieee_Numeric_Std_Touns_Nat_Nat_Uns + | Iir_Predefined_Ieee_Std_Logic_Arith_Conv_Unsigned_Int => declare Arg : constant Value_Acc := Get_Value (Subprg_Inst, Param1); Size : constant Value_Acc := Get_Value (Subprg_Inst, Param2); -- cgit v1.2.3