aboutsummaryrefslogtreecommitdiffstats
path: root/riscV/ExpansionOracle.ml
diff options
context:
space:
mode:
authorLéo Gourdin <leo.gourdin@univ-grenoble-alpes.fr>2021-05-19 18:17:31 +0200
committerLéo Gourdin <leo.gourdin@univ-grenoble-alpes.fr>2021-05-19 18:17:31 +0200
commitbe8d929aef8e86c2e22e32c525093c6bfe56a300 (patch)
tree9026f38d9251477da228ba0d27706d448d7b7cfb /riscV/ExpansionOracle.ml
parenta6545d8fa35ab4ab3a12823eafacff99d7307314 (diff)
downloadcompcert-kvx-be8d929aef8e86c2e22e32c525093c6bfe56a300.tar.gz
compcert-kvx-be8d929aef8e86c2e22e32c525093c6bfe56a300.zip
Adding both RV expansion methods in kvx-work
Diffstat (limited to 'riscV/ExpansionOracle.ml')
-rw-r--r--riscV/ExpansionOracle.ml10
1 files changed, 5 insertions, 5 deletions
diff --git a/riscV/ExpansionOracle.ml b/riscV/ExpansionOracle.ml
index 5d739375..1384b9b3 100644
--- a/riscV/ExpansionOracle.ml
+++ b/riscV/ExpansionOracle.ml
@@ -116,8 +116,7 @@ let forget_reg vn rd =
print_list_pos old_regs;
Hashtbl.replace !vn.nval v
(List.filter (fun n -> not (P.eq n rd)) old_regs)
- | None ->
- debug "forget_reg: no mapping for r=%d\n" (p2i rd)
+ | None -> debug "forget_reg: no mapping for r=%d\n" (p2i rd)
let update_reg vn rd v =
debug "update_reg: update v=%d with r=%d\n" v (p2i rd);
@@ -696,8 +695,9 @@ let expanse (sb : superblock) code pm =
was_branch := false;
was_exp := false;
let inst = get_some @@ PTree.get n code in
- debug "We are checking node %d\n" (p2i n);
- (match inst with
+ (if !Clflags.option_fexpanse_rtlcond then
+ debug "We are checking node %d\n" (p2i n);
+ match inst with
(* Expansion of conditions - Ocmp *)
| Iop (Ocmp (Ccomp c), a1 :: a2 :: nil, dest, succ) ->
debug "Iop/Ccomp\n";
@@ -824,7 +824,7 @@ let expanse (sb : superblock) code pm =
was_branch := true;
was_exp := true
| _ -> ());
- (if not !was_exp then
+ (if !Clflags.option_fexpanse_others && not !was_exp then
match inst with
| Iop (Ofloatconst f, nil, dest, succ) ->
debug "Iop/Ofloatconst\n";