diff options
author | Tristan Gingold <tgingold@free.fr> | 2014-11-04 20:14:19 +0100 |
---|---|---|
committer | Tristan Gingold <tgingold@free.fr> | 2014-11-04 20:14:19 +0100 |
commit | 9c195bf5d86d67ea5eb419ccf6e48dc153e57c68 (patch) | |
tree | 575346e529b99e26382b4a06f6ff2caa0b391ab2 /translate/translation.ads | |
parent | 184a123f91e07c927292d67462561dc84f3a920d (diff) | |
download | ghdl-9c195bf5d86d67ea5eb419ccf6e48dc153e57c68.tar.gz ghdl-9c195bf5d86d67ea5eb419ccf6e48dc153e57c68.tar.bz2 ghdl-9c195bf5d86d67ea5eb419ccf6e48dc153e57c68.zip |
Move sources to src/ subdirectory.
Diffstat (limited to 'translate/translation.ads')
-rw-r--r-- | translate/translation.ads | 120 |
1 files changed, 0 insertions, 120 deletions
diff --git a/translate/translation.ads b/translate/translation.ads deleted file mode 100644 index e779685f2..000000000 --- a/translate/translation.ads +++ /dev/null @@ -1,120 +0,0 @@ --- Iir to ortho translator. --- 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 GCC; see the file COPYING. If not, write to the Free --- Software Foundation, 59 Temple Place - Suite 330, Boston, MA --- 02111-1307, USA. -with Iirs; use Iirs; -with Ortho_Nodes; - -package Translation is - -- Initialize the package: create internal nodes. - procedure Initialize; - - -- Translate (generate code) for design unit UNIT. - -- If MAIN is true, the unit is really the unit being compiled (not an - -- external unit). Code shouldn't be generated for external units. - procedure Translate (Unit : Iir_Design_Unit; Main : Boolean); - - -- Translate std.standard. - procedure Translate_Standard (Main : Boolean); - - -- Get the ortho node for subprogram declaration DECL. - function Get_Ortho_Decl (Subprg : Iir) return Ortho_Nodes.O_Dnode; - - -- Get the internal _RESOLV function for FUNC. - function Get_Resolv_Ortho_Decl (Func : Iir) return Ortho_Nodes.O_Dnode; - - procedure Finalize; - - package Chap12 is - -- Primary unit + secondary unit (architecture name which may be null) - -- to elaborate. - procedure Elaborate (Primary : String; - Secondary : String; - Filelist : String; - Whole : Boolean); - end Chap12; - - -- If set, generate Run-Time Information nodes. - Flag_Rti : Boolean := True; - - -- If set, do not generate 64 bits integer types and operations. - Flag_Only_32b : Boolean := False; - - -- If set, do not generate code for unused subprograms. - -- Be careful: unless you are in whole compilation mode, this - -- flag shouldn't be set for packages and entities. - Flag_Discard_Unused : Boolean := False; - - -- If set, do not generate code for unused implicit subprograms. - Flag_Discard_Unused_Implicit : Boolean := False; - - -- If set, dump drivers per process during compilation. - Flag_Dump_Drivers : Boolean := False; - - -- If set, try to create direct drivers. - Flag_Direct_Drivers : Boolean := True; - - -- If set, checks ranges (subtype ranges). - Flag_Range_Checks : Boolean := True; - - -- If set, checks indexes (arrays index and slice). - Flag_Index_Checks : Boolean := True; - - -- If set, do not create identifiers (for in memory compilation). - Flag_Discard_Identifiers : Boolean := False; - - -- If true, do not create nested subprograms. - -- This flag is forced during initialization if the code generated doesn't - -- support nested subprograms. - Flag_Unnest_Subprograms : Boolean := False; - - type Foreign_Kind_Type is (Foreign_Unknown, - Foreign_Vhpidirect, - Foreign_Intrinsic); - - type Foreign_Info_Type (Kind : Foreign_Kind_Type := Foreign_Unknown) - is record - case Kind is - when Foreign_Unknown => - null; - when Foreign_Vhpidirect => - -- Positions in name_table.name_buffer. - Lib_First : Natural; - Lib_Last : Natural; - Subprg_First : Natural; - Subprg_Last : Natural; - when Foreign_Intrinsic => - null; - end case; - end record; - - Foreign_Bad : constant Foreign_Info_Type := (Kind => Foreign_Unknown); - - -- Return a foreign_info for DECL. - -- Can generate error messages, if the attribute expression is ill-formed. - -- If EXTRACT_NAME is set, internal fields of foreign_info are set. - -- Otherwise, only KIND discriminent is set. - -- EXTRACT_NAME should be set only inside translation itself, since the - -- name can be based on the prefix. - function Translate_Foreign_Id (Decl : Iir) return Foreign_Info_Type; - - -- If not null, this procedure is called when a foreign subprogram is - -- created. - type Foreign_Hook_Access is access procedure (Decl : Iir; - Info : Foreign_Info_Type; - Ortho : Ortho_Nodes.O_Dnode); - Foreign_Hook : Foreign_Hook_Access := null; -end Translation; |