diff options
author | Cyril SIX <cyril.six@kalray.eu> | 2020-03-18 11:23:01 +0100 |
---|---|---|
committer | Cyril SIX <cyril.six@kalray.eu> | 2020-03-18 11:23:01 +0100 |
commit | 54ff3d4da4677284cc538eb7e89c83aa2d7eaea5 (patch) | |
tree | 972e274517d9cb9b69d7954b286f85d98a83f3a3 /backend/Duplicateaux.ml | |
parent | 5d1b51ae43e3b2784805aae60144870a6f14b6e0 (diff) | |
parent | fb43d1078c0b0824132b30d7dd9bfe6b0ac47122 (diff) | |
download | compcert-kvx-54ff3d4da4677284cc538eb7e89c83aa2d7eaea5.tar.gz compcert-kvx-54ff3d4da4677284cc538eb7e89c83aa2d7eaea5.zip |
Merge branch 'mppa-work' into mppa-branch-info
Conflicts:
backend/Duplicateaux.ml
Diffstat (limited to 'backend/Duplicateaux.ml')
-rw-r--r-- | backend/Duplicateaux.ml | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/backend/Duplicateaux.ml b/backend/Duplicateaux.ml index c2839bc3..1548765e 100644 --- a/backend/Duplicateaux.ml +++ b/backend/Duplicateaux.ml @@ -508,12 +508,15 @@ let rec invert_iconds code = function let duplicate_aux f = let entrypoint = f.fn_entrypoint in - let code = update_directions (f.fn_code) entrypoint in - let traces = select_traces code entrypoint in - let icond_code = invert_iconds code traces in - let preds = get_predecessors_rtl icond_code in - if !Clflags.option_fduplicate >= 1 then - let (new_code, pTreeId) = ((* print_traces traces; *) superblockify_traces icond_code preds traces) in - ((new_code, f.fn_entrypoint), pTreeId) + if !Clflags.option_fduplicate < 0 then + ((f.fn_code, entrypoint), make_identity_ptree f.fn_code) else - ((icond_code, entrypoint), make_identity_ptree code) + let code = update_directions (f.fn_code) entrypoint in + let traces = select_traces code entrypoint in + let icond_code = invert_iconds code traces in + let preds = get_predecessors_rtl icond_code in + if !Clflags.option_fduplicate >= 1 then + let (new_code, pTreeId) = ((* print_traces traces; *) superblockify_traces icond_code preds traces) in + ((new_code, f.fn_entrypoint), pTreeId) + else + ((icond_code, entrypoint), make_identity_ptree code) |