aboutsummaryrefslogtreecommitdiffstats
path: root/src/grt/grt-main.ads
diff options
context:
space:
mode:
authorTristan Gingold <tgingold@free.fr>2020-04-02 19:44:37 +0200
committerTristan Gingold <tgingold@free.fr>2020-04-02 19:45:48 +0200
commit2fc3356ae0d34dae87eb22c94f4b5eaa1873695b (patch)
treea0d3f99840b71a8a60951a2a3890bf0babdcb488 /src/grt/grt-main.ads
parent013c41bf28a636e32d7b62e89293f4ff172a5491 (diff)
downloadghdl-2fc3356ae0d34dae87eb22c94f4b5eaa1873695b.tar.gz
ghdl-2fc3356ae0d34dae87eb22c94f4b5eaa1873695b.tar.bz2
ghdl-2fc3356ae0d34dae87eb22c94f4b5eaa1873695b.zip
grt: add code to support systemc co-simulation.
Diffstat (limited to 'src/grt/grt-main.ads')
-rw-r--r--src/grt/grt-main.ads21
1 files changed, 18 insertions, 3 deletions
diff --git a/src/grt/grt-main.ads b/src/grt/grt-main.ads
index e4a6bff9c..af14add20 100644
--- a/src/grt/grt-main.ads
+++ b/src/grt/grt-main.ads
@@ -23,14 +23,29 @@
-- however invalidate any other reasons why the executable file might be
-- covered by the GNU Public License.
+with Grt.Types; use Grt.Types;
+with Grt.Options;
+
package Grt.Main is
- -- Elaborate and simulate the design.
+ -- Set options.
+ procedure Run_Options (Progname : Ghdl_C_String;
+ Argc : Integer;
+ Argv : Grt.Options.Argv_Type);
+ pragma Export (C, Run_Options, "grt_main_options");
+
+ -- Do everything: initialize, elaborate and simulate the design.
procedure Run;
-- What Run does.
- -- Elaborate the design.
- procedure Run_Elab (Stop : out Boolean);
+ -- Initialization: decode options, but no elaboration.
+ -- Return False in case of error.
+ function Run_Init return C_Boolean;
+ pragma Export (C, Run_Init, "grt_main_init");
+
+ -- Elaborate the design. Return False in case of error.
+ function Run_Elab return C_Boolean;
+ pragma Export (C, Run_Elab, "grt_main_elab");
-- Do the whole simulation.
function Run_Simul return Integer;