aboutsummaryrefslogtreecommitdiffstats
path: root/scheduling
diff options
context:
space:
mode:
authorLéo Gourdin <leo.gourdin@lilo.org>2021-07-27 11:22:30 +0200
committerLéo Gourdin <leo.gourdin@lilo.org>2021-07-27 11:22:30 +0200
commit0b076ef6eb5553be43ce81c27e438f632b17cb32 (patch)
tree6b7587821500bb30d4a6623f60a5a6ea62c79f14 /scheduling
parent8de8dc6616c49018c6151887f76ea08c8f1ff04e (diff)
downloadcompcert-kvx-0b076ef6eb5553be43ce81c27e438f632b17cb32.tar.gz
compcert-kvx-0b076ef6eb5553be43ce81c27e438f632b17cb32.zip
prepass act
Diffstat (limited to 'scheduling')
-rw-r--r--scheduling/BTLScheduleraux.ml26
1 files changed, 14 insertions, 12 deletions
diff --git a/scheduling/BTLScheduleraux.ml b/scheduling/BTLScheduleraux.ml
index 6a114b74..9c8f6ab5 100644
--- a/scheduling/BTLScheduleraux.ml
+++ b/scheduling/BTLScheduleraux.ml
@@ -37,18 +37,20 @@ let apply_schedule bseq olast positions =
build_iblock ibl
let schedule_blk n ibf btl =
- let bseq, olast = flatten_blk_basics ibf in
- match schedule_sequence bseq btl with
- | Some positions ->
- debug "%d," (p2i n);
- Array.iter (fun p -> debug "%d " p) positions;
- debug "\n";
- let new_ib = apply_schedule bseq olast positions in
- let new_ibf =
- { entry = new_ib; binfo = ibf.binfo; input_regs = ibf.input_regs }
- in
- PTree.set n new_ibf btl
- | None -> btl
+ if not !Clflags.option_fprepass then btl
+ else
+ let bseq, olast = flatten_blk_basics ibf in
+ match schedule_sequence bseq btl with
+ | Some positions ->
+ debug "%d," (p2i n);
+ Array.iter (fun p -> debug "%d " p) positions;
+ debug "\n";
+ let new_ib = apply_schedule bseq olast positions in
+ let new_ibf =
+ { entry = new_ib; binfo = ibf.binfo; input_regs = ibf.input_regs }
+ in
+ PTree.set n new_ibf btl
+ | None -> btl
let rec do_schedule btl = function
| [] -> btl