diff options
author | Tristan Gingold <tgingold@free.fr> | 2014-12-13 17:10:02 +0100 |
---|---|---|
committer | Tristan Gingold <tgingold@free.fr> | 2014-12-13 17:10:02 +0100 |
commit | 7b8fae820dc02d90e4739ebaf67754bcbbb4dd9c (patch) | |
tree | 8b8cc16649fd4e96e0ff03700fccd2e7f606d9c9 /src | |
parent | 0c655ec98435f5d9bdfb51cab215002d794c263f (diff) | |
download | ghdl-7b8fae820dc02d90e4739ebaf67754bcbbb4dd9c.tar.gz ghdl-7b8fae820dc02d90e4739ebaf67754bcbbb4dd9c.tar.bz2 ghdl-7b8fae820dc02d90e4739ebaf67754bcbbb4dd9c.zip |
iirs: move delay_mechanism to flag1; adjust xtools/pnodes.py for new sources.
Diffstat (limited to 'src')
-rw-r--r-- | src/vhdl/iirs.adb | 9 | ||||
-rw-r--r-- | src/vhdl/iirs.adb.in | 5 | ||||
-rw-r--r-- | src/vhdl/iirs.ads | 6 | ||||
-rw-r--r-- | src/vhdl/nodes_meta.adb | 6 | ||||
-rw-r--r-- | src/xtools/Makefile | 10 | ||||
-rwxr-xr-x | src/xtools/pnodes.py | 8 |
6 files changed, 27 insertions, 17 deletions
diff --git a/src/vhdl/iirs.adb b/src/vhdl/iirs.adb index 876d1464f..7d2eb6748 100644 --- a/src/vhdl/iirs.adb +++ b/src/vhdl/iirs.adb @@ -203,6 +203,11 @@ package body Iirs is return Iir (L); end Location_Type_To_Iir; + function Boolean_To_Iir_Delay_Mechanism is new Ada.Unchecked_Conversion + (Source => Boolean, Target => Iir_Delay_Mechanism); + function Iir_Delay_Mechanism_To_Boolean is new Ada.Unchecked_Conversion + (Source => Iir_Delay_Mechanism, Target => Boolean); + function Iir_To_String_Id is new Ada.Unchecked_Conversion (Source => Iir, Target => String_Id); function String_Id_To_Iir is new Ada.Unchecked_Conversion @@ -2639,14 +2644,14 @@ package body Iirs is begin pragma Assert (Target /= Null_Iir); pragma Assert (Has_Delay_Mechanism (Get_Kind (Target))); - return Iir_Delay_Mechanism'Val (Get_Field12 (Target)); + return Boolean_To_Iir_Delay_Mechanism (Get_Flag1 (Target)); end Get_Delay_Mechanism; procedure Set_Delay_Mechanism (Target : Iir; Kind : Iir_Delay_Mechanism) is begin pragma Assert (Target /= Null_Iir); pragma Assert (Has_Delay_Mechanism (Get_Kind (Target))); - Set_Field12 (Target, Iir_Delay_Mechanism'Pos (Kind)); + Set_Flag1 (Target, Iir_Delay_Mechanism_To_Boolean (Kind)); end Set_Delay_Mechanism; function Get_Reject_Time_Expression (Target : Iir) return Iir is diff --git a/src/vhdl/iirs.adb.in b/src/vhdl/iirs.adb.in index 04511bb67..b44eb4f0c 100644 --- a/src/vhdl/iirs.adb.in +++ b/src/vhdl/iirs.adb.in @@ -203,6 +203,11 @@ package body Iirs is return Iir (L); end Location_Type_To_Iir; + function Boolean_To_Iir_Delay_Mechanism is new Ada.Unchecked_Conversion + (Source => Boolean, Target => Iir_Delay_Mechanism); + function Iir_Delay_Mechanism_To_Boolean is new Ada.Unchecked_Conversion + (Source => Iir_Delay_Mechanism, Target => Boolean); + function Iir_To_String_Id is new Ada.Unchecked_Conversion (Source => Iir, Target => String_Id); function String_Id_To_Iir is new Ada.Unchecked_Conversion diff --git a/src/vhdl/iirs.ads b/src/vhdl/iirs.ads index cd58daa56..28c11481c 100644 --- a/src/vhdl/iirs.ads +++ b/src/vhdl/iirs.ads @@ -2387,7 +2387,7 @@ package Iirs is -- assignment guarded, the guard can be this assignment. -- Get/Set_Guard (Field8) -- - -- Get/Set_Delay_Mechanism (Field12) + -- Get/Set_Delay_Mechanism (Flag1) -- -- Get/Set_Postponed_Flag (Flag3) -- @@ -2767,7 +2767,7 @@ package Iirs is -- -- Get/Set_Reject_Time_Expression (Field6) -- - -- Get/Set_Delay_Mechanism (Field12) + -- Get/Set_Delay_Mechanism (Flag1) -- -- Get/Set_Visible_Flag (Flag4) -- @@ -5747,7 +5747,7 @@ package Iirs is function Get_Guard (Target : Iir) return Iir; procedure Set_Guard (Target : Iir; Guard : Iir); - -- Field: Field12 (pos) + -- Field: Flag1 (uc) function Get_Delay_Mechanism (Target : Iir) return Iir_Delay_Mechanism; procedure Set_Delay_Mechanism (Target : Iir; Kind : Iir_Delay_Mechanism); diff --git a/src/vhdl/nodes_meta.adb b/src/vhdl/nodes_meta.adb index 3e038f549..b890c46b1 100644 --- a/src/vhdl/nodes_meta.adb +++ b/src/vhdl/nodes_meta.adb @@ -3323,8 +3323,8 @@ package body Nodes_Meta is Field_Parent, Field_Callees_List, -- Iir_Kind_Concurrent_Conditional_Signal_Assignment - Field_Delay_Mechanism, Field_Label, + Field_Delay_Mechanism, Field_Postponed_Flag, Field_Visible_Flag, Field_Guarded_Target_State, @@ -3336,8 +3336,8 @@ package body Nodes_Meta is Field_Guard, Field_Parent, -- Iir_Kind_Concurrent_Selected_Signal_Assignment - Field_Delay_Mechanism, Field_Label, + Field_Delay_Mechanism, Field_Postponed_Flag, Field_Visible_Flag, Field_Guarded_Target_State, @@ -3443,8 +3443,8 @@ package body Nodes_Meta is Field_Tolerance, Field_Parent, -- Iir_Kind_Signal_Assignment_Statement - Field_Delay_Mechanism, Field_Label, + Field_Delay_Mechanism, Field_Visible_Flag, Field_Guarded_Target_State, Field_Target, diff --git a/src/xtools/Makefile b/src/xtools/Makefile index 6504fbc84..a136dd703 100644 --- a/src/xtools/Makefile +++ b/src/xtools/Makefile @@ -15,21 +15,21 @@ # Software Foundation, 59 Temple Place - Suite 330, Boston, MA # 02111-1307, USA. -DEPS=../iirs.ads ../nodes.ads ./pnodes.py +DEPS=../vhdl/iirs.ads ../vhdl/nodes.ads ./pnodes.py -all: ../iirs.adb ../nodes_meta.ads ../nodes_meta.adb +all: ../vhdl/iirs.adb ../vhdl/nodes_meta.ads ../vhdl/nodes_meta.adb -../iirs.adb: ../iirs.adb.in $(DEPS) +../vhdl/iirs.adb: ../vhdl/iirs.adb.in $(DEPS) $(RM) $@ ./pnodes.py body > $@ chmod -w $@ -../nodes_meta.ads: ../nodes_meta.ads.in $(DEPS) +../vhdl/nodes_meta.ads: ../vhdl/nodes_meta.ads.in $(DEPS) $(RM) $@ ./pnodes.py meta_specs > $@ chmod -w $@ -../nodes_meta.adb: ../nodes_meta.adb.in $(DEPS) +../vhdl/nodes_meta.adb: ../vhdl/nodes_meta.adb.in $(DEPS) $(RM) $@ ./pnodes.py meta_body > $@ chmod -w $@ diff --git a/src/xtools/pnodes.py b/src/xtools/pnodes.py index 364f1254e..e00cf4d89 100755 --- a/src/xtools/pnodes.py +++ b/src/xtools/pnodes.py @@ -4,10 +4,10 @@ import re import sys import argparse -field_file = "../nodes.ads" -spec_file = "../iirs.ads" -template_file = "../iirs.adb.in" -meta_base_file = "../nodes_meta" +field_file = "../vhdl/nodes.ads" +spec_file = "../vhdl/iirs.ads" +template_file = "../vhdl/iirs.adb.in" +meta_base_file = "../vhdl/nodes_meta" prefix_name = "Iir_Kind_" prefix_range_name = "Iir_Kinds_" type_name = "Iir_Kind" |