aboutsummaryrefslogtreecommitdiffstats
path: root/scheduling/InstructionScheduler.mli
diff options
context:
space:
mode:
authorDavid Monniaux <david.monniaux@univ-grenoble-alpes.fr>2020-09-24 15:23:09 +0200
committerDavid Monniaux <david.monniaux@univ-grenoble-alpes.fr>2020-09-24 15:23:09 +0200
commit9c7724e98003699072d3af77a545401cd4249f2d (patch)
treef5a731a14efe77964370621038ac32693c5057f7 /scheduling/InstructionScheduler.mli
parenta9828b2acd57c99baae16310bc5a261404ab6198 (diff)
downloadcompcert-kvx-9c7724e98003699072d3af77a545401cd4249f2d.tar.gz
compcert-kvx-9c7724e98003699072d3af77a545401cd4249f2d.zip
attempt at "zigzag" scheduler; not quite testable due to issues in the duplicate/linearize passes
Diffstat (limited to 'scheduling/InstructionScheduler.mli')
-rw-r--r--scheduling/InstructionScheduler.mli6
1 files changed, 6 insertions, 0 deletions
diff --git a/scheduling/InstructionScheduler.mli b/scheduling/InstructionScheduler.mli
index 85e2a5c6..fb7af3f6 100644
--- a/scheduling/InstructionScheduler.mli
+++ b/scheduling/InstructionScheduler.mli
@@ -33,6 +33,12 @@ type problem = {
(** Print problem for human readability. *)
val print_problem : out_channel -> problem -> unit;;
+(** Get the number of instructions in a problem *)
+val get_nr_instructions : problem -> int;;
+
+(** Get the number of resources in a problem *)
+val get_nr_resources : problem -> int;;
+
(** Scheduling solution. For {i n} instructions to schedule, and 0≤{i i}<{i n}, position {i i} contains the time to which instruction {i i} should be scheduled. Position {i n} contains the final output latency. *)
type solution = int array