X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fir%2Firflag_t.h;h=05f12ff99181c7bfa8a2c7a757c46d3e2d6fb0fe;hb=346dfddce9be4420855b06ea40d2bf21dad9bc88;hp=87927eb7fcf94b982f10f7792a45af4596b21b35;hpb=28833c667734050a064c063c7d4cc109c6973fdc;p=libfirm diff --git a/ir/ir/irflag_t.h b/ir/ir/irflag_t.h index 87927eb7f..05f12ff99 100644 --- a/ir/ir/irflag_t.h +++ b/ir/ir/irflag_t.h @@ -87,6 +87,9 @@ typedef enum { /** Optimize Loads and Stores */ OPT_REDUNDANT_LOADSTORE = 0x00040000, + /** Optimize Fragile OPs */ + OPT_FRAGILE_OPS = 0x00080000, + /** Turn off all optimizations. */ OPT_OPTIMIZED = 0x40000000, @@ -99,7 +102,7 @@ extern int firm_verbosity_level; /** Returns constant folding optimization setting. */ -static INLINE int get_opt_cse(void) +static INLINE int _get_opt_cse(void) { return libFIRM_opt & OPT_CSE; } @@ -116,7 +119,7 @@ static INLINE int get_opt_strength_red(void) } /** Returns verbosity for strength reduction. */ -static INLINE int get_opt_strength_red_verbosity(void) +static INLINE int get_opt_strength_red_verbose(void) { return libFIRM_verb & OPT_STRENGTH_RED; } @@ -193,7 +196,7 @@ static INLINE int get_opt_optimize(void) return libFIRM_opt & OPT_OPTIMIZED; } -static INLINE int __get_firm_verbosity (void) { +static INLINE int _get_firm_verbosity (void) { return firm_verbosity_level; } @@ -219,14 +222,26 @@ static INLINE int get_opt_tail_recursion(void) return libFIRM_opt & OPT_TAIL_RECURSION; } +/** Returns tail-recursion setting. */ +static INLINE int get_opt_tail_recursion_verbose(void) +{ + return libFIRM_verb & OPT_TAIL_RECURSION; +} + /** Returns precise exception context setting. */ static INLINE int get_opt_precise_exc_context(void) { return libFIRM_opt & OPT_PRECISE_EXC_CONTEXT; } +/** Returns fragile ops setting. */ +static INLINE int get_opt_fragile_ops(void) +{ + return libFIRM_opt & OPT_FRAGILE_OPS; +} -#define get_firm_verbosity() __get_firm_verbosity() +#define get_opt_cse() _get_opt_cse() +#define get_firm_verbosity() _get_firm_verbosity() #endif /* _IRFLAG_T_H_ */