X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fir%2Firflag_t.h;h=601ad27efb436866177437093c5d17d453c4736d;hb=637542932dc27dcdfc7def09b58d9d5d4c34fb77;hp=4341c3907707ed7e948bd89b116a878182007716;hpb=d7a5c3903c4af7a74628f61f0ec36bc688749165;p=libfirm diff --git a/ir/ir/irflag_t.h b/ir/ir/irflag_t.h index 4341c3907..601ad27ef 100644 --- a/ir/ir/irflag_t.h +++ b/ir/ir/irflag_t.h @@ -98,6 +98,10 @@ typedef enum { /** Optimize real function calls. */ OPT_REAL_FUNC_CALL = 0x00200000, + /** Optimize cast nodes. */ + OPT_CLASS_CASTS = 0x00400000, + OPT_SUPPRESS_DOWNCAST_OPT = 0x00800000, + /** Turn off all optimizations. */ OPT_OPTIMIZED = 0x40000000, @@ -230,6 +234,18 @@ static INLINE int _get_opt_dyn_meth_dispatch(void) return libFIRM_opt & OPT_DYN_METH_DISPATCH; } +static INLINE int _get_opt_optimize_class_casts (void) { + return libFIRM_opt & OPT_CLASS_CASTS; +} + +static INLINE int _get_opt_optimize_class_casts_verbose (void) { + return libFIRM_verb & OPT_CLASS_CASTS; +} + +static INLINE int _get_opt_suppress_downcast_optimization (void) { + return libFIRM_opt & OPT_SUPPRESS_DOWNCAST_OPT; +} + static INLINE int get_opt_normalize(void) { return libFIRM_opt & OPT_NORMALIZE; @@ -271,8 +287,11 @@ static INLINE int get_opt_real_func_call(void) return libFIRM_opt & OPT_REAL_FUNC_CALL; } -#define get_opt_cse() _get_opt_cse() -#define get_firm_verbosity() _get_firm_verbosity() -#define get_opt_dyn_meth_dispatch() _get_opt_dyn_meth_dispatch() +#define get_opt_cse() _get_opt_cse() +#define get_firm_verbosity() _get_firm_verbosity() +#define get_opt_dyn_meth_dispatch() _get_opt_dyn_meth_dispatch() +#define get_opt_optimize_class_casts() _get_opt_optimize_class_casts() +#define get_opt_optimize_class_casts_verbose() _get_opt_optimize_class_casts_verbose() +#define get_opt_suppress_downcast_optimization() _get_opt_suppress_downcast_optimization() #endif /* _IRFLAG_T_H_ */