20#ifndef GCC_PASS_MANAGER_H
21#define GCC_PASS_MANAGER_H
28#define GCC_PASS_LISTS \
29 DEF_PASS_LIST (all_lowering_passes) \
30 DEF_PASS_LIST (all_small_ipa_passes) \
31 DEF_PASS_LIST (all_regular_ipa_passes) \
32 DEF_PASS_LIST (all_late_ipa_passes) \
33 DEF_PASS_LIST (all_passes)
35#define DEF_PASS_LIST(LIST) PASS_LIST_NO_##LIST,
70 return pass_split_all_insns_1;
73 return pass_mode_switching_1;
84 return pass_rest_of_compilation_1;
128#define INSERT_PASSES_AFTER(PASS)
129#define PUSH_INSERT_PASSES_WITHIN(PASS, NUM)
130#define POP_INSERT_PASSES()
131#define NEXT_PASS(PASS, NUM) opt_pass *PASS ## _ ## NUM
132#define NEXT_PASS_WITH_ARG(PASS, NUM, ARG) NEXT_PASS (PASS, NUM)
133#define NEXT_PASS_WITH_ARGS(PASS, NUM, ...) NEXT_PASS (PASS, NUM)
134#define TERMINATE_PASS_LIST(PASS)
136#include "pass-instances.def"
Definition pass_manager.h:48
void register_one_dump_file(opt_pass *pass)
Definition passes.cc:834
void dump_profile_report() const
Definition passes.cc:1941
opt_pass ** pass_lists[PASS_LIST_NUM]
Definition pass_manager.h:100
pass_manager(context *ctxt)
Definition passes.cc:1578
opt_pass * get_clean_slate() const
Definition pass_manager.h:86
hash_map< free_string_hash, opt_pass * > * m_name_to_pass_map
Definition pass_manager.h:109
unsigned int execute_pass_mode_switching()
Definition passes.cc:124
opt_pass * get_pass_peephole2() const
Definition pass_manager.h:75
void create_pass_tab() const
Definition passes.cc:949
void dump_passes() const
Definition passes.cc:1009
void set_pass_for_id(int id, opt_pass *pass)
Definition passes.cc:800
void finish_optimization_passes()
Definition passes.cc:347
void register_pass_name(opt_pass *pass, const char *name)
Definition passes.cc:915
opt_pass * all_regular_ipa_passes
Definition pass_manager.h:93
opt_pass * get_pass_split_all_insns() const
Definition pass_manager.h:69
opt_pass * get_pass_for_id(int id) const
Definition passes.cc:816
opt_pass * all_small_ipa_passes
Definition pass_manager.h:91
~pass_manager()
Definition passes.cc:1679
opt_pass * get_pass_profile() const
Definition pass_manager.h:76
opt_pass * all_lowering_passes
Definition pass_manager.h:92
context * m_ctxt
Definition pass_manager.h:108
opt_pass ** passes_by_id
Definition pass_manager.h:97
void register_dump_files(opt_pass *pass)
Definition passes.cc:897
opt_pass * get_pass_by_name(const char *name)
Definition passes.cc:1029
void execute_early_local_passes()
Definition passes.cc:117
opt_pass * get_rest_of_compilation() const
Definition pass_manager.h:82
opt_pass * all_late_ipa_passes
Definition pass_manager.h:94
opt_pass * all_passes
Definition pass_manager.h:90
void register_pass(struct register_pass_info *pass_info)
Definition passes.cc:1500
opt_pass * get_pass_mode_switching() const
Definition pass_manager.h:72
int passes_by_id_size
Definition pass_manager.h:98
Definition tree-pass.h:74
#define GCC_PASS_LISTS
Definition pass_manager.h:28
pass_list
Definition pass_manager.h:37
@ PASS_LIST_NUM
Definition pass_manager.h:39
Definition tree-pass.h:330