aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/grt/grt-fcvt.adb79
-rw-r--r--src/grt/grt-fcvt.ads9
-rw-r--r--src/grt/grt-vcd.adb2
3 files changed, 1 insertions, 89 deletions
diff --git a/src/grt/grt-fcvt.adb b/src/grt/grt-fcvt.adb
index 0757886a2..1f8165b35 100644
--- a/src/grt/grt-fcvt.adb
+++ b/src/grt/grt-fcvt.adb
@@ -574,26 +574,6 @@ package body Grt.Fcvt is
Len := Len + 1;
end Append;
- procedure Insert (Str : in out String;
- Len : in out Natural;
- Pos : Positive;
- C : Character)
- is
- Prev_C, C1 : Character;
- begin
- if Pos > Str'Length then
- return;
- end if;
-
- C1 := C;
- for I in Pos .. Positive'Min (Str'Length, Len) loop
- Prev_C := Str (I);
- Str (I) := C1;
- C1 := Prev_C;
- end loop;
- Append (Str, Len, C1);
- end Insert;
-
procedure Append_Digit (Str : in out String;
Len : in out Natural;
D : Natural) is
@@ -878,65 +858,6 @@ package body Grt.Fcvt is
Exp := Ctxt.K;
end To_String;
- procedure To_String (Str : out String;
- Len : out Natural;
- V : IEEE_Float_64)
- is
- Is_Num : Boolean;
- Is_Neg : Boolean;
- Exp : Integer;
- First : Positive;
- begin
- To_String (Str, Len, Is_Num, Is_Neg, Exp, V);
-
- -- Handle sign.
- if Is_Neg then
- First := 2;
- Insert (Str, Len, 1, '-');
- else
- First := 1;
- end if;
-
- if not Is_Num then
- return;
- end if;
-
- -- At this point STR contains the minus sign (if any) and digits.
- -- The value is 0.NNNN * 10**K
-
- -- Formatting.
- -- Insert the dot.
- Insert (Str, Len, First + 1, '.');
- Exp := Exp - 1;
-
- Append (Str, Len, 'e');
- declare
- K : Integer;
- T : Integer;
- Den : Natural;
- begin
- K := Exp;
- if K < 0 then
- Append (Str, Len, '-');
- K := -K;
- end if;
- if K >= 100 then
- Den := 100;
- elsif K >= 10 then
- Den := 10;
- else
- Den := 1;
- end if;
- loop
- T := K / Den;
- Append_Digit (Str, Len, T);
- K := K - T * Den;
- exit when Den = 1;
- Den := Den / 10;
- end loop;
- end;
- end To_String;
-
-- Input is: (-1)**S * M * 2**E
function Pack (M : Unsigned_64;
E : Integer;
diff --git a/src/grt/grt-fcvt.ads b/src/grt/grt-fcvt.ads
index 2ec42fcfa..9fad63c06 100644
--- a/src/grt/grt-fcvt.ads
+++ b/src/grt/grt-fcvt.ads
@@ -56,15 +56,6 @@ package Grt.Fcvt is
procedure Format_Image
(Str : out String; Last : out Natural; N : IEEE_Float_64);
- -- Convert V to 10-based number stored (in ASCII) in STR/LEN [using at most
- -- NDIGITS digits.]
- -- LEN is the number of characters needed (so it may be greater than
- -- STR'Length).
- -- Requires STR'First = 1.
- procedure To_String (Str : out String;
- Len : out Natural;
- V : IEEE_Float_64);
-
-- Input format is [+-]int[.int][e[+-]int]
-- where int is digit { _ digit }
-- and [+-] means optional + or -.
diff --git a/src/grt/grt-vcd.adb b/src/grt/grt-vcd.adb
index e6495c5aa..4f8c9ca9c 100644
--- a/src/grt/grt-vcd.adb
+++ b/src/grt/grt-vcd.adb
@@ -682,7 +682,7 @@ package body Grt.Vcd is
-- conversions, [...]
-- Note: the code always uses the 'e' format, with a full precision.
- Grt.Fcvt.To_String (Str, Len, Interfaces.IEEE_Float_64 (V));
+ Grt.Fcvt.Format_Image (Str, Len, Interfaces.IEEE_Float_64 (V));
Vcd_Put (Str (1 .. Len));
end Vcd_Put_Float64;