diff options
author | Léo Gourdin <leo.gourdin@univ-grenoble-alpes.fr> | 2021-05-19 18:17:31 +0200 |
---|---|---|
committer | Léo Gourdin <leo.gourdin@univ-grenoble-alpes.fr> | 2021-05-19 18:17:31 +0200 |
commit | be8d929aef8e86c2e22e32c525093c6bfe56a300 (patch) | |
tree | 9026f38d9251477da228ba0d27706d448d7b7cfb /riscV/ExpansionOracle.ml | |
parent | a6545d8fa35ab4ab3a12823eafacff99d7307314 (diff) | |
download | compcert-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.ml | 10 |
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"; |