diff options
Diffstat (limited to 'src/vhdl/iirs.ads')
-rw-r--r-- | src/vhdl/iirs.ads | 85 |
1 files changed, 44 insertions, 41 deletions
diff --git a/src/vhdl/iirs.ads b/src/vhdl/iirs.ads index af9c7478b..9310185c5 100644 --- a/src/vhdl/iirs.ads +++ b/src/vhdl/iirs.ads @@ -161,7 +161,7 @@ package Iirs is -- -- Get the kind of the iir. -- See below for the (public) list of kinds. - -- function Get_Kind (An_Iir: Iir) return Iir_Kind; + -- function Get_Kind (N : Iir) return Iir_Kind; -- Get the location of the node: ie the current position in the source -- file when the node was created. This is a little bit fuzzy. @@ -314,7 +314,7 @@ package Iirs is -- -- Base of the bit_string (corresponds to letters 'b', 'o', 'd' or 'x' in -- the base specifier). - -- Get/Set_Bit_String_Base (Odigit1) + -- Get/Set_Bit_String_Base (Flag12,Flag13,Flag14) -- -- Get/Set_Expr_Staticness (State1) -- @@ -328,10 +328,10 @@ package Iirs is -- True if the integer specifying the length is present. -- Get/Set_Has_Length (Flag3) - -- Iir_Kind_Integer_Literal (Int) + -- Iir_Kind_Integer_Literal (Short) -- -- Get/Set the value of the integer. - -- Get/Set_Value (Int64) + -- Get/Set_Value (Field4,Field5) -- -- Get/Set_Literal_Origin (Field2) -- @@ -339,10 +339,10 @@ package Iirs is -- -- Get/Set_Expr_Staticness (State1) - -- Iir_Kind_Floating_Point_Literal (Fp) + -- Iir_Kind_Floating_Point_Literal (Short) -- -- The value of the literal. - -- Get/Set_Fp_Value (Fp64) + -- Get/Set_Fp_Value (Field4,Field5) -- -- Get/Set_Literal_Origin (Field2) -- @@ -357,8 +357,8 @@ package Iirs is -- -- Get/Set_Expr_Staticness (State1) - -- Iir_Kind_Physical_Int_Literal (Int) - -- Iir_Kind_Physical_Fp_Literal (Fp) + -- Iir_Kind_Physical_Int_Literal (Short) + -- Iir_Kind_Physical_Fp_Literal (Short) -- -- Get/Set_Literal_Origin (Field2) -- @@ -375,11 +375,11 @@ package Iirs is -- -- Only for Iir_Kind_Physical_Int_Literal: -- The multiplicand. - -- Get/Set_Value (Int64) + -- Get/Set_Value (Field4,Field5) -- -- Only for Iir_Kind_Physical_Fp_Literal: -- The multiplicand. - -- Get/Set_Fp_Value (Fp64) + -- Get/Set_Fp_Value (Field4,Field5) -- Iir_Kind_Simple_Aggregate (Short) -- This node can only be generated by evaluation: it is an unidimentional @@ -1215,7 +1215,7 @@ package Iirs is -- present for uniformity (and speed). -- Get/Set_Type (Field1) -- - -- Get/Set_Mode (Odigit1) + -- Get/Set_Mode (Flag12,Flag13,Flag14) -- -- Only for Iir_Kind_Interface_Signal_Declaration: -- Get/Set_Has_Disconnect_Flag (Flag1) @@ -1244,7 +1244,7 @@ package Iirs is -- Get/Set_Has_Class (Flag11) -- -- Only for Iir_Kind_Interface_Signal_Declaration: - -- Get/Set_Open_Flag (Flag12) + -- Get/Set_Open_Flag (Flag15) -- -- Get/Set_Expr_Staticness (State1) -- @@ -1708,7 +1708,7 @@ package Iirs is -- Get/Set_File_Open_Kind (Field7) -- -- This is used only in vhdl 87. - -- Get/Set_Mode (Odigit1) + -- Get/Set_Mode (Flag12,Flag13,Flag14) -- -- Get/Set_Has_Identifier_List (Flag3) -- @@ -2072,8 +2072,11 @@ package Iirs is -- Iir_Kind_Physical_Type_Definition (Short) -- - -- Get/Set_Unit_Chain (Field1) - -- Get/Set_Primary_Unit (Alias Field1) + -- The range_constraint from the type declaration. + -- Get/Set_Range_Constraint (Field1) + -- + -- Get/Set_Unit_Chain (Field2) + -- Get/Set_Primary_Unit (Alias Field2) -- -- Get/Set_Type_Declarator (Field3) -- @@ -2087,6 +2090,8 @@ package Iirs is -- -- Get/Set_Type_Staticness (State1) -- + -- Get/Set_Is_Ref (Flag7) + -- -- Get/Set_End_Has_Reserved_Id (Flag8) -- -- Get/Set_End_Has_Identifier (Flag9) @@ -2111,12 +2116,10 @@ package Iirs is -- -- Get/Set_Identifier (Field3) -- - -- The value of the unit, computed from the primary unit. This is always - -- a physical integer literal. - -- Get/Set_Physical_Unit_Value (Field5) - -- - -- The Physical_Literal is the expression that appear in the sources, so - -- this is Null_Iir for a primary unit. + -- The Physical_Literal is the expression that defines the value of a + -- unit. It is evaluated during analysis and thus expressed as a multiple + -- of the primary unit. That's true even for the primary unit whose value + -- is thus 1. -- Get/Set_Physical_Literal (Field4) -- -- Get/Set_Expr_Staticness (State1) @@ -2138,6 +2141,9 @@ package Iirs is -- Iir_Kind_Integer_Type_Definition (Short) -- Iir_Kind_Floating_Type_Definition (Short) -- + -- The range_constraint from the type declaration. + -- Get/Set_Range_Constraint (Field1) + -- -- The type declarator that has created this type. -- Get/Set_Type_Declarator (Field3) -- @@ -2151,6 +2157,8 @@ package Iirs is -- Get/Set_Signal_Type_Flag (Flag2) -- -- Get/Set_Has_Signal_Flag (Flag3) + -- + -- Get/Set_Is_Ref (Flag7) -- Iir_Kind_Array_Type_Definition (Medium) -- @@ -5566,23 +5574,23 @@ package Iirs is -- General methods. -- Get the kind of the iir. - function Get_Kind (An_Iir: Iir) return Iir_Kind; + function Get_Kind (N : Iir) return Iir_Kind; pragma Inline (Get_Kind); -- Create a new IIR of kind NEW_KIND, and copy fields from SRC to this -- iir. Src fields are cleaned. --function Clone_Iir (Src: Iir; New_Kind : Iir_Kind) return Iir; - procedure Set_Location (Target: Iir; Location: Location_Type) + procedure Set_Location (Target : Iir; Location : Location_Type) renames Nodes.Set_Location; - function Get_Location (Target: Iir) return Location_Type + function Get_Location (Target : Iir) return Location_Type renames Nodes.Get_Location; - procedure Location_Copy (Target: Iir; Src: Iir); + procedure Location_Copy (Target : Iir; Src : Iir); - function Create_Iir (Kind: Iir_Kind) return Iir; + function Create_Iir (Kind : Iir_Kind) return Iir; function Create_Iir_Error return Iir; - procedure Free_Iir (Target: Iir) renames Nodes.Free_Node; + procedure Free_Iir (Target : Iir) renames Nodes.Free_Node; -- Disp statistics about node usage. procedure Disp_Stats; @@ -5718,7 +5726,7 @@ package Iirs is -- literals. -- Value of an integer/physical literal. - -- Field: Int64 + -- Field: Field4,Field5 (grp) function Get_Value (Lit : Iir) return Iir_Int64; procedure Set_Value (Lit : Iir; Val : Iir_Int64); @@ -5727,17 +5735,12 @@ package Iirs is function Get_Enum_Pos (Lit : Iir) return Iir_Int32; procedure Set_Enum_Pos (Lit : Iir; Val : Iir_Int32); - -- Field: Field4 Ref + -- Field: Field4 function Get_Physical_Literal (Unit : Iir) return Iir; procedure Set_Physical_Literal (Unit : Iir; Lit : Iir); - -- Value of a physical unit declaration. - -- Field: Field5 - function Get_Physical_Unit_Value (Unit : Iir) return Iir; - procedure Set_Physical_Unit_Value (Unit : Iir; Lit : Iir); - -- Value of a floating point literal. - -- Field: Fp64 + -- Field: Field4,Field5 (grp) function Get_Fp_Value (Lit : Iir) return Iir_Fp64; procedure Set_Fp_Value (Lit : Iir; Val : Iir_Fp64); @@ -5757,7 +5760,7 @@ package Iirs is procedure Set_String_Length (Lit : Iir; Len : Int32); -- Base of a bit string. Base_None for a string literal. - -- Field: Odigit1 (pos) + -- Field: Flag12,Flag13,Flag14 (grp) function Get_Bit_String_Base (Lit : Iir) return Number_Base_Type; procedure Set_Bit_String_Base (Lit : Iir; Base : Number_Base_Type); @@ -5866,7 +5869,7 @@ package Iirs is -- This flag is set for a very short time during the check that no in -- port is unconnected. - -- Field: Flag12 + -- Field: Flag15 function Get_Open_Flag (Target : Iir) return Boolean; procedure Set_Open_Flag (Target : Iir; Flag : Boolean); @@ -6033,7 +6036,7 @@ package Iirs is -- Discrete range of an iterator. During analysis, a subtype indiciation -- is created from this range. - -- Field: Field6 Ref + -- Field: Field6 function Get_Discrete_Range (Target : Iir) return Iir; procedure Set_Discrete_Range (Target : Iir; Rng : Iir); @@ -6061,7 +6064,7 @@ package Iirs is procedure Set_Nature (Target : Iir; Nature : Iir); -- Mode of interfaces or file (v87). - -- Field: Odigit1 (pos) + -- Field: Flag12,Flag13,Flag14 (grp) function Get_Mode (Target : Iir) return Iir_Mode; procedure Set_Mode (Target : Iir; Mode : Iir_Mode); @@ -6264,13 +6267,13 @@ package Iirs is -- Chain of physical type units. -- The first unit is the primary unit. If you really need the primary -- unit (and not the chain), you'd better to use Get_Primary_Unit. - -- Field: Field1 Chain + -- Field: Field2 Chain function Get_Unit_Chain (Target : Iir) return Iir; procedure Set_Unit_Chain (Target : Iir; Chain : Iir); -- Alias of Get_Unit_Chain. -- Return the primary unit of a physical type. - -- Field: Field1 Ref + -- Field: Field2 Ref function Get_Primary_Unit (Target : Iir) return Iir; procedure Set_Primary_Unit (Target : Iir; Unit : Iir); |