diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/vhdl/errorout.adb | 2 | ||||
-rw-r--r-- | src/vhdl/iirs.adb | 5 | ||||
-rw-r--r-- | src/vhdl/iirs.ads | 31 | ||||
-rw-r--r-- | src/vhdl/nodes_meta.adb | 357 |
4 files changed, 226 insertions, 169 deletions
diff --git a/src/vhdl/errorout.adb b/src/vhdl/errorout.adb index c46f3a409..81f572345 100644 --- a/src/vhdl/errorout.adb +++ b/src/vhdl/errorout.adb @@ -724,6 +724,8 @@ package body Errorout is when Iir_Kind_Psl_Declaration => return Disp_Identifier (Node, "PSL declaration"); + when Iir_Kind_Psl_Endpoint_Declaration => + return Disp_Identifier (Node, "PSL endpoint declaration"); when Iir_Kind_Terminal_Declaration => return Disp_Identifier (Node, "terminal declaration"); diff --git a/src/vhdl/iirs.adb b/src/vhdl/iirs.adb index 3b9f32b86..b2ed4ac5a 100644 --- a/src/vhdl/iirs.adb +++ b/src/vhdl/iirs.adb @@ -480,6 +480,7 @@ package body Iirs is | Iir_Kind_Package_Header | Iir_Kind_Component_Declaration | Iir_Kind_Psl_Declaration + | Iir_Kind_Psl_Endpoint_Declaration | Iir_Kind_Across_Quantity_Declaration | Iir_Kind_Through_Quantity_Declaration | Iir_Kind_Function_Declaration @@ -5250,7 +5251,7 @@ package body Iirs is pragma Assert (Decl /= Null_Iir); pragma Assert (Has_Psl_Declaration (Get_Kind (Decl)), "no field Psl_Declaration"); - return Iir_To_PSL_Node (Get_Field1 (Decl)); + return Iir_To_PSL_Node (Get_Field6 (Decl)); end Get_Psl_Declaration; procedure Set_Psl_Declaration (Decl : Iir; Prop : PSL_Node) is @@ -5258,7 +5259,7 @@ package body Iirs is pragma Assert (Decl /= Null_Iir); pragma Assert (Has_Psl_Declaration (Get_Kind (Decl)), "no field Psl_Declaration"); - Set_Field1 (Decl, PSL_Node_To_Iir (Prop)); + Set_Field6 (Decl, PSL_Node_To_Iir (Prop)); end Set_Psl_Declaration; function Get_Psl_Expression (Decl : Iir) return PSL_Node is diff --git a/src/vhdl/iirs.ads b/src/vhdl/iirs.ads index a1fe93ced..fd13136cc 100644 --- a/src/vhdl/iirs.ads +++ b/src/vhdl/iirs.ads @@ -1641,16 +1641,40 @@ package Iirs is -- -- Get/Set_Use_Flag (Flag6) - -- Iir_Kind_Psl_Declaration (Medium) + -- Iir_Kind_Psl_Endpoint_Declaration (Medium) -- -- Get/Set_Parent (Field0) -- - -- Get/Set_Psl_Declaration (Field1) + -- Always boolean. + -- Get/Set_Type (Field1) + -- + -- Get/Set_Chain (Field2) + -- + -- Get/Set_Identifier (Field3) + -- + -- Get/Set_Psl_Declaration (Field6) + -- + -- Get/Set_PSL_Clock (Field7) + -- + -- Get/Set_PSL_NFA (Field8) + -- + -- Get/Set_Visible_Flag (Flag4) + -- + -- Get/Set_Use_Flag (Flag6) + -- + -- Get/Set_Expr_Staticness (State1) + + -- Iir_Kind_Psl_Declaration (Medium) + -- A psl sequence or property declaration. + -- + -- Get/Set_Parent (Field0) -- -- Get/Set_Chain (Field2) -- -- Get/Set_Identifier (Field3) -- + -- Get/Set_Psl_Declaration (Field6) + -- -- Valid only for property declaration. -- Get/Set_PSL_Clock (Field7) -- @@ -3706,6 +3730,7 @@ package Iirs is Iir_Kind_Non_Object_Alias_Declaration, Iir_Kind_Psl_Declaration, + Iir_Kind_Psl_Endpoint_Declaration, Iir_Kind_Terminal_Declaration, Iir_Kind_Free_Quantity_Declaration, Iir_Kind_Across_Quantity_Declaration, @@ -6653,7 +6678,7 @@ package Iirs is function Get_Psl_Sequence (Decl : Iir) return PSL_Node; procedure Set_Psl_Sequence (Decl : Iir; Prop : PSL_Node); - -- Field: Field1 (uc) + -- Field: Field6 (uc) function Get_Psl_Declaration (Decl : Iir) return PSL_Node; procedure Set_Psl_Declaration (Decl : Iir; Prop : PSL_Node); diff --git a/src/vhdl/nodes_meta.adb b/src/vhdl/nodes_meta.adb index b868751f5..0b0df4d35 100644 --- a/src/vhdl/nodes_meta.adb +++ b/src/vhdl/nodes_meta.adb @@ -1123,6 +1123,8 @@ package body Nodes_Meta is return "non_object_alias_declaration"; when Iir_Kind_Psl_Declaration => return "psl_declaration"; + when Iir_Kind_Psl_Endpoint_Declaration => + return "psl_endpoint_declaration"; when Iir_Kind_Terminal_Declaration => return "terminal_declaration"; when Iir_Kind_Free_Quantity_Declaration => @@ -2723,14 +2725,25 @@ package body Nodes_Meta is Field_Alias_Signature, Field_Parent, -- Iir_Kind_Psl_Declaration + Field_Identifier, Field_Psl_Declaration, + Field_PSL_Clock, + Field_PSL_NFA, + Field_Visible_Flag, + Field_Use_Flag, + Field_Chain, + Field_Parent, + -- Iir_Kind_Psl_Endpoint_Declaration Field_Identifier, + Field_Psl_Declaration, Field_PSL_Clock, Field_PSL_NFA, Field_Visible_Flag, Field_Use_Flag, + Field_Expr_Staticness, Field_Chain, Field_Parent, + Field_Type, -- Iir_Kind_Terminal_Declaration Field_Identifier, Field_Visible_Flag, @@ -4139,169 +4152,170 @@ package body Nodes_Meta is Iir_Kind_Element_Declaration => 559, Iir_Kind_Non_Object_Alias_Declaration => 567, Iir_Kind_Psl_Declaration => 575, - Iir_Kind_Terminal_Declaration => 581, - Iir_Kind_Free_Quantity_Declaration => 590, - Iir_Kind_Across_Quantity_Declaration => 602, - Iir_Kind_Through_Quantity_Declaration => 614, - Iir_Kind_Enumeration_Literal => 625, - Iir_Kind_Function_Declaration => 649, - Iir_Kind_Procedure_Declaration => 672, - Iir_Kind_Function_Body => 682, - Iir_Kind_Procedure_Body => 693, - Iir_Kind_Object_Alias_Declaration => 705, - Iir_Kind_File_Declaration => 720, - Iir_Kind_Guard_Signal_Declaration => 733, - Iir_Kind_Signal_Declaration => 750, - Iir_Kind_Variable_Declaration => 763, - Iir_Kind_Constant_Declaration => 777, - Iir_Kind_Iterator_Declaration => 789, - Iir_Kind_Interface_Constant_Declaration => 805, - Iir_Kind_Interface_Variable_Declaration => 821, - Iir_Kind_Interface_Signal_Declaration => 842, - Iir_Kind_Interface_File_Declaration => 858, - Iir_Kind_Interface_Package_Declaration => 867, - Iir_Kind_Identity_Operator => 871, - Iir_Kind_Negation_Operator => 875, - Iir_Kind_Absolute_Operator => 879, - Iir_Kind_Not_Operator => 883, - Iir_Kind_Condition_Operator => 887, - Iir_Kind_Reduction_And_Operator => 891, - Iir_Kind_Reduction_Or_Operator => 895, - Iir_Kind_Reduction_Nand_Operator => 899, - Iir_Kind_Reduction_Nor_Operator => 903, - Iir_Kind_Reduction_Xor_Operator => 907, - Iir_Kind_Reduction_Xnor_Operator => 911, - Iir_Kind_And_Operator => 916, - Iir_Kind_Or_Operator => 921, - Iir_Kind_Nand_Operator => 926, - Iir_Kind_Nor_Operator => 931, - Iir_Kind_Xor_Operator => 936, - Iir_Kind_Xnor_Operator => 941, - Iir_Kind_Equality_Operator => 946, - Iir_Kind_Inequality_Operator => 951, - Iir_Kind_Less_Than_Operator => 956, - Iir_Kind_Less_Than_Or_Equal_Operator => 961, - Iir_Kind_Greater_Than_Operator => 966, - Iir_Kind_Greater_Than_Or_Equal_Operator => 971, - Iir_Kind_Match_Equality_Operator => 976, - Iir_Kind_Match_Inequality_Operator => 981, - Iir_Kind_Match_Less_Than_Operator => 986, - Iir_Kind_Match_Less_Than_Or_Equal_Operator => 991, - Iir_Kind_Match_Greater_Than_Operator => 996, - Iir_Kind_Match_Greater_Than_Or_Equal_Operator => 1001, - Iir_Kind_Sll_Operator => 1006, - Iir_Kind_Sla_Operator => 1011, - Iir_Kind_Srl_Operator => 1016, - Iir_Kind_Sra_Operator => 1021, - Iir_Kind_Rol_Operator => 1026, - Iir_Kind_Ror_Operator => 1031, - Iir_Kind_Addition_Operator => 1036, - Iir_Kind_Substraction_Operator => 1041, - Iir_Kind_Concatenation_Operator => 1046, - Iir_Kind_Multiplication_Operator => 1051, - Iir_Kind_Division_Operator => 1056, - Iir_Kind_Modulus_Operator => 1061, - Iir_Kind_Remainder_Operator => 1066, - Iir_Kind_Exponentiation_Operator => 1071, - Iir_Kind_Function_Call => 1079, - Iir_Kind_Aggregate => 1085, - Iir_Kind_Parenthesis_Expression => 1088, - Iir_Kind_Qualified_Expression => 1092, - Iir_Kind_Type_Conversion => 1097, - Iir_Kind_Allocator_By_Expression => 1101, - Iir_Kind_Allocator_By_Subtype => 1107, - Iir_Kind_Selected_Element => 1113, - Iir_Kind_Dereference => 1118, - Iir_Kind_Implicit_Dereference => 1123, - Iir_Kind_Slice_Name => 1130, - Iir_Kind_Indexed_Name => 1136, - Iir_Kind_Psl_Expression => 1138, - Iir_Kind_Sensitized_Process_Statement => 1158, - Iir_Kind_Process_Statement => 1178, - Iir_Kind_Concurrent_Simple_Signal_Assignment => 1189, - Iir_Kind_Concurrent_Conditional_Signal_Assignment => 1200, - Iir_Kind_Concurrent_Selected_Signal_Assignment => 1212, - Iir_Kind_Concurrent_Assertion_Statement => 1220, - Iir_Kind_Psl_Default_Clock => 1224, - Iir_Kind_Psl_Assert_Statement => 1236, - Iir_Kind_Psl_Cover_Statement => 1248, - Iir_Kind_Concurrent_Procedure_Call_Statement => 1255, - Iir_Kind_Block_Statement => 1268, - Iir_Kind_If_Generate_Statement => 1278, - Iir_Kind_For_Generate_Statement => 1287, - Iir_Kind_Component_Instantiation_Statement => 1297, - Iir_Kind_Simple_Simultaneous_Statement => 1304, - Iir_Kind_Generate_Statement_Body => 1315, - Iir_Kind_If_Generate_Else_Clause => 1320, - Iir_Kind_Simple_Signal_Assignment_Statement => 1329, - Iir_Kind_Conditional_Signal_Assignment_Statement => 1338, - Iir_Kind_Null_Statement => 1342, - Iir_Kind_Assertion_Statement => 1349, - Iir_Kind_Report_Statement => 1355, - Iir_Kind_Wait_Statement => 1362, - Iir_Kind_Variable_Assignment_Statement => 1368, - Iir_Kind_Conditional_Variable_Assignment_Statement => 1374, - Iir_Kind_Return_Statement => 1380, - Iir_Kind_For_Loop_Statement => 1389, - Iir_Kind_While_Loop_Statement => 1397, - Iir_Kind_Next_Statement => 1403, - Iir_Kind_Exit_Statement => 1409, - Iir_Kind_Case_Statement => 1417, - Iir_Kind_Procedure_Call_Statement => 1423, - Iir_Kind_If_Statement => 1432, - Iir_Kind_Elsif => 1437, - Iir_Kind_Character_Literal => 1444, - Iir_Kind_Simple_Name => 1451, - Iir_Kind_Selected_Name => 1459, - Iir_Kind_Operator_Symbol => 1464, - Iir_Kind_Selected_By_All_Name => 1469, - Iir_Kind_Parenthesis_Name => 1473, - Iir_Kind_External_Constant_Name => 1482, - Iir_Kind_External_Signal_Name => 1491, - Iir_Kind_External_Variable_Name => 1500, - Iir_Kind_Package_Pathname => 1503, - Iir_Kind_Absolute_Pathname => 1504, - Iir_Kind_Relative_Pathname => 1505, - Iir_Kind_Pathname_Element => 1509, - Iir_Kind_Base_Attribute => 1511, - Iir_Kind_Left_Type_Attribute => 1516, - Iir_Kind_Right_Type_Attribute => 1521, - Iir_Kind_High_Type_Attribute => 1526, - Iir_Kind_Low_Type_Attribute => 1531, - Iir_Kind_Ascending_Type_Attribute => 1536, - Iir_Kind_Image_Attribute => 1542, - Iir_Kind_Value_Attribute => 1548, - Iir_Kind_Pos_Attribute => 1554, - Iir_Kind_Val_Attribute => 1560, - Iir_Kind_Succ_Attribute => 1566, - Iir_Kind_Pred_Attribute => 1572, - Iir_Kind_Leftof_Attribute => 1578, - Iir_Kind_Rightof_Attribute => 1584, - Iir_Kind_Delayed_Attribute => 1592, - Iir_Kind_Stable_Attribute => 1600, - Iir_Kind_Quiet_Attribute => 1608, - Iir_Kind_Transaction_Attribute => 1616, - Iir_Kind_Event_Attribute => 1620, - Iir_Kind_Active_Attribute => 1624, - Iir_Kind_Last_Event_Attribute => 1628, - Iir_Kind_Last_Active_Attribute => 1632, - Iir_Kind_Last_Value_Attribute => 1636, - Iir_Kind_Driving_Attribute => 1640, - Iir_Kind_Driving_Value_Attribute => 1644, - Iir_Kind_Behavior_Attribute => 1644, - Iir_Kind_Structure_Attribute => 1644, - Iir_Kind_Simple_Name_Attribute => 1651, - Iir_Kind_Instance_Name_Attribute => 1656, - Iir_Kind_Path_Name_Attribute => 1661, - Iir_Kind_Left_Array_Attribute => 1668, - Iir_Kind_Right_Array_Attribute => 1675, - Iir_Kind_High_Array_Attribute => 1682, - Iir_Kind_Low_Array_Attribute => 1689, - Iir_Kind_Length_Array_Attribute => 1696, - Iir_Kind_Ascending_Array_Attribute => 1703, - Iir_Kind_Range_Array_Attribute => 1710, - Iir_Kind_Reverse_Range_Array_Attribute => 1717, - Iir_Kind_Attribute_Name => 1725 + Iir_Kind_Psl_Endpoint_Declaration => 585, + Iir_Kind_Terminal_Declaration => 591, + Iir_Kind_Free_Quantity_Declaration => 600, + Iir_Kind_Across_Quantity_Declaration => 612, + Iir_Kind_Through_Quantity_Declaration => 624, + Iir_Kind_Enumeration_Literal => 635, + Iir_Kind_Function_Declaration => 659, + Iir_Kind_Procedure_Declaration => 682, + Iir_Kind_Function_Body => 692, + Iir_Kind_Procedure_Body => 703, + Iir_Kind_Object_Alias_Declaration => 715, + Iir_Kind_File_Declaration => 730, + Iir_Kind_Guard_Signal_Declaration => 743, + Iir_Kind_Signal_Declaration => 760, + Iir_Kind_Variable_Declaration => 773, + Iir_Kind_Constant_Declaration => 787, + Iir_Kind_Iterator_Declaration => 799, + Iir_Kind_Interface_Constant_Declaration => 815, + Iir_Kind_Interface_Variable_Declaration => 831, + Iir_Kind_Interface_Signal_Declaration => 852, + Iir_Kind_Interface_File_Declaration => 868, + Iir_Kind_Interface_Package_Declaration => 877, + Iir_Kind_Identity_Operator => 881, + Iir_Kind_Negation_Operator => 885, + Iir_Kind_Absolute_Operator => 889, + Iir_Kind_Not_Operator => 893, + Iir_Kind_Condition_Operator => 897, + Iir_Kind_Reduction_And_Operator => 901, + Iir_Kind_Reduction_Or_Operator => 905, + Iir_Kind_Reduction_Nand_Operator => 909, + Iir_Kind_Reduction_Nor_Operator => 913, + Iir_Kind_Reduction_Xor_Operator => 917, + Iir_Kind_Reduction_Xnor_Operator => 921, + Iir_Kind_And_Operator => 926, + Iir_Kind_Or_Operator => 931, + Iir_Kind_Nand_Operator => 936, + Iir_Kind_Nor_Operator => 941, + Iir_Kind_Xor_Operator => 946, + Iir_Kind_Xnor_Operator => 951, + Iir_Kind_Equality_Operator => 956, + Iir_Kind_Inequality_Operator => 961, + Iir_Kind_Less_Than_Operator => 966, + Iir_Kind_Less_Than_Or_Equal_Operator => 971, + Iir_Kind_Greater_Than_Operator => 976, + Iir_Kind_Greater_Than_Or_Equal_Operator => 981, + Iir_Kind_Match_Equality_Operator => 986, + Iir_Kind_Match_Inequality_Operator => 991, + Iir_Kind_Match_Less_Than_Operator => 996, + Iir_Kind_Match_Less_Than_Or_Equal_Operator => 1001, + Iir_Kind_Match_Greater_Than_Operator => 1006, + Iir_Kind_Match_Greater_Than_Or_Equal_Operator => 1011, + Iir_Kind_Sll_Operator => 1016, + Iir_Kind_Sla_Operator => 1021, + Iir_Kind_Srl_Operator => 1026, + Iir_Kind_Sra_Operator => 1031, + Iir_Kind_Rol_Operator => 1036, + Iir_Kind_Ror_Operator => 1041, + Iir_Kind_Addition_Operator => 1046, + Iir_Kind_Substraction_Operator => 1051, + Iir_Kind_Concatenation_Operator => 1056, + Iir_Kind_Multiplication_Operator => 1061, + Iir_Kind_Division_Operator => 1066, + Iir_Kind_Modulus_Operator => 1071, + Iir_Kind_Remainder_Operator => 1076, + Iir_Kind_Exponentiation_Operator => 1081, + Iir_Kind_Function_Call => 1089, + Iir_Kind_Aggregate => 1095, + Iir_Kind_Parenthesis_Expression => 1098, + Iir_Kind_Qualified_Expression => 1102, + Iir_Kind_Type_Conversion => 1107, + Iir_Kind_Allocator_By_Expression => 1111, + Iir_Kind_Allocator_By_Subtype => 1117, + Iir_Kind_Selected_Element => 1123, + Iir_Kind_Dereference => 1128, + Iir_Kind_Implicit_Dereference => 1133, + Iir_Kind_Slice_Name => 1140, + Iir_Kind_Indexed_Name => 1146, + Iir_Kind_Psl_Expression => 1148, + Iir_Kind_Sensitized_Process_Statement => 1168, + Iir_Kind_Process_Statement => 1188, + Iir_Kind_Concurrent_Simple_Signal_Assignment => 1199, + Iir_Kind_Concurrent_Conditional_Signal_Assignment => 1210, + Iir_Kind_Concurrent_Selected_Signal_Assignment => 1222, + Iir_Kind_Concurrent_Assertion_Statement => 1230, + Iir_Kind_Psl_Default_Clock => 1234, + Iir_Kind_Psl_Assert_Statement => 1246, + Iir_Kind_Psl_Cover_Statement => 1258, + Iir_Kind_Concurrent_Procedure_Call_Statement => 1265, + Iir_Kind_Block_Statement => 1278, + Iir_Kind_If_Generate_Statement => 1288, + Iir_Kind_For_Generate_Statement => 1297, + Iir_Kind_Component_Instantiation_Statement => 1307, + Iir_Kind_Simple_Simultaneous_Statement => 1314, + Iir_Kind_Generate_Statement_Body => 1325, + Iir_Kind_If_Generate_Else_Clause => 1330, + Iir_Kind_Simple_Signal_Assignment_Statement => 1339, + Iir_Kind_Conditional_Signal_Assignment_Statement => 1348, + Iir_Kind_Null_Statement => 1352, + Iir_Kind_Assertion_Statement => 1359, + Iir_Kind_Report_Statement => 1365, + Iir_Kind_Wait_Statement => 1372, + Iir_Kind_Variable_Assignment_Statement => 1378, + Iir_Kind_Conditional_Variable_Assignment_Statement => 1384, + Iir_Kind_Return_Statement => 1390, + Iir_Kind_For_Loop_Statement => 1399, + Iir_Kind_While_Loop_Statement => 1407, + Iir_Kind_Next_Statement => 1413, + Iir_Kind_Exit_Statement => 1419, + Iir_Kind_Case_Statement => 1427, + Iir_Kind_Procedure_Call_Statement => 1433, + Iir_Kind_If_Statement => 1442, + Iir_Kind_Elsif => 1447, + Iir_Kind_Character_Literal => 1454, + Iir_Kind_Simple_Name => 1461, + Iir_Kind_Selected_Name => 1469, + Iir_Kind_Operator_Symbol => 1474, + Iir_Kind_Selected_By_All_Name => 1479, + Iir_Kind_Parenthesis_Name => 1483, + Iir_Kind_External_Constant_Name => 1492, + Iir_Kind_External_Signal_Name => 1501, + Iir_Kind_External_Variable_Name => 1510, + Iir_Kind_Package_Pathname => 1513, + Iir_Kind_Absolute_Pathname => 1514, + Iir_Kind_Relative_Pathname => 1515, + Iir_Kind_Pathname_Element => 1519, + Iir_Kind_Base_Attribute => 1521, + Iir_Kind_Left_Type_Attribute => 1526, + Iir_Kind_Right_Type_Attribute => 1531, + Iir_Kind_High_Type_Attribute => 1536, + Iir_Kind_Low_Type_Attribute => 1541, + Iir_Kind_Ascending_Type_Attribute => 1546, + Iir_Kind_Image_Attribute => 1552, + Iir_Kind_Value_Attribute => 1558, + Iir_Kind_Pos_Attribute => 1564, + Iir_Kind_Val_Attribute => 1570, + Iir_Kind_Succ_Attribute => 1576, + Iir_Kind_Pred_Attribute => 1582, + Iir_Kind_Leftof_Attribute => 1588, + Iir_Kind_Rightof_Attribute => 1594, + Iir_Kind_Delayed_Attribute => 1602, + Iir_Kind_Stable_Attribute => 1610, + Iir_Kind_Quiet_Attribute => 1618, + Iir_Kind_Transaction_Attribute => 1626, + Iir_Kind_Event_Attribute => 1630, + Iir_Kind_Active_Attribute => 1634, + Iir_Kind_Last_Event_Attribute => 1638, + Iir_Kind_Last_Active_Attribute => 1642, + Iir_Kind_Last_Value_Attribute => 1646, + Iir_Kind_Driving_Attribute => 1650, + Iir_Kind_Driving_Value_Attribute => 1654, + Iir_Kind_Behavior_Attribute => 1654, + Iir_Kind_Structure_Attribute => 1654, + Iir_Kind_Simple_Name_Attribute => 1661, + Iir_Kind_Instance_Name_Attribute => 1666, + Iir_Kind_Path_Name_Attribute => 1671, + Iir_Kind_Left_Array_Attribute => 1678, + Iir_Kind_Right_Array_Attribute => 1685, + Iir_Kind_High_Array_Attribute => 1692, + Iir_Kind_Low_Array_Attribute => 1699, + Iir_Kind_Length_Array_Attribute => 1706, + Iir_Kind_Ascending_Array_Attribute => 1713, + Iir_Kind_Range_Array_Attribute => 1720, + Iir_Kind_Reverse_Range_Array_Attribute => 1727, + Iir_Kind_Attribute_Name => 1735 ); function Get_Fields (K : Iir_Kind) return Fields_Array @@ -6718,6 +6732,7 @@ package body Nodes_Meta is | Iir_Kind_Group_Declaration | Iir_Kind_Non_Object_Alias_Declaration | Iir_Kind_Psl_Declaration + | Iir_Kind_Psl_Endpoint_Declaration | Iir_Kind_Terminal_Declaration | Iir_Kind_Free_Quantity_Declaration | Iir_Kind_Across_Quantity_Declaration @@ -6831,6 +6846,7 @@ package body Nodes_Meta is | Iir_Kind_Unit_Declaration | Iir_Kind_Attribute_Declaration | Iir_Kind_Element_Declaration + | Iir_Kind_Psl_Endpoint_Declaration | Iir_Kind_Free_Quantity_Declaration | Iir_Kind_Across_Quantity_Declaration | Iir_Kind_Through_Quantity_Declaration @@ -7458,6 +7474,7 @@ package body Nodes_Meta is | Iir_Kind_Element_Declaration | Iir_Kind_Non_Object_Alias_Declaration | Iir_Kind_Psl_Declaration + | Iir_Kind_Psl_Endpoint_Declaration | Iir_Kind_Terminal_Declaration | Iir_Kind_Free_Quantity_Declaration | Iir_Kind_Across_Quantity_Declaration @@ -7585,6 +7602,7 @@ package body Nodes_Meta is | Iir_Kind_Element_Declaration | Iir_Kind_Non_Object_Alias_Declaration | Iir_Kind_Psl_Declaration + | Iir_Kind_Psl_Endpoint_Declaration | Iir_Kind_Terminal_Declaration | Iir_Kind_Free_Quantity_Declaration | Iir_Kind_Across_Quantity_Declaration @@ -8534,6 +8552,7 @@ package body Nodes_Meta is | Iir_Kind_Group_Declaration | Iir_Kind_Non_Object_Alias_Declaration | Iir_Kind_Psl_Declaration + | Iir_Kind_Psl_Endpoint_Declaration | Iir_Kind_Terminal_Declaration | Iir_Kind_Free_Quantity_Declaration | Iir_Kind_Across_Quantity_Declaration @@ -8710,6 +8729,7 @@ package body Nodes_Meta is | Iir_Kind_Attribute_Value | Iir_Kind_Range_Expression | Iir_Kind_Unit_Declaration + | Iir_Kind_Psl_Endpoint_Declaration | Iir_Kind_Free_Quantity_Declaration | Iir_Kind_Across_Quantity_Declaration | Iir_Kind_Through_Quantity_Declaration @@ -9527,6 +9547,7 @@ package body Nodes_Meta is | Iir_Kind_Group_Declaration | Iir_Kind_Non_Object_Alias_Declaration | Iir_Kind_Psl_Declaration + | Iir_Kind_Psl_Endpoint_Declaration | Iir_Kind_Terminal_Declaration | Iir_Kind_Free_Quantity_Declaration | Iir_Kind_Across_Quantity_Declaration @@ -9781,7 +9802,13 @@ package body Nodes_Meta is function Has_Psl_Declaration (K : Iir_Kind) return Boolean is begin - return K = Iir_Kind_Psl_Declaration; + case K is + when Iir_Kind_Psl_Declaration + | Iir_Kind_Psl_Endpoint_Declaration => + return True; + when others => + return False; + end case; end Has_Psl_Declaration; function Has_Psl_Expression (K : Iir_Kind) return Boolean is @@ -9798,6 +9825,7 @@ package body Nodes_Meta is begin case K is when Iir_Kind_Psl_Declaration + | Iir_Kind_Psl_Endpoint_Declaration | Iir_Kind_Psl_Assert_Statement | Iir_Kind_Psl_Cover_Statement => return True; @@ -9810,6 +9838,7 @@ package body Nodes_Meta is begin case K is when Iir_Kind_Psl_Declaration + | Iir_Kind_Psl_Endpoint_Declaration | Iir_Kind_Psl_Assert_Statement | Iir_Kind_Psl_Cover_Statement => return True; |