diff options
-rw-r--r-- | backend/CSE3analysis.v | 31 | ||||
-rw-r--r-- | driver/Clflags.ml | 2 |
2 files changed, 12 insertions, 21 deletions
diff --git a/backend/CSE3analysis.v b/backend/CSE3analysis.v index 56d325b9..cd7e3d84 100644 --- a/backend/CSE3analysis.v +++ b/backend/CSE3analysis.v @@ -309,12 +309,6 @@ Section OPERATIONS. | Some eq_id => PSet.add eq_id (kill_reg dst rel) | None => kill_reg dst rel end. - - Definition is_trivial_sym_op sop := - match sop with - | SOp op => is_trivial_op op - | SLoad _ _ => false - end. Definition oper (dst : reg) (op: sym_op) (args : list reg) (rel : RELATION.t) : RELATION.t := @@ -326,21 +320,18 @@ Section OPERATIONS. | _ => kill_reg dst rel end else - (* if is_trivial_sym_op op - then kill_reg dst rel - else *) - let args' := forward_move_l rel args in - match rhs_find op args' rel with - | Some r => - if Compopts.optim_CSE3_glb tt - then RELATION.glb (move r dst rel) - (RELATION.glb (oper1 dst op args' rel) - (oper1 dst op args rel)) - else RELATION.glb (oper1 dst op args' rel) + let args' := forward_move_l rel args in + match rhs_find op args' rel with + | Some r => + if Compopts.optim_CSE3_glb tt + then RELATION.glb (move r dst rel) + (RELATION.glb (oper1 dst op args' rel) + (oper1 dst op args rel)) + else RELATION.glb (oper1 dst op args' rel) + (oper1 dst op args rel) + | None => RELATION.glb (oper1 dst op args' rel) (oper1 dst op args rel) - | None => RELATION.glb (oper1 dst op args' rel) - (oper1 dst op args rel) - end. + end. Definition clever_kill_store (chunk : memory_chunk) (addr: addressing) (args : list reg) diff --git a/driver/Clflags.ml b/driver/Clflags.ml index a817b56a..e9b0dade 100644 --- a/driver/Clflags.ml +++ b/driver/Clflags.ml @@ -100,7 +100,7 @@ let option_div_i32 = ref "stsud" let option_div_i64 = ref "stsud" let option_fcoalesce_mem = ref true let option_fforward_moves = ref false -let option_fmove_loop_invariants = ref true +let option_fmove_loop_invariants = ref false let option_fnontrap_loads = ref true let option_all_loads_nontrap = ref false let option_inline_auto_threshold = ref 0 |