diff options
author | nicolas.nardino <nicolas.nardino@ens-lyon.fr> | 2021-06-12 10:52:59 +0200 |
---|---|---|
committer | nicolas.nardino <nicolas.nardino@ens-lyon.fr> | 2021-06-12 10:52:59 +0200 |
commit | 2b814b1f9bb30d9c8b59a713f69bced808bca7c7 (patch) | |
tree | e558872ae04c25e6e4bd5c7d264c53eb9616ff5c /aarch64 | |
parent | 1701e43316ee8e69e794a025a8c9979af6bb8c93 (diff) | |
download | compcert-kvx-2b814b1f9bb30d9c8b59a713f69bced808bca7c7.tar.gz compcert-kvx-2b814b1f9bb30d9c8b59a713f69bced808bca7c7.zip |
work on the scheduler
Diffstat (limited to 'aarch64')
-rw-r--r-- | aarch64/PostpassSchedulingOracle.ml | 1 | ||||
-rw-r--r-- | aarch64/PrepassSchedulingOracle.ml | 4 |
2 files changed, 4 insertions, 1 deletions
diff --git a/aarch64/PostpassSchedulingOracle.ml b/aarch64/PostpassSchedulingOracle.ml index 834d42f5..867341ca 100644 --- a/aarch64/PostpassSchedulingOracle.ml +++ b/aarch64/PostpassSchedulingOracle.ml @@ -509,6 +509,7 @@ let build_problem bb = resource_bounds = opweights.pipelined_resource_bounds; live_regs_entry = Registers.Regset.empty; (* unused here *) typing = (fun x -> AST.Tint); (* unused here *) + pressure_deltas = [| [| |] |] ; instruction_usages = instruction_usages bb; latency_constraints = latency_constraints bb; } diff --git a/aarch64/PrepassSchedulingOracle.ml b/aarch64/PrepassSchedulingOracle.ml index 6d445f10..19f05749 100644 --- a/aarch64/PrepassSchedulingOracle.ml +++ b/aarch64/PrepassSchedulingOracle.ml @@ -201,6 +201,7 @@ let get_simple_dependencies (opweights : opweights) (seqa : (instruction*Regset. end seqa; !latency_constraints;; + let get_pressure_deltas (seqa : (instruction * Regset.t) array) (typing : RTLtyping.regenv) : int array array = @@ -459,7 +460,8 @@ let define_problem (opweights : opweights) (live_entry_regs : Regset.t) resource_bounds = opweights.pipelined_resource_bounds; live_regs_entry = live_entry_regs; typing = typing; - instruction_usages = Array.map (resources_of_instruction opweights) (Array.map fst seqa); + pressure_deltas = get_pressure_deltas seqa typing; + instruction_usages = Array.map (resources_of_instruction opweights) (Array.map fst seqa); latency_constraints = (* if (use_alias_analysis ()) then (get_alias_dependencies seqa) @ simple_deps |