diff options
| author | Gerolf Hoflehner <ghoflehner@apple.com> | 2014-07-18 19:13:09 +0000 |
|---|---|---|
| committer | Gerolf Hoflehner <ghoflehner@apple.com> | 2014-07-18 19:13:09 +0000 |
| commit | f27ae6cdcfb8eda90f43103f93576de238eba17a (patch) | |
| tree | 8022983a65fbe248360146c5971f4a5798e0cdd1 /llvm/bindings/ocaml/transforms | |
| parent | ebaf14bdd05f8593581ace802d4505930efd8967 (diff) | |
| download | bcm5719-llvm-f27ae6cdcfb8eda90f43103f93576de238eba17a.tar.gz bcm5719-llvm-f27ae6cdcfb8eda90f43103f93576de238eba17a.zip | |
MergedLoadStoreMotion pass
Merges equivalent loads on both sides of a hammock/diamond
and hoists into into the header.
Merges equivalent stores on both sides of a hammock/diamond
and sinks it to the footer.
Can enable if conversion and tolerate better load misses
and store operand latencies.
llvm-svn: 213396
Diffstat (limited to 'llvm/bindings/ocaml/transforms')
| -rw-r--r-- | llvm/bindings/ocaml/transforms/scalar/scalar_opts_ocaml.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/llvm/bindings/ocaml/transforms/scalar/scalar_opts_ocaml.c b/llvm/bindings/ocaml/transforms/scalar/scalar_opts_ocaml.c index 0a71bd7cad2..47e17902baa 100644 --- a/llvm/bindings/ocaml/transforms/scalar/scalar_opts_ocaml.c +++ b/llvm/bindings/ocaml/transforms/scalar/scalar_opts_ocaml.c @@ -135,6 +135,12 @@ CAMLprim value llvm_add_tail_call_elimination(LLVMPassManagerRef PM) { } /* [<Llvm.PassManager.any] Llvm.PassManager.t -> unit */ +CAMLprim value llvm_add_merged_load_store_motion(LLVMPassManagerRef PM) { + LLVMAddMergedLoadStoreMotionPass(PM); + return Val_unit; +} + +/* [<Llvm.PassManager.any] Llvm.PassManager.t -> unit */ CAMLprim value llvm_add_gvn(LLVMPassManagerRef PM) { LLVMAddGVNPass(PM); return Val_unit; |

