]> git.ipfire.org Git - thirdparty/gcc.git/blobdiff - gcc/ada/7straces.adb
3psoccon.ads, [...]: Files added.
[thirdparty/gcc.git] / gcc / ada / 7straces.adb
similarity index 55%
rename from gcc/ada/s-explin.ads
rename to gcc/ada/7straces.adb
index aa1a442c52fffe8117f704885f717883cb0841d4..46822242a409e9767cf74c697a2737e00625a370 100644 (file)
@@ -1,21 +1,21 @@
 ------------------------------------------------------------------------------
 --                                                                          --
---                         GNAT RUNTIME COMPONENTS                          --
+--                GNU ADA RUN-TIME LIBRARY (GNARL) COMPONENTS               --
 --                                                                          --
---                      S Y S T E M . E X P _ L I N T                       --
+--                         S Y S T E M . T R A C E S                        --
 --                                                                          --
---                                 S p e c                                  --
+--                                  B o d y                                 --
 --                                                                          --
---        Copyright (C) 1992,1993,1994 Free Software Foundation, Inc.       --
+--             Copyright (C) 2001 Free Software Foundation, Inc.            --
 --                                                                          --
--- GNAT is free software;  you can  redistribute it  and/or modify it under --
+-- GNARL is free software; you can  redistribute it  and/or modify it under --
 -- terms of the  GNU General Public License as published  by the Free Soft- --
 -- ware  Foundation;  either version 2,  or (at your option) any later ver- --
--- sion.  GNAT is distributed in the hope that it will be useful, but WITH- --
+-- sion. GNARL is distributed in the hope that it will be useful, but WITH- --
 -- OUT 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  distributed with GNAT;  see file COPYING.  If not, write --
+-- Public License  distributed with GNARL; see file COPYING.  If not, write --
 -- to  the Free Software Foundation,  59 Temple Place - Suite 330,  Boston, --
 -- MA 02111-1307, USA.                                                      --
 --                                                                          --
 --                                                                          --
 ------------------------------------------------------------------------------
 
---  Long_Integer exponentiation (checks on)
+with System.Soft_Links;
+with System.Parameters;
+with System.Traces.Format;
 
-with System.Exp_Gen;
+package body System.Traces is
 
-package System.Exp_LInt is
-pragma Pure (Exp_LInt);
+   package SSL renames System.Soft_Links;
+   use System.Traces.Format;
 
-   function Exp_Long_Integer is
-     new System.Exp_Gen.Exp_Integer_Type (Long_Integer);
+   ----------------------
+   -- Send_Trace_Info  --
+   ----------------------
 
-end System.Exp_LInt;
+   procedure Send_Trace_Info (Id : Trace_T) is
+      Task_S  : String := SSL.Task_Name.all;
+      Trace_S : String (1 .. 3 + Task_S'Length);
+
+   begin
+      if Parameters.Runtime_Traces then
+         Trace_S (1 .. 3) := "/N:";
+         Trace_S (4 .. Trace_S'Last) := Task_S;
+         Send_Trace (Id, Trace_S);
+      end if;
+   end Send_Trace_Info;
+
+   procedure Send_Trace_Info (Id : Trace_T; Timeout : Duration) is
+      Task_S    : String := SSL.Task_Name.all;
+      Timeout_S : String := Duration'Image (Timeout);
+      Trace_S   : String (1 .. 6 + Task_S'Length + Timeout_S'Length);
+
+   begin
+      if Parameters.Runtime_Traces then
+         Trace_S (1 .. 3) := "/N:";
+         Trace_S (4 .. 3 + Task_S'Length) := Task_S;
+         Trace_S (4 + Task_S'Length .. 6 + Task_S'Length) := "/T:";
+         Trace_S (7 + Task_S'Length .. Trace_S'Last) := Timeout_S;
+         Send_Trace (Id, Trace_S);
+      end if;
+   end Send_Trace_Info;
+end System.Traces;