diff options
author | Léo Gourdin <leo.gourdin@univ-grenoble-alpes.fr> | 2021-05-28 11:44:11 +0200 |
---|---|---|
committer | Léo Gourdin <leo.gourdin@univ-grenoble-alpes.fr> | 2021-05-28 11:44:11 +0200 |
commit | 05b24fdb11414100b9b04867e6e2d3a1a9054162 (patch) | |
tree | 6ae4a50a2f311c6b2786e64de12d4d5f7755f865 /scheduling/BTLScheduleraux.ml | |
parent | 56901933d110adef341312e1c7630b672827b41d (diff) | |
download | compcert-kvx-05b24fdb11414100b9b04867e6e2d3a1a9054162.tar.gz compcert-kvx-05b24fdb11414100b9b04867e6e2d3a1a9054162.zip |
Improvements in scheduling and renumbering BTL code
Diffstat (limited to 'scheduling/BTLScheduleraux.ml')
-rw-r--r-- | scheduling/BTLScheduleraux.ml | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/scheduling/BTLScheduleraux.ml b/scheduling/BTLScheduleraux.ml index 4b5ebb32..ad0c307d 100644 --- a/scheduling/BTLScheduleraux.ml +++ b/scheduling/BTLScheduleraux.ml @@ -80,7 +80,6 @@ let build_constraints_and_resources (opweights : opweights) insts btl = in Array.iteri (fun i inst -> - (* TODO gourdinl liveins for Bcond *) match inst with | Bnop _ -> let rs = Array.map (fun _ -> 0) opweights.pipelined_resource_bounds in @@ -203,13 +202,13 @@ let flatten_blk_basics ibf = | BF (_, _) -> last := Some ib; [] - | Bseq (ib1, ib2) -> traverse_blk ib1 @ traverse_blk ib2 - | Bcond (_, _, _, _, iinfo) -> ( + | Bseq ((Bcond (_, _, _, _, iinfo) as ib1), ib2) -> ( match iinfo.pcond with - | Some _ -> [ ib ] + | Some _ -> [ ib1 ] @ traverse_blk ib2 | None -> last := Some ib; []) + | Bseq (ib1, ib2) -> traverse_blk ib1 @ traverse_blk ib2 | _ -> [ ib ] in let ibl = traverse_blk ib in |