AC_SUBST([enable_profile_libfirm])
-dnl enable Firm hooks
-dnl -------------
-AC_ARG_ENABLE([hooks],
-[AS_HELP_STRING([--disable-hooks], [disable Firm hooks])],
-[enable_hooks="$enableval"], [enable_hooks="yes"])
-
-if test "$enable_hooks" = yes; then
- FIRMCONFIG_FIRM_ENABLE_HOOKS="#define FIRM_ENABLE_HOOKS"
-fi
-AC_SUBST([FIRMCONFIG_FIRM_ENABLE_HOOKS])
-
dnl enable Firm statistics
dnl -------------
AC_ARG_ENABLE([statistics],
echo " profiling $enable_profile_libfirm"
echo " debug/verifiers $enable_debug_libfirm"
echo " assertions $enable_assert"
-echo " hooks $enable_hooks"
echo " statistics $enable_statistics"
echo " ilp $enable_ilp"
echo " jvm $enable_jvm"
/* define to 1 to have wchar_t support for identifiers */
@FIRMCONFIG_FIRM_ENABLE_WCHAR@
-
-/* define to enable hooks */
-@FIRMCONFIG_FIRM_ENABLE_HOOKS@
-
-/* Firm statistics need hooks */
-#ifdef FIRM_STATISTICS
-#ifndef FIRM_ENABLE_HOOKS
-#define FIRM_ENABLE_HOOKS
-#endif
-#endif
*/
void unregister_hook(hook_type_t hook, hook_entry_t *entry);
-#ifdef FIRM_ENABLE_HOOKS
-
extern hook_entry_t *hooks[hook_last];
/**
} \
} while (0)
-#else
-
-#define hook_exec(what, args)
-
-#endif /* FIRM_ENABLE_HOOKS */
-
#define hook_new_ir_op(op) hook_exec(hook_new_ir_op, (ctx, op))
#define hook_free_ir_op(op) hook_exec(hook_free_ir_op, (ctx, op))
#define hook_new_node(graph, node) hook_exec(hook_new_node, (ctx, graph, node))
#include "irhooks.h"
-#ifdef FIRM_ENABLE_HOOKS
-
/* the hooks */
hook_entry_t *hooks[hook_last];
}
}
-
-#else
-
-void register_hook(hook_type_t hook, hook_entry_t *entry) {}
-void unregister_hook(hook_type_t hook, hook_entry_t *entry) {}
-
-#endif /* FIRM_ENABLE_HOOKS */
-
int firm_init_hooks(void) {
/* this strange code assures that both functions are available
in a shared library even if none of them is called.
res->dead_node_elim_subst.context = res;
res->dead_node_elim_subst.next = NULL;
-#ifndef FIRM_ENABLE_HOOKS
- assert(0 && "need hooks enabled");
-#endif
-
register_hook(hook_dead_node_elim, &res->dead_node_elim);
register_hook(hook_dead_node_elim_subst, &res->dead_node_elim_subst);
return res;