aboutsummaryrefslogtreecommitdiffstats
path: root/src/vhdl/sem_specs.ads
diff options
context:
space:
mode:
authorTristan Gingold <tgingold@free.fr>2019-05-05 07:18:49 +0200
committerTristan Gingold <tgingold@free.fr>2019-05-05 08:05:10 +0200
commit53fcf00d88d1a3b34c7833aa4c421ea52f3e03dd (patch)
tree1d54f41e948b16a5ff6ad0cedafccf978a13bd89 /src/vhdl/sem_specs.ads
parentd1f0fedf7882cf1b15ea6450da5bbd878d007a98 (diff)
downloadghdl-53fcf00d88d1a3b34c7833aa4c421ea52f3e03dd.tar.gz
ghdl-53fcf00d88d1a3b34c7833aa4c421ea52f3e03dd.tar.bz2
ghdl-53fcf00d88d1a3b34c7833aa4c421ea52f3e03dd.zip
vhdl: move sem* packages to vhdl children.
Diffstat (limited to 'src/vhdl/sem_specs.ads')
-rw-r--r--src/vhdl/sem_specs.ads99
1 files changed, 0 insertions, 99 deletions
diff --git a/src/vhdl/sem_specs.ads b/src/vhdl/sem_specs.ads
deleted file mode 100644
index 170df72fb..000000000
--- a/src/vhdl/sem_specs.ads
+++ /dev/null
@@ -1,99 +0,0 @@
--- Semantic analysis.
--- Copyright (C) 2002, 2003, 2004, 2005 Tristan Gingold
---
--- GHDL is free software; you can redistribute it and/or modify it under
--- the terms of the GNU General Public License as published by the Free
--- Software Foundation; either version 2, or (at your option) any later
--- version.
---
--- GHDL is distributed in the hope that it will be useful, but WITHOUT ANY
--- WARRANTY; without even the implied warranty of MERCHANTABILITY or
--- FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
--- for more details.
---
--- You should have received a copy of the GNU General Public License
--- along with GHDL; see the file COPYING. If not, write to the Free
--- Software Foundation, 59 Temple Place - Suite 330, Boston, MA
--- 02111-1307, USA.
-with Types; use Types;
-with Iirs; use Iirs;
-with Vhdl.Tokens;
-
-package Sem_Specs is
- -- Return the attribute_value for named entity ENT and attribute identifier
- -- ID. Return Null_Iir if ENT was not decorated with attribute ID.
- function Find_Attribute_Value (Ent : Iir; Id : Name_Id) return Iir;
-
- -- Return the node containing the attribute_value_chain field for DECL.
- -- This is the parent of the attribute specification, so in general this
- -- is also the parent of the declaration, but there are exceptions...
- function Get_Attribute_Value_Chain_Parent (Decl : Iir) return Iir;
-
- function Get_Entity_Class_Kind (Decl : Iir) return Vhdl.Tokens.Token_Type;
-
- procedure Sem_Attribute_Specification
- (Spec : Iir_Attribute_Specification; Scope : Iir);
-
- -- Check declarations following an ALL/OTHERS attribute specification.
- -- ATTR_SPEC_CHAIN is the linked list of all attribute specifications whith
- -- the entity name list ALL or OTHERS until the current declaration DECL.
- -- So no specification in the chain must match the declaration.
- procedure Check_Post_Attribute_Specification
- (Attr_Spec_Chain : Iir; Decl : Iir);
-
- procedure Sem_Disconnection_Specification
- (Dis : Iir_Disconnection_Specification);
-
- procedure Sem_Configuration_Specification
- (Parent_Stmts : Iir; Conf : Iir_Configuration_Specification);
-
- -- Analyze binding indication BIND of configuration specification or
- -- component configuration PARENT.
- -- PRIMARY_ENTITY_ASPECT is not Null_Iir for an incremental binding.
- procedure Sem_Binding_Indication (Bind : Iir_Binding_Indication;
- Parent : Iir;
- Primary_Entity_Aspect : Iir);
-
- -- Analyze entity aspect ASPECT and return the entity declaration.
- -- Return NULL_IIR if not found.
- function Sem_Entity_Aspect (Aspect : Iir) return Iir;
-
- -- Analyze component_configuration or configuration_specification SPEC.
- -- STMTS is the concurrent statement list related to SPEC.
- procedure Sem_Component_Specification
- (Parent_Stmts : Iir; Spec : Iir; Primary_Entity_Aspect : out Iir);
-
- -- Create a default binding indication for component COMP which will be
- -- bound with entity ENTITY_UNIT.
- -- If ENTITY_UNIT is NULL_IIR, the component is not bound.
- -- If FORCE is True, a binding indication will be created even if the
- -- component is not bound (this is an open binding indication).
- -- If CREATE_MAP_ASPECT is true, port and generic map aspect are created.
- -- PARENT is used to report error.
- function Sem_Create_Default_Binding_Indication
- (Comp : Iir_Component_Declaration;
- Entity_Unit : Iir_Design_Unit;
- Parent : Iir;
- Force : Boolean;
- Create_Map_Aspect : Boolean)
- return Iir_Binding_Indication;
-
- -- Create a default generic or port map aspect that associates all elements
- -- of ENTITY (if any) to elements of COMP with the same name or to
- -- an open association.
- -- If KIND is GENERIC_MAP, apply this on generics, if KIND is PORT_MAP,
- -- apply this on ports.
- -- PARENT is used to report errors.
- type Map_Kind_Type is (Map_Generic, Map_Port);
- function Create_Default_Map_Aspect
- (Comp : Iir; Entity : Iir; Kind : Map_Kind_Type; Parent : Iir)
- return Iir;
-
- -- Explain why there is no default binding for COMP.
- procedure Explain_No_Visible_Entity (Comp: Iir_Component_Declaration);
-
- function Get_Visible_Entity_Declaration (Comp: Iir_Component_Declaration)
- return Iir_Design_Unit;
-
- procedure Sem_Specification_Chain (Decls_Parent : Iir; Parent_Stmts: Iir);
-end Sem_Specs;