@@ -42,12 +42,10 @@ with Highlighting;
42
42
with Outputs ; use Outputs;
43
43
with Qemu_Traces ;
44
44
with SC_Obligations ;
45
- with Strings ; use Strings;
46
45
with Support_Files ;
47
46
with Traces ; use Traces;
48
47
with Traces_Dbase ;
49
48
with Traces_Elf ; use Traces_Elf;
50
- with Traces_Files ;
51
49
52
50
package body CFG_Dump is
53
51
@@ -266,7 +264,7 @@ package body CFG_Dump is
266
264
procedure Tag_Executed_Instructions
267
265
(Context : Context_Access;
268
266
Exec_Path : String;
269
- Traces_Files_List : Inputs.Inputs_Type );
267
+ Traces_Files_List : Requested_Trace_Vectors.Vector );
270
268
-- Extract traces from each file and use them to tag instructions if they
271
269
-- have been executed. This pass works on the CFG.
272
270
@@ -799,11 +797,10 @@ package body CFG_Dump is
799
797
procedure Tag_Executed_Instructions
800
798
(Context : Context_Access;
801
799
Exec_Path : String;
802
- Traces_Files_List : Inputs.Inputs_Type )
800
+ Traces_Files_List : Requested_Trace_Vectors.Vector )
803
801
is
804
802
use type Interfaces.Unsigned_8;
805
803
use Traces_Dbase;
806
- use Traces_Files;
807
804
808
805
Base : Traces_Base;
809
806
@@ -984,7 +981,9 @@ package body CFG_Dump is
984
981
-- Import all trace entries to the database, so that they are sorted by
985
982
-- address
986
983
987
- Inputs.Iterate (Traces_Files_List, Import_Traces'Access );
984
+ for RT of Traces_Files_List loop
985
+ Import_Traces (+RT.Filename);
986
+ end loop ;
988
987
989
988
-- And then, use them to tag instructions
990
989
@@ -1726,20 +1725,18 @@ package body CFG_Dump is
1726
1725
Locations : User_Locations;
1727
1726
Output : String_Access;
1728
1727
Format : Output_Format;
1729
- SCO_Files_List : Inputs.Inputs_Type ;
1730
- Traces_Files_List : Inputs.Inputs_Type ;
1728
+ SCO_Files_List : String_Vectors.Vector ;
1729
+ Traces_Files_List : Requested_Trace_Vectors.Vector ;
1731
1730
Keep_Edges : Boolean)
1732
1731
is
1733
- use Ada.Containers;
1734
-
1735
1732
Context : aliased Context_Type;
1736
1733
Ctx : constant Context_Access :=
1737
1734
Context'Unrestricted_Access;
1738
1735
Output_File : aliased File_Type;
1739
1736
begin
1740
- Context.Group_By_Condition := Inputs.Length ( SCO_Files_List) > 0 ;
1737
+ Context.Group_By_Condition := not SCO_Files_List.Is_Empty ;
1741
1738
Context.Keep_Edges := Keep_Edges;
1742
- Context.Tag_Executed := Inputs.Length ( Traces_Files_List) > 0 ;
1739
+ Context.Tag_Executed := not Traces_Files_List.Is_Empty ;
1743
1740
1744
1741
CFG_Dump_Trace.Trace (" Dumping code from: " & Exec_Path);
1745
1742
CFG_Dump_Trace.Trace
@@ -1767,7 +1764,9 @@ package body CFG_Dump is
1767
1764
if Context.Group_By_Condition then
1768
1765
Coverage.Set_Coverage_Levels (" stmt+mcdc" );
1769
1766
CFG_Dump_Trace.Trace (" Loading ALI files..." );
1770
- Inputs.Iterate (SCO_Files_List, Load_SCOs'Access );
1767
+ for SCO_File of SCO_Files_List loop
1768
+ Load_SCOs (+SCO_File);
1769
+ end loop ;
1771
1770
Coverage.Source.Initialize_SCI;
1772
1771
1773
1772
CFG_Dump_Trace.Trace (" Reading routine names..." );
0 commit comments