X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fbe%2Fbe_t.h;h=26bc530909d424738c466f0862bc3de1a40c88e7;hb=0c2e8bedc56cb9dba9b2544927a8093ddb7ee614;hp=310c469a48d359aa721a211fb9375033ae116a0e;hpb=6c3146b96bc65d9de18f3f2b59faf33b8b9935d6;p=libfirm diff --git a/ir/be/be_t.h b/ir/be/be_t.h index 310c469a4..26bc53090 100644 --- a/ir/be/be_t.h +++ b/ir/be/be_t.h @@ -60,18 +60,17 @@ enum { /** Backend options */ struct be_options_t { - unsigned dump_flags; /**< backend dumping flags */ - int timing; /**< time the backend phases */ - int opt_profile; /**< instrument code for profiling */ - int omit_fp; /**< try to omit the frame pointer */ - int pic; /**< create position independent code */ - int gprof; /**< create gprof compatible profiling code */ - int verify_option; /**< backend verify option */ - char target_os[128]; /**< target operating system name */ - char ilp_server[128]; /**< the ilp server name */ - char ilp_solver[128]; /**< the ilp solver name */ - int statev; /**< enable stat event dumping */ - char filtev[128]; /**< filter mask for stat events (regex is supported) */ + unsigned dump_flags; /**< backend dumping flags */ + int timing; /**< time the backend phases */ + int opt_profile_generate; /**< instrument code for profiling */ + int opt_profile_use; /**< use existing profile data */ + int omit_fp; /**< try to omit the frame pointer */ + int pic; /**< create position independent code */ + int verify_option; /**< backend verify option */ + char ilp_server[128]; /**< the ilp server name */ + char ilp_solver[128]; /**< the ilp solver name */ + int statev; /**< enable stat event dumping */ + char filtev[128]; /**< filter mask for stat events */ }; struct be_main_env_t { @@ -84,7 +83,7 @@ struct be_main_env_t { ir_type *pic_symbols_type; }; -extern unsigned short asm_constraint_flags[256]; +extern asm_constraint_flags_t asm_constraint_flags[256]; void be_init_default_asm_constraint_flags(void); @@ -107,7 +106,8 @@ void firm_be_finish(void); extern int be_timing; typedef enum { - T_ABI, + T_FIRST, + T_ABI = T_FIRST, T_CODEGEN, T_RA_PREPARATION, T_SCHED, @@ -132,6 +132,7 @@ typedef enum { T_RA_OTHER, T_LAST = T_RA_OTHER } be_timer_id_t; +ENUM_COUNTABLE(be_timer_id_t) extern ir_timer_t *be_timers[T_LAST+1]; static inline void be_timer_push(be_timer_id_t id)