From b5264b5677eb95dfb1867f8df0bdb81d5ed23ad2 Mon Sep 17 00:00:00 2001 From: Justus Fasse Date: Mon, 16 Aug 2021 09:15:09 +0200 Subject: Better relative estimates by systematically supplying correct liveness information. Correct in the sense that they match the expected scheduling constraints. --- scheduling/MyRTLpathScheduleraux.ml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/scheduling/MyRTLpathScheduleraux.ml b/scheduling/MyRTLpathScheduleraux.ml index 4c8be5f2..7fc940c7 100644 --- a/scheduling/MyRTLpathScheduleraux.ml +++ b/scheduling/MyRTLpathScheduleraux.ml @@ -937,7 +937,8 @@ let downschedule_compensation_code sb code pm live_renames ~next_free_pc ~next_f | "no_move_stores" -> Ignore_liveness | _ -> failwith "Unsupported option for scheduling code past side exits" in - match ideal_schedule'' sb code mode, ideal_schedule'' sb code Default with + let sb_with_liveins = {sb with liveins = update_liveins sb.liveins live_renames} in + match ideal_schedule'' sb_with_liveins code mode, ideal_schedule'' sb_with_liveins code Default with | None, None -> InsertPositionMap.empty (* Early Exit*) | None, Some _ | Some _, None -> failwith "downschedule_compensation_code: Scheduling procedure failed." | Some (idealized_schedule, idealized_final_time) -- cgit