disable some expensive statevs
authorMatthias Braun <matze@braunis.de>
Sun, 28 Sep 2008 18:12:08 +0000 (18:12 +0000)
committerMatthias Braun <matze@braunis.de>
Sun, 28 Sep 2008 18:12:08 +0000 (18:12 +0000)
[r22327]

ir/ana/dfs.c
ir/be/becopyheur4.c
ir/be/beintlive_t.h
ir/be/belive.c
ir/stat/statev.c
ir/stat/statev.h

index 209ff08..7374cf4 100644 (file)
@@ -32,6 +32,8 @@
 
 #include <stdlib.h>
 
+#define DISABLE_STATEV
+
 #include <assert.h>
 #include "irtools.h"
 #include "irprintf.h"
index bfad18b..e9d20a3 100644 (file)
@@ -33,6 +33,8 @@
 #include "config.h"
 #endif /* HAVE_CONFIG_H */
 
+#define DISABLE_STATEV
+
 #include <float.h>
 
 #include "array.h"
index ee02f21..b8eb841 100644 (file)
@@ -115,8 +115,6 @@ static INLINE int _lv_values_interfere(const be_lv_t *lv, const ir_node *a, cons
        int b2a = _value_dominates(b, a);
        int res = 0;
 
-       stat_ev_ctx_push("beintlive");
-
        /*
         * Adjust a and b so, that a dominates b if
         * a dominates b or vice versa.
@@ -133,7 +131,7 @@ static INLINE int _lv_values_interfere(const be_lv_t *lv, const ir_node *a, cons
                const ir_edge_t *edge;
                ir_node *bb = get_nodes_block(b);
 
-               stat_ev_dbl("beintlive_ignore", arch_irn_is(lv->birg->main_env->arch_env, a, ignore));
+               //stat_ev_dbl("beintlive_ignore", arch_irn_is(lv->birg->main_env->arch_env, a, ignore));
 
                /*
                 * If a is live end in b's block it is
@@ -165,7 +163,6 @@ static INLINE int _lv_values_interfere(const be_lv_t *lv, const ir_node *a, cons
        }
 
 end:
-       stat_ev_ctx_pop("beintlive");
        return res;
 }
 
index 8a81f54..ead176e 100644 (file)
@@ -28,6 +28,9 @@
 #include "config.h"
 #endif
 
+/* statev is expensive here, only enable when needed */
+#define DISABLE_STATEV
+
 #include "impl.h"
 #include "iredges_t.h"
 #include "irgwalk.h"
index b628ad1..8ca9a0f 100644 (file)
@@ -104,7 +104,7 @@ static INLINE int key_matches(const char *key)
 
 void stat_ev_printf(char ev, const char *key, const char *fmt, ...)
 {
-       if (ev == 'E' && !key_matches(key))
+       if (!key_matches(key))
                return;
 
        mfprintf(stat_ev_file, "%c;%s", ev, key);
index 3f32e71..7655394 100644 (file)
@@ -28,7 +28,7 @@
 #ifndef FIRM_STATEVENT_H
 #define FIRM_STATEVENT_H
 
-#ifndef FIRM_STATISTICS
+#if !defined(FIRM_STATISTICS) || defined(DISABLE_STATEV)
 
 #define stat_ev_do(expr)
 #define stat_ev_if                  if (0)