Re-factor Phi insertion code out of LocalMultiStoreElimPass
authorDiego Novillo <dnovillo@google.com>
Wed, 25 Oct 2017 17:26:25 +0000 (13:26 -0400)
committerDavid Neto <dneto@google.com>
Fri, 27 Oct 2017 19:28:08 +0000 (15:28 -0400)
commit1040a95b3f5fd5348bb46fbf2e147376d50e909f
tree6a6a80b69207d579b49874fac94be98373b67058
parent94dc66b74d535078a6939c693825d019d4720180
Re-factor Phi insertion code out of LocalMultiStoreElimPass

Including a re-factor of common behaviour into class Pass:

The following functions are now in class Pass:

- IsLoopHeader.
- ComputeStructuredOrder
- ComputeStructuredSuccessors (annoyingly, I could not re-factor all
  instances of this function, the copy in common_uniform_elim_pass.cpp
  is slightly different and fails with the common implementation).
- GetPointeeTypeId
- TakeNextId
- FinalizeNextId
- MergeBlockIdIfAny

This is a NFC (non-functional change)
36 files changed:
source/opt/aggressive_dead_code_elim_pass.cpp
source/opt/block_merge_pass.cpp
source/opt/block_merge_pass.h
source/opt/cfg_cleanup_pass.cpp
source/opt/cfg_cleanup_pass.h
source/opt/common_uniform_elim_pass.cpp
source/opt/common_uniform_elim_pass.h
source/opt/compact_ids_pass.cpp
source/opt/dead_branch_elim_pass.cpp
source/opt/dead_branch_elim_pass.h
source/opt/dead_variable_elimination.cpp
source/opt/eliminate_dead_functions_pass.cpp
source/opt/flatten_decoration_pass.cpp
source/opt/fold_spec_constant_op_and_composite_pass.cpp
source/opt/fold_spec_constant_op_and_composite_pass.h
source/opt/inline_exhaustive_pass.cpp
source/opt/inline_opaque_pass.cpp
source/opt/inline_pass.cpp
source/opt/inline_pass.h
source/opt/insert_extract_elim.cpp
source/opt/insert_extract_elim.h
source/opt/local_access_chain_convert_pass.cpp
source/opt/local_access_chain_convert_pass.h
source/opt/local_single_block_elim_pass.cpp
source/opt/local_single_block_elim_pass.h
source/opt/local_single_store_elim_pass.cpp
source/opt/local_single_store_elim_pass.h
source/opt/local_ssa_elim_pass.cpp
source/opt/local_ssa_elim_pass.h
source/opt/mem_pass.cpp
source/opt/mem_pass.h
source/opt/pass.cpp
source/opt/pass.h
source/opt/strength_reduction_pass.cpp
source/opt/strength_reduction_pass.h
source/opt/unify_const_pass.cpp