diff options
author | Tristan Gingold <tgingold@free.fr> | 2020-03-13 19:21:14 +0100 |
---|---|---|
committer | Tristan Gingold <tgingold@free.fr> | 2020-03-13 19:21:14 +0100 |
commit | 2386da54bc6ac259f88e6d9cbe98c29114aba47c (patch) | |
tree | 62b14e61fa60cd7c95a42b4945e931442f8d5f4c | |
parent | 8b0a0ce1738beda9b7288a3d7df19cbbe82b7d23 (diff) | |
download | ghdl-2386da54bc6ac259f88e6d9cbe98c29114aba47c.tar.gz ghdl-2386da54bc6ac259f88e6d9cbe98c29114aba47c.tar.bz2 ghdl-2386da54bc6ac259f88e6d9cbe98c29114aba47c.zip |
std_names: add *_reduce names.
-rw-r--r-- | python/libghdl/thin/std_names.py | 372 | ||||
-rw-r--r-- | src/std_names.adb | 6 | ||||
-rw-r--r-- | src/std_names.ads | 16 |
3 files changed, 206 insertions, 188 deletions
diff --git a/python/libghdl/thin/std_names.py b/python/libghdl/thin/std_names.py index b691cce86..7f5f87617 100644 --- a/python/libghdl/thin/std_names.py +++ b/python/libghdl/thin/std_names.py @@ -605,186 +605,192 @@ class Name: Conv_Unsigned = 817 Conv_Integer = 818 Conv_Std_Logic_Vector = 819 - Ceil = 820 - Round = 821 - Log2 = 822 - Sin = 823 - Cos = 824 - Last_Ieee_Name = 824 - First_Synthesis = 825 - Allconst = 825 - Allseq = 826 - Anyconst = 827 - Anyseq = 828 - Last_Synthesis = 828 - First_Directive = 829 - Define = 829 - Endif = 830 - Ifdef = 831 - Ifndef = 832 - Include = 833 - Timescale = 834 - Undef = 835 - Protect = 836 - Begin_Protected = 837 - End_Protected = 838 - Key_Block = 839 - Data_Block = 840 - Line = 841 - Celldefine = 842 - Endcelldefine = 843 - Default_Nettype = 844 - Resetall = 845 - Last_Directive = 845 - First_Systask = 846 - Bits = 846 - D_Root = 847 - D_Unit = 848 - Last_Systask = 848 - First_SV_Method = 849 - Size = 849 - Insert = 850 - Delete = 851 - Pop_Front = 852 - Pop_Back = 853 - Push_Front = 854 - Push_Back = 855 - Name = 856 - Len = 857 - Substr = 858 - Exists = 859 - Atoi = 860 - Itoa = 861 - Find = 862 - Find_Index = 863 - Find_First = 864 - Find_First_Index = 865 - Find_Last = 866 - Find_Last_Index = 867 - Num = 868 - Randomize = 869 - Pre_Randomize = 870 - Post_Randomize = 871 - Srandom = 872 - Get_Randstate = 873 - Set_Randstate = 874 - Seed = 875 - State = 876 - Last_SV_Method = 876 - First_BSV = 877 - uAction = 877 - uActionValue = 878 - BVI = 879 - uC = 880 - uCF = 881 - uE = 882 - uSB = 883 - uSBR = 884 - Action = 885 - Endaction = 886 - Actionvalue = 887 - Endactionvalue = 888 - Ancestor = 889 - Clocked_By = 890 - Default_Clock = 891 - Default_Reset = 892 - Dependencies = 893 - Deriving = 894 - Determines = 895 - Enable = 896 - Ifc_Inout = 897 - Input_Clock = 898 - Input_Reset = 899 - Instance = 900 - Endinstance = 901 - Let = 902 - Match = 903 - Method = 904 - Endmethod = 905 - Numeric = 906 - Output_Clock = 907 - Output_Reset = 908 - Par = 909 - Endpar = 910 - Path = 911 - Provisos = 912 - Ready = 913 - Reset_By = 914 - Rule = 915 - Endrule = 916 - Rules = 917 - Endrules = 918 - Same_Family = 919 - Schedule = 920 - Seq = 921 - Endseq = 922 - Typeclass = 923 - Endtypeclass = 924 - Valueof = 925 - uValueof = 926 - Last_BSV = 926 - First_Comment = 927 - Psl = 927 - Pragma = 928 - Synthesis = 929 - Synopsys = 930 - Translate_Off = 931 - Translate_On = 932 - Last_Comment = 932 - First_PSL = 933 - A = 933 - Af = 934 - Ag = 935 - Ax = 936 - Abort = 937 - Assume_Guarantee = 938 - Before = 939 - Clock = 940 - E = 941 - Ef = 942 - Eg = 943 - Ex = 944 - Endpoint = 945 - Eventually = 946 - Fairness = 947 - Fell = 948 - Forall = 949 - G = 950 - Inf = 951 - Inherit = 952 - Never = 953 - Next_A = 954 - Next_E = 955 - Next_Event = 956 - Next_Event_A = 957 - Next_Event_E = 958 - Prev = 959 - Rose = 960 - Strong = 961 - W = 962 - Whilenot = 963 - Within = 964 - X = 965 - Last_PSL = 965 - First_Edif = 966 - Celltype = 976 - View = 977 - Viewtype = 978 - Direction = 979 - Contents = 980 - Net = 981 - Viewref = 982 - Cellref = 983 - Libraryref = 984 - Portinstance = 985 - Joined = 986 - Portref = 987 - Instanceref = 988 - Design = 989 - Designator = 990 - Owner = 991 - Member = 992 - Number = 993 - Rename = 994 - Userdata = 995 - Last_Edif = 995 + And_Reduce = 820 + Nand_Reduce = 821 + Or_Reduce = 822 + Nor_Reduce = 823 + Xor_Reduce = 824 + Xnor_Reduce = 825 + Ceil = 826 + Round = 827 + Log2 = 828 + Sin = 829 + Cos = 830 + Last_Ieee_Name = 830 + First_Synthesis = 831 + Allconst = 831 + Allseq = 832 + Anyconst = 833 + Anyseq = 834 + Last_Synthesis = 834 + First_Directive = 835 + Define = 835 + Endif = 836 + Ifdef = 837 + Ifndef = 838 + Include = 839 + Timescale = 840 + Undef = 841 + Protect = 842 + Begin_Protected = 843 + End_Protected = 844 + Key_Block = 845 + Data_Block = 846 + Line = 847 + Celldefine = 848 + Endcelldefine = 849 + Default_Nettype = 850 + Resetall = 851 + Last_Directive = 851 + First_Systask = 852 + Bits = 852 + D_Root = 853 + D_Unit = 854 + Last_Systask = 854 + First_SV_Method = 855 + Size = 855 + Insert = 856 + Delete = 857 + Pop_Front = 858 + Pop_Back = 859 + Push_Front = 860 + Push_Back = 861 + Name = 862 + Len = 863 + Substr = 864 + Exists = 865 + Atoi = 866 + Itoa = 867 + Find = 868 + Find_Index = 869 + Find_First = 870 + Find_First_Index = 871 + Find_Last = 872 + Find_Last_Index = 873 + Num = 874 + Randomize = 875 + Pre_Randomize = 876 + Post_Randomize = 877 + Srandom = 878 + Get_Randstate = 879 + Set_Randstate = 880 + Seed = 881 + State = 882 + Last_SV_Method = 882 + First_BSV = 883 + uAction = 883 + uActionValue = 884 + BVI = 885 + uC = 886 + uCF = 887 + uE = 888 + uSB = 889 + uSBR = 890 + Action = 891 + Endaction = 892 + Actionvalue = 893 + Endactionvalue = 894 + Ancestor = 895 + Clocked_By = 896 + Default_Clock = 897 + Default_Reset = 898 + Dependencies = 899 + Deriving = 900 + Determines = 901 + Enable = 902 + Ifc_Inout = 903 + Input_Clock = 904 + Input_Reset = 905 + Instance = 906 + Endinstance = 907 + Let = 908 + Match = 909 + Method = 910 + Endmethod = 911 + Numeric = 912 + Output_Clock = 913 + Output_Reset = 914 + Par = 915 + Endpar = 916 + Path = 917 + Provisos = 918 + Ready = 919 + Reset_By = 920 + Rule = 921 + Endrule = 922 + Rules = 923 + Endrules = 924 + Same_Family = 925 + Schedule = 926 + Seq = 927 + Endseq = 928 + Typeclass = 929 + Endtypeclass = 930 + Valueof = 931 + uValueof = 932 + Last_BSV = 932 + First_Comment = 933 + Psl = 933 + Pragma = 934 + Synthesis = 935 + Synopsys = 936 + Translate_Off = 937 + Translate_On = 938 + Last_Comment = 938 + First_PSL = 939 + A = 939 + Af = 940 + Ag = 941 + Ax = 942 + Abort = 943 + Assume_Guarantee = 944 + Before = 945 + Clock = 946 + E = 947 + Ef = 948 + Eg = 949 + Ex = 950 + Endpoint = 951 + Eventually = 952 + Fairness = 953 + Fell = 954 + Forall = 955 + G = 956 + Inf = 957 + Inherit = 958 + Never = 959 + Next_A = 960 + Next_E = 961 + Next_Event = 962 + Next_Event_A = 963 + Next_Event_E = 964 + Prev = 965 + Rose = 966 + Strong = 967 + W = 968 + Whilenot = 969 + Within = 970 + X = 971 + Last_PSL = 971 + First_Edif = 972 + Celltype = 982 + View = 983 + Viewtype = 984 + Direction = 985 + Contents = 986 + Net = 987 + Viewref = 988 + Cellref = 989 + Libraryref = 990 + Portinstance = 991 + Joined = 992 + Portref = 993 + Instanceref = 994 + Design = 995 + Designator = 996 + Owner = 997 + Member = 998 + Number = 999 + Rename = 1000 + Userdata = 1001 + Last_Edif = 1001 diff --git a/src/std_names.adb b/src/std_names.adb index 2511c779c..303d14eed 100644 --- a/src/std_names.adb +++ b/src/std_names.adb @@ -656,6 +656,12 @@ package body Std_Names is Def ("conv_unsigned", Name_Conv_Unsigned); Def ("conv_integer", Name_Conv_Integer); Def ("conv_std_logic_vector", Name_Conv_Std_Logic_Vector); + Def ("and_reduce", Name_And_Reduce); + Def ("nand_reduce", Name_Nand_Reduce); + Def ("or_reduce", Name_Or_Reduce); + Def ("nor_reduce", Name_Nor_Reduce); + Def ("xor_reduce", Name_Xor_Reduce); + Def ("xnor_reduce", Name_Xnor_Reduce); Def ("ceil", Name_Ceil); Def ("round", Name_Round); Def ("log2", Name_Log2); diff --git a/src/std_names.ads b/src/std_names.ads index 5b54d14e4..6363db8b8 100644 --- a/src/std_names.ads +++ b/src/std_names.ads @@ -739,11 +739,17 @@ package Std_Names is Name_Conv_Unsigned : constant Name_Id := Name_First_Ieee_Name + 026; Name_Conv_Integer : constant Name_Id := Name_First_Ieee_Name + 027; Name_Conv_Std_Logic_Vector : constant Name_Id := Name_First_Ieee_Name + 028; - Name_Ceil : constant Name_Id := Name_First_Ieee_Name + 029; - Name_Round : constant Name_Id := Name_First_Ieee_Name + 030; - Name_Log2 : constant Name_Id := Name_First_Ieee_Name + 031; - Name_Sin : constant Name_Id := Name_First_Ieee_Name + 032; - Name_Cos : constant Name_Id := Name_First_Ieee_Name + 033; + Name_And_Reduce : constant Name_Id := Name_First_Ieee_Name + 029; + Name_Nand_Reduce : constant Name_Id := Name_First_Ieee_Name + 030; + Name_Or_Reduce : constant Name_Id := Name_First_Ieee_Name + 031; + Name_Nor_Reduce : constant Name_Id := Name_First_Ieee_Name + 032; + Name_Xor_Reduce : constant Name_Id := Name_First_Ieee_Name + 033; + Name_Xnor_Reduce : constant Name_Id := Name_First_Ieee_Name + 034; + Name_Ceil : constant Name_Id := Name_First_Ieee_Name + 035; + Name_Round : constant Name_Id := Name_First_Ieee_Name + 036; + Name_Log2 : constant Name_Id := Name_First_Ieee_Name + 037; + Name_Sin : constant Name_Id := Name_First_Ieee_Name + 038; + Name_Cos : constant Name_Id := Name_First_Ieee_Name + 039; Name_Last_Ieee_Name : constant Name_Id := Name_Cos; Name_First_Synthesis : constant Name_Id := Name_Last_Ieee_Name + 1; |