diff options
author | David Monniaux <david.monniaux@univ-grenoble-alpes.fr> | 2020-03-12 16:46:06 +0100 |
---|---|---|
committer | David Monniaux <david.monniaux@univ-grenoble-alpes.fr> | 2020-03-12 16:46:06 +0100 |
commit | c6ebd73465ef895c6ea5e240f9c784463a6a0fe5 (patch) | |
tree | 15dec58036a4ddf49954cd25565b50e17bc1b292 /backend/CSE3analysisaux.ml | |
parent | 9efb4d87c549087e2ef16103a6993a1f99328348 (diff) | |
download | compcert-kvx-c6ebd73465ef895c6ea5e240f9c784463a6a0fe5.tar.gz compcert-kvx-c6ebd73465ef895c6ea5e240f9c784463a6a0fe5.zip |
removed second analysis phase
Diffstat (limited to 'backend/CSE3analysisaux.ml')
-rw-r--r-- | backend/CSE3analysisaux.ml | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/backend/CSE3analysisaux.ml b/backend/CSE3analysisaux.ml index 392fd13f..23e20ea8 100644 --- a/backend/CSE3analysisaux.ml +++ b/backend/CSE3analysisaux.ml @@ -80,15 +80,18 @@ let preanalysis (tenv : typing_env) (f : RTL.coq_function) = Some coq_id end in - ignore - (internal_analysis + match + internal_analysis { eq_catalog = (fun eq_id -> PTree.get eq_id !cur_catalog); eq_find_oracle = mutating_eq_find_oracle; eq_rhs_oracle = rhs_find_oracle ; eq_kill_reg = (fun reg -> PMap.get reg !cur_kill_reg); eq_kill_mem = (fun () -> !cur_kill_mem); eq_moves = (fun reg -> PMap.get reg !cur_moves) - } tenv f); - { hint_eq_catalog = !cur_catalog; - hint_eq_find_oracle= eq_find_oracle; - hint_eq_rhs_oracle = rhs_find_oracle };; + } tenv f + with None -> failwith "CSE3analysisaux analysis failed, try re-running with -fno-cse3" + | Some invariants -> + invariants, + { hint_eq_catalog = !cur_catalog; + hint_eq_find_oracle= eq_find_oracle; + hint_eq_rhs_oracle = rhs_find_oracle };; |