passes.h 3.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. // Copyright (c) 2016 Google Inc.
  2. //
  3. // Licensed under the Apache License, Version 2.0 (the "License");
  4. // you may not use this file except in compliance with the License.
  5. // You may obtain a copy of the License at
  6. //
  7. // http://www.apache.org/licenses/LICENSE-2.0
  8. //
  9. // Unless required by applicable law or agreed to in writing, software
  10. // distributed under the License is distributed on an "AS IS" BASIS,
  11. // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  12. // See the License for the specific language governing permissions and
  13. // limitations under the License.
  14. #ifndef SOURCE_OPT_PASSES_H_
  15. #define SOURCE_OPT_PASSES_H_
  16. // A single header to include all passes.
  17. #include "source/opt/aggressive_dead_code_elim_pass.h"
  18. #include "source/opt/amd_ext_to_khr.h"
  19. #include "source/opt/analyze_live_input_pass.h"
  20. #include "source/opt/block_merge_pass.h"
  21. #include "source/opt/ccp_pass.h"
  22. #include "source/opt/cfg_cleanup_pass.h"
  23. #include "source/opt/code_sink.h"
  24. #include "source/opt/combine_access_chains.h"
  25. #include "source/opt/compact_ids_pass.h"
  26. #include "source/opt/convert_to_half_pass.h"
  27. #include "source/opt/convert_to_sampled_image_pass.h"
  28. #include "source/opt/copy_prop_arrays.h"
  29. #include "source/opt/dead_branch_elim_pass.h"
  30. #include "source/opt/dead_insert_elim_pass.h"
  31. #include "source/opt/dead_variable_elimination.h"
  32. #include "source/opt/desc_sroa.h"
  33. #include "source/opt/eliminate_dead_constant_pass.h"
  34. #include "source/opt/eliminate_dead_functions_pass.h"
  35. #include "source/opt/eliminate_dead_io_components_pass.h"
  36. #include "source/opt/eliminate_dead_members_pass.h"
  37. #include "source/opt/eliminate_dead_output_stores_pass.h"
  38. #include "source/opt/empty_pass.h"
  39. #include "source/opt/fix_func_call_arguments.h"
  40. #include "source/opt/fix_storage_class.h"
  41. #include "source/opt/flatten_decoration_pass.h"
  42. #include "source/opt/fold_spec_constant_op_and_composite_pass.h"
  43. #include "source/opt/freeze_spec_constant_value_pass.h"
  44. #include "source/opt/graphics_robust_access_pass.h"
  45. #include "source/opt/if_conversion.h"
  46. #include "source/opt/inline_exhaustive_pass.h"
  47. #include "source/opt/inline_opaque_pass.h"
  48. #include "source/opt/inst_bindless_check_pass.h"
  49. #include "source/opt/inst_buff_addr_check_pass.h"
  50. #include "source/opt/inst_debug_printf_pass.h"
  51. #include "source/opt/interface_var_sroa.h"
  52. #include "source/opt/interp_fixup_pass.h"
  53. #include "source/opt/licm_pass.h"
  54. #include "source/opt/local_access_chain_convert_pass.h"
  55. #include "source/opt/local_redundancy_elimination.h"
  56. #include "source/opt/local_single_block_elim_pass.h"
  57. #include "source/opt/local_single_store_elim_pass.h"
  58. #include "source/opt/loop_fission.h"
  59. #include "source/opt/loop_fusion_pass.h"
  60. #include "source/opt/loop_peeling.h"
  61. #include "source/opt/loop_unroller.h"
  62. #include "source/opt/loop_unswitch_pass.h"
  63. #include "source/opt/merge_return_pass.h"
  64. #include "source/opt/null_pass.h"
  65. #include "source/opt/private_to_local_pass.h"
  66. #include "source/opt/reduce_load_size.h"
  67. #include "source/opt/redundancy_elimination.h"
  68. #include "source/opt/relax_float_ops_pass.h"
  69. #include "source/opt/remove_dontinline_pass.h"
  70. #include "source/opt/remove_duplicates_pass.h"
  71. #include "source/opt/remove_unused_interface_variables_pass.h"
  72. #include "source/opt/replace_desc_array_access_using_var_index.h"
  73. #include "source/opt/replace_invalid_opc.h"
  74. #include "source/opt/scalar_replacement_pass.h"
  75. #include "source/opt/set_spec_constant_default_value_pass.h"
  76. #include "source/opt/simplification_pass.h"
  77. #include "source/opt/spread_volatile_semantics.h"
  78. #include "source/opt/ssa_rewrite_pass.h"
  79. #include "source/opt/strength_reduction_pass.h"
  80. #include "source/opt/strip_debug_info_pass.h"
  81. #include "source/opt/strip_nonsemantic_info_pass.h"
  82. #include "source/opt/unify_const_pass.h"
  83. #include "source/opt/upgrade_memory_model.h"
  84. #include "source/opt/vector_dce.h"
  85. #include "source/opt/workaround1209.h"
  86. #include "source/opt/wrap_opkill.h"
  87. #endif // SOURCE_OPT_PASSES_H_