[PATCH] Review for hoisting and sinking of equivalent memory instruction (Instruction Merge Pass)

Gerolf Hoflehner ghoflehner at apple.com
Sun Jun 22 23:03:50 PDT 2014


This should cover the remaining open issues+:
- Added check to control mergeLoad and mergeStores compile time: one invocation
  cannot check more than a CONSTANT (250)  number of instructions.
- Added drop of UnknownMetadata (as suggested by first review from Arnold)
- Added comments that  mayHaveSideEffects() includes ordered loads and fences
- Changed DEBUG im to instr-merge
- In file header added section pointing to code reviews and listing suggestions
  that I did not pursue in the first commit

http://reviews.llvm.org/D4096

Files:
  bindings/ocaml/transforms/scalar/scalar_opts_ocaml.c
  include/llvm-c/Transforms/Scalar.h
  include/llvm/InitializePasses.h
  include/llvm/LinkAllPasses.h
  include/llvm/Transforms/Scalar.h
  lib/LTO/LTOCodeGenerator.cpp
  lib/Transforms/IPO/PassManagerBuilder.cpp
  lib/Transforms/Scalar/CMakeLists.txt
  lib/Transforms/Scalar/InstructionMerger.cpp
  lib/Transforms/Scalar/Scalar.cpp
  test/Transforms/InstMerge/
  test/Transforms/InstMerge/ld_hoist_st_sink.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D4096.10736.patch
Type: text/x-patch
Size: 30759 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20140623/1e64cefa/attachment.bin>


More information about the llvm-commits mailing list