diff options
-rw-r--r-- | src/synth/netlists-disp_vhdl.adb | 21 | ||||
-rw-r--r-- | src/synth/netlists-disp_vhdl.ads | 2 | ||||
-rw-r--r-- | src/synth/netlists-dump.adb | 21 | ||||
-rw-r--r-- | src/synth/synth-disp_vhdl.adb | 1 | ||||
-rw-r--r-- | src/utils_io.adb | 51 | ||||
-rw-r--r-- | src/utils_io.ads | 32 |
6 files changed, 86 insertions, 42 deletions
diff --git a/src/synth/netlists-disp_vhdl.adb b/src/synth/netlists-disp_vhdl.adb index 992f0bf5e..77ee517e6 100644 --- a/src/synth/netlists-disp_vhdl.adb +++ b/src/synth/netlists-disp_vhdl.adb @@ -19,6 +19,7 @@ -- MA 02110-1301, USA. with Simple_IO; use Simple_IO; +with Utils_IO; use Utils_IO; with Types_Utils; use Types_Utils; with Name_Table; use Name_Table; with Files_Map; @@ -31,26 +32,6 @@ with Netlists.Locations; package body Netlists.Disp_Vhdl is Flag_Merge_Lit : constant Boolean := True; - -- Like Put, but without the leading space (if any). - procedure Put_Trim (S : String) is - begin - if S'First <= S'Last and then S (S'First) = ' ' then - Put (S (S'First + 1 .. S'Last)); - else - Put (S); - end if; - end Put_Trim; - - procedure Put_Uns32 (V : Uns32) is - begin - Put_Trim (Uns32'Image (V)); - end Put_Uns32; - - procedure Put_Int32 (V : Int32) is - begin - Put_Trim (Int32'Image (V)); - end Put_Int32; - procedure Put_Type (W : Width) is begin if W = 1 then diff --git a/src/synth/netlists-disp_vhdl.ads b/src/synth/netlists-disp_vhdl.ads index a088c4968..afc29458f 100644 --- a/src/synth/netlists-disp_vhdl.ads +++ b/src/synth/netlists-disp_vhdl.ads @@ -19,8 +19,6 @@ -- MA 02110-1301, USA. package Netlists.Disp_Vhdl is - procedure Put_Uns32 (V : Uns32); - procedure Disp_Vhdl (M : Module); procedure Disp_Architecture_Declarations (M : Module); diff --git a/src/synth/netlists-dump.adb b/src/synth/netlists-dump.adb index 6a421805b..841c5d831 100644 --- a/src/synth/netlists-dump.adb +++ b/src/synth/netlists-dump.adb @@ -19,6 +19,7 @@ -- MA 02110-1301, USA. with Simple_IO; use Simple_IO; +with Utils_IO; use Utils_IO; with Name_Table; with Files_Map; @@ -28,26 +29,6 @@ with Netlists.Gates; use Netlists.Gates; with Netlists.Locations; package body Netlists.Dump is - procedure Put_Indent (Indent : Natural) is - begin - Put (String'(1 .. Indent * 2 => ' ')); - end Put_Indent; - - -- Like Put, but without the leading space (if any). - procedure Put_Trim (S : String) is - begin - if S'First <= S'Last and then S (S'First) = ' ' then - Put (S (S'First + 1 .. S'Last)); - else - Put (S); - end if; - end Put_Trim; - - procedure Put_Uns32 (V : Uns32) is - begin - Put_Trim (Uns32'Image (V)); - end Put_Uns32; - procedure Put_Width (W : Width) is begin Put_Trim (Width'Image (W)); diff --git a/src/synth/synth-disp_vhdl.adb b/src/synth/synth-disp_vhdl.adb index 0227e4f2d..6d14e95d9 100644 --- a/src/synth/synth-disp_vhdl.adb +++ b/src/synth/synth-disp_vhdl.adb @@ -19,6 +19,7 @@ -- MA 02110-1301, USA. with Simple_IO; use Simple_IO; +with Utils_IO; use Utils_IO; with Types; use Types; with Name_Table; diff --git a/src/utils_io.adb b/src/utils_io.adb new file mode 100644 index 000000000..a148fe111 --- /dev/null +++ b/src/utils_io.adb @@ -0,0 +1,51 @@ +-- Common IO utilities. +-- Copyright (C) 2019 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 Simple_IO; use Simple_IO; + +package body Utils_IO is + procedure Put_Indent (Indent : Natural) is + begin + Put (String'(1 .. Indent * 2 => ' ')); + end Put_Indent; + + -- Like Put, but without the leading space (if any). + procedure Put_Trim (S : String) is + begin + if S'First <= S'Last and then S (S'First) = ' ' then + Put (S (S'First + 1 .. S'Last)); + else + Put (S); + end if; + end Put_Trim; + + procedure Put_Uns32 (V : Uns32) is + begin + Put_Trim (Uns32'Image (V)); + end Put_Uns32; + + procedure Put_Int32 (V : Int32) is + begin + Put_Trim (Int32'Image (V)); + end Put_Int32; + + procedure Put_Int64 (V : Int64) is + begin + Put_Trim (Int64'Image (V)); + end Put_Int64; +end Utils_IO; diff --git a/src/utils_io.ads b/src/utils_io.ads new file mode 100644 index 000000000..249f0a26b --- /dev/null +++ b/src/utils_io.ads @@ -0,0 +1,32 @@ +-- Common IO utilities. +-- Copyright (C) 2019 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; + +package Utils_IO is + -- Disp 2*INDENT spaces. + procedure Put_Indent (Indent : Natural); + + -- Like Put, but without the leading space (if any). + procedure Put_Trim (S : String); + + -- Put without leading blank. + procedure Put_Uns32 (V : Uns32); + procedure Put_Int32 (V : Int32); + procedure Put_Int64 (V : Int64); +end Utils_IO; |